0
votes

My Apache Camel app takes messages from gcp pubsub subscrption producer-sub , and then after processing and translating the messages puts them in a gcp pubsub topic1

Here is my camel subscription code

from("google-pubsub://mygcpcloudpubsub-270721:producer-sub?concurrentConsumers=10&maxMessagesPerPoll=1") .process(new TranslationProcessor(route)). to("google-pubsub://mygcpcloudpubsub-270721:topic1").end

All looks good as long as maxMessagesPerPoll=1

Moment I make it say 100 i.e. maxMessagesPerPoll=100,all hell breaks loose.

For example if my test code pumps 1000 messages to producer-topic (producer-sub is the subscriber) ,now my app ends up publishing 1300 messages to topic1.Sometimes 1430...etc.My camel route is messed up !

It appears there is a bug in maxMessagesPerPoll parameter of gcp pubsub component of apache camel.

Please let me know if I am missing anything.

1

1 Answers

0
votes

I found the problem.For huge amount of messages,my ack deadline of 10 seconds was too small.Hence the messages were redelivered by pubsub.I increase the deadline to 10 minutes....now there are no duplicate messages !!!

Thanks again