Hello all, We are using distributed transaction in a Camel route where messages are sent to a JMS queue (ActiveMQ broker) then picked by a processor bean and persisted in Oracle database.
We first used XA transactions with Atomikos but the performances (number of processed messages) were not 't as good as expected. So we want now to use the scenario in "compensation transaction" sample with two transactions managers. Have any one tried the two options ? are the performances better in one or other case ? or is there any other option that gives better performances ? If the processor fails to persist a message into DB how , can we roll back the jms message ? *public void process(Exchange exchange){ Strring msg = exchange.getIn().getBody; Dao.persist(msg) // if persist fails, how to tell camel not ot commit jms message here ? // we have only acess to exchange.. } * have you any examples ? There also one thing we don't understand very clearly : When should we declare a route transacted (XA transactions? two transactions managers? never?) ? When should we declare JMS queue transacted (XA transactions? two transactions managers? never?) if we go for two transaction managers (jms+jpa), which should be declared transacted (route? jms ? both? no one?) Thanks -- View this message in context: http://camel.465427.n5.nabble.com/Distributed-transaction-in-camel-route-tp5719279p5719733.html Sent from the Camel - Users mailing list archive at Nabble.com.