Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SIP: Temporary freeze/unfreeze objects #40

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Rajwanshi1
Copy link
Contributor

No description provided.

@dmitri-perelman
Copy link

A couple of thoughts:

  1. I doubt it’s possible to implement “unfreeze” operation due to the inherent races between the update transaction and potential concurrent fast-path reading transactions.
  2. This problem seems similar to the DenyListV2, for which @tnowacki has implemented a bespoke “PerEpochImmutable” solution: we could generalize the "PerEpochImmutable" objects for general-purpose usage in future (though no one is working on it right now), and that would provide a way for the Version and Config objects to be used in the fast path transaction with a caveat that their updates would be visible in the next epoch only.
  3. Note that since Mysticeti rollout the latency benefits of by-passing consensus have been significantly reduced to 250-350 ms. The usage of owned objects in the transactions that go through consensus might turn out to be a decent long-term solution for as long as the shared objects are not congested via concurrent mutations.

@wriches wriches changed the title SIP-40: Temporary freeze/unfreeze objects SIP: Temporary freeze/unfreeze objects Dec 5, 2024
@wriches wriches added the new Ideas that have been submitted but not yet formally adopted into the SIP process. label Dec 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new Ideas that have been submitted but not yet formally adopted into the SIP process.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants