I'm using 1.0RC3 and running into the following error:
"ConnectionManager is already in transaction"
when trying to commit a new transaction to the DB.
Any queries by criteria or identity work properly.
The method is a member of a class that is extended by others -- items to be written to
the DB are passed as generic objects.
Suggestions? What am I doing incorrectly?
Dave
Code is as follows:
---------------------
protected void Put (Object o, Class c) {
Transaction tx = odmg.newTransaction();
tx.begin();
try {
// lock the product for write access
tx.lock(o, tx.WRITE);
tx.commit();
} catch (Throwable t) {
tx.abort();
log.error("Put failed for " + c.getName() + " : " + t);
}
}
Stack is as follows:
------------------------
[org.apache.ojb.broker.accesslayer.JdbcAccessImpl] ERROR: PersistenceBrokerException
during the execution of the insert: ConnectionManager is already in transaction
ConnectionManager is already in transaction
org.apache.ojb.broker.TransactionInProgressException: ConnectionManager is already in
transaction
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.beginTransaction(PersistenceBrokerImpl.java:361)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.beginTransaction(DelegatingPersistenceBroker.java:114)
at
org.apache.ojb.broker.util.sequence.SequenceManagerHighLowImpl.getSequence(SequenceManagerHighLowImpl.java:260)
at
org.apache.ojb.broker.util.sequence.SequenceManagerHighLowImpl.getUniqueLong(SequenceManagerHighLowImpl.java:201)
at
org.apache.ojb.broker.util.sequence.AbstractSequenceManager.getUniqueId(AbstractSequenceManager.java:252)
at
org.apache.ojb.broker.util.sequence.AbstractSequenceManager.getUniqueValue(AbstractSequenceManager.java:167)
at
org.apache.ojb.broker.util.BrokerHelper.getAutoIncrementValue(BrokerHelper.java:303)
at
org.apache.ojb.broker.util.BrokerHelper.getValuesForObject(BrokerHelper.java:349)
at
org.apache.ojb.broker.util.BrokerHelper.getAllRwValues(BrokerHelper.java:380)
at
org.apache.ojb.broker.accesslayer.StatementManager.getAllValues(StatementManager.java:725)
at
org.apache.ojb.broker.accesslayer.StatementManager.bindInsert(StatementManager.java:487)
at
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAccessImpl.java:198)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1919)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1834)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1792)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:161)
at org.apache.ojb.odmg.states.StateNewDirty.commit(StateNewDirty.java:148)
at
org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(ObjectEnvelopeTable.java:234)
at org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:189)
at
org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:342)
at org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:595)
at org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:545)
at net.messagecast.rec.RecOJBMgr.Put(RecOJBMgr.java:83)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]