Skip to content

feat(natsstore): record which replica wrote each value - #15

Open
yordis wants to merge 1 commit into
yordis/feat-natsstore-registryfrom
yordis/feat-natsstore-envelope
Open

yordis wants to merge 1 commit into
yordis/feat-natsstore-registryfrom
yordis/feat-natsstore-envelope

Conversation

@yordis

@yordis yordis commented Nov 8, 2026 •

Copy link
Copy Markdown
Member
  • Live sync has to tell a replica's own writes from another's when the bucket echoes them back, and an unconditional spool rewrite would clobber a local edit made after the write. Values now travel in an envelope naming the writing replica and the revision it replaced. Reads still accept the raw values the earlier backend stored, so an existing bucket keeps working and upgrades value by value.

Live sync has to tell a replica's own writes from another's when the
bucket echoes them back, and an unconditional spool rewrite would
clobber a local edit made after the write. Values now travel in an
envelope naming the writing replica and the revision it replaced.
Reads still accept the raw values the earlier backend stored, so an
existing bucket keeps working and upgrades value by value.

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
@coderabbitai

coderabbitai Bot commented Nov 8, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 35 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 1b324102-e256-41b2-afbd-273f6132233f
Commits

Reviewing files that changed from the base of the PR and between 1b1db3f and 01341f9.

Files selected for processing: 6

  • internal/store/natsstore/envelope.go
  • internal/store/natsstore/envelope_test.go
  • internal/store/natsstore/kv.go
  • internal/store/natsstore/kv_test.go
  • internal/store/natsstore/store.go
  • internal/store/natsstore/store_test.go
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@yordis
yordis added this pull request to stack #9 November 8, 2026 02:13

This branch has not been deployed

No deployments
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.

1 participant