Hello Andrus, i installed the new jar in out production system and everything seems to work fine so far. It's online for 6 hours and the error didn't happen. Before the patch it took up to 5-6 hours until the error occurred the first time.
I will report again tomorrow. Thanx so far Ayhan Kondoz > -----Ursprüngliche Nachricht----- > Von: Andrus Adamchik [mailto:[EMAIL PROTECTED] > Gesendet: Montag, 25. September 2006 02:32 > An: [email protected] > Betreff: Re: NullPointerException when using shared cache > > Ayhan, Wolfgang and others who have this synchronization issue - I > posted a patched version of 1.2.1 Cayenne: > > http://dev.objectstyle.org/~andrus/cayenne-1.2.1-CAY-565-patched.tar.gz > > I would appreciate very much if you could test it in your environment > and let me know whether it fixes the problem. I posted more comments > and the exact patches that were applies on Jira: > > http://issues.apache.org/cayenne/browse/CAY-565 > > Thanks > Andrus > > > On Sep 12, 2006, at 9:35 AM, Andrus Adamchik wrote: > > > CAY-565 was closed as "Can not reproduce", so there was no fix. I > > reopened this issue, bumping the priority to "Critical". I will add > > synchronization, even though I can't test it. > > > > Andrus > > > > > > On Sep 12, 2006, at 5:51 AM, Ayhan Kondoz wrote: > >> Hello, > >> > >> > >> > >> I am getting NullPointerExceptions when I am trying to use the > >> shared caching feature of cayenne. > >> > >> > >> > >> I have 3 servers. Each server has it's own tomcat / axis > >> webservice and I have an avarage access of about 4 - 5 connections > >> per second. Each connection results in about 3 - 4 select queries > >> and about 20% of the connections result in an additional 2 - 3 > >> insert / update queries. So the servers are working at pretty > >> heavy load. > >> > >> > >> > >> Yesterday I implemented the usage of cayenne's (remote) shared > >> caching feature using JavaGroups and at first everything seemed to > >> work just fine. But after about 1 hour, one of the servers started > >> to produce NullPointerExceptions on every connection. i found this > >> bug ( http://issues.apache.org/cayenne/browse/CAY-565 ) which > >> seems to address my problem but the status is resolved?! > >> > >> > >> > >> i tried cayenne 1.2 and 1.2B1 and in both cases got this > >> exceptions but only if shared caching is activated. When I > >> deactivate caching everything seems to work fine again. > >> > >> It seems that there is a problem with the syncronization. This > >> error occursed when under heavy load and a lot of threads are > >> active at the same time. But if it is really a syncronization > >> problem the same error could occure on every system (even if much > >> more unlikely) even if not under heavy load. > >> > >> > >> > >> Cheers > >> > >> Ayhan Kondoz > >> > >> > >> > >> > >> > >> The exception when using common-collections 3.2 > >> > >> > >> > >> [11.09.06 21:30:32] (ERROR): Entry.next=null, data[removeIndex] > >> =<ObjectId:Customer, > >> id=534080>[EMAIL PROTECTED] > >> {suspended=false, login=christian.hantke1, rec_create=Tue May 02 > >> 00:00:00 CEST 2006, rec_change=Tue May 02 20:18:34 CEST 2006, > >> last_updated=Mon Sep 11 21:28:26 CEST 2006, cid=709779451, > >> id=534080, mandant_id=3}, version=-9223372036854422785, > >> replaces=-9223372036854775808] previous=<ObjectId:Customer, > >> d=534080>[EMAIL PROTECTED] > >> {suspended=false, login=christian.hantke1, rec_create=Tue May 02 > >> 00:00:00 CEST 2006, rec_change=Tue May 02 20:18:34 CEST 2006, > >> last_updated=Mon Sep 11 21:28:26 CEST 2006, cid=709779451, > >> id=534080, mandant_id=3}, version=-9223372036854422785, > >> replaces=-9223372036854775808] key=<Ob > >> > >> jectId:Customer, id=364956> > >> [EMAIL PROTECTED] > >> {suspended=false, login=nadda89, rec_create=Thu Mar 30 00:00:00 > >> CEST 2006, rec_change=Thu Mar 30 22:19:00 CEST 2006, > >> last_updated=Fri Aug 04 16:09:35 CEST 2006, cid=705229711, > >> id=364956, mandant_id=3}, version=-9223372036854407476, > >> replaces=-9223372036854775808] size=10000 maxSize=10000 Please > >> check that your keys are immutable, and that you have used > >> synchronization properly. If so, then please report this to > >> [email protected] as a bug. > >> > >> java.lang.IllegalStateException: Entry.next=null, data[removeIndex] > >> =<ObjectId:Customer, > >> id=534080>[EMAIL PROTECTED] > >> {suspended=false, login=christian.hantke1, rec_create=Tue May 02 > >> 00:00:00 CEST 2006, rec_change=Tue May 02 20:18:34 CEST 2006, > >> last_updated=Mon Sep 11 21:28:26 CEST 2006, cid=709779451, > >> id=534080, mandant_id=3}, version=-9223372036854422785, > >> replaces=-9223372036854775808] previous=<ObjectId:Customer, > >> id=534080>[EMAIL PROTECTED] > >> {suspended=false, login=christian.hantke1, rec_create=Tue May 02 > >> 00:00:00 CEST 20 06, rec_change=Tue May 02 20:18:34 CEST 2006, > >> last_updated=Mon Sep 11 21:28:26 CEST 2006, cid=709779451, > >> id=534080, mandant_id=3}, version=-9223372036854422785, > >> replaces=-9223372036854775808] key=<ObjectId:Customer, id=364956> > >> [EMAIL PROTECTED] > >> {suspended=false, login=nadda89, rec_create=Thu Mar 30 00:00:00 > >> CEST 2006, rec_change=Thu Mar 30 22:19:00 CEST 2006, > >> last_updated=Fri Aug 04 16:09:35 CEST 2006, cid=705229711, > >> id=364956, mandant_id=3}, version=-9223372036854407476, > >> replaces=-9223372036854775808] size=10000 maxSize=10000 Please > >> check that your keys are immutable, and that you have used > >> synchronization properly. If so, then please report this to > >> [email protected] as a bug. > >> > >> at org.apache.commons.collections.map.LRUMap.reuseMapping > >> (LRUMap.java:300) > >> > >> at org.apache.commons.collections.map.LRUMap.addMapping > >> (LRUMap.java:266) > >> > >> at org.apache.commons.collections.map.AbstractHashedMap.put > >> (AbstractHashedMap.java:283) > >> > >> at > >> org.objectstyle.cayenne.access.DataRowStore.processUpdatedSnapshots > >> (DataRowStore.java:537) > >> > >> at > >> org.objectstyle.cayenne.access.DataRowStore.processSnapshotChanges > >> (DataRowStore.java:496) > >> > >> at > >> org.objectstyle.cayenne.access.ObjectStore.snapshotsUpdatedForObjects > >> (ObjectStore.java:559) > >> > >> at > >> org.objectstyle.cayenne.access.ObjectResolver.objectsFromDataRows > >> (ObjectResolver.java:162) > >> > >> at > >> org.objectstyle.cayenne.access.ObjectResolver.synchronizedObjectsFrom > >> DataRows(ObjectResolver.java:137) > >> > >> at > >> org.objectstyle.cayenne.access.DataDomainQueryAction.interceptObjectC > >> onversion(DataDomainQueryAction.java:363) > >> > >> at > >> org.objectstyle.cayenne.access.DataDomainQueryAction.execute > >> (DataDomainQueryAction.java:151) > >> > >> at org.objectstyle.cayenne.access.DataDomain.onQuery > >> (DataDomain.java:715) > >> > >> at > >> org.objectstyle.cayenne.util.ObjectContextQueryAction.runQuery > >> (ObjectContextQueryAction.java:249) > >> > >> at > >> org.objectstyle.cayenne.access.DataContextQueryAction.execute > >> (DataContextQueryAction.java:90) > >> > >> at org.objectstyle.cayenne.access.DataContext.onQuery > >> (DataContext.java:1320) > >> > >> at org.objectstyle.cayenne.access.DataContext.performQuery > >> (DataContext.java:1309) > >> > >> > >> > >> The exception when using common-collections 3.1 > >> > >> > >> > >> [11.09.06 15:29:13] (ERROR): > >> > >> java.lang.NullPointerException > >> > >> at org.apache.commons.collections.map.LRUMap.reuseMapping > >> (LRUMap.java:272) > >> > >> at org.apache.commons.collections.map.LRUMap.addMapping > >> (LRUMap.java:243) > >> > >> at org.apache.commons.collections.map.AbstractHashedMap.put > >> (AbstractHashedMap.java:282) > >> > >> at > >> org.objectstyle.cayenne.access.DataRowStore.processUpdatedSnapshots > >> (DataRowStore.java:612) > >> > >> at > >> org.objectstyle.cayenne.access.DataRowStore.processSnapshotChanges > >> (DataRowStore.java:571) > >> > >> at > >> org.objectstyle.cayenne.access.DataRowStore.snapshotsUpdatedForObject > >> s(DataRowStore.java:313) > >> > >> at > >> org.objectstyle.cayenne.access.ObjectResolver.objectsFromDataRows > >> (ObjectResolver.java:159) > >> > >> at > >> org.objectstyle.cayenne.access.ObjectResolver.synchronizedObjectsFrom > >> DataRows(ObjectResolver.java:134) > >> > >> at > >> org.objectstyle.cayenne.access.DataDomainQueryAction.interceptObjectC > >> onversion(DataDomainQueryAction.java:373) > >> > >> at > >> org.objectstyle.cayenne.access.DataDomainQueryAction.execute > >> (DataDomainQueryAction.java:151) > >> > >> at org.objectstyle.cayenne.access.DataDomain.onQuery > >> (DataDomain.java:766) > >> > >> at > >> org.objectstyle.cayenne.util.ObjectContextQueryAction.runQuery > >> (ObjectContextQueryAction.java:253) > >> > >> at > >> org.objectstyle.cayenne.access.DataContextQueryAction.execute > >> (DataContextQueryAction.java:90) > >> > >> at org.objectstyle.cayenne.access.DataContext.onQuery > >> (DataContext.java:1422) > >> > >> at org.objectstyle.cayenne.access.DataContext.performQuery > >> (DataContext.java:1411) > >> > >> > >> > >> > >> > >> > >> > >> Ayhan Kondoz > >> > >> > >> > >> Software-Entwicklung > >> > >> > >> > >> --------------------------------------------------------------------- > >> ------------- > >> > >> Telefon: +49 (0) 40 513 06 616 > >> > >> Telefax: +49 (0) 40 513 06 998 616 > >> > >> E-Mail: [EMAIL PROTECTED] > >> <mailto:[EMAIL PROTECTED]> > >> > >> Website: http://www.freenet.de <http://www.freenet.de/> ; http:// > >> www.freenet-ag.de <http://www.freenet-ag.de/> > >> > >> --------------------------------------------------------------------- > >> ------------- > >> > >> freenet.de AG > >> > >> Deelbögenkamp 4c > >> > >> 22297 Hamburg > >> > >> --------------------------------------------------------------------- > >> ------------- > >> > >> Vorsitzender des Aufsichtsrates: Prof. Dr. Helmut Thoma > >> > >> Vorstand: Eckhard Spoerr (Vors.), > >> Axel Krieger, Stephan Esch, Eric Berger > >> > >> Amtsgericht Hamburg HRB 74048 > >> > >> > >> > >> > >> > >> Diese Information ist ausschließlich für die adressierte Person > >> oder Organisation bestimmt und könnte vertrauliches und/oder > >> privilegiertes Material enthalten. Personen oder Organisationen, > >> für die diese Information nicht bestimmt ist, ist es nicht > >> gestattet, diese zu lesen, erneut zu übertragen, zu verbreiten, > >> anderweitig zu verwenden oder sich durch sie veranlasst zu sehen, > >> Maßnahmen irgendeiner Art zu ergreifen. Sollten Sie diese > >> Nachricht irrtümlich erhalten haben, bitten wir Sie, sich mit dem > >> Absender in Verbindung zu setzen und das Material von Ihrem > >> Computer zu löschen. > >> > >> > >> > >> The information transmitted is intended only for the person or > >> entity to which it is addressed and may contain confidential and/ > >> or privileged material. Any review, retransmission, dissemination > >> or other use of, or taking of any action in reliance upon, this > >> information by persons or entities other than the intended > >> recipient is prohibited. If you received this in error, please > >> contact the sender and delete the material from any computer. > >> > >> > >> > > > >
