Hi Per, The index you need is first by user, then by listPosition - the datastore cannot use the one you specified.
-Nick Johnson 2009/9/25 Per Sandström <[email protected]> > > Im trying to perform this query: > > Query query = pm.newQuery(ListStore.class); > query.setFilter("user == userParam"); > query.setOrdering("listPosition ASC"); > query.declareParameters("long userParam"); > List<ListStore> listStoreLists = (List<ListStore>) query.execute > (user); > > My index looks like this: > > ListStore > listPosition ▲ , user ▲ > Serving > > Still, I get a "DatastoreNeedIndexException". Any suggestions? Full > stacktrace following: > > /checklists > com.google.appengine.api.datastore.DatastoreNeedIndexException: no > matching index found. > at > com.google.appengine.api.datastore.DatastoreApiHelper.translateError > (DatastoreApiHelper.java:35) > at > com.google.appengine.api.datastore.DatastoreApiHelper.makeSyncCall > (DatastoreApiHelper.java:56) > at com.google.appengine.api.datastore.DatastoreServiceImpl > $PreparedQueryImpl.runQuery(DatastoreServiceImpl.java:342) > at com.google.appengine.api.datastore.DatastoreServiceImpl > $PreparedQueryImpl.access$100(DatastoreServiceImpl.java:269) > at com.google.appengine.api.datastore.DatastoreServiceImpl > $PreparedQueryImpl$1.iterator(DatastoreServiceImpl.java:303) > at > > org.datanucleus.store.appengine.query.RuntimeExceptionWrappingIterable.iterator > (RuntimeExceptionWrappingIterable.java:42) > at org.datanucleus.store.appengine.query.StreamingQueryResult.<init> > (StreamingQueryResult.java:77) > at > > org.datanucleus.store.appengine.query.DatastoreQuery.newStreamingQueryResultForEntities > (DatastoreQuery.java:324) > at > org.datanucleus.store.appengine.query.DatastoreQuery.fulfillEntityQuery > (DatastoreQuery.java:310) > at > org.datanucleus.store.appengine.query.DatastoreQuery.performExecute > (DatastoreQuery.java:242) > at org.datanucleus.store.appengine.query.JDOQLQuery.performExecute > (JDOQLQuery.java:84) > at org.datanucleus.store.query.Query.executeQuery(Query.java:1489) > at org.datanucleus.store.query.Query.executeWithArray(Query.java: > 1371) > at org.datanucleus.jdo.JDOQuery.execute(JDOQuery.java:243) > at guestbook.CheckLists.doPost(CheckLists.java:88) > 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: > 487) > at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter > (ServletHandler.java:1093) > at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter > (SaveSessionFilter.java:35) > at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter > (ServletHandler.java:1084) > at > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter > (TransactionCleanupFilter.java:43) > at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter > (ServletHandler.java:1084) > at org.mortbay.jetty.servlet.ServletHandler.handle > (ServletHandler.java:360) > at org.mortbay.jetty.security.SecurityHandler.handle > (SecurityHandler.java:216) > at org.mortbay.jetty.servlet.SessionHandler.handle > (SessionHandler.java:181) > at org.mortbay.jetty.handler.ContextHandler.handle > (ContextHandler.java:712) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: > 405) > at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle > (AppVersionHandlerMap.java:237) > at org.mortbay.jetty.handler.HandlerWrapper.handle > (HandlerWrapper.java:139) > at org.mortbay.jetty.Server.handle(Server.java:313) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: > 506) > at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete > (HttpConnection.java:830) > at > com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable > (RpcRequestParser.java:76) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) > at > > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest > (JettyServletEngineAdapter.java:139) > at com.google.apphosting.runtime.JavaRuntime.handleRequest > (JavaRuntime.java:235) > at com.google.apphosting.base.RuntimePb$EvaluationRuntime > $6.handleBlockingRequest(RuntimePb.java:4950) > at com.google.apphosting.base.RuntimePb$EvaluationRuntime > $6.handleBlockingRequest(RuntimePb.java:4948) > at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest > (BlockingApplicationHandler.java:24) > at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: > 359) > at com.google.net.rpc.impl.Server$2.run(Server.java:823) > at com.google.tracing.LocalTraceSpanRunnable.run > (LocalTraceSpanRunnable.java:56) > at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan > (LocalTraceSpanBuilder.java:516) > at com.google.net.rpc.impl.Server.startRpc(Server.java:778) > at com.google.net.rpc.impl.Server.processRequest(Server.java:351) > at com.google.net.rpc.impl.ServerConnection.messageReceived > (ServerConnection.java:437) > 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: > 428) > at com.google.net.async.EventDispatcher.processNetworkEvents > (EventDispatcher.java:762) > at com.google.net.async.EventDispatcher.internalLoop > (EventDispatcher.java:207) > at com.google.net.async.EventDispatcher.loop(EventDispatcher.java: > 101) > at com.google.net.rpc.RpcService.runUntilServerShutdown > (RpcService.java:251) > at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run > (JavaRuntime.java:392) > at java.lang.Thread.run(Unknown Source) > > > > -- Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
