Having debug enabled for TSAN builds is problematic since DEBUG_LOCKORDER is enabled,
which may conflict with TSAN's own deadlock checks. While we could disable only DEBUG_LOCKORDER,
doing this is cleaner (compare to something like D6540) and enabling debug is not required for
informative TSAN output, since -g is set either way (-g provides line numbers and file names
in failure logs).
Details
Details
- Reviewers
deadalnix - Group Reviewers
Restricted Project - Commits
- rABCa0c05b6739fe: [CI] Do not enable debug for TSAN builds
Run TSAN on this diff. It still may fail due to an unrelated, outstanding issue.
https://build.bitcoinabc.org/viewLog.html?buildId=76914&buildTypeId=BitcoinABC_BitcoinAbcStaging&tab=buildLog
Diff Detail
Diff Detail
- Repository
- rABC Bitcoin ABC
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
Build Bitcoin ABC Diffs / Diff Testing (build-tsan) failed.
Snippet of first build failure:
2020-06-11T20:29:03.790000Z TestFramework (INFO): Initializing test directory /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_txn_clone_331
2020-06-11T20:29:08.717000Z TestFramework (INFO): Stopping nodes
2020-06-11T20:29:10.274000Z TestFramework (INFO): Cleaning up /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_txn_clone_331 on exit
2020-06-11T20:29:10.275000Z TestFramework (INFO): Tests successful
[20:30:07]i: [Bitcoin ABC functional tests] wallet_txn_doublespend.py
[20:30:07]i: [wallet_txn_doublespend.py] [Test Output]
2020-06-11T20:29:52.502000Z TestFramework (INFO): Initializing test directory /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_txn_doublespend_384
2020-06-11T20:29:55.236000Z TestFramework (INFO): Stopping nodes
2020-06-11T20:29:55.591000Z TestFramework (INFO): Cleaning up /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_txn_doublespend_384 on exit
2020-06-11T20:29:55.591000Z TestFramework (INFO): Tests successful
[20:30:07]i: [Bitcoin ABC functional tests] wallet_txn_doublespend.py --mineblock
[20:30:07]i: [wallet_txn_doublespend.py --mineblock] [Test Output]
2020-06-11T20:29:04.305000Z TestFramework (INFO): Initializing test directory /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_txn_doublespend_332
2020-06-11T20:29:09.209000Z TestFramework (INFO): Stopping nodes
2020-06-11T20:29:10.315000Z TestFramework (INFO): Cleaning up /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_txn_doublespend_332 on exit
2020-06-11T20:29:10.315000Z TestFramework (INFO): Tests successful
[20:30:07]i: [Bitcoin ABC functional tests] wallet_zapwallettxes.py
[20:30:07]i: [wallet_zapwallettxes.py] [Test Output]
2020-06-11T20:28:25.184000Z TestFramework (INFO): Initializing test directory /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_zapwallettxes_313
2020-06-11T20:28:26.529000Z TestFramework (INFO): Mining blocks...
2020-06-11T20:28:34.699000Z TestFramework (INFO): Stopping nodes
2020-06-11T20:28:35.102000Z TestFramework (INFO): Cleaning up /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/wallet_zapwallettxes_313 on exit
2020-06-11T20:28:35.102000Z TestFramework (INFO): Tests successful
[20:30:07]i: [Bitcoin ABC functional tests] abc-block-sigchecks-activation.py
[20:30:07]i: [abc-block-sigchecks-activation.py] [Test Output]
2020-06-11T20:27:59.688000Z TestFramework (INFO): Initializing test directory /work/build/test/tmp/test_runner_₿₵_ _20200611_202549/abc-block-sigchecks-activation_302
2020-06-11T20:28:01.088000Z TestFramework (INFO): Create some blocks with OP_1 coinbase for spending.
2020-06-11T20:28:01.194000Z TestFramework (INFO): Mature the blocks.
2020-06-11T20:28:01.456000Z TestFramework (INFO): Funding special coins that have high sigchecks
2020-06-11T20:28:04.482000Z TestFramework (INFO): Create transaction that have high sigchecks
2020-06-11T20:28:04.968000Z TestFramework (INFO): Approach to just before upgrade activation
2020-06-11T20:28:05.073000Z TestFramework (INFO): The next block will activate, but the activation block itself must follow old rules
2020-06-11T20:28:08.144000Z TestFramework (INFO): Mine the activation block itself
2020-06-11T20:28:08.647000Z TestFramework (INFO): We have activated!
2020-06-11T20:28:08.648000Z TestFramework (INFO): Try a block with a transaction going over the limit (limit: 3000)
2020-06-11T20:28:08.903000Z TestFramework (INFO): Try a block with a transaction just under the limit (limit: 3000)
2020-06-11T20:28:09.014000Z TestFramework (INFO): Try sending 10000-sigcheck blocks after activation (limit: 7999)
2020-06-11T20:28:09.421000Z TestFramework (INFO): There are too many sigchecks in mempool to mine in a single block. Make sure the node won't mine invalid blocks.
2020-06-11T20:28:09.800000Z TestFramework (INFO): Try sending 10000-sigcheck block with fresh transactions after activation (limit: 7999)
2020-06-11T20:28:13.598000Z TestFramework (INFO): Try sending 8000-sigcheck block after activation (limit: 7999)
2020-06-11T20:28:14.045000Z TestFramework (INFO): Bump the excessiveblocksize limit by 1 byte, and send another block with same txes (new sigchecks limit: 8000)
2020-06-11T20:28:14.330000Z TestFramework (INFO): Stopping nodes
[20:30:07]i: [abc-block-sigchecks-activation.py] [Test Error Output]
Traceback (most recent call last):
File "/work/test/functional/abc-block-sigchecks-activation.py", line 439, in <module>
BlockSigChecksActivationTest().main()
File "/work/test/functional/test_framework/test_framework.py", line 208, in main
self.stop_nodes()
File "/work/test/functional/test_framework/test_framework.py", line 406, in stop_nodes
node.wait_until_stopped()
File "/work/test/functional/test_framework/test_node.py", line 354, in wait_until_stopped
wait_until(self.is_node_stopped, timeout=timeout)
File "/work/test/functional/test_framework/util.py", line 253, in wait_until
if predicate():
File "/work/test/functional/test_framework/test_node.py", line 345, in is_node_stopped
"Node returned non-zero exit code ({}) when stopping".format(return_code))
AssertionError: [node 0] Node returned non-zero exit code (66) when stopping
[20:30:10]E: [Step 1/2] Failed tests detected
[20:30:11]W: [Step 1/2] Process exited with code 1
[20:30:11]E: [Step 1/2] Process exited with code 1 (Step: Command Line)Each failure log is accessible here:
Bitcoin ABC functional tests: abc-block-sigchecks-activation.py