Skip to content

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