Re: NullPointerException in LRUMap.reuseMapping (was DataRowStore.processUpdatedSnapshots)

From: Lothar Krenzien (lkrenzie..eb.de)
Date: Tue Jun 13 2006 - 11:38:02 EDT

  • Next message: Lothar Krenzien: "Re: FaultFailureException"

    Thanks for answer.

    I've synchronized all acces to the member fields "snapshots" and "snapshotLists" (which are of type LRUMap) ) in the class "DataRowStore" and the problem went away. Additionally I changed the visibility for this two fields from "protected" to "private" and created a (synchronized) getter for both. In the class "DataDomainQueryAction" in method "interceptOIDQuery" I changed the line 187 from "cache.snapshots" to "cache.getSnapshots()" so that I use the new created getter instead of direct access to the field.

    If it helps you I could send you the changed sources or check in it in subversion.

    Hope that helps
    Lothar

    > On Jun 9, 2006, at 3:26 PM, Lothar Krenzien wrote:
    > > Hi there ,
    > >
    > > I'm using the recent Cayenne version with Tomcat 5.5 and Java 5.
    > > Since a few days I get very often a NullPointerException from
    > > cayenne. Analysing the stack trace it seems that the exception is
    > > thrown by Apache's commons collection class LRUMap. I've found a
    > > possible solution at BugZilla:
    > > http://issues.apache.org/bugzilla/show_bug.cgi?id=32573
    > >
    > > There it is saied that it could be a synchronising problem. And I'm
    > > getting the exeption only after a while the server is running and
    > > lots of users are connected. Would it be possible to try the
    > > suggestions from BugZilla? There's another post of the same
    > > excption in this group a few days ago. So it seems to be a very
    > > serious problem.
    > > http://www.objectstyle.org/cayenne/lists/cayenne-user/
    > > 2006/06/0017.html
    >
    > Since you and Bryan are seeing the same issue independently, I'd say
    > this is a real bug. There are mixed reports under the LRUMap Bugzilla
    > ticket above on whether synchronizing the LRUMap fixes it. In any
    > event we'll have to deal with it in Cayenne in some way, so I opened
    > a Jira ticket [1] and will investigate.
    >
    >
    > > What I've just realized that cayenne comes with it's own copy of
    > > common collections packed in the cayenne.jar. For me that seems not
    > > be very usefull. Instead of it I would prefer a link on the cayenne
    > > download page. That way I could independently update cayenne and/
    > > or commons collection.
    >
    > It is up to you whether to use bundled commons-collections or not.
    > There are cayenne.jar and cayenne-nodeps.jar [2].
    >
    > [1] http://issues.apache.org/cayenne/browse/CAY-565
    > [2] http://objectstyle.org/confluence/display/CAYDOC/JAR+Files+and
    > +Dependencies
    >
    > Andrus
    >

    ______________________________________________________________
    Verschicken Sie romantische, coole und witzige Bilder per SMS!
    Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193



    This archive was generated by hypermail 2.0.0 : Tue Jun 13 2006 - 11:38:27 EDT