May 12, 2020
Estimated Post Reading Time ~

Poison messages on Replication Queues

So what does it take for a replication queue to get blocked. Well… Just one bad item on the queue.

Yes. One item that has issue would completely block the queue.

This is because of the way the items in the queue gets processed. The items in the queue are ordered and are processed strictly in the first-in-first-out (FIFO) order.

This order needs to be preserved to make sure that there are no overlapping writes of the content and the data integrity is preserved.

So what happens when a single item could not be processed?

Simply it will not get removed from the replication queue and will continue to remain at the head of the queue. Meaning it will continue to remain as the next item to be processed. When the retry happens, this item again fails thus continuing to remain at the head of the queue forever.

Unless this item gets processed and removed from the queue, the next items will not get a chance to get processed

This can be checked by looking at the queue item details in JCR. Look under the path /var/eventing/jobs/assigned in JCR to locate the queue item.

The first item in a blocked queue would have undergone multiple retries



While all the subsequent items would have retry count as 0, indicating the processing has not happened for it


By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.