Skip to content

[FIXED] Avoid filestore corruption by rejecting large publishes into JetStream#6798

Merged
neilalexander merged 1 commit intomainfrom
neil/msgrlcheck
Apr 15, 2025
Merged

[FIXED] Avoid filestore corruption by rejecting large publishes into JetStream#6798
neilalexander merged 1 commit intomainfrom
neil/msgrlcheck

Conversation

@neilalexander
Copy link
Copy Markdown
Member

@neilalexander neilalexander commented Apr 15, 2025

We have an effective and seemingly undocumented limit of 32MB for messages published into JetStream as indexCacheBuf in the filestore rejects any records that exceed this length. We did not catch this on publish however, and then indexCacheBuf would later error when consuming etc.

Related: #6797
Signed-off-by: Neil Twigg neil@nats.io

@neilalexander neilalexander requested a review from a team as a code owner April 15, 2025 11:00
@neilalexander neilalexander changed the title Reject large publishes into JetStream Avoid filestore corruption by rejectinglarge publishes into JetStream Apr 15, 2025
@neilalexander neilalexander changed the title Avoid filestore corruption by rejectinglarge publishes into JetStream Avoid filestore corruption by rejecting large publishes into JetStream Apr 15, 2025
We have an effective and seemingly undocumented limit of 32MB for messages
published into JetStream as `indexCacheBuf` in the filestore rejects any
records that exceed this length. We did not catch this on publish however,
and then `indexCacheBuf` would later error when consuming etc.

Signed-off-by: Neil Twigg <neil@nats.io>
Copy link
Copy Markdown
Member

@derekcollison derekcollison left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@neilalexander neilalexander merged commit d19724c into main Apr 15, 2025
23 checks passed
@neilalexander neilalexander deleted the neil/msgrlcheck branch April 15, 2025 14:15
@wallyqs wallyqs changed the title Avoid filestore corruption by rejecting large publishes into JetStream [FIXED] Avoid filestore corruption by rejecting large publishes into JetStream Apr 17, 2025
neilalexander added a commit that referenced this pull request Apr 17, 2025
Includes the following (already cherry-picked) PRs:

- #6587
- #6607
- #6612
- #6609
- #6620
- #6668
- #6674
- #6647
- #6684
- #6691
- #6697
- #6705
- #6706
- #6704
- #6714
- #6720
- #6727
- #6730
- #6726
- #6732
- #6759
- #6753
- #6685
- #6769
- #6777
- #6785
- #6786
- #6778
- #6790
- #6791
- #6798
- #6794
- #6801

Signed-off-by: Neil Twigg <neil@nats.io>

Signed-off-by: Neil Twigg <neil@nats.io>
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