Part of our application on appengine communicates with Amazon S3,
mostly for checking the status of files, etc. (so mostly HEAD and GET
requests, always small payload sizes). Lately (past few weeks) we've
been getting a lot more SocketTimeout exceptions when we do fetches
(async). We had the deadline set on the requests for 10 seconds,
recently tried upping that to 30 until we noticed the documentation
states 10 is the highest.

What happens if you supply a number > 10 for the deadline? Does it set
to default (5), the actual max (10) or something else?

Also, I find it difficult to believe that these basic requests could
be taking as long as they are -- both Google and Amazon have blazing
fast connections so why are HEAD/GET requests with extremely small
(_maybe_ 1kb max) payloads causing timeouts? Some of the requests we
send are delete or copy commands, which I could understand Amazon
taking some time to execute before responding, but we're getting
timeouts when asking Amazon to check existence of a file.

Does anybody have any insights as to what we might be doing
incorrectly to cause this to happen?

Also, here's a sample from our logs, which the timing doesn't seem to
indicate that this isn't even waiting a second before throwing an
exception.

- [25/Aug/2011:10:53:50 -0700] "POST /mim/postUpload HTTP/1.1" 500
0.....
  2011-08-25 13:53:50.338 /mim/postUpload
java.util.concurrent.ExecutionException:
java.net.SocketTimeoutException: Timeout while fetching:

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" 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-appengine?hl=en.

Reply via email to