activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jandeclercq <jan.decle...@alsic.be>
Subject Informix as persistence adapter is not working
Date Fri, 17 Jun 2011 13:48:21 GMT
Hey, 


I'm using informix as persistence adapter. But it is not working.  80% of
the messages dissapear in the void.


My activemq.xml configuration:



 &lt;persistenceAdapter&gt;
      &lt;jdbcPersistenceAdapter
dataDirectory="/opt/hms/HMSBroker/data/jdbcDB"
dataSource="#informix-ds"/&gt;
&lt;/persistenceAdapter&gt;




&lt;bean id="informix-ds" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close"&gt;
    &lt;property name="driverClassName"
value="com.informix.jdbc.IfxDriver"/&gt;
    &lt;property name="url"
value="jdbc:informix-sqli://10.1.1.9:9088/activemq2:informixserver=HMSCDBTEST;user=informix;password=informix"/&gt;
    &lt;property name="username" value="informix"/&gt;
    &lt;property name="password" value="informix"/&gt;
    &lt;property name="maxActive" value="200"/&gt;
    &lt;property name="poolPreparedStatements" value="true"/&gt;
&lt;/bean&gt;


This is the error that appears in the activemq.log:




2011-06-17 11:45:01,715 | WARN  |
org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | Error while closing
connection: Could not insert new row into the table. |
 java.sql.BatchUpdateException: Could not insert new row into the table.
	at
com.informix.jdbc.IfxPreparedStatement.executeBatch(IfxPreparedStatement.java:3641)
	at
org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
	at
org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
	at
org.apache.activemq.store.jdbc.TransactionContext.executeBatch(TransactionContext.java:103)
	at
org.apache.activemq.store.jdbc.TransactionContext.executeBatch(TransactionContext.java:81)
	at
org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:129)
	at
org.apache.activemq.store.jdbc.JDBCMessageStore.addMessage(JDBCMessageStore.java:109)
	at
org.apache.activemq.store.memory.MemoryTransactionStore.addMessage(MemoryTransactionStore.java:285)
	at
org.apache.activemq.store.memory.MemoryTransactionStore$1.addMessage(MemoryTransactionStore.java:134)
	at org.apache.activemq.broker.region.Queue.doMessageSend(Queue.java:682)
	at org.apache.activemq.broker.region.Queue.send(Queue.java:653)
	at
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:365)
	at
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:523)
	at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)
	at
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)
	at
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:227)
	at
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)
	at
org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:458)
	at
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:681)
	at
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:306)
	at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:179)
	at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
	at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
	at
org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:218)
	at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:127)
	at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48)
	at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
	at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
	at java.lang.Thread.run(Thread.java:736)
2011-06-17 11:45:01,716 | ERROR | hms.broker.BrokerMessageListener | Message
could not be send! |
 javax.jms.JMSException: Could not insert new row into the table.
	at
org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
	at
org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1295)
	at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1760)
	at
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:231)
	at
org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:241)
	at
hms.broker.BrokerMessageListener.onMessage(BrokerMessageListener.java:491)
	at
org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1230)
	at
org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:134)
	at
org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:205)
	at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:127)
	at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48)
	at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
	at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
	at java.lang.Thread.run(Thread.java:736)
Caused by: 
java.io.IOException: Could not insert new row into the table.
	at
org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:45)
	at
org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:138)
	at
org.apache.activemq.store.jdbc.JDBCMessageStore.addMessage(JDBCMessageStore.java:109)
	at
org.apache.activemq.store.memory.MemoryTransactionStore.addMessage(MemoryTransactionStore.java:285)
	at
org.apache.activemq.store.memory.MemoryTransactionStore$1.addMessage(MemoryTransactionStore.java:134)
	at org.apache.activemq.broker.region.Queue.doMessageSend(Queue.java:682)
	at org.apache.activemq.broker.region.Queue.send(Queue.java:653)
	at
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:365)
	at
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:523)
	at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)
	at
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)
	at
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:227)
	at
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)
	at
org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:458)
	at
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:681)
	at
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:306)
	at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:179)
	at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
	at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
	at
org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:218)
	... 5 more
Caused by: 
java.sql.BatchUpdateException: Could not insert new row into the table.
	at
com.informix.jdbc.IfxPreparedStatement.executeBatch(IfxPreparedStatement.java:3641)
	at
org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
	at
org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
	at
org.apache.activemq.store.jdbc.TransactionContext.executeBatch(TransactionContext.java:103)
	at
org.apache.activemq.store.jdbc.TransactionContext.executeBatch(TransactionContext.java:81)
	at
org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:129)
	... 23 more


When I'm executing an insert in the tables via a transaction  manually, it
works.

Is there anybody who has an idea where to start looking for a solution?


Thanks in advance.



Jan Declercq

--
View this message in context: http://activemq.2283324.n4.nabble.com/Informix-as-persistence-adapter-is-not-working-tp3605446p3605446.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message