I tried to use Derby DB 10.0.2.1 as store for JMS messages. Because it is not 
nativelly supported by JBoss 3.2.6 I am using (on Win 2000, JDK 1.5) I made my 
own jms services (after removing original hsqldb-jdbc2-service.xml and 
hsqldb-jdbc-state-service.xml).
My files follow (they are basicaly modified from existing examples):
derby-service.xml

  | <?xml version="1.0" encoding="UTF-8"?>
  | 
  | <!-- $Id: derby-service.xml,v 1.1.2.8 2004/08/20 09:52:22 ejort Exp $ -->
  | 
  | <server>
  | 
  |   <!-- ==================================================================== 
-->
  |   <!-- Persistence and caching using HSQLDB                                 
-->
  |   <!-- See docs/examples/jms for other configurations                       
-->
  |   <!-- ==================================================================== 
-->
  | 
  |   <!--
  |      | The destination manager is the core service within JBossMQ
  |   -->
  |   <mbean code="org.jboss.mq.server.jmx.DestinationManager" 
name="jboss.mq:service=DestinationManager">
  |     <depends 
optional-attribute-name="MessageCache">jboss.mq:service=MessageCache</depends>
  |     <depends 
optional-attribute-name="PersistenceManager">jboss.mq:service=PersistenceManager</depends>
  |     <depends 
optional-attribute-name="StateManager">jboss.mq:service=StateManager</depends>
  |   </mbean>
  | 
  |   <!--
  |      | The MessageCache decides where to put JBossMQ message that
  |      | are sitting around waiting to be consumed by a client.
  |      |
  |      | The memory marks are in Megabytes.  Once the JVM memory usage hits
  |      | the high memory mark, the old messages in the cache will start 
getting
  |      | stored in the DataDirectory.  As memory usage gets closer to the
  |      | Max memory mark, the amount of message kept in the memory cache 
aproaches 0.
  |    -->
  |   <mbean code="org.jboss.mq.server.MessageCache"
  |      name="jboss.mq:service=MessageCache">
  |     <attribute name="HighMemoryMark">50</attribute>
  |     <attribute name="MaxMemoryMark">60</attribute>
  |     <attribute 
name="CacheStore">jboss.mq:service=PersistenceManager</attribute>
  |   </mbean>
  | 
  |   <!-- 
  |      | The jdbc2 PersistenceManager is the new improved JDBC implementation.
  |      | This implementation allows you to control how messages are stored in 
  |      | the database.
  |      |
  |      | Use this PM if you want the reliablity a relational database can 
offer
  |      | you.  The default configuration is known to work with hsqldb, other
  |      | databases will requrie teaking of the SqlProperties e.g. changing 
table
  |      | colum definitions to database supported types.
  |      |
  |      | Take care that the selected blob column type in jms_messages can 
store
  |      | all message data. Some databases (e.g. mySQL) offer blob types with
  |      | different maximum capacity (e.g. mySQL-type BLOB=64K, LONGBLOB=2G).
  |      |
  |      | If you encouter problems with the configured BLOB_TYPE try a 
different
  |      | setting. Valid settings are OBJECT_BLOB, BINARYSTREAM_BLOB and 
BYTES_BLOB.
  |    -->
  |   <mbean code="org.jboss.mq.pm.jdbc2.PersistenceManager"
  |      name="jboss.mq:service=PersistenceManager">
  |     <depends 
optional-attribute-name="ConnectionManager">jboss.jca:service=LocalTxCM,name=MyDS</depends>
  |     <attribute name="SqlProperties">
  |       BLOB_TYPE=BYTES_BLOB
  |       INSERT_TX = INSERT INTO JMS_TRANSACTIONS (TXID) values(?)
  |       INSERT_MESSAGE = INSERT INTO JMS_MESSAGES (MESSAGEID, DESTINATION, 
MESSAGEBLOB, TXID, TXOP) VALUES(?,?,?,?,?)
  |       SELECT_ALL_UNCOMMITED_TXS = SELECT TXID FROM JMS_TRANSACTIONS
  |       SELECT_MAX_TX = SELECT MAX(TXID) FROM JMS_MESSAGES
  |       SELECT_MESSAGES_IN_DEST = SELECT MESSAGEID, MESSAGEBLOB FROM 
JMS_MESSAGES WHERE DESTINATION=?
  |       SELECT_MESSAGE = SELECT MESSAGEID, MESSAGEBLOB FROM JMS_MESSAGES 
WHERE MESSAGEID=? AND DESTINATION=?
  |       MARK_MESSAGE = UPDATE JMS_MESSAGES SET TXID=?, TXOP=? WHERE 
MESSAGEID=? AND DESTINATION=?
  |       UPDATE_MESSAGE = UPDATE JMS_MESSAGES SET MESSAGEBLOB=? WHERE 
MESSAGEID=? AND DESTINATION=?
  |       UPDATE_MARKED_MESSAGES = UPDATE JMS_MESSAGES SET TXID=?, TXOP=? WHERE 
TXOP=?
  |       UPDATE_MARKED_MESSAGES_WITH_TX = UPDATE JMS_MESSAGES SET TXID=?, 
TXOP=? WHERE TXOP=? AND TXID=?
  |       DELETE_MARKED_MESSAGES_WITH_TX = DELETE FROM JMS_MESSAGES WHERE 
TXOP=? AND JMS_MESSAGES.TXID IN (SELECT TXID FROM JMS_TRANSACTIONS)
  |       DELETE_TX = DELETE FROM JMS_TRANSACTIONS WHERE TXID = ?
  |       DELETE_MARKED_MESSAGES = DELETE FROM JMS_MESSAGES WHERE TXID=? AND 
TXOP=?
  |       DELETE_TEMPORARY_MESSAGES = DELETE FROM JMS_MESSAGES WHERE TXOP='T'
  |       DELETE_MESSAGE = DELETE FROM JMS_MESSAGES WHERE MESSAGEID=? AND 
DESTINATION=?
  |       CREATE_MESSAGE_TABLE = CREATE TABLE JMS_MESSAGES ( MESSAGEID INTEGER 
NOT NULL, \
  |          DESTINATION VARCHAR(255) NOT NULL, TXID INTEGER, TXOP CHAR(1), \
  |          MESSAGEBLOB BLOB, PRIMARY KEY (MESSAGEID, DESTINATION) )
  |       CREATE_IDX_MSGS_TXOP_TXID = CREATE INDEX JMS_MESSAGES_TXOP_TXID ON 
JMS_MESSAGES (TXOP, TXID)
  |       CREATE_IDX_MSGS_DEST = CREATE INDEX JMS_MESSAGES_DESTINATION ON 
JMS_MESSAGES (DESTINATION)
  |       CREATE_TX_TABLE = CREATE TABLE JMS_TRANSACTIONS ( TXID INTEGER not 
null, PRIMARY KEY (TXID) )
  |       CREATE_TABLES_ON_STARTUP = TRUE
  |     </attribute>
  |   </mbean>
  |  
  | </server>
  | 

derby-state-service.xml

  | <?xml version="1.0" encoding="UTF-8"?>
  | 
  | <!-- $Id: hsqldb-jdbc-state-service.xml,v 1.1.2.2 2004/03/16 15:13:21 ejort 
Exp $ -->
  | 
  | <server>
  | 
  |   <!-- ==================================================================== 
-->
  |   <!-- JBossMQ State Management using HSQLDB                                
-->
  |   <!-- See docs/examples/jms for other configurations                       
-->
  |   <!-- ==================================================================== 
-->
  |    
  |   <!-- A Statemanager that stores state in the database -->
  |   <mbean code="org.jboss.mq.sm.jdbc.JDBCStateManager"
  |           name="jboss.mq:service=StateManager">
  |     <depends 
optional-attribute-name="ConnectionManager">jboss.jca:service=LocalTxCM,name=TapDS</depends>
  |     <attribute name="SqlProperties">
  |       CREATE_TABLES_ON_STARTUP = TRUE
  |       CREATE_USER_TABLE = CREATE TABLE JMS_USERS (USERID VARCHAR(32) NOT 
NULL, PASSWD VARCHAR(32) NOT NULL, \
  |                                                  CLIENTID VARCHAR(128), 
PRIMARY KEY(USERID))
  |       CREATE_ROLE_TABLE = CREATE TABLE JMS_ROLES (ROLEID VARCHAR(32) NOT 
NULL, USERID VARCHAR(32) NOT NULL, \
  |                                                  PRIMARY KEY(USERID, 
ROLEID))
  |       CREATE_SUBSCRIPTION_TABLE = CREATE TABLE JMS_SUBSCRIPTIONS (CLIENTID 
VARCHAR(128) NOT NULL, \
  |                                                  SUBNAME VARCHAR(128) NOT 
NULL, TOPIC VARCHAR(255) NOT NULL, \
  |                                                  SELECTOR VARCHAR(255), 
PRIMARY KEY(CLIENTID, SUBNAME))
  |       GET_SUBSCRIPTION = SELECT TOPIC, SELECTOR FROM JMS_SUBSCRIPTIONS 
WHERE CLIENTID=? AND SUBNAME=?
  |       LOCK_SUBSCRIPTION = SELECT TOPIC, SELECTOR FROM JMS_SUBSCRIPTIONS 
WHERE CLIENTID=? AND SUBNAME=?
  |       GET_SUBSCRIPTIONS_FOR_TOPIC = SELECT CLIENTID, SUBNAME, SELECTOR FROM 
JMS_SUBSCRIPTIONS WHERE TOPIC=?
  |       INSERT_SUBSCRIPTION = INSERT INTO JMS_SUBSCRIPTIONS (CLIENTID, 
SUBNAME, TOPIC, SELECTOR) VALUES(?,?,?,?)
  |       UPDATE_SUBSCRIPTION = UPDATE JMS_SUBSCRIPTIONS SET TOPIC=?, 
SELECTOR=? WHERE CLIENTID=? AND SUBNAME=?
  |       REMOVE_SUBSCRIPTION = DELETE FROM JMS_SUBSCRIPTIONS WHERE CLIENTID=? 
AND SUBNAME=?
  |       GET_USER_BY_CLIENTID = SELECT USERID, PASSWD, CLIENTID FROM JMS_USERS 
WHERE CLIENTID=?
  |       GET_USER = SELECT PASSWD, CLIENTID FROM JMS_USERS WHERE USERID=?
  |       POPULATE.TABLES.01 = INSERT INTO JMS_USERS (USERID, PASSWD) VALUES 
('guest', 'guest')
  |       POPULATE.TABLES.02 = INSERT INTO JMS_USERS (USERID, PASSWD) VALUES 
('j2ee', 'j2ee')
  |       POPULATE.TABLES.03 = INSERT INTO JMS_USERS (USERID, PASSWD, CLIENTID) 
VALUES ('john', 'needle', 'DurableSubscriberExample')
  |       POPULATE.TABLES.04 = INSERT INTO JMS_USERS (USERID, PASSWD) VALUES 
('nobody', 'nobody')
  |       POPULATE.TABLES.05 = INSERT INTO JMS_USERS (USERID, PASSWD) VALUES 
('dynsub', 'dynsub')
  |       POPULATE.TABLES.06 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('guest','guest')
  |       POPULATE.TABLES.07 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('j2ee','guest')
  |       POPULATE.TABLES.08 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('john','guest')
  |       POPULATE.TABLES.09 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('subscriber','john')
  |       POPULATE.TABLES.10 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('publisher','john')
  |       POPULATE.TABLES.11 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('publisher','dynsub')
  |       POPULATE.TABLES.12 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('durpublisher','john')
  |       POPULATE.TABLES.13 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('durpublisher','dynsub')
  |       POPULATE.TABLES.14 = INSERT INTO JMS_ROLES (ROLEID, USERID) VALUES 
('noacc','nobody')
  |     </attribute>
  |   </mbean>
  | 
  | </server>
  | 

derbydb-ds.xml

  | <?xml version="1.0" encoding="UTF-8"?>
  | 
  | <!-- $Id: derbydb-ds.xml,v 1.1 2004/11/25 12:05:26 pbe Exp $ -->
  | 
  | 
  | <datasources>
  |   <local-tx-datasource>
  |     <jndi-name>MyDS</jndi-name>
  | <!--    
  |     <connection-url>jdbc:derby:derbydb</connection-url>
  |     <driver-class>org.apache.derby.jdbc.EmbeddedDriver</driver-class>
  |     <user-name>sa</user-name>
  |     <password>pass</password>
  |   </local-tx-datasource>
  | 
  | </datasources>
  | 

My deployed application uses the same datasource through Hibernate 2.1.6. Its 
configuration follows:

  | <?xml version="1.0" encoding="utf-8"?>
  | 
  | <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate 
Configuration DTD//EN"
  | "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd";>
  | 
  | <hibernate-configuration>
  |     <session-factory>
  |             <property 
name="hibernate.connection.datasource">java:/MyDS</property>
  | 
  |             <property name="hibernate.connection.pool_size">100</property>
  |             <property name="hibernate.show_sql">false</property>
  |             <property 
name="hibernate.dialect">net.sf.hibernate.dialect.DerbyDialect</property>
  |             <property 
name="hibernate.transaction.factory_class">net.sf.hibernate.transaction.JTATransactionFactory</property>
  |             <property 
name="hibernate.transaction.manager_lookup_class">net.sf.hibernate.transaction.JBossTransactionManagerLookup</property>
  |             <property name="jta.UserTransaction">UserTransaction</property>
  | 
  |             <!-- Mapping files -->
  |             <mapping resource="META-INF/obj1.hbm.xml"/>
  |             <mapping resource="META-INF/obj2.hbm.xml"/>
  |     </session-factory>
  | </hibernate-configuration>
  | 
where Derby dialect was taken from 
http://opensource.atlassian.com/projects/hibernate/browse/HB-1224?page=all

Now, when application runs (messaging intensive, DB intensive), after around 
17000 messages processed it causes deadlock and sometimes duplicate key 
exception. I should mention that during processing of messages, there are 
usually sent new messages, but not always, because it normally ends. Better - 
it is benchmark kind of application and some rounds were already finished and 
it works reliably on different setups (DB, ...). I suspect it is by my setup of 
Derby DB. What could be a problem? Can somebody help me to point me to the 
place made a mistake or where it might be probably located? 

Thank you very much.
Pavol

And yes, here is stacktrace.

  | 2004-12-20 18:00:30,677 WARN  [org.jboss.tm.TransactionImpl] XAException: 
tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=sonic//85768, BranchQual=] 
errorCode=XAER_RMERR
  | org.jboss.mq.SpyXAException: - nested throwable: 
(org.jboss.mq.SpyJMSException: Could not commit tx: 21746; - nested throwable: 
(SQL Exception: A lock could not be obtained due to a deadlock, cycle of locks 
& waiters is:
  | Lock : ROW, JMS_MESSAGES, (33,1)
  |   Waiting XID : {23506287, S} , SA, DELETE FROM JMS_MESSAGES WHERE TXID=? 
AND TXOP=?
  |   Granted XID : {23506292, S} 
  | Lock : ROW, JMS_MESSAGES, (152,1035)
  |   Waiting XID : {23506292, U} , SA, DELETE FROM JMS_MESSAGES WHERE TXID=? 
AND TXOP=?
  |   Granted XID : {23506287, U} 
  | The selected victim is XID : 23506287))
  |     at org.jboss.mq.SpyXAResource.commit(SpyXAResource.java:88)
  |     at 
org.jboss.tm.TransactionImpl.commitResources(TransactionImpl.java:1656)
  |     at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:396)
  |     at org.jboss.tm.TxManager.commit(TxManager.java:142)
  |     at 
org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:361)
  |     at 
org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:877)
  |     at 
org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:159)
  |     at org.jboss.mq.SpySession.run(SpySession.java:351)
  |     at org.jboss.jms.asf.StdServerSession.run0(StdServerSession.java:200)
  |     at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:180)
  |     at 
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
  |     at java.lang.Thread.run(Thread.java:595)
  | Caused by: org.jboss.mq.SpyJMSException: Could not commit tx: 21746; - 
nested throwable: (SQL Exception: A lock could not be obtained due to a 
deadlock, cycle of locks & waiters is:
  | Lock : ROW, JMS_MESSAGES, (33,1)
  |   Waiting XID : {23506287, S} , SA, DELETE FROM JMS_MESSAGES WHERE TXID=? 
AND TXOP=?
  |   Granted XID : {23506292, S} 
  | Lock : ROW, JMS_MESSAGES, (152,1035)
  |   Waiting XID : {23506292, U} , SA, DELETE FROM JMS_MESSAGES WHERE TXID=? 
AND TXOP=?
  |   Granted XID : {23506287, U} 
  | The selected victim is XID : 23506287)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.commitPersistentTx(PersistenceManager.java:581)
  |     at org.jboss.mq.pm.Tx.commit(Tx.java:174)
  |     at org.jboss.mq.pm.TxManager.commitTx(TxManager.java:89)
  |     at 
org.jboss.mq.server.JMSDestinationManager.transact(JMSDestinationManager.java:504)
  |     at 
org.jboss.mq.server.JMSServerInterceptorSupport.transact(JMSServerInterceptorSupport.java:186)
  |     at 
org.jboss.mq.security.ServerSecurityInterceptor.transact(ServerSecurityInterceptor.java:182)
  |     at 
org.jboss.mq.server.TracingInterceptor.transact(TracingInterceptor.java:438)
  |     at 
org.jboss.mq.server.JMSServerInvoker.transact(JMSServerInvoker.java:186)
  |     at org.jboss.mq.il.jvm.JVMServerIL.transact(JVMServerIL.java:327)
  |     at org.jboss.mq.Connection.send(Connection.java:1213)
  |     at 
org.jboss.mq.SpyXAResourceManager.commit(SpyXAResourceManager.java:159)
  |     at org.jboss.mq.SpyXAResource.commit(SpyXAResource.java:84)
  |     ... 11 more
  | Caused by: SQL Exception: A lock could not be obtained due to a deadlock, 
cycle of locks & waiters is:
  | Lock : ROW, JMS_MESSAGES, (33,1)
  |   Waiting XID : {23506287, S} , SA, DELETE FROM JMS_MESSAGES WHERE TXID=? 
AND TXOP=?
  |   Granted XID : {23506292, S} 
  | Lock : ROW, JMS_MESSAGES, (152,1035)
  |   Waiting XID : {23506292, U} , SA, DELETE FROM JMS_MESSAGES WHERE TXID=? 
AND TXOP=?
  |   Granted XID : {23506287, U} 
  | The selected victim is XID : 23506287
  |     at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java)
  |     at 
org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java)
  |     at 
org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java)
  |     at 
org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(EmbedPreparedStatement.java)
  |     at 
org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:335)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.removeMarkedMessages(PersistenceManager.java:608)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.commitPersistentTx(PersistenceManager.java:574)
  |     ... 22 more
  | 2004-12-20 18:00:32,224 WARN  [org.jboss.tm.TransactionImpl] XAException: 
tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=sonic//86041, BranchQual=] 
errorCode=XAER_RMERR
  | org.jboss.mq.SpyXAException: - nested throwable: 
(org.jboss.mq.SpyTransactionRolledBackException: Transaction was rolled back.; 
- nested throwable: (org.jboss.mq.SpyJMSException: Could not create tx: 21850; 
- nested throwable: (SQL Exception: The statement was aborted because it would 
have caused a duplicate key value in a unique or primary key constraint or 
unique index identified by 'SQL041217064028740' defined on 
'JMS_TRANSACTIONS'.)))
  |     at org.jboss.mq.SpyXAResource.prepare(SpyXAResource.java:135)
  |     at 
org.jboss.tm.TransactionImpl.prepareResources(TransactionImpl.java:1556)
  |     at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:385)
  |     at org.jboss.tm.TxManager.commit(TxManager.java:142)
  |     at 
org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:361)
  |     at 
org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:877)
  |     at 
org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:159)
  |     at org.jboss.mq.SpySession.run(SpySession.java:351)
  |     at org.jboss.jms.asf.StdServerSession.run0(StdServerSession.java:200)
  |     at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:180)
  |     at 
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
  |     at java.lang.Thread.run(Thread.java:595)
  | Caused by: org.jboss.mq.SpyTransactionRolledBackException: Transaction was 
rolled back.; - nested throwable: (org.jboss.mq.SpyJMSException: Could not 
create tx: 21850; - nested throwable: (SQL Exception: The statement was aborted 
because it would have caused a duplicate key value in a unique or primary key 
constraint or unique index identified by 'SQL041217064028740' defined on 
'JMS_TRANSACTIONS'.))
  |     at 
org.jboss.mq.server.JMSDestinationManager.transact(JMSDestinationManager.java:490)
  |     at 
org.jboss.mq.server.JMSServerInterceptorSupport.transact(JMSServerInterceptorSupport.java:186)
  |     at 
org.jboss.mq.security.ServerSecurityInterceptor.transact(ServerSecurityInterceptor.java:182)
  |     at 
org.jboss.mq.server.TracingInterceptor.transact(TracingInterceptor.java:438)
  |     at 
org.jboss.mq.server.JMSServerInvoker.transact(JMSServerInvoker.java:186)
  |     at org.jboss.mq.il.jvm.JVMServerIL.transact(JVMServerIL.java:327)
  |     at org.jboss.mq.Connection.send(Connection.java:1213)
  |     at 
org.jboss.mq.SpyXAResourceManager.prepare(SpyXAResourceManager.java:208)
  |     at org.jboss.mq.SpyXAResource.prepare(SpyXAResource.java:131)
  |     ... 11 more
  | Caused by: org.jboss.mq.SpyJMSException: Could not create tx: 21850; - 
nested throwable: (SQL Exception: The statement was aborted because it would 
have caused a duplicate key value in a unique or primary key constraint or 
unique index identified by 'SQL041217064028740' defined on 'JMS_TRANSACTIONS'.)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.insertPersistentTx(PersistenceManager.java:743)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.remove(PersistenceManager.java:1026)
  |     at org.jboss.mq.server.BasicQueue.acknowledge(BasicQueue.java:536)
  |     at org.jboss.mq.server.JMSQueue.acknowledge(JMSQueue.java:123)
  |     at 
org.jboss.mq.server.ClientConsumer.acknowledge(ClientConsumer.java:328)
  |     at 
org.jboss.mq.server.JMSDestinationManager.acknowledge(JMSDestinationManager.java:536)
  |     at 
org.jboss.mq.server.JMSDestinationManager.transact(JMSDestinationManager.java:481)
  |     ... 19 more
  | Caused by: SQL Exception: The statement was aborted because it would have 
caused a duplicate key value in a unique or primary key constraint or unique 
index identified by 'SQL041217064028740' defined on 'JMS_TRANSACTIONS'.
  |     at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java)
  |     at 
org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java)
  |     at 
org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java)
  |     at 
org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(EmbedPreparedStatement.java)
  |     at 
org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:335)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.addTXRecord(PersistenceManager.java:629)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.insertPersistentTx(PersistenceManager.java:738)
  |     ... 25 more
  | 2004-12-20 18:00:32,224 ERROR [org.jboss.jms.asf.StdServerSession] failed 
to commit/rollback
  | org.jboss.tm.JBossRollbackException: Unable to commit, 
tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=sonic//86041, BranchQual=] 
status=STATUS_NO_TRANSACTION; - nested throwable: (org.jboss.mq.SpyXAException: 
- nested throwable: (org.jboss.mq.SpyTransactionRolledBackException: 
Transaction was rolled back.; - nested throwable: 
(org.jboss.mq.SpyJMSException: Could not create tx: 21850; - nested throwable: 
(SQL Exception: The statement was aborted because it would have caused a 
duplicate key value in a unique or primary key constraint or unique index 
identified by 'SQL041217064028740' defined on 'JMS_TRANSACTIONS'.))))
  |     at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:415)
  |     at org.jboss.tm.TxManager.commit(TxManager.java:142)
  |     at 
org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:361)
  |     at 
org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:877)
  |     at 
org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:159)
  |     at org.jboss.mq.SpySession.run(SpySession.java:351)
  |     at org.jboss.jms.asf.StdServerSession.run0(StdServerSession.java:200)
  |     at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:180)
  |     at 
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
  |     at java.lang.Thread.run(Thread.java:595)
  | Caused by: org.jboss.mq.SpyXAException: - nested throwable: 
(org.jboss.mq.SpyTransactionRolledBackException: Transaction was rolled back.; 
- nested throwable: (org.jboss.mq.SpyJMSException: Could not create tx: 21850; 
- nested throwable: (SQL Exception: The statement was aborted because it would 
have caused a duplicate key value in a unique or primary key constraint or 
unique index identified by 'SQL041217064028740' defined on 
'JMS_TRANSACTIONS'.)))
  |     at org.jboss.mq.SpyXAResource.prepare(SpyXAResource.java:135)
  |     at 
org.jboss.tm.TransactionImpl.prepareResources(TransactionImpl.java:1556)
  |     at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:385)
  |     ... 9 more
  | Caused by: org.jboss.mq.SpyTransactionRolledBackException: Transaction was 
rolled back.; - nested throwable: (org.jboss.mq.SpyJMSException: Could not 
create tx: 21850; - nested throwable: (SQL Exception: The statement was aborted 
because it would have caused a duplicate key value in a unique or primary key 
constraint or unique index identified by 'SQL041217064028740' defined on 
'JMS_TRANSACTIONS'.))
  |     at 
org.jboss.mq.server.JMSDestinationManager.transact(JMSDestinationManager.java:490)
  |     at 
org.jboss.mq.server.JMSServerInterceptorSupport.transact(JMSServerInterceptorSupport.java:186)
  |     at 
org.jboss.mq.security.ServerSecurityInterceptor.transact(ServerSecurityInterceptor.java:182)
  |     at 
org.jboss.mq.server.TracingInterceptor.transact(TracingInterceptor.java:438)
  |     at 
org.jboss.mq.server.JMSServerInvoker.transact(JMSServerInvoker.java:186)
  |     at org.jboss.mq.il.jvm.JVMServerIL.transact(JVMServerIL.java:327)
  |     at org.jboss.mq.Connection.send(Connection.java:1213)
  |     at 
org.jboss.mq.SpyXAResourceManager.prepare(SpyXAResourceManager.java:208)
  |     at org.jboss.mq.SpyXAResource.prepare(SpyXAResource.java:131)
  |     ... 11 more
  | Caused by: org.jboss.mq.SpyJMSException: Could not create tx: 21850; - 
nested throwable: (SQL Exception: The statement was aborted because it would 
have caused a duplicate key value in a unique or primary key constraint or 
unique index identified by 'SQL041217064028740' defined on 'JMS_TRANSACTIONS'.)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.insertPersistentTx(PersistenceManager.java:743)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.remove(PersistenceManager.java:1026)
  |     at org.jboss.mq.server.BasicQueue.acknowledge(BasicQueue.java:536)
  |     at org.jboss.mq.server.JMSQueue.acknowledge(JMSQueue.java:123)
  |     at 
org.jboss.mq.server.ClientConsumer.acknowledge(ClientConsumer.java:328)
  |     at 
org.jboss.mq.server.JMSDestinationManager.acknowledge(JMSDestinationManager.java:536)
  |     at 
org.jboss.mq.server.JMSDestinationManager.transact(JMSDestinationManager.java:481)
  |     ... 19 more
  | Caused by: SQL Exception: The statement was aborted because it would have 
caused a duplicate key value in a unique or primary key constraint or unique 
index identified by 'SQL041217064028740' defined on 'JMS_TRANSACTIONS'.
  |     at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java)
  |     at 
org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java)
  |     at 
org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java)
  |     at 
org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java)
  |     at 
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(EmbedPreparedStatement.java)
  |     at 
org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:335)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.addTXRecord(PersistenceManager.java:629)
  |     at 
org.jboss.mq.pm.jdbc2.PersistenceManager.insertPersistentTx(PersistenceManager.java:738)
  |     ... 25 more
  | 

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3859443#3859443

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3859443


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to