You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Guillaume Nodet (JIRA)" <ji...@apache.org> on 2008/10/07 09:56:52 UTC

[jira] Updated: (SM-1203) Rollback does not work when using XA

     [ https://issues.apache.org/activemq/browse/SM-1203?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Guillaume Nodet updated SM-1203:
--------------------------------

    Fix Version/s: servicemix-jms-2008.01

> Rollback does not work when using XA
> ------------------------------------
>
>                 Key: SM-1203
>                 URL: https://issues.apache.org/activemq/browse/SM-1203
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-jms
>    Affects Versions: 3.2
>         Environment: Windows XP
>            Reporter: Noseda Anne
>            Assignee: Guillaume Nodet
>            Priority: Blocker
>             Fix For: 3.2.2, 3.3, servicemix-jms-2008.01
>
>         Attachments: servicemix.txt, test_rejouer.jar, TEST_REJOUER_SA-1.0.jar, XA_transaction_patch.txt
>
>
> When the "transactionnal" BC JMS receives a JBI exchange with status ERROR, it deletes it from the queue instead of replays it !
> BC JMS Config :
> ----------------------
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
> 	xmlns:amq="http://activemq.org/config/1.0"
> 	xmlns:janus="http://www.etnic.be/janus">
> 	<jms:consumer service="janus:ServiceJmsIn" endpoint="endpoint"
> 		targetService="janus:ServicePipeline" targetEndpoint="endpoint"
> 		destinationName="queue/TEST_REJOUER"
> 		connectionFactory="#connectionFactory" synchronous="true"
> 		concurrentConsumers="8" listenerType="default"
> 		transacted="xa" cacheLevel="3" />
> 	<amqpool:xa-pool xmlns:amqpool="http://jencks.org/amqpool/2.0"
> 		id="connectionFactory"
> 		brokerURL="tcp://localhost:51616?jms.redeliveryPolicy.useExponentialBackOff=true&amp;jms.redeliveryPolicy.maximumRedeliveries=3&amp;wireFormat.maxInactivityDuration=0"
> 		transactionManager="#transactionManager" maxConnections="8" />
> 	<bean id="transactionManager"
> 		class="org.springframework.jndi.JndiObjectFactoryBean">
> 		<property name="jndiName"
> 			value="javax.transaction.TransactionManager" />
> 	</bean>
> </beans>
> Exception :
> ---------------
> 10:14:49,233 | ERROR | DefaultMessageListenerContainer-1 | MessageListenerContainer | stractMessageListenerContainer  929 | Execution of JMS message listener failed
> javax.jms.JMSException: Error sending JBI exchange
> 	at org.apache.servicemix.jms.endpoints.AbstractConsumerEndpoint.onMessage(AbstractConsumerEndpoint.java:388)
> 	at org.apache.servicemix.jms.endpoints.JmsConsumerEndpoint$1.onMessage(JmsConsumerEndpoint.java:387)
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:833)
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:794)
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:767)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer.doReceiveAndExecute(DefaultMessageListenerContainer.java:531)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer.receiveAndExecute(DefaultMessageListenerContainer.java:459)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:889)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:842)
> 	at org.springframework.core.task.SimpleAsyncTaskExecutor$ConcurrencyThrottlingRunnable.run(SimpleAsyncTaskExecutor.java:203)
> 	at java.lang.Thread.run(Thread.java:595)
> Caused by: org.apache.servicemix.jbi.FaultException: <?xml version="1.0" encoding="UTF-8"?><janusRequest xmlns="http://www.etnic.be/janus">
>     <content>
>       <blabla>coucou</blabla>
>     </content>
>   </janusRequest>
> 	at org.apache.servicemix.eip.patterns.Pipeline.processAsync(Pipeline.java:353)
> 	at org.apache.servicemix.eip.EIPEndpoint.process(EIPEndpoint.java:160)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:463)
> 	at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:595)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> 	at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> 	at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> 	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> 	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> 	... 1 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.