Handle case of cashtab user loading with unmigrated wallets, ensure that wallet object state is kept current
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
All Stories
Apr 26 2021
Address most comments. Use using instead of typedef. Simplify proof insertion, don't use .get<by_sequence>() inderection before inserting a now proof. Take proof by value in addProof.
Remove assertion in constructor to allow for a pool size smaller than the largest possible proof, add a simple unit test for this case.
Reduce the level of abstraction: let the caller generate the new blocks, and pass them to the function as a list of hashes.
This makes the function's signature more consistent with create_coinbase_stakes.
Rename functions get_ -> create_ to indicate that new UTXOs are generated.
Remove debug prints, only keep the new option part of the diff. The additional tests will be extracted in a follow up.
rebase.
Simplify initialization of struct: the plan is to relay proof inventories to everyone, so the struct can be initialized in the constructor, we don't need to wait for service flags.
Apr 25 2021
Apr 24 2021
Please edit the diff's title and description, right now they are not even proper sentences.
You shouldn't put all the method in the header file. No need to recompile them in every module where they are included, unless they are trivial and you want the optimizer to see that.
Apr 23 2021
Removing obsolete dev comment
Removing comments used in development, marking mock as generated
I have nothing against generating proofs this way, but the abstraction provided is clearly not good.
rebase again after fixing the wallet dependency introduced in D9441
This new way of generating stakes requires the wallet to be compiled. Fix the test to run only when possible, update the test plan.
Use a different bad proof for the delegateavalancheproof test, so that it does not depend on the wallet.
Rebase after updating dependency D9441
Fix another functional test that was affected by renaming get_stakes
Update the test plan to include the entire functional test suite.
Fix test failure by rebasing onto D9441
Apr 22 2021
Fix missed session key vs master key confusion, reorder the checks to make sure no wrong delegation can be generated
TIL that the halvings are different on regtest than on mainnet. I need to work on a fix for the functional test that uses coinbase UTXOs to build a very large proof, because the coinbase amounts are lower than the dust threshold before I can reach 1000 stakes.
The problem did not appear earlier because this revision had not been rebased for a while, and the problematic test did not exist a couple of weeks ago.
Rebase. The test failures seem unrelated to the revision, and are definitely unrelated to my last amend.
When I backported core#18807, I did not pick the commit introducing this mistake (https://github.com/bitcoin/bitcoin/pull/18807/commits/00d44a534b4e5ae249b8011360c6b0f7dc731581), so the change to P2PTxInvStore is not relevant to our codebase.
refactor the unit test so that any proof size can be tested, increase the number of tested proof sizes
Add a method in the Processor to return if the flag should be set.
Rebase on top of D9440.
Apr 21 2021
In D9345#214194, @PiRK wrote:What about bool hasDustStake(Proof p);?
The build failure is an unrelated leveldb spurious failure
Pass the session key by value and move it
Why are the changes to P2PTxInvStore ignored?
Reopening this diff. See improved rationale in the summary.
Append new proof to the end of the container, use a forward iterator for trimming from the front, use the fact that erase already returns an iterator to the next element (no need to increment the iterator again).
Don't encode/decode the session key
Ok, now this is looking more like something that make sense. There is this encoding/decoding of the session key that needs to be addressed, but beside that, it's all good.
Move SaltedProofIdHasher to proofid.h to make it available to both orphanproofpool and peermanager without additional includes.