Sending it to the support team for faster response

Thank You,

*Siji Sara Jacob **(she, her, hers)*

Staff Software Engineer - Marketing Automation

s...@indeed.com





---------- Forwarded message ---------
From: Siji Sara Jacob <s...@indeed.com>
Date: Tue, Apr 5, 2022 at 5:06 PM
Subject: SearchGoogleAdsStreamRequest() CANCELLED GC overhead limit exceeded
To: Google Ads API and AdWords API Forum <adwords-api@googlegroups.com>


Hi Team,
My team is migrating from old Adwords API to Google Ads API. While
migrating the reports, we have been facing an issue with fetching keyword
data for large accounts (containing >2M keywords)
We are using SearchGoogleAdsStreamRequest() as suggested in the examples
<https://developers.google.com/google-ads/api/docs/reporting/streaming> and
are  querying keyword data for 1 campaign at a time.
We notice that the request keeps failing with *java.lang.OutOfMemoryError:
GC overhead limit exceeded* from API side (see attachment for full stack
trace). We have confirmed that it is not an issue at the client side. Our
queries are of the form -

SELECT 
campaign.id,ad_group.id,ad_group_criterion.criterion_id,campaign.name,ad_group_criterion.keyword.text,ad_group_criterion.keyword.match_type,ad_group_criterion.effective_cpc_bid_micros,ad_group_criterion.final_urls
FROM keyword_view WHERE ad_group.status = 'ENABLED' AND
ad_group_criterion.status = 'ENABLED' AND segments.date DURING YESTERDAY
AND ad_group_criterion.negative = FALSE AND campaign.id IN (<some_id>)
PARAMETERS omit_unselected_resource_names=true

Could you please help resolve this issue. From the documentation provided,
it does not seem to be the case of exceeding API limits. Kindly let us know
if any further information is required to investigate this issue.

*Note that some logs specific to our tool have been redacted due to privacy
concerns while posting in an open forum. It can be shared privately to the
team investigating the issue*

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog:
https://googleadsdeveloper.blogspot.com/
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API and Google Ads API Forum" group.
To post to this group, send email to adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Google Ads API and AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to adwords-api+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/CALNdEdDdNXoerj2H8W-9x6TvShgAuN-kVdmH-0VWzEwnYADSnw%40mail.gmail.com.
[ 2022-04-05 16:28:37,196 INFO  ] [GoogleAdsReportDownloaderImpl] API exception 
occurred while fetching data for clientId=2171459886
[ 2022-04-05 16:28:37,196 INFO  ] [GoogleAdsReportDownloaderImpl] 
Exception=io.grpc.StatusRuntimeException: CANCELLED: Failed to read message.
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.rpc.CancelledException:
 io.grpc.StatusRuntimeException: CANCELLED: Failed to read message.
        at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:43)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:72)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:60)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.grpc.ExceptionResponseObserver.onErrorImpl(ExceptionResponseObserver.java:82)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.rpc.StateCheckingResponseObserver.onError(StateCheckingResponseObserver.java:86)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.grpc.GrpcDirectStreamController$ResponseObserverAdapter.onClose(GrpcDirectStreamController.java:149)
        at 
io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
        at 
io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
        at 
io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
        at 
com.google.ads.googleads.lib.logging.LoggingInterceptor$1$1.onClose(LoggingInterceptor.java:113)
        at 
io.grpc.internal.DelayedClientCall$DelayedListener$3.run(DelayedClientCall.java:463)
        at 
io.grpc.internal.DelayedClientCall$DelayedListener.delayOrExecute(DelayedClientCall.java:427)
        at 
io.grpc.internal.DelayedClientCall$DelayedListener.onClose(DelayedClientCall.java:460)
        at 
io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:557)
        at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:69)
        at 
io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:738)
        at 
io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:717)
        at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
        at 
io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
        Suppressed: java.lang.RuntimeException: Asynchronous task failed
                at 
com.indeed.shadow.shadow_googleads_api.com.google.api.gax.rpc.ServerStreamIterator.hasNext(ServerStreamIterator.java:105)
                ....
                ....
                ....
                ....(redacted logs)
                ....
                ....
                ....
                ....
                at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
                at java.util.concurrent.FutureTask.run(FutureTask.java:266)
                ... 3 more
Caused by: io.grpc.StatusRuntimeException: CANCELLED: Failed to read message.
        at io.grpc.Status.asRuntimeException(Status.java:535)
        ... 17 more
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.Utf8$UnsafeProcessor.decodeUtf8(Utf8.java:1379)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.Utf8.decodeUtf8(Utf8.java:340)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.CodedInputStream$ArrayDecoder.readStringRequireUtf8(CodedInputStream.java:815)
        at 
com.google.ads.googleads.v10.resources.AdGroupCriterion.<init>(AdGroupCriterion.java:495)
        at 
com.google.ads.googleads.v10.resources.AdGroupCriterion.<init>(AdGroupCriterion.java:13)
        at 
com.google.ads.googleads.v10.resources.AdGroupCriterion$1.parsePartialFrom(AdGroupCriterion.java:13363)
        at 
com.google.ads.googleads.v10.resources.AdGroupCriterion$1.parsePartialFrom(AdGroupCriterion.java:13357)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.CodedInputStream$ArrayDecoder.readMessage(CodedInputStream.java:889)
        at 
com.google.ads.googleads.v10.services.GoogleAdsRow.<init>(GoogleAdsRow.java:125)
        at 
com.google.ads.googleads.v10.services.GoogleAdsRow.<init>(GoogleAdsRow.java:13)
        at 
com.google.ads.googleads.v10.services.GoogleAdsRow$1.parsePartialFrom(GoogleAdsRow.java:36044)
        at 
com.google.ads.googleads.v10.services.GoogleAdsRow$1.parsePartialFrom(GoogleAdsRow.java:36038)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.CodedInputStream$ArrayDecoder.readMessage(CodedInputStream.java:889)
        at 
com.google.ads.googleads.v10.services.SearchGoogleAdsStreamResponse.<init>(SearchGoogleAdsStreamResponse.java:64)
        at 
com.google.ads.googleads.v10.services.SearchGoogleAdsStreamResponse.<init>(SearchGoogleAdsStreamResponse.java:13)
        at 
com.google.ads.googleads.v10.services.SearchGoogleAdsStreamResponse$1.parsePartialFrom(SearchGoogleAdsStreamResponse.java:1513)
        at 
com.google.ads.googleads.v10.services.SearchGoogleAdsStreamResponse$1.parsePartialFrom(SearchGoogleAdsStreamResponse.java:1507)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:86)
        at 
com.indeed.shadow.shadow_googleads_api.com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:48)
        at 
io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller.parseFrom(ProtoLiteUtils.java:223)
        at 
io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller.parse(ProtoLiteUtils.java:215)
        at 
io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller.parse(ProtoLiteUtils.java:118)
        at io.grpc.MethodDescriptor.parseResponse(MethodDescriptor.java:284)
        at 
io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1MessagesAvailable.runInternal(ClientCallImpl.java:656)
        at 
io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1MessagesAvailable.runInContext(ClientCallImpl.java:641)
        ... 5 more
Caused by: io.grpc.StatusRuntimeException: CANCELLED: Failed to read message.

Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
  • Fw... 'Siji Sara Jacob' via Google Ads API and AdWords API Forum
    • ... 'Google Ads API Forum Advisor' via Google Ads API and AdWords API Forum

Reply via email to