I am using the DocList API through gdata to download a document to a String.
I am using the downloadFile method in the sample code DocumentList, which
gets a MediaSource from DocsService and uses that to get the document
content.

It works. I can download a document and it generally behaves as expected.

But, the performance is very erratic. Often times the time exceeds the
URLFetch cut-off and it fails. Occasionally it will also throw an exception.

Here is an example for running the same downloadFile method 10 times. This
is being run in the Eclipse GAE sandbox and so it doesn't get cut-off at the
URLFetch time limit. For 10 sample runs, I get the following times for
completion of the downloadFile method:

(in seconds)
52.5
33.9
2.2
39.7
0.7
1.4
0.6
0.8
60.8
ERROR (com.google.gdata.util.InvalidEntryException: Bad Request
Sorry, that file is corrupt, or an unknown format.)

This is a typical run. Half are fast (<2s), almost half are slow (>40s) and
then one exception.

So -- is this typical?

And, if this is typical, what is a best-practice way to work-around this on
GAE? For downloading, I could just catch the exceptions and re-try it until
it works, but if I am uploading a file, that could leave me having uploaded
a file twice, or in some other unwanted state.

Thanks!

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to