Hello all, I'm still having problems as I stated in my previous "Rollback problems" 
threads and am sending this out again in hope of some answers. What's happening is 
that I try to insert a value that is already in the database, I get a duplicate entry 
excep, I try to rollback the database, then castor prints out the stack trace for a 
nullpointerexception, it doesn't throw it so I can catch and handle it my self.

After that I can no longer get locks on any of the data and keep getting 
readLockTimeOuts.

They NPE is with the DuplicatEntry :

java.lang.NullPointerException: Adding null value is not allowed
        at org.exolab.castor.persist.FieldMolder.addValue(FieldMolder.java:274)
        at 
org.exolab.castor.persist.CollectionProxy$ColProxy.add(ClassMolder.java:3141)
        at org.exolab.castor.persist.ClassMolder.revertObject(ClassMolder.java:2551)
        at org.exolab.castor.persist.LockEngine.revertObject(LockEngine.java:850)
        at 
org.exolab.castor.persist.TransactionContext.rollback(TransactionContext.java:1720)
        at org.exolab.castor.jdo.engine.DatabaseImpl.rollback(DatabaseImpl.java:536)
        at 
com.vort.help.impl.CommandRecieverImpl.executeCommand(CommandRecieverImpl.java:51)
        at 
com.vort.help.tests.EmployeeTester.testCreateEmployee(EmployeeTester.java:128)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at 
org.netbeans.modules.junit.testrunner.JUnitTestRunner.doRun(JUnitTestRunner.java:277)
        at 
org.netbeans.modules.junit.testrunner.JUnitTestRunner.start(JUnitTestRunner.java:325)
        at 
org.netbeans.modules.junit.testrunner.JUnitTestRunner.main(JUnitTestRunner.java:189)
org.exolab.castor.jdo.DuplicateIdentityException: Duplicate identity found for object 
of type com.vort.help.beans.Employee with identity nstuarttest: an object with the 
same identity already exists in persistent storage
        at org.exolab.castor.jdo.engine.SQLEngine.create(SQLEngine.java:675)
        at org.exolab.castor.persist.ClassMolder.create(ClassMolder.java:912)
        at org.exolab.castor.persist.LockEngine.create(LockEngine.java:454)
        at 
org.exolab.castor.persist.TransactionContext.create(TransactionContext.java:883)
        at org.exolab.castor.jdo.engine.DatabaseImpl.create(DatabaseImpl.java:363)
        at com.vort.help.commands.AddEmployee.execute(AddEmployee.java:45)
        at 
com.vort.help.impl.CommandRecieverImpl.executeCommand(CommandRecieverImpl.java:46)
        at 
com.vort.help.tests.EmployeeTester.testCreateEmployee(EmployeeTester.java:128)
                .....

Where the transaction time outs are:
2004-03-19 12:26:53,701 [main] DEBUG com.vort.help.commands - StackTrace:
org.exolab.castor.jdo.LockNotGrantedException: 
persist.readLockTimeoutcom.vort.help.beans.Department/11/0 by [EMAIL PROTECTED]
        at org.exolab.castor.persist.ObjectLock.acquireLoadLock(ObjectLock.java:431)
        at org.exolab.castor.persist.LockEngine$TypeInfo.acquire(LockEngine.java:1184)
        at 
org.exolab.castor.persist.LockEngine$TypeInfo.access$300(LockEngine.java:1011)
        at org.exolab.castor.persist.LockEngine.load(LockEngine.java:352)
        at 
org.exolab.castor.persist.TransactionContext.load(TransactionContext.java:649)
        at org.exolab.castor.persist.QueryResults.fetch(QueryResults.java:229)
        at 
org.exolab.castor.jdo.engine.OQLQueryImpl$OQLEnumeration.next(OQLQueryImpl.java:697)
        at 
org.exolab.castor.jdo.engine.OQLQueryImpl$OQLEnumeration.next(OQLQueryImpl.java:670)
        at com.vort.help.commands.GetDepartment.execute(GetDepartment.java:57)
        at 
com.vort.help.impl.CommandRecieverImpl.executeCommand(CommandRecieverImpl.java:46)
        at com.vort.help.tests.EmployeeTester.testLoad(EmployeeTester.java:142)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
.....


Thanks for any assitance.
        -Nick

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.634 / Virus Database: 406 - Release Date: 3/18/2004
 

----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-dev

Reply via email to