Skip to content

Pauseless consumption#14439

Closed
sajjad-moradi wants to merge 1 commit intoapache:masterfrom
sajjad-moradi:pauseless.consumption
Closed

Pauseless consumption#14439
sajjad-moradi wants to merge 1 commit intoapache:masterfrom
sajjad-moradi:pauseless.consumption

Conversation

@sajjad-moradi
Copy link
Contributor

[DRAFT]

This PR introduces the pauseless consumption feature based on the design described in issue #10147

The only difference from the design in the issue is that, once the winner replica is identified, a custom Helix message PauselessConsumptionMessage is sent only to servers that will continue hosting consuming segments for the same partitions they previously hosted. This minimizes changes to the segment commit protocol.

The pauseless consumption feature is controlled via a configuration in StreamConfigs. Making this feature configurable helps mitigate the additional memory requirements for use cases that are less sensitive to ingestion delays. Specifically, during segment commit, pauseless consumption requires twice the off-heap memory for consuming segments.

Lastly, while this PR is still in draft mode and some aspects remain to be completed - such as adding detailed logging, refactoring RealtimeSegmentValidationManager to accommodate the new changes, and updating segmentFlushThresholdComputer - the core functionality has been verified through integration tests.

@Jackie-Jiang
Copy link
Contributor

Some high level questions:

  1. How does broker detect the new consuming segment?
  2. What will happen if a new consuming segment is created by the Helix message, and a rebalance is triggered moving the segment?
  3. What will happen if the new segment reaches the commit threshold before the previous segment is committed?

@Jackie-Jiang
Copy link
Contributor

Accepted #14741 instead

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants