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

[0.16.1] Remaining backports #13317

Merged
merged 8 commits into from
May 28, 2018
Merged

Conversation

maflcko
Copy link
Member

@maflcko maflcko commented May 24, 2018

No description provided.

@maflcko maflcko added this to the 0.16.1 milestone May 24, 2018
sdaftuar and others added 4 commits May 24, 2018 13:55
Technically, some internal datastructures may be in an inconsistent
state if we do this, though there are no known bugs there. Still,
for future safety, its much better to only unlock cs_main if we've
made progress (not just tried a reorg which may make progress).

Github-Pull: bitcoin#13023
Rebased-From: ecc3c4a
If multiple threads are invoking ActivateBestChain, it was possible to have
them working towards different tips, and we could arrive at a less work tip
than we should.  Fix this by introducing a ChainState lock which must
be held for the entire duration of ActivateBestChain to enforce
exclusion in ABC.

Github-Pull: bitcoin#13023
Rebased-From: a3ae8e6
After a recent bug discovered in callback ordering in MainSignals,
this test checks invariants in ordering of
BlockConnected / BlockDisconnected / UpdatedChainTip signals

Github-Pull: bitcoin#13023
Rebased-From: dd435ad
jl2012 and others added 4 commits May 24, 2018 14:03
This disables OP_CODESEPARATOR in non-segwit scripts (even in an unexecuted branch), and makes a positive FindAndDelete result invalid. This ensures that the scriptCode serialized in SignatureHash() is always the same as the script passing to the EvalScript.

Github-Pull: bitcoin#11423
Rebased-From: 9dabfe4
Tests showing that CONST_SCRIPTCODE is applied only to non-segwit transactions

Github-Pull: bitcoin#11423
Rebased-From: 0f8719b
A transaction with 1 segwit input and 1 P2WPHK output has non-witness size of 82 bytes. Anything smaller than this have unnecessary malloc overhead and are not relayed/mined.

Github-Pull: bitcoin#11423
Rebased-From: 7485488
@fanquake fanquake changed the title [0.16.1] Remainig backports [0.16.1] Remaining backports May 25, 2018
@promag
Copy link
Member

promag commented May 25, 2018

utACK 08334b7.

@jnewbery
Copy link
Contributor

Tested ACK 08334b7

@achow101
Copy link
Member

utACK 08334b7

2 similar comments
@sipa
Copy link
Member

sipa commented May 28, 2018

utACK 08334b7

@laanwj
Copy link
Member

laanwj commented May 28, 2018

utACK 08334b7

@laanwj laanwj merged commit 08334b7 into bitcoin:0.16 May 28, 2018
laanwj added a commit that referenced this pull request May 28, 2018
08334b7 qa: Pad scriptPubKeys to get minimum sized txs (MarcoFalke)
0a000b9 Policy to reject extremely small transactions (Johnson Lau)
1fffc2b Add transaction tests for constant scriptCode (Johnson Lau)
d353dd1 Add constant scriptCode policy in non-segwit scripts (Johnson Lau)
d6c3a08 Add unit tests for signals generated by ProcessNewBlock() (Jesse Cohen)
bb79aaf Fix concurrency-related bugs in ActivateBestChain (Jesse Cohen)
0948153 Do not unlock cs_main in ABC unless we've actually made progress. (Matt Corallo)
c71e535 Bugfix: ensure consistency of m_failed_blocks after reconsiderblock (Suhas Daftuar)

Pull request description:

Tree-SHA512: 7466b8fcc2a1d598102028019d82c581fe985a11679d002c430287851142598c9172249aa9de511a26bd4c92dc4891b5ab597c24af4f591f2158cc2a58ff7beb
@maflcko maflcko deleted the Mf1805-016ForBackport branch May 29, 2018 18:36
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
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.

10 participants