Skip to content

Conversation

maflcko
Copy link
Member

@maflcko maflcko commented Jul 1, 2022

On the main network, nonstandard transactions are hardly relayed, so it seems odd that one of our policy test requires a policy setting opposite of the norm.

Surely it is also important to test that nonstandard transactions can be replaced. However, rbf code should not care about the standardness at all. Moreover, I think testing nonstandardness rbf is of lower priority than testing the stuff that actually happens in production.

@fanquake fanquake added the Tests label Jul 1, 2022
@fanquake fanquake requested a review from theStack July 1, 2022 09:43
@maflcko maflcko force-pushed the 2207-test-rbf-acceptnonstdtxn- branch from ddc5efe to 065aeea Compare July 1, 2022 09:52
@theStack
Copy link
Contributor

theStack commented Jul 1, 2022

Strong Concept ACK

MacroFake added 4 commits July 1, 2022 12:29
…sfer_multi

Previously it was only possible to set the same sequence in all inputs
This makes individual bytes of the scriptPubKey mutable, previously it
could only be re-assigned as a whole.
@maflcko maflcko force-pushed the 2207-test-rbf-acceptnonstdtxn- branch from 065aeea to fa034ad Compare July 1, 2022 10:31
@DrahtBot
Copy link
Contributor

DrahtBot commented Jul 1, 2022

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

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #25461 (test: test RBF rule 3 by jamesob)
  • #25373 (Support ignoring "opt-in" flag for RBF (aka full RBF) by luke-jr)

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.

@maflcko maflcko force-pushed the 2207-test-rbf-acceptnonstdtxn- branch from fa034ad to faf9f00 Compare July 4, 2022 08:05
@jamesob
Copy link
Contributor

jamesob commented Jul 4, 2022

Concept ACK, will review early next week

Copy link
Contributor

@theStack theStack 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 faf9f00

Very nice to see MiniWallet unfolding its full power! 🦾 the code is much more easier to reason about, without the need of manually crafting transactions. Unrelated to this PR, but I think the current mixture of different units for both absolute values/fees and fee-rates is a bit messy -- maybe we should aspire to only use sats and sats/vbyte at some point, which would get rid of many unneeded * COIN and / COIN operations.

@maflcko maflcko force-pushed the 2207-test-rbf-acceptnonstdtxn- branch from faf9f00 to fad690b Compare July 6, 2022 08:23
Copy link
Contributor

@theStack theStack left a comment

Choose a reason for hiding this comment

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

re-ACK fad690b

The current CI failures seem to be unrelated to this PR.

@maflcko
Copy link
Member Author

maflcko commented Jul 6, 2022

(ci rerun after outage, now green)

Copy link
Contributor

@jamesob jamesob left a comment

Choose a reason for hiding this comment

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

ACK fad690b (jamesob/ackr/25522.1.MarcoFalke.test_remove_acceptnonstd)

Good change - significantly simplifies the RBF tests and allows us to avoid
uncharacteristic use of nonstandard transactions.

@@ -232,12 +232,14 @@ def create_self_transfer_multi(
*,
utxos_to_spend: Optional[List[dict]] = None,
num_outputs=1,
amount_per_output=0,
Copy link
Contributor

Choose a reason for hiding this comment

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

fac3800

(only if you retouch) might be clearer to make this None

@maflcko maflcko merged commit 8ef096d into bitcoin:master Jul 7, 2022
@maflcko maflcko deleted the 2207-test-rbf-acceptnonstdtxn-🐁 branch July 7, 2022 14:21
maflcko pushed a commit that referenced this pull request Jul 11, 2022
…g_transactions` helper

6cbe65c test: refactor: pass absolute fee in `create_lots_of_big_transactions` helper (Sebastian Falbesoner)

Pull request description:

  Recently merged PR #25522 (commit 2222842) enabled specifying an absolute fee for MiniWallet's `create_self_transfer` method. We can use that in the `create_lots_of_big_transactions` helper to avoid deducting the fee manually (with prior conversion from BTC to Satoshis). This helper is used (directly or indirectly) in the tests `feature_maxuploadtarget.py`, `mempool_limit.py`, `mining_prioritisetransaction.py`.

ACKs for top commit:
  MarcoFalke:
    cr ACK 6cbe65c

Tree-SHA512: 63d66939ae36722a2dc787cbd8f1f995de6232139c2169a3d25525f43c7aaacf646d86b4095a8078f26db18e916778c8097acb19ef17ab0f58382b8bb718d60b
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Jul 11, 2022
…s_of_big_transactions` helper

6cbe65c test: refactor: pass absolute fee in `create_lots_of_big_transactions` helper (Sebastian Falbesoner)

Pull request description:

  Recently merged PR bitcoin#25522 (commit 2222842) enabled specifying an absolute fee for MiniWallet's `create_self_transfer` method. We can use that in the `create_lots_of_big_transactions` helper to avoid deducting the fee manually (with prior conversion from BTC to Satoshis). This helper is used (directly or indirectly) in the tests `feature_maxuploadtarget.py`, `mempool_limit.py`, `mining_prioritisetransaction.py`.

ACKs for top commit:
  MarcoFalke:
    cr ACK 6cbe65c

Tree-SHA512: 63d66939ae36722a2dc787cbd8f1f995de6232139c2169a3d25525f43c7aaacf646d86b4095a8078f26db18e916778c8097acb19ef17ab0f58382b8bb718d60b
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Jul 11, 2022
@bitcoin bitcoin locked and limited conversation to collaborators Jul 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants