Dear Pulsar Community,

I'd like to propose a new improvement for Pulsar's Key_Shared
subscription mode, outlined in PIP-379. This proposal aims to address
several issues with the current implementation and introduce a more
efficient mechanism for managing message ordering.

Problem:
The current Key_Shared implementation faces challenges including:
1. Complex management of "recently joined consumers"
2. Incomplete fulfillment of ordering guarantees
3. Unnecessary message blocking
4. Poor observability

PIP-379 introduces a "draining hashes" concept to efficiently manage
message ordering by tracking affected hashes when consumer assignments
change. The high-level solution is drafted in the PIP document.

Benefits:
1. Improved message ordering guarantees
2. Reduced unnecessary message blocking
3. Better scalability and performance
4. Enhanced observability

This proposal would replace the existing "recently joined consumers"
mechanism, addressing its limitations while providing a more robust
solution.

The full proposal can be found at: https://github.com/apache/pulsar/pull/23309
The direct link to the rendered version of the markdown file is:
https://github.com/lhotari/pulsar/blob/lh-pip-379/pip/pip-379.md

I welcome your feedback and discussion on this proposal. Please share
your thoughts, concerns, or suggestions.

-Lari

Reply via email to