[JIRA] Commented: (CAY-643) Paginates queries are failing

From: Ari Maniatis (JIRA) ("Ari)
Date: Wed Jan 16 2008 - 06:37:33 EST

  • Next message: Tore Halset: "Re: Logging changes?"

        [ https://issues.apache.org/cayenne/browse/CAY-643?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12681#action_12681 ]

    Ari Maniatis commented on CAY-643:
    ----------------------------------

    What an amazing coincidence. After quite some time of not seeing this bug often, we've been hit by a whole pile of them in the last two days with a new customer using our Cayenne based app. I don't know exactly how they trigger the problem, but here is a stack trace. I'll ask Marcin if he has more ideas since he is tracking this one.

    2008-01-08 12:06:12,928 [AWT-EventQueue-0] ERROR ish.oncourse.cayenne.CayenneContext :254 - A fatal error has occurred in onCourse.
    org.apache.cayenne.CayenneRuntimeException: [v.3.0-SNAPSHOT Nov 08 2007 20:57:54] Remote error. URL - 192.168.30.10:8181/angel-server-cayenne; CAUSE - [v.3.0-SNAPSHOT Nov 08 2007 20:57:54] Can't find id for {<ObjectId:Contact, id=130360>; committed; [modifiedOn=>Wed Nov 14 11:04:57 EST 2007; runtimeRelationship0=>(..); contactMalilingLists=>(..); toContacts=>(..); message=>null; paymentsIn=>(..); fromContacts=>(..); isDeleted=>false; fax=>null; id=>130360; firstName=>Joanna; contactDuplicate1=>(..); mobilePhone=>0499970; postcode=>2026; isTutor=>true; webPassword=>7TxxxW; workPhone=>null; tutor=>{<ObjectId:Tutor, id=1023>}; isCompany=>false; street=>PO Box 7072; notes=>null; contactDuplicate2=>(..); homePhone=>9399960; paymentsOut=>(..); birthDate=>null; suburb=>Bondi Beach; lastName=>Mxxxxell; abn=>null; country=>?; tfn=>null; isStudent=>false; state=>NSW; email=>joann..olxxxxxtes.com.au; student=>null; createdOn=>Wed Nov 14 11:04:57 EST 2007; isMale=>false; invoices=>(..); messages=>(..)]}org.apache.cayenne.CayenneRuntimeException: [v.3.0-SNAPSHOT Nov 08 2007 20:57:54] Can't find id for {<ObjectId:Contact, id=130360>; committed; [modifiedOn=>Wed Nov 14 11:04:57 EST 2007; runtimeRelationship0=>(..); contactMalilingLists=>(..); toContacts=>(..); message=>null; paymentsIn=>(..); fromContacts=>(..); isDeleted=>false; fax=>null; id=>130360; firstName=>Joanna; contactDuplicate1=>(..); mobilePhone=>049999370; postcode=>2026; isTutor=>true; webPassword=>7TxxxW; workPhone=>null; tutor=>{<ObjectId:Tutor, id=1023>}; isCompany=>false; street=>PO Box 7072; notes=>null; contactDuplicate2=>(..); homePhone=>939999960; paymentsOut=>(..); birthDate=>null; suburb=>Bondi Beach; lastName=>Mxxxxell; abn=>null; country=>?; tfn=>null; isStudent=>false; state=>NSW; email=>joann..olarisassociates.com.au; student=>null; createdOn=>Wed Nov 14 11:04:57 EST 2007; isMale=>false; invoices=>(..); messages=>(..)]} at org.apache.cayenne.access.IncrementalFaultList$IncrementalListHelper.updateWithResolvedObjectInRange(IncrementalFaultList.java:779) at org.apache.cayenne.access.IncrementalFaultList.resolveInterval(IncrementalFaultList.java:427) at org.apache.cayenne.access.IncrementalFaultList.get(IncrementalFaultList.java:613) at org.apache.cayenne.access.IncrementalFaultList$1.next(IncrementalFaultList.java:527) at org.apache.cayenne.access.ClientServerChannelQueryAction.toClientObjects(ClientServerChannelQueryAction.java:167) at org.apache.cayenne.access.ClientServerChannelQueryAction.interceptObjectConversion(ClientServerChannelQueryAction.java:142) at org.apache.cayenne.access.ClientServerChannelQueryAction.execute(ClientServerChannelQueryAction.java:70) at org.apache.cayenne.access.ClientServerChannel.onQuery(ClientServerChannel.java:82) at org.apache.cayenne.remote.service.DispatchHelper.dispatch(DispatchHelper.java:40) at org.apache.cayenne.remote.service.BaseRemoteService.processMessage(BaseRemoteService.java:153) at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at com.caucho.hessian.server.HessianSkeleton.invoke(HessianSkeleton.java:157) at com.caucho.hessian.server.HessianServlet.service(HessianServlet.java:365) at ish.oncourse.server.CayenneServlet.service(CayenneServlet.java:89) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) 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.content(HttpConnection.java:844) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:227) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) at org.apache.cayenne.remote.hessian.HessianConnection.doSendMessage(HessianConnection.java:145) at org.apache.cayenne.remote.BaseConnection.sendMessage(BaseConnection.java:73) at org.apache.cayenne.remote.ClientChannel.send(ClientChannel.java:276) at org.apache.cayenne.remote.ClientChannel.onQuery(ClientChannel.java:110) at org.apache.cayenne.remote.RemoteIncrementalFaultList.<init>(RemoteIncrementalFaultList.java:121) at org.apache.cayenne.CayenneContextQueryAction.interceptPaginatedQuery(CayenneContextQueryAction.java:66) at org.apache.cayenne.CayenneContextQueryAction.execute(CayenneContextQueryAction.java:50) at org.apache.cayenne.CayenneContext.onQuery(CayenneContext.java:352) at org.apache.cayenne.CayenneContext.performQuery(CayenneContext.java:341) at ish.oncourse.cayenne.CayenneContext.performQuery(CayenneContext.java:225) at ish.oncourse.controller.ListController.updateList(ListController.java:333) at ish.oncourse.controller.find.FindController.findRecord(FindController.java:186) at ish.oncourse.controller.find.FindController.actionPerformed(FindController.java:231) at .... [snipped here]

    > Paginates queries are failing
    > -----------------------------
    >
    > Key: CAY-643
    > URL: https://issues.apache.org/cayenne/browse/CAY-643
    > Project: Cayenne
    > Issue Type: Bug
    > Components: Cayenne Core Library
    > Affects Versions: 1.2 [STABLE]
    > Reporter: Marcin Skladaniec
    > Assignee: Andrus Adamchik
    >
    > The paging feature seems to be broken in the newest builds [v.1.2.1 August 30 2006]
    > To reproduce:
    > create and execute a select query:
    > SelectQuery paginatedQuery = new SelectQuery(CRoom.class);
    > paginatedQuery.setPageSize( pageSize );
    > paginatedQuery.setCachePolicy(SelectQuery.LOCAL_CACHE);
    > List rooms = context.performQuery(paginatedQuery);
    > where pageSize is greater than number of records in the table
    > now iterate through the list.
    > for (int i=0; i< list.size();i++) {
    > Everything is ok, until i< pageSize, when i>pageSize exception like this is thrown:
    > [java] org.objectstyle.cayenne.CayenneRuntimeException: [v.1.2.1 August 30 2006] Remote error. URL - http://localhost:8080/test-server; CAUSE - [v.1.2.1 August 30 2006] [v.1.2.1 August 30 2006] Can't find id for {<ObjectId:Room, id=340>; committed; [willowId=>null; seatedCapacity=>null; modifiedOn=>null; site=>?; directions=>null; facilities=>null; isDeleted=>null; createdOn=>null; name=>room 0]}
    > [java] at org.objectstyle.cayenne.remote.hessian.HessianConnection.doSendMessage(HessianConnection.java:181)
    > [java] at org.objectstyle.cayenne.remote.BaseConnection.sendMessage(BaseConnection.java:109)
    > [java] at org.objectstyle.cayenne.remote.ClientChannel.send(ClientChannel.java:278)
    > [java] at org.objectstyle.cayenne.remote.ClientChannel.onQuery(ClientChannel.java:124)
    > [java] at org.objectstyle.cayenne.util.ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:253)
    > [java] at org.objectstyle.cayenne.CayenneContextQueryAction.execute(CayenneContextQueryAction.java:83)
    > [java] at org.objectstyle.cayenne.CayenneContext.onQuery(CayenneContext.java:326)
    > [java] at org.objectstyle.cayenne.CayenneContext.performQuery(CayenneContext.java:315)
    > [java] at org.objectstyle.cayenne.remote.RemoteIncrementalFaultList.forceResolveInterval(RemoteIncrementalFaultList.java:279)
    > [java] at org.objectstyle.cayenne.remote.RemoteIncrementalFaultList.resolveInterval(RemoteIncrementalFaultList.java:264)
    > [java] at org.objectstyle.cayenne.remote.RemoteIncrementalFaultList.get(RemoteIncrementalFaultList.java:453)
    > [java] at cayenne3t.example.client.Main.listRooms(Unknown Source)
    > [java] at cayenne3t.example.client.Main.execute(Unknown Source)
    > [java] at cayenne3t.example.client.Main.main(Unknown Source)
    > [java] Caused by: org.objectstyle.cayenne.CayenneRuntimeException: [v.1.2.1 August 30 2006] [v.1.2.1 August 30 2006] Can't find id for {<ObjectId:Room, id=340>; committed; [willowId=>null; seatedCapacity=>null; modifiedOn=>null; site=>?; directions=>null; facilities=>null; isDeleted=>null; createdOn=>null; name=>room 0]}
    > [java] at org.objectstyle.cayenne.access.IncrementalFaultList$IncrementalListHelper.updateWithResolvedObjectInRange(IncrementalFaultList.java:796)
    > [java] at org.objectstyle.cayenne.access.IncrementalFaultList.resolveInterval(IncrementalFaultList.java:444)
    > [java] at org.objectstyle.cayenne.access.IncrementalFaultList.subList(IncrementalFaultList.java:721)
    > [java] at org.objectstyle.cayenne.access.ClientServerChannelQueryAction.interceptSinglePageQuery(ClientServerChannelQueryAction.java:131)
    > [java] at org.objectstyle.cayenne.access.ClientServerChannelQueryAction.execute(ClientServerChannelQueryAction.java:101)
    > [java] at org.objectstyle.cayenne.access.ClientServerChannel.onQuery(ClientServerChannel.java:99)
    > [java] at org.objectstyle.cayenne.remote.service.DispatchHelper.dispatch(DispatchHelper.java:76)
    > [java] at org.objectstyle.cayenne.remote.service.BaseRemoteService.processMessage(BaseRemoteService.java:182)
    > [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    > [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    > [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    > [java] at java.lang.reflect.Method.invoke(Method.java:585)
    > [java] at com.caucho.hessian.server.HessianSkeleton.invoke(HessianSkeleton.java:157)
    > [java] at org.objectstyle.cayenne.remote.hessian.service._HessianServlet.service(_HessianServlet.java:388)

    -- 
    This message is automatically generated by JIRA.
    -
    You can reply to this email to add a comment to the issue online.
    



    This archive was generated by hypermail 2.0.0 : Wed Jan 16 2008 - 06:38:00 EST