Skip to content

Conversation

glozow
Copy link
Member

@glozow glozow commented May 27, 2021

various followups from #20833

@DrahtBot
Copy link
Contributor

DrahtBot commented May 27, 2021

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@ariard
Copy link

ariard commented May 28, 2021

I think this is ready for rebase and review now :)

@glozow glozow force-pushed the 20833-followups branch from 49e6c59 to 94f4946 Compare May 28, 2021 08:37
@glozow glozow changed the title [WIP] package testmempoolaccept followups package testmempoolaccept followups May 28, 2021
@glozow glozow marked this pull request as ready for review May 28, 2021 08:44
@glozow
Copy link
Member Author

glozow commented May 28, 2021

yes! CC @ariard and @jnewbery :)

@jnewbery
Copy link
Contributor

jnewbery commented Jun 1, 2021

Code review ACK 94f4946.

Thanks for addressing the outstanding review comments!

Copy link

@ariard ariard left a comment

Choose a reason for hiding this comment

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

Otherwise, looks good to me

@glozow glozow force-pushed the 20833-followups branch from 94f4946 to 5cac95c Compare June 2, 2021 09:03
@glozow
Copy link
Member Author

glozow commented Jun 2, 2021

Addressed @ariard's comments

@jnewbery
Copy link
Contributor

jnewbery commented Jun 2, 2021

reACK 5cac95c

@glozow
Copy link
Member Author

glozow commented Jun 2, 2021

@ariard I looked back at the PR and just remembered your #20833 (comment) about encapsulating the package policies, so I've added that commit and co-authored you.

Co-authored-by: ariard <antoine.riard@gmail.com>
@jnewbery
Copy link
Contributor

jnewbery commented Jun 3, 2021

utACK ee862d6

Checked that final commit is move-only

Copy link
Contributor

@harding harding left a comment

Choose a reason for hiding this comment

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

A couple language nits in case this gets updated, otherwise LGTM. I didn't review the move-only commit.

@@ -905,7 +905,7 @@ static RPCHelpMan testmempoolaccept()
RPCResult{
RPCResult::Type::ARR, "", "The result of the mempool acceptance test for each raw transaction in the input array.\n"
"Returns results for each transaction in the same order they were passed in.\n"
"It is possible for transactions to not be fully validated ('allowed' unset) if an earlier transaction failed.\n",
"It is possible for transactions to not be fully validated ('allowed' unset) if another transaction failed.\n",
Copy link
Contributor

Choose a reason for hiding this comment

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

In [refactor] comment/naming improvements

I think this is a bit confusing: the reader hasn't be introduced to the allowed field yet, so they don't know it's part of the results. When I read this, I thought it was an input parameter that I had missed. I don't think this is important, but if you edit, maybe this would be clearer:

"Transactions that cannot be fully validated due to failures in other transactions will not contain an 'allowed' result.\n"

Copy link
Member Author

Choose a reason for hiding this comment

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

Good point, I'll do this if I need to retouch or in a followup

Copy link
Member Author

Choose a reason for hiding this comment

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

Added to #21800

* replace-by-fee. Parents must appear before children.
* parent-child dependencies. The transactions must not conflict
* with each other, i.e., must not spend the same inputs. If any
* dependencies exist, parents must appear before children.
Copy link
Contributor

Choose a reason for hiding this comment

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

In [refactor] comment/naming improvements

µ-nit: maybe "parents must appear anywhere in the list before their children". Otherwise someone could mistakenly infer that a parent needed to appear immediately before its children.

Copy link
Member Author

Choose a reason for hiding this comment

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

Agree, will do this if I need to retouch or in a followup

Copy link
Member Author

Choose a reason for hiding this comment

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

Added to #21800

Copy link

@ariard ariard left a comment

Choose a reason for hiding this comment

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

Code Review ACK ee862d6

Thanks for taking suggestions.

assert(args.disallow_mempool_conflicts);
// package to spend. Since we already checked conflicts in the package and we don't allow
// replacements, we don't need to track the coins spent. Note that this logic will need to be
// updated if package replace-by-fee is allowed in the future.
Copy link

Choose a reason for hiding this comment

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

plot twist: in fact we may need package replace-by-feerate :)

@fanquake fanquake merged commit ef8f296 into bitcoin:master Jun 10, 2021
@glozow glozow deleted the 20833-followups branch June 10, 2021 11:12
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Jun 10, 2021
gwillen pushed a commit to ElementsProject/elements that referenced this pull request Jun 1, 2022
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Aug 16, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants