Remove yourself. There is a edit my membership link on the right side
of the page. That should take care of these emails.

On Jan 12, 4:35 pm, Rick <[email protected]> wrote:
> Please remove me from this mailing list. Thanks!
>
> On Tue, Jan 12, 2010 at 4:05 PM, Tom Wilson
> <[email protected]>wrote:
>
>
>
> > Can you give examples of what exactly your sending ?
>
> > Also the outline isn't really much help could you post actual code
> > used ?
>
> > Tom Wilson
> > Freelance Google Base Developer and Consultant
> >www.tomthedeveloper.com
>
> > Google Base Tools -http://dev.tomthedeveloper.com/googlebase
> > Featured Project :
> >http://google-code-featured.blogspot.com/2008/02/google-base-competit...
>
> > On Jan 11, 10:14 am, strachjs <[email protected]> wrote:
> > > Hi.  I wonder if anyone can help or has tips on how to diagnose this
> > > problem?...
>
> > > I have written a Java program to upload products to Google Base using
> > > the data API in batch mode.  The program determines what products are
> > > to be amended and then builds and sends the appropriate batch
> > > requests, e.g. inserts, updates or deletes.  Each batch contains 10
> > > entries.  For example, if we have 21 inserts and 5 deletes then 3
> > > insert batches would be sent and 1 delete batch.  To reduce the load
> > > on Google, there is a 2 second sleep after each batch.
>
> > > The program works fine when there are less than about 30 products.
> > > However, if more than this then after a couple of batches have been
> > > sent then Google stops responding and a time-out exception is thrown -
> > > Error: Read timed out (I've set the timeout to 10 minutes).
>
> > > Any ideas why Google should stop responding when so little data has
> > > been transferred?
>
> > > This is an outline of the code:
>
> > >         /* Set-up Google service. */
> > >         GoogleBaseService service =
> > >                 new GoogleBaseService(APPLICATION_NAME,
> > googleFeedDeveloperKey);
> > >         service.setUserCredentials(googleFeedEmail, googleFeedPassword);
> > >         service.setReadTimeout(GOOGLE_BASE_SERVICE_TIMEOUT /*10 mins*/);
> > >         service.setConnectTimeout(GOOGLE_BASE_SERVICE_TIMEOUT /*10
> > mins*/);
> > > .
> > > For inserts (it is a similar for deletes and updates):
> > > .
> > >         URL url = new URL("http://www.google.com/base/feeds/items";);
> > >         GoogleBaseFeed feed = service.getFeed(url);
>
> > >         Link batchLink = feed.getLink(Link.Rel.FEED_BATCH,
> > Link.Type.ATOM);
> > >         URL batchUrl = new URL(batchLink.getHref());
>
> > >         < loop for all products >
>
> > >                 < loop for just 10 products (i.e. each batch contains 10
> > entries) >
>
> > >                         < read productRec from database >
>
> > >                         GoogleBaseEntry entry = new GoogleBaseEntry();
> > >                         feed.addEntry(entry);
>
> > entry.setTitle(TextConstruct.create(TextConstruct.Type.TEXT,
> > > productRec.Title, null));
>
> > entry.setContent(TextConstruct.create(TextConstruct.Type.TEXT,
> > > productRec.Description, null));
> > >                         entry.addHtmlLink(productRec.URL, null, null);
>
> > entry.getGoogleBaseAttributes().setItemType("Products");
>
> > entry.getGoogleBaseAttributes().addTextAttribute("id",
> > > productRec.ID);
>
> > entry.getGoogleBaseAttributes().addImageLink(productRec.ImageURL);
>
> > entry.getGoogleBaseAttributes().addTextAttribute("currency",
> > > "GBP");
>
> > entry.getGoogleBaseAttributes().addFloatAttribute("price",
> > > productRec.Price);
>
> > entry.getGoogleBaseAttributes().addIntAttribute("quantity",
> > > productRec.Quantity);
>
> > entry.getGoogleBaseAttributes().addTextAttribute("condition",
> > > productRec.ProductCondition);
>
> > entry.getGoogleBaseAttributes().addTextAttribute("item_language",
> > > "en");
>
> > entry.getGoogleBaseAttributes().addTextAttribute("target_country",
> > > "GB");
>
> > >                         /* Calculate expire date. */
> > >                         Calendar cal = Calendar.getInstance();
> > >                         cal.add(Calendar.DATE, REFRESHDAYS);
>
> > entry.getGoogleBaseAttributes().setExpirationDate(new DateTime
> > > (cal.getTime()));
>
> > >                         /* Mark for INSERT. */
> > >                         BatchUtils.setBatchOperationType(entry,
> > > BatchOperationType.INSERT);
>
> > >                         /* Assign a unique ID for tracking. */
> > >                         BatchUtils.setBatchId(entry, ""+googleTrackerID);
>
> > >                 < end inner loop >
>
> > >                 /* Send batch of 10 entries. */
> > >                 GoogleBaseFeed result = service.batch(batchUrl, feed);
>
> > >                 *** GOOGLE STOPS RESPONDING AFTER ABOUT 2 BATCHES HAVE
> > BEEN SENT.
> > > ***
>
> > >                 < handle response >
>
> > >                 /* Batch sent - Reset data structure. */
> > >                 feed = service.getFeed(url);
>
> > >                 <snooze for 2 seconds>
>
> > >         < end outer loop >
>
> > > Thanks,
> > > john
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Google Base Data API" group.
> > To post to this group, send email to [email protected]
> > .
> > To unsubscribe from this group, send email to
> > [email protected]<google-base-data-api%2Bun 
> > [email protected]>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/google-base-data-api?hl=en.
-- 
You received this message because you are subscribed to the Google Groups 
"Google Base Data API" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-base-data-api?hl=en.


Reply via email to