Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[mempool] MemPoolRemovalReason for CTxMemPool::removeWithAnchor #43

Open
ch4ot1c opened this issue Jul 21, 2018 · 0 comments
Open

[mempool] MemPoolRemovalReason for CTxMemPool::removeWithAnchor #43

ch4ot1c opened this issue Jul 21, 2018 · 0 comments

Comments

@ch4ot1c
Copy link
Contributor

ch4ot1c commented Jul 21, 2018

See:
https://github.com/zcash/zcash/blob/333b9a0d0b0db2ada9f106ac73cef22a77914ec7/src/txmempool.cpp#L209
https://github.com/zcash/zcash/blob/333b9a0d0b0db2ada9f106ac73cef22a77914ec7/src/txmempool.cpp#L125

CTxMemPool::remove has been replaced by removeRecursive. Additionally, the MemPoolRemovalReason from Bitcoin does not include a case to handle CTxMemPool::removeWithAnchor:

If a block is disconnected from the tip, and the root changed,
we must invalidate transactions from the mempool which spend
from that root -- almost as though they were spending coinbases
which are no longer valid to spend due to coinbase maturity.

Perhaps this calls for a REANCHORED MempoolRemovalReason, since it is a slightly different case than the existing CONFLICT option ("Removed for conflict with in-block transaction").


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

@ch4ot1c ch4ot1c changed the title MemPoolRemovalReason for CTxMemPool::removeWithAnchor [mempool] MemPoolRemovalReason for CTxMemPool::removeWithAnchor Oct 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant