Google App Engine内部错误/数据存储失败

时间:2013-06-25 14:05:00

标签: java google-app-engine google-cloud-datastore gae-sessions

我今天在app引擎应用程序中遇到了一个奇怪的问题。它突然停止了工作。有趣的是,当我检查日志时,在两个不同的时间在应用程序的同一页面中有2个不同的错误。在一个错误中,我发现了一些与会话相关的问题,初始化会话对象时出错(异常消息:内部错误)。我读了第二条评论here,但对答案不太满意。而在另一个错误中,数据存储区对象检索中存在异常(异常消息:数据存储区故障)。我的一位同事表示,app引擎中的实例更改可能存在问题。几分钟后,它开始工作,没有任何改变。请帮我找到解决方案,以避免将来出现这种情况。以下是一个错误的堆栈跟踪:

Exception message : internal error.         com.google.appengine.api.datastore.DatastoreApiHelper.translateError(DatastoreApiHelper.java:53)
com.google.appengine.api.datastore.DatastoreApiHelper$1.convertException(DatastoreApiHelper.java:76)
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:106)
com.google.appengine.api.datastore.FutureHelper$CumulativeAggregateFuture.get(FutureHelper.java:145)
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:90)
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:90)
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:90)
com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:90)
com.google.appengine.api.datastore.FutureHelper.getInternal(FutureHelper.java:72)
com.google.appengine.api.datastore.FutureHelper.quietGet(FutureHelper.java:33)
com.google.appengine.api.datastore.DatastoreServiceImpl$2.runInternal(DatastoreServiceImpl.java:113)
com.google.appengine.api.datastore.DatastoreServiceImpl$2.runInternal(DatastoreServiceImpl.java:110)
com.google.appengine.api.datastore.TransactionRunner.runInTransaction(TransactionRunner.java:31)
com.google.appengine.api.datastore.DatastoreServiceImpl.put(DatastoreServiceImpl.java:110)
com.google.appengine.api.datastore.DatastoreServiceImpl.put(DatastoreServiceImpl.java:94)
com.google.apphosting.runtime.jetty.DatastoreSessionStore.saveSession(DatastoreSessionStore.java:94)
com.google.apphosting.runtime.jetty.SessionManager.createSession(SessionManager.java:349)
com.google.apphosting.runtime.jetty.SessionManager$AppEngineSession.<init>    (SessionManager.java:122)
com.google.apphosting.runtime.jetty.SessionManager.newSession(SessionManager.java:280)
com.google.apphosting.runtime.jetty.SessionManager.newSession(SessionManager.java:35)
org.mortbay.jetty.servlet.AbstractSessionManager.newHttpSession(AbstractSessionManager.java:413)
org.mortbay.jetty.Request.getSession(Request.java:1242)
com.example.MyServlet.doGet(MyServlet.java:54)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

以下是其他错误的堆栈跟踪:

Exception message : Datastore Failure
org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:304)
org.datanucleus.jdo.JDOPersistenceManager.getObjectById(JDOPersistenceManager.java:1676)
org.datanucleus.jdo.JDOPersistenceManager.getObjectById(JDOPersistenceManager.java:1767)
org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManager.getObjectById(DatastoreJDOPersistenceManager.java:73)
com.example.searchObject(MyClass1.java:273)
com.example.MyClass2.getObject(MyClass2.java:126)     
com.example.MyServlet.doGet(MyServlet.java:87)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

谢谢!

0 个答案:

没有答案