We are getting 500s due to uncaught ApiDeadlineExceededException in the 
appstats filter for Java.

Is there a way to handle these beyond turning off appstats?

2012-03-24 09:16:49.137

Uncaught exception from servlet
com.google.apphosting.api.ApiProxy$ApiDeadlineExceededException: The API call 
memcache.Set() took too long to respond and was cancelled.
        at 
com.google.apphosting.runtime.ApiProxyImpl$3.createDeadlineException(ApiProxyImpl.java:318)
        at 
com.google.appengine.tools.development.TimedFuture.get(TimedFuture.java:44)
        at 
com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63)
        at 
com.google.appengine.tools.appstats.RecordingFuture.get(RecordingFuture.java:99)
        at 
com.google.appengine.tools.appstats.Recorder.processRecordingFuture(Recorder.java:418)
        at 
com.google.appengine.tools.appstats.Recorder.processAsyncRpc(Recorder.java:391)
        at 
com.google.appengine.tools.appstats.RecordingFuture.maybeRecordStats(RecordingFuture.java:131)
        at 
com.google.appengine.tools.appstats.RecordingFuture.get(RecordingFuture.java:101)
        at 
com.google.appengine.tools.appstats.RecordingFuture$ExtendedFuture.get(RecordingFuture.java:44)
        at 
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:90)
        at 
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:90)
        at 
com.google.appengine.api.memcache.MemcacheServiceImpl.quietGet(MemcacheServiceImpl.java:28)
        at 
com.google.appengine.api.memcache.MemcacheServiceImpl.putAll(MemcacheServiceImpl.java:112)
        at 
com.google.appengine.tools.appstats.MemcacheWriter.persist(MemcacheWriter.java:247)
        at 
com.google.appengine.tools.appstats.MemcacheWriter.commit(MemcacheWriter.java:168)
        at 
com.google.appengine.tools.appstats.AppstatsFilter.doFilter(AppstatsFilter.java:151)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at 
com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:102)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at 
com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at 
com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
        at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
        at 
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at 
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
        at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
        at 
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:249)
        at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
        at 
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
        at 
com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
        at 
com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
        at 
com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:446)
        at 
com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:449)
        at 
com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:455)
        at com.google.tracing.TraceContext.runInContext(TraceContext.java:695)
        at 
com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)
        at 
com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)
        at 
com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:453)
        at 
com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251)
        at java.lang.Thread.run(Thread.java:679)

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/LpX0f-TZRecJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to