2012-02-22 128 views
1

我們有時在嘗試將文件寫入Blobstore時遇到此異常。它通常會出現一兩分鐘,然後一切又恢復正常。 報告在http://code.google.com/p/googleappengine/issues/detail?id=5723 但被標記爲關閉。AppEngine Java:API調用file.Create()花費太長時間來響應並被取消

你們有沒有經歷過這樣的事情?

完整的堆棧跟蹤是:

com.google.apphosting.api.ApiProxy$ApiDeadlineExceededException: The API call file.Create() took too long to respond and was cancelled. 
at java.lang.Thread.getStackTrace(Thread.java:1495) 
at com.google.apphosting.runtime.ApiProxyImpl.doSyncCall(ApiProxyImpl.java:218) 
at com.google.apphosting.runtime.ApiProxyImpl.access$000(ApiProxyImpl.java:67) 
at com.google.apphosting.runtime.ApiProxyImpl$1.run(ApiProxyImpl.java:163) 
at com.google.apphosting.runtime.ApiProxyImpl$1.run(ApiProxyImpl.java:161) 
at java.security.AccessController.doPrivileged(Native Method) 
at com.google.apphosting.runtime.ApiProxyImpl.makeSyncCall(ApiProxyImpl.java:161) 
at com.google.apphosting.runtime.ApiProxyImpl.makeSyncCall(ApiProxyImpl.java:67) 
at com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:101) 
at com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:50) 
at com.google.appengine.api.files.FileServiceImpl.makeSyncCall(FileServiceImpl.java:557) 
at com.google.appengine.api.files.FileServiceImpl.create(FileServiceImpl.java:479) 
at com.google.appengine.api.files.FileServiceImpl.createNewBlobFile(FileServiceImpl.java:99) 
at com.google.appengine.api.files.FileServiceImpl.createNewBlobFile(FileServiceImpl.java:81) 
at ar.com.zupcat.lib.util.BlogstoreUtil.saveToBlogstoreImpl(BlogstoreUtil.java:69) 

謝謝!

回答

3

DeadlineExceededExceptions總是偶爾出現。

您應該始終編寫代碼來處理這些類型的瞬態錯誤,如果可能的話,很可能會在短暫延遲後重試請求。

值得指出的是,API文件仍然是實驗性的,我們會繼續改進它的性能和可靠性 - 但您仍然應該進行防禦編碼。

+1

由於「實驗性」的標籤,抵制我的渴望downvote這個..我總是得到這個錯誤,它是瘋了。 – 2012-05-16 21:03:29

相關問題