Hello, I have an application using Pulsar just as JMS (we get single messages, acknowledge them when we are done processing it) The entire system, composed of several types of apps, uses about 40 different topics.
Yesterday, an application that subscribes to about 20 queues, suddenly was inundated with thousands of messages from two of the queues but I could not track those messages to an application producing them. We found that the messages were *duplicates*. So it seems that the cursor to these two topics was lost, and messages from 3 hours earlier were consumed again. I found the following paragraph : "Each subscription stores a cursor. The cursor is the current offset in the log. Subscriptions store their cursor in BookKeeper in ledgers. This makes cursor tracking scalable just like topics." ( https://jack-vanlightly.com/blog/2018/10/2/understanding-how-apache-pulsar-works ) My guess is that the cursor was lost. How could I verify that this was the case? I can't find anything relevant in the logs. The only message I found occurring around the same time is New ensemble: [pulsar-bookie-2.pulsar-bookie.pulsar.svc.cluster.local:3181, pulsar-bookie-0.pulsar-bookie.pulsar.svc.cluster.local:3181, pulsar-bookie-3.pulsar-bookie.pulsar.svc.cluster.local:3181] is not adhering to Placement Policy Any pointers are appreciated.