Skip to content

Introduce CMS_COMMIT stage for serialized commit handling#4891

Open
beobal wants to merge 1 commit into
apache:cassandra-6.0from
beobal:CASSANDRA-21454
Open

Introduce CMS_COMMIT stage for serialized commit handling#4891
beobal wants to merge 1 commit into
apache:cassandra-6.0from
beobal:CASSANDRA-21454

Conversation

@beobal

@beobal beobal commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Add a dedicated single-threaded CMS_COMMIT stage to prevent INTERNAL_METADATA pool exhaustion under concurrent TCM_COMMIT_REQ load. Multiple threads entering AbstractLocalProcessor.commit() simultaneously amplify LWT retry pressure. Switching to a single commit thread eliminates that without reducing useful throughput since Paxos serializes the actual log write anyway.

Patch by Jon Meredith; reviewed by Sam Tunnicliffe for CASSANDRA-21454

Add a dedicated single-threaded CMS_COMMIT stage to prevent INTERNAL_METADATA
pool exhaustion under concurrent TCM_COMMIT_REQ load. Multiple threads entering
AbstractLocalProcessor.commit() simultaneously amplify LWT retry pressure. Switching to
a single commit thread eliminates that without reducing useful throughput since
Paxos serializes the actual log write anyway.

Patch by Jon Meredith; reviewed by Sam Tunnicliffe for CASSANDRA-21454
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