I'll give it a shot when I get a sec. I'll let you know. On Tue, Oct 16, 2012 at 6:13 AM, guerra <[email protected]> wrote:
> Hi Christian > > I've set up the database route as transacted, please see camel.xml below. > The configuration is working nicely and I've tested doing a wrong insertion > and I can see the transaction manager doing the rollback. > > However, I don't see the link between uncommited transactions and KahaDB. I > mean, I can't figure out how an uncommited transaction "goes" into KahaDB > storage and in fact, it doesn't change the behaviour as it was before > setting up the transaction manager for this route. If I shutdown the > database, Camel starts to build up the queue again as it was before and > KahaDB apparently doesn't realize about the new status with the database. > So, something is not working!! Likely I am missing some configuration or > something, Anyway I'd be glad if somebody can shed some light on this.! > > Cheers > > ******** camel.xml ********* > <route> > <description>NTCS Incoming Queue</description> > <from uri="activemq:queue:ntcs.telemetry.in"/> > <to uri="seda:jdbc.queue"/> > </route> > <route> > <description>NTCS Oracle Insertion Queue</description> > <from uri="seda:jdbc.queue"/> > <transacted/> > <split> > <xpath>/ntcs-telemetry/telemetry</xpath> > <bean ref="insertTransactedTelemetry"/> > </split> > </route> > </camelContext> > > <bean id="oracle-ntcs-ds" class="oracle.ucp.jdbc.PoolDataSourceFactory" > factory-method="getPoolDataSource"> > <property name="URL" value="jdbc:oracle:thin:@(DESCRIPTION = > (LOAD_BALANCE=ON)(ADDRESS = (PROTOCOL = TCP)(HOST = > ntcs-cluster-scan.tng.iac.es)(PORT = 1521)) (CONNECT_DATA = (SERVER = > DEDICATED) (SERVICE_NAME = ntcs.tng.iac.es)))" /> > > <property name="user" value="archa" /> > <property name="password" value="ast$arte" /> > <property name="connectionFactoryClassName" > value="oracle.jdbc.pool.OracleDataSource" /> > <property name="connectionPoolName" value="NTCS_POOL" /> > <property name="connectionWaitTimeout" value="20" /> > <property name="minPoolSize" value="4" /> > <property name="maxPoolSize" value="10" /> > <property name="initialPoolSize" value="4" /> > <property name="inactiveConnectionTimeout" value="20" /> > <property name="timeoutCheckInterval" value="60" /> > <property name="fastConnectionFailoverEnabled" value="true" /> > <property name="ONSConfiguration" > > value="nodes=ntcs-oracl1:6200,ntcs-oracl2:6200,ntcs-oracl3:6200,ntcs-oracl4:6200" > /> > <property name="validateConnectionOnBorrow" value="true" /> > <property name="maxStatements" value="0" /> > </bean> > > > <tx:annotation-driven transaction-manager="txManager"/> > > > > <bean id="txManager" > class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> > <property name="dataSource" ref="oracle-ntcs-ds"/> > </bean> > > <bean id="insertTransactedTelemetry" > class="tng.ntcs.camel.bean.NTCSInsertTransactedTelemetry"> > <property name="datasource" ref="oracle-ntcs-ds"/> > </bean> > > > > -- > View this message in context: > http://activemq.2283324.n4.nabble.com/On-disk-persisted-message-queues-on-consumer-failure-tp4657706p4657850.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. > -- *Christian Posta* http://www.christianposta.com/blog
