I found out the problem which was making my test not reach the onComplete
syncProcessor but I am having another issue now. Inside the processor I use
producer.sendBody(buildDurableSubscription(register), holder);, where
producer is created in the context.xml with <camel:template id="producer" />
and
return consumer.receiveBodyNoWait(buildDurableSubscription(register),
SettlementHolder.class);, where the consumer is created with
<camel:consumerTemplate id="consumer"/>

to put an exchange on a persistent queue, so that in case of power failure
or any other reason I can have the exchange after a restart, and then to
receive it back and process it after onCompletion. The problem is that
sometimes the first time when the "consumer.receiveBodyNoWait" is invoked it
returns null, but if I invoke it twice the second invocation will return the
pending exchange. This is the logging:
first invocation returns null:
12:56:54.628 [Camel (camelContextTransactionToDBPublisher) thread #2 -
OnCompletion] DEBUG org.apache.camel.impl.ConsumerCache - <<<<
Endpoint[activemq://queue:masterDataExport.transactionToDBPublisher.synchronizedSettlement.register1]
12:56:54.631 [Camel (camelContextTransactionToDBPublisher) thread #2 -
OnCompletion] DEBUG o.a.activemq.ActiveMQMessageConsumer - remove:
ID:pc-clucutar-63598-1384772199184-2:1:1:3, *lastDeliveredSequenceId:0*

second invocation returns the object:
12:57:05.134 [Camel (camelContextTransactionToDBPublisher) thread #2 -
OnCompletion] DEBUG org.apache.camel.impl.ConsumerCache - <<<<
Endpoint[activemq://queue:masterDataExport.transactionToDBPublisher.synchronizedSettlement.register1]
12:57:05.138 [Camel (camelContextTransactionToDBPublisher) thread #2 -
OnCompletion] DEBUG o.a.activemq.ActiveMQMessageConsumer - remove:
ID:pc-clucutar-63598-1384772199184-2:1:1:4, *lastDeliveredSequenceId:55*

Even though I can see that the queueSize = 1 in JConsole, the retrieve
operation doesn't retrieve anything and the queueSize doesn't change. The
second call retrieves the exchange and queueSize becomes 0.

Any idea?



--
View this message in context: 
http://camel.465427.n5.nabble.com/onCompletion-not-triggerd-in-testing-tp5743163p5743434.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to