Upgrading to 1.11.0 resolves the issue. http://code.google.com/p/google-api-ads-java/issues/detail?id=33
-Dickens On Friday, November 2, 2012 7:06:45 AM UTC-5, Danial Klimkin wrote: > > Hello dsr, > > > The issue looks like connectivity issue between your application and > Google services. Please check you network status. > > Let us know if you still experience the issue providing more details on > date and time of the event. > > > -Danial, AdWords API Team. > > > > On Tuesday, October 30, 2012 2:02:44 AM UTC+4, dsr wrote: >> >> Hi, >> >> We have been using keyword performance report to synchronize our DB >> tables with Google adwords. Until last Friday all accounts were able to >> successfully able to download reports but now few huge >> accounts consistently fail to download report with Report Exception. The >> same accounts data can be downloaded when we add DATE and IMPRESSIONS >> fields to selector. Following code snippet works fine except for few huge >> accounts: >> >> public static void runExample(AdWordsSession session, String reportFile) >> throws Exception { >> // Create selector. >> Selector selector = new Selector(); >> Predicate negativePredicate = new Predicate(); >> negativePredicate.setField("IsNegative"); >> negativePredicate.setOperator(PredicateOperator.IN); >> negativePredicate.getValues().addAll(Arrays.asList(new String[] {"FALSE", >> "false"})); >> Predicate keywordStatusPredicate = new Predicate(); >> keywordStatusPredicate.setField("Status"); >> keywordStatusPredicate.setOperator(PredicateOperator.IN); >> keywordStatusPredicate.getValues().addAll(Arrays.asList(new String[] >> {UserStatus.ACTIVE.getValue()})); >> >> Predicate adGroupStatusPredicate = new Predicate(); >> adGroupStatusPredicate.setField("AdGroupStatus"); >> adGroupStatusPredicate.setOperator(PredicateOperator.IN); >> adGroupStatusPredicate.getValues().addAll(Arrays.asList(new String[] >> {AdGroupStatus.ENABLED.getValue()})); >> >> Predicate campaignStatusPredicate = new Predicate(); >> campaignStatusPredicate.setField("CampaignStatus"); >> campaignStatusPredicate.setOperator(PredicateOperator.IN); >> campaignStatusPredicate.getValues().addAll(Arrays.asList(new String[] >> {CampaignStatus.ACTIVE.getValue()})); >> >> List<Predicate> predicateList = new ArrayList<Predicate>(); >> predicateList.add(negativePredicate); >> predicateList.add(keywordStatusPredicate); >> predicateList.add(adGroupStatusPredicate); >> predicateList.add(campaignStatusPredicate); >> selector.getPredicates().addAll(predicateList); >> >> // Get current data from AdServer --- *Adding Date and Impressions helps >> in retrieving data...If these two fields are not added then the report >> behaves inconsistently* >> selector.getFields().addAll(Arrays.asList(new String[] >> {"CampaignName","CampaignId","CampaignStatus", >> "AdGroupName","AdGroupId","AdGroupStatus", "KeywordText","Id", >> "Status","KeywordMatchType", >> "IsNegative","MaxCpc","DestinationUrl","Date","Impressions"})); >> // Create report definition. >> ReportDefinition reportDefinition = new ReportDefinition(); >> reportDefinition.setReportName("Placement Listing & Status #" + >> System.currentTimeMillis()); >> >> reportDefinition.setReportType(ReportDefinitionReportType.KEYWORDS_PERFORMANCE_REPORT); >> reportDefinition.setDateRangeType(ReportDefinitionDateRangeType.TODAY); >> reportDefinition.setIncludeZeroImpressions(true); >> reportDefinition.setSelector(selector); >> reportDefinition.setDownloadFormat(DownloadFormat.TSV); >> >> try { >> ReportDownloadResponse response = >> new ReportDownloader(session).downloadReport(reportDefinition); >> FileOutputStream fos = new FileOutputStream(new File(reportFile)); >> Streams.copy(response.getInputStream(), fos); >> fos.close(); >> System.out.println("Report successfully downloaded: " + reportFile); >> } catch (Exception e) { >> e.printStackTrace(); >> System.out.println("Report was not downloaded. " + e.toString()); >> } >> } >> >> *Following exception is thrown when fields Data and Impressions are not >> added to selector:* >> com.google.api.ads.adwords.lib.utils.ReportException: Problem sending >> data to report download server. >> at >> com.google.api.ads.adwords.lib.utils.AdHocReportDownloadHelper.downloadReport(AdHocReportDownloadHelper.java:106) >> at >> com.google.api.ads.adwords.lib.utils.AdHocReportDownloadHelper.downloadReport(AdHocReportDownloadHelper.java:68) >> at >> com.google.api.ads.adwords.lib.utils.v201206.ReportDownloader.downloadReport(ReportDownloader.java:81) >> at >> com.optimine.managers.service.psa.google.DownloadGoogleReportFromNewApi.runExample(DownloadGoogleReportFromNewApi.java:119) >> at >> com.optimine.managers.service.psa.google.DownloadGoogleReportFromNewApi.main(DownloadGoogleReportFromNewApi.java:60) >> Caused by: java.net.SocketTimeoutException: Read timed out >> at java.net.SocketInputStream.socketRead0(Native Method) >> at java.net.SocketInputStream.read(SocketInputStream.java:129) >> at >> com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293) >> at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331) >> at >> com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:830) >> at >> com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:787) >> at >> com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) >> at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) >> at java.io.BufferedInputStream.read1(BufferedInputStream.java:258) >> at java.io.BufferedInputStream.read(BufferedInputStream.java:317) >> at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:690) >> at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633) >> at >> sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1195) >> at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379) >> at >> sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:318) >> at >> com.google.api.client.http.javanet.NetHttpResponse.<init>(NetHttpResponse.java:37) >> at >> com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:101) >> at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:991) >> at >> com.google.api.ads.adwords.lib.utils.AdHocReportDownloadHelper.downloadReport(AdHocReportDownloadHelper.java:101) >> ... 4 more >> >> Could you please help me figure out the issue with Keyword Performance >> Report. Was working fine until last Friday i.e. 26th October 2012. Were >> there any changes to this report? Why is that few accounts are able to >> retrieve data without Date and Impressions fields being added to selector >> where as few other accounts fail quite consistently without these fields? >> >> Any help in resolving the above issue ASAP is greatly appreciated, as >> this is affecting some of our big clients and any change to file format or >> columns requires many changes on our side as these downloaded files are >> picked up and processed automatically by our software >> >> Thanks >> >> -- =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ Also find us on our blog and discussion group: http://adwordsapi.blogspot.com http://groups.google.com/group/adwords-api =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ You received this message because you are subscribed to the Google Groups "AdWords 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