Open
Conversation
7ef3db0 to
1b4db9a
Compare
6019082 to
3327eae
Compare
3327eae to
d5dbd4b
Compare
8645905 to
b352826
Compare
| pub(crate) conn: Arc<Mutex<Option<KeystoreDatabaseConnection>>>, | ||
| pub(crate) transaction: Arc<Mutex<Option<KeystoreTransaction>>>, | ||
| transaction_semaphore: Arc<Semaphore>, | ||
| // We assume that these transactions never hold the same entitx types. |
SimonThormeyer
approved these changes
May 11, 2026
The idea here is to assign one SLOT to a crypto transaction and one to the PkiEnvironment transaction.
This trait now implements functions needed from the crypto transaction. It takes the first of the two transaction slots.
This trait implements the mutable functions for the PkiEnvironment. It takes the second transaction slot.
Every function with a const generic SLOT parameter should be internal.
We adjust the getters to return the first match of an existing transaction cache. We can only do this because a record type will only ever exist in exactly one of the caches. For returning multiple records, we have to pull out some previously `KeystoreTransaction` internal logic of `find_all` and `search`. We merge with both of the transactions because a cache can be empty but the `KeystoreTransaction` deleted list could hold a relevant id. Right now there is no simple way to know which transaction cache is relevant.
The enrollment type does not exist anymore and the functions have no usage.
Whereever we use Database functions that are now implemented by `CryptoTransaction` we add this trait to the scope to call this function for the CryptoTransaction slot.
b352826 to
33d438d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What's new in this PR
This PR adds a separate pki transaction to the database to allow crypto and e2ei to use independent transactions.
PR Submission Checklist for internal contributors
SQPIT-764feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.