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.
