Merged
Conversation
This reverts commit 11df4ad. # Conflicts: # src/Makefile.am
Co-authored-by: Dagur Valberg Johannsson <dagurval@pvv.ntnu.no>
# Conflicts: # qa/rpc-tests/wallet_sapling.py
# Conflicts: # src/wallet/rpcdump.cpp
# Conflicts: # src/wallet/rpcwallet.cpp
# Conflicts: # src/Makefile.am # src/zcash/Address.cpp
This fixes the dependency graph between the general address-handling logic, ZIP 32, and the core Sapling address classes. # Conflicts: # src/Makefile.am # src/gtest/test_keys.cpp # src/key_io.h # src/keystore.h # src/wallet/wallet.cpp # src/zcash/Address.hpp
All of these maps are created from scratch on wallet load, so we can alter their contents without compatibility concerns. With this change, we can use the existing maps to implement viewing key support. The downside is that the wallet will take more space in memory, but that can easily be improved in future by storing ExtFVK fingerprints in some of the maps (which would improve memory usage even compared to the original layout). # Conflicts: # src/keystore.cpp # src/keystore.h # src/wallet/crypter.cpp # src/wallet/crypter.h
Now that we store SaplingExtendedFullViewingKey internally, we have access to the default address everywhere we require it. # Conflicts: # src/wallet/crypter.cpp
# Conflicts: # src/key_io.cpp
# Conflicts: # src/key_io.cpp
# Conflicts: # src/wallet/rpcdump.cpp
# Conflicts: # qa/rpc-tests/wallet_sapling.py # src/wallet/rpcdump.cpp # src/wallet/wallet.h
# Conflicts: # qa/rpc-tests/wallet_persistence.py
Closes zcash#2937. # Conflicts: # src/wallet/rpcdump.cpp
# Conflicts: # src/wallet/rpcdump.cpp
# Conflicts: # src/Makefile.am # src/wallet/rpcdump.cpp # src/wallet/wallet.cpp
(cherry picked from commit 5a5094b)
(cherry picked from commit d9fcc2b)
(cherry picked from commit bitcoin/bitcoin@037159c) Zcash: Adapted for our lack of direct headers announcement. (cherry picked from commit zcash/zcash/df24ea9bd29e13c018c389e32f8e6c669786b173)
vToFetch is never used after declaration. When checked if not empty, evaluation is always false. Best case scenario this is optimized by the compiler, worst case it wastes cpu cycles. It should be removed either way. (cherry picked from commit bitcoin/bitcoin@c707ca8) Zcash: Adjusted for us not having backported various refactors. (cherry picked from commit 814e320)
Headers-first is the primary method of announcement on the network. If a node fell back sending blocks by inv, it's probably for a re-org. The final block hash provided should be the highest, so send a getheaders and then fetch the blocks we need to catch up. (cherry picked from commit bitcoin/bitcoin@7467366) Zcash: Adjusted for us not having backported various refactors. (cherry picked from commit zcash/zcash/52cd44c7c80f0255fe6a5b8dc73c8343aade2501)
(cherry picked from commit bitcoin/bitcoin@1b0bcc5) Zcash: Includes additional change to `IteratorComparator` cherry-picked from commit bitcoin/bitcoin@fbf327b. (cherry picked from commit zcash/zcash/7cb32b1634f9aff4eb2fb46e37a41b0e7f1644ce)
always grow to its maximum size. This does not go so far as to attempt to connect orphans made connectable by a new block. Keeping the orphan map less full helps improve the reliability of relaying chains of transactions. (cherry picked from commit bitcoin/bitcoin@db0ffe8) (cherry picked from commit zcash/zcash/22bfed25fd736a7d7e041b6058865abcabd9ac34)
This prevents higher order orphans and other junk from holding positions in the orphan map. Parents delayed twenty minutes are more are unlikely to ever arrive. The freed space will improve the orphan matching success rate for other transactions. (cherry picked from commit bitcoin/bitcoin@11cc143) (cherry picked from commit zcash/zcash/8cc74c982840a817d1b1b05c7ee89b17f80c0422)
…ted. An orphan whos parents were rejected is never going to connect, so there is little utility in keeping it. Orphans also helpfully tell us what we're missing, so go ahead and treat it as INVed. (cherry picked from commit bitcoin/bitcoin@8c99d1b) Zcash: Adapted to our INV changes. (cherry picked from commit zcash/zcash/e031b43c3cf7df5064b90cc133e282b429b4340f)
Although this increases node memory usage in the worst case by perhaps 30MB, the current behavior causes severe issues with dependent tx relay. (cherry picked from commit bitcoin/bitcoin@54326a6) (cherry picked from commit df99711)
(cherry picked from commit bitcoin/bitcoin@9453018) Zcash: Adapted to our codebase. (cherry picked from commit zcash/zcash/1a12eb41b83fc2a27054142f0d8aeba293fcb053)
(cherry picked from commit bitcoin/bitcoin@6e051f3) Zcash: Adapted to us not having various upstream changes, including the orphan lock changes in bitcoin/bitcoin#11824. (cherry picked from commit zcash/zcash/317606474f57eab68cb5cfad8f20ba9525822ee6)
This makes orphan processing work like handling getdata messages: After every actual transaction validation attempt, interrupt processing to deal with messages arriving from other peers. (cherry picked from commit bitcoin/bitcoin@866c805) (cherry picked from commit zcash/zcash/f00cf8cde769083ac1ba3e0c4b868bfacc07eec1)
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org> (cherry picked from commit 98a560f)
Backport fix for INV buffer
Update `datadir` for PBaaS chains and add `notarydatadir` option for connected chains
Update enhanced notarization update activation
Backport fix for orphan handling
Viewing keys backports
Update version and deprecation height
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.
No description provided.