Skip to content

[FreshEyes] Mempool util: Add RBF diagram checks for single chunks against clusters of size 2#107

Open
Extheoisah wants to merge 9 commits into
bitcoin-fresheyes-staging-master-29242from
instagibbs-fresheyes-staging-2024-01-diagram-checks-29242
Open

[FreshEyes] Mempool util: Add RBF diagram checks for single chunks against clusters of size 2#107
Extheoisah wants to merge 9 commits into
bitcoin-fresheyes-staging-master-29242from
instagibbs-fresheyes-staging-2024-01-diagram-checks-29242

Conversation

@Extheoisah
Copy link
Copy Markdown
Owner

The author instagibbs wrote the following PR called Mempool util: Add RBF diagram checks for single chunks against clusters of size 2, issue number 29242 in bitcoin/bitcoin cloned by FreshEyes below:

This is a smaller piece of https://github.com/bitcoin/bitcoin/pull/28984 broken off for easier review.

Up to date explanation of diagram checks are here: https://delvingbitcoin.org/t/mempool-incentive-compatibility/553

This infrastructure has two near term applications prior to cluster mempool:

  1. Limited Package RBF(https://github.com/bitcoin/bitcoin/pull/28984): We want to allow package RBF only when we know it improves the mempool. This narrowly scoped functionality allows use with v3-like topologies, and will be expanded at some point post-cluster mempool when diagram checks can be done efficiently against bounded cluster sizes.
  2. Replacement for single tx RBF(in a cluster size of up to two) against conflicts of up to cluster size two. ImprovesFeerateDiagram interface will have to change for this use-case, which is a future direction to solve certain pins and improve mempool incentive compatibility: https://delvingbitcoin.org/t/ephemeral-anchors-and-mev/383#diagram-checks-fix-this-3

And longer-term, this would be the proposed way we would compute incentive compatibility for all conflicts, post-cluster mempool.

instagibbs and others added 9 commits March 18, 2024 10:32
Co-authored-by: Suhas Daftuar <sdaftuar@chaincode.com>
Co-authored-by: Pieter Wuille <pieter.wuille@gmail.com>
Co-authored-by: Suhas Daftuar <sdaftuar@chaincode.com>
This new function takes the populated sets of
direct and all conflicts computed in the current
mempool, assuming the replacements are a single
chunk, and computes a diagram check.

The diagram check only works against cluster
sizes of 2 or less, and fails if it encounters
a different topology.

Co-authored-by: Suhas Daftuar <sdaftuar@chaincode.com>
Co-authored-by: Suhas Daftuar <sdaftuar@chaincode.com>
Co-authored-by: Suhas Daftuar <sdaftuar@chaincode.com>
Co-authored-by: Pieter Wuille <pieter.wuille@gmail.com>
@fresheyes-staging-bot
Copy link
Copy Markdown

There were 49 comments left by 5 reviewers, 1 bot and the author for this pull request

FeeFrac p1{1000, 100}, p2{500, 300};
FeeFrac sum{1500, 400};
FeeFrac diff{500, -200};
FeeFrac empty{0, 0};
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3 authors commented here with:

  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1453501485 at 2024/01/16, 14:24:35 UTC
  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1455418545 at 2024/01/17, 12:19:19 UTC
  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1459253460 at 2024/01/19, 16:01:40 UTC.

{
FeeFrac p1{1000, 100}, p2{500, 300};
FeeFrac sum{1500, 400};
FeeFrac diff{500, -200};
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

4 authors commented here with:

  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1453502118 at 2024/01/16, 14:25:01 UTC
  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1455433932 at 2024/01/17, 12:26:54 UTC
  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1455544265 at 2024/01/17, 13:19:22 UTC
  • comment link https://github.com/bitcoin/bitcoin/pull/29242#discussion_r1459253396 at 2024/01/19, 16:01:37 UTC.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants