Murisi/client anchor patch optimized#4442
Merged
mergify[bot] merged 12 commits intomainfrom Mar 13, 2025
Merged
Conversation
9d02510 to
3950f53
Compare
3da173f to
1058fa2
Compare
batconjurer
reviewed
Mar 4, 2025
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4442 +/- ##
==========================================
+ Coverage 74.48% 74.49% +0.01%
==========================================
Files 339 339
Lines 110643 110786 +143
==========================================
+ Hits 82415 82535 +120
- Misses 28228 28251 +23 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
sug0
requested changes
Mar 4, 2025
batconjurer
requested changes
Mar 4, 2025
sug0
reviewed
Mar 4, 2025
98ab885 to
72fc7c8
Compare
…bility is disabled.
…f the block index.
72fc7c8 to
6879bff
Compare
sug0
requested changes
Mar 6, 2025
batconjurer
approved these changes
Mar 6, 2025
sug0
approved these changes
Mar 7, 2025
8aa7f7f to
b9bcbc2
Compare
Collaborator
Author
|
@sug0 @batconjurer Fixed the incorrect |
b9bcbc2 to
2355406
Compare
2355406 to
523af8b
Compare
tzemanovic
added a commit
that referenced
this pull request
Mar 11, 2025
…t' (#4442) * murisi/client-anchor-patch-optimized-libs-v0.48-backport: Make sure to reset masp_index counter to zero whenever new block is encountered. Correct the masp_index once it has been found. Reduce cloning of state by updating only the Merkle tree when searching for correct ordering. Update commitment tree anchors in benchmarks. Order transactions in the cache according to the MASP index instead of the block index. Assume that Transactions from the indexer are already ordered. Compute the transaction order even when needs_witness_map_update capability is disabled. Added a changelog entry. Factor out the Transaction order search into a separate function. Optimize transaction order search. Make client try all Transaction permutations. Instrumented code with commitment anchor existence checks.
3 tasks
Collaborator
|
this has been released in |
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.
Describe your changes
Implemented a patch on the MASP client to search for the
Transactionordering used by the protocol. Specifically, for a given block, the client goes through different permutations of itsTransactions and checks if applying them would result in a note commitment tree anchor in agreement with the protocol. When this condition is met, the client then moves onto the next block doing the same thing until the client is fully synchronized.Improvements from original patch in https://github.com/anoma/namada/tree/murisi/check-acknowledgement :
update_witness_mapby not destroyingShieldedContextstate after finding correct orderinglast_witnessed_txso that previously appliedTransactions are no longer reappliedneeds_witness_map_updatecapability by not updating witness map if it is falseTransactions it obtains from events or the indexerChecklist before merging
breaking::labelsnamada-docsreponamada-indexerornamada-masp-indexer, a corresponding PR is opened in that repo