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.

Reply via email to