You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add new method to FateMutator.java that requires a FateId to be reserved for certain transactions. This method will replace AbstractFateStore.verifyReservedAndNotDeleted() implementation in UserFateStore.java.
Added FateMutator.requireReserved() and its implementation in FateMutatorImpl.java. requireReserved() requires a transaction to be reserved with a specific FateStore.FateReservation.
Removed usages of verifyReservedandNotDeleted() from UserFateStore.java methods. To replace its implementation, new method requireReserved() called through new helper method newReservedMutator in push(), pop(), setStatus(), setTransactionInfo(), delete(), and forceDelete(). For methods top(), getStack(), getTransactionInfo(), and timeCreated(), verifyReservedandNotDeleted() simply was removed since it is a no-op.
(OUTDATED)
Since verifyReservedAndNotDeleted() was removed from UserFateStore.java, new requireReserved() was implemented in its place on the FateMutator side. However, in 4 UserFateStore.java methods (top, getStack, getTransactionInfo, timeCreated) there is no corresponding fateMutator method being called where requireReserved() should be added. Unsure how to replace implementation for these 4 methods.
Amemeda
changed the title
Replace AFS.verifyReserved with a condition
Replace AbstractFateStote.verifyReserved() with new method FateMutator.requireReserved()
Sep 1, 2026
Amemeda
changed the title
Replace AbstractFateStote.verifyReserved() with new method FateMutator.requireReserved()
Replace AbstractFateStore.verifyReserved() with new method FateMutator.requireReserved()
Sep 1, 2026
I was able to reproduce the failure. The test was only failing on assertThrows(Exception.class, txStore::pop);, so updated UserFateStore.pop() by moving the create a new reserved fate mutator outside of the top.ifPresent(...), but kept the deleteRepo and mutate:
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
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.
Add new method to
FateMutator.javathat requires a FateId to be reserved for certain transactions. This method will replaceAbstractFateStore.verifyReservedAndNotDeleted()implementation inUserFateStore.java.FateMutator.requireReserved()and its implementation inFateMutatorImpl.java.requireReserved()requires a transaction to be reserved with a specificFateStore.FateReservation.verifyReservedandNotDeleted()fromUserFateStore.javamethods. To replace its implementation, new methodrequireReserved()called through new helper methodnewReservedMutatorin push(), pop(), setStatus(), setTransactionInfo(), delete(), and forceDelete(). For methods top(), getStack(), getTransactionInfo(), and timeCreated(),verifyReservedandNotDeleted()simply was removed since it is a no-op.Closes #4908