Hi,
I am just kicking off with this. I hope to get a hello world and a
couple of my own simple forms running before I look at the code more
seriously.
I have Collect 1.1.4 running on a Nexus One. I have the Aggregate
running on my Mac and can upload forms to it 0.9.2 but when I put in
on google app spot I get errors about DatastoreNeedIndexException. I
have pasted an error log below.
The indexes mentioned in the datastore-indexes.xml on my Mac appear in
the Google application control panel so it looks like they are there.
Is there something obvious from this I am doing wrong? In what
direction should I look?
Many thanks for this,
Roger
06-03 02:39AM 30.585 /submission 500 9906ms 7335cpu_ms 238api_cpu_ms
0kb gzip(gfe)
217.171.129.70 - - [03/Jun/2010:02:39:40 -0700] "POST /submission HTTP/
1.1" 500 0 - "gzip(gfe)" "hyam2772.appspot.com"
W 06-03 02:39AM 38.669
org.datanucleus.store.appengine.MetaDataValidator warn: Meta-data
warning for org.odk.aggregate.form.Form.elementTreeRoot: The datastore
does not support joins and therefore cannot honor requests to eagerly
load related objects. The field will be fetched lazily on first
access. You can modify this warning by setting the
datanucleus.appengine.ignorableMetaDataBehavior property in your
config. A value of NONE will silence the warning. A value of ERROR
will turn the warning into an exception.
C 06-03 02:39AM 40.462
Uncaught exception from servlet
java.io.IOException:
com.google.appengine.api.datastore.DatastoreNeedIndexException: no
matching index found..
at
org.odk.aggregate.servlet.SubmissionServlet.doPost(SubmissionServlet.java:
117)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
511)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1166)
at
com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:
97)
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:
238)
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.handleRequest(JavaRuntime.java:
250)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime
$6.handleBlockingRequest(RuntimePb.java:5838)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime
$6.handleBlockingRequest(RuntimePb.java:5836)
at
com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:
24)
at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:
398)
at com.google.net.rpc.impl.Server$2.run(Server.java:852)
at
com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:
56)
at
com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:
576)
at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
at
com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:
442)
at
com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:
319)
at
com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:
290)
at com.google.net.async.Connection.handleReadEvent(Connection.java:
474)
at
com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:
831)
at
com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:
207)
at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:
103)
at
com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:
251)
at com.google.apphosting.runtime.JavaRuntime
$RpcRunnable.run(JavaRuntime.java:413)
at java.lang.Thread.run(Unknown Source)
Caused by:
com.google.appengine.api.datastore.DatastoreNeedIndexException: no
matching index found..
at
com.google.appengine.api.datastore.DatastoreApiHelper.translateError(DatastoreApiHelper.java:
40)
at
com.google.appengine.api.datastore.DatastoreApiHelper.makeSyncCall(DatastoreApiHelper.java:
67)
at
com.google.appengine.api.datastore.PreparedQueryImpl.runQuery(PreparedQueryImpl.java:
127)
at
com.google.appengine.api.datastore.PreparedQueryImpl.asIterator(PreparedQueryImpl.java:
87)
at com.google.appengine.api.datastore.BasePreparedQuery
$1.iterator(BasePreparedQuery.java:26)
at
org.datanucleus.store.appengine.DatastoreElementContainerStoreSpecialization.getChildren(DatastoreElementContainerStoreSpecialization.java:
105)
at
org.datanucleus.store.appengine.DatastoreFKListStore.listIterator(DatastoreFKListStore.java:
48)
at
org.datanucleus.store.mapped.scostore.AbstractListStore.listIterator(AbstractListStore.java:
84)
at
org.datanucleus.store.mapped.scostore.AbstractListStore.iterator(AbstractListStore.java:
74)
at org.datanucleus.sco.backed.List.loadFromStore(List.java:241)
at org.datanucleus.sco.backed.List.iterator(List.java:507)
at
org.odk.aggregate.parser.SubmissionParser.parseSubmissionElement(SubmissionParser.java:
298)
at
org.odk.aggregate.parser.SubmissionParser.processSubmissionElement(SubmissionParser.java:
239)
at
org.odk.aggregate.parser.SubmissionParser.constructorHelper(SubmissionParser.java:
175)
at
org.odk.aggregate.parser.SubmissionParser.(SubmissionParser.java:
128)
at
org.odk.aggregate.servlet.SubmissionServlet.doPost(SubmissionServlet.java:
114)
... 43 more
I 06-03 02:39AM 40.489
This request caused a new process to be started for your application,
and thus caused your application code to be loaded for the first time.
This request may thus take longer and use more CPU than a typical
request for your application.
06-03 02:24AM 33.891 /upload 500 3236ms 3172cpu_ms 1714api_cpu_ms 6kb
Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/
533.4 (KHTML, like Gecko) Chrome/5.0.375.55 Safari/533.4,gzip(gfe)
C 06-03 02:24AM 37.122 Uncaught exception from servlet
com.google.appengine.api.datastore.DatastoreNeedIndexException: no
matching index found.. <datastore-index kind="