aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-01-03rpc: Document bytessent_per_msg and bytesrecv_per_msgMarcoFalke
2019-01-02Merge #14457: test: add invalid tx templates for use in functional testsWladimir J. van der Laan
59e387705c7e55ec40400301346354fa2d0c613f test: add invalid tx templates for use in functional tests (James O'Beirne) Pull request description: This change adds a list of `CTransaction`-generating templates which each correspond to a specific type of invalid transaction. We then use this list to test for a wider variety of invalid tx types in `p2p_invalid_tx.py` and `feature_block.py`. Consolidating all invalid tx types will allow us to more easily cover all tx reject cases from a variety of tests without repeating ourselves. Validation logic doesn't differ much between mempool and block acceptance, but there *is* a difference and we should be sure we're testing both comprehensively. Right now, I've only added templates covering the tx reject types listed below but if this approach seems worthwhile I will expand the list to be fully comprehensive. ``` bad-txns-in-belowout bad-txns-inputs-duplicate bad-txns-too-many-sigops bad-txns-vin-empty bad-txns-vout-empty bad-txns-vout-negative ``` Tree-SHA512: 05407f4a953fbd7c44c08bb49bb989cefd39a2b05ea00f5b3c92197a3f05e1b302f789e33832445734220e1c333d133aba385740b77b84139b170c583471ce20
2019-01-02Merge #14790: Tests: Allow running rpc_bind.py --nonloopback test without IPv6Wladimir J. van der Laan
c9066f07c94e3610f7762d6406851cd135790511 Allow running rpc_bind.py --nonloopback test without IPv6 (Kristaps Kaupe) Pull request description: Don't see a reason why this can't be tested with IPv4 only. Tree-SHA512: 515bdf700fad420e4b1798fd4978b53e2da3ddb26e43b16d68b43071bc912c325f1ceb10046ba3d0494dab289a53c45ddc2de9064117d8c1d6bf11e88323f490
2019-01-02Merge #14336: net: implement pollWladimir J. van der Laan
4927bf2f257ac53569978980eaf1f61c2c6b04cc Increase maxconnections limit when using poll. (Patrick Strateman) 11cc491a288a73e911be24a285e12abd57df7d04 Implement poll() on systems which support it properly. (Patrick Strateman) 28211a4bc9c65859b641b81a0541726a0e01988f Move SocketEvents logic to private method. (Patrick Strateman) 7e403c0ae705455aa66f7df9a9a99f462fd4e9a8 Move GenerateSelectSet logic to private method. (Patrick Strateman) 1e6afd0dbc1c581435588e1e9bb419a035b81028 Introduce and use constant SELECT_TIMEOUT_MILLISECONDS. (Patrick Strateman) Pull request description: Implement poll() on systems which support it properly. This eliminates the restriction on maximum socket descriptor number. Tree-SHA512: b945cd9294afdafcce96d547f67679d5cdd684cf257904a239cd1248de3b5e093b8d6d28d8d1b7cc923dc0b2b5723faef9bc9bf118a9ce1bdcf357c2323f5573
2019-01-02Merge #15069: test: Fix rpc_net.py "pong" race conditionMarcoFalke
de23739b22 test: Fix rpc_net.py "pong" race condition (Ben Woosley) Pull request description: Prior to this change, the test fails with KeyError if pong has a zero value at the time this is called, as getpeerinfo's bytesrecv_per_msg result excludes zero-values. Combined these to a single wait_until as well, which will be a bit more forgiving re the timeout while still enforcing the same 2 seconds overall. https://ci.appveyor.com/project/DrahtBot/bitcoin/builds/21310881#L62 Tree-SHA512: dc60f95a0e139c104fd81c8a7e0c9b3c25907de26c9d4e5976ae490e8ed5db0f0c492cd0e996ef6b5eb02cae82a62d4551ed36f95601871b19472050b3247bc0
2019-01-02Merge #15073: docs: Botbot.me (IRC logs) not available anymoreMeshCollider
b60ac00d2 Botbot.me (IRC logs) not available anymore (Antti Majakivi) Pull request description: Remove botbot.me link as it's [not available anymore](https://lincolnloop.com/blog/saying-goodbye-botbotme/) and add two other IRC history log sources for #bitcoin-core-dev, http://www.erisian.com.au/bitcoin-core-dev/ and http://gnusha.org/bitcoin-core-dev/. Tree-SHA512: 025477b33542c8b91fa99eec7f5cdff043da4bf11e0f8ceba8175fe3ca171ba66a66040673e487a85babe790514a1c8f9b5ce8a31013c01befb050272b6ca33a
2019-01-01test: Fix rpc_net.py "pong" race conditionBen Woosley
Prior to this change, the test fails with KeyError if pong has a zero value at the time this is called, as getpeerinfo's bytesrecv_per_msg result excludes zero-values. https://ci.appveyor.com/project/DrahtBot/bitcoin/builds/21310881#L62
2019-01-01Botbot.me (IRC logs) not available anymoreAntti Majakivi
Remove botbot.me link and add two other IRC history log sources: logs for #bitcoin-core-dev at http://www.erisian.com.au/bitcoin-core-dev/ and http://gnusha.org/bitcoin-core-dev/
2018-12-31Merge #14974: doc: Removing redundant line: "Windows XP not supported"Wladimir J. van der Laan
3019ba28d1fbe631c2318375c44aca0d769cc5a5 Making supported operating systems more clear (Ben Carman) Pull request description: With the doc saying that we only support Windows 7+ stating that XP isn't supported is redundant and can be removed. Bitcoin stop supporting Windows XP in 0.13 so users should have had plenty of time to learn that XP is no longer supported. Tree-SHA512: bbaaea205ea7ec9960198e70ded83e8f384c9b8c476ed873488635b8dfe28a482f8caa50df2fd818f226cdc936a21de087e95f0f1fd7f5ae17e7889ea0bea221
2018-12-31Merge #15054: Update copyright headers to 2018MarcoFalke
1a49a0e310 Bump manpages (DrahtBot) 06ba77973e Update copyright headers to 2018 (DrahtBot) Pull request description: * `./contrib/devtools/copyright_header.py update ./` * `./contrib/devtools/gen-manpages.sh` Tree-SHA512: ca0dc5e97f4c33814d4ccd17769bbf2d23a99a71d62534fe1064fedfe47de3b5c30caf9b6deb0d70bf125e08c7ae6335ac4fcded918049d6b63b13b319d798e3
2018-12-31Merge #15061: [Trivial] Update license year range to 2019Wladimir J. van der Laan
ae5594d51b489826f2f2315c92e8df5ee0267efc [Trivial] Update license year range to 2019 (Emil Engler) Pull request description: Bitcoin Core is going to become 10 so the license year range also needs an update. 2019 is coming very soon so it is the time to update the year range like every year. Same as #12063 Tree-SHA512: 64d8b5ad12c4a9a1afdeaac7c5b5d874cda66eb9b7040b58dc253b359d0090dadab033d2ead65aad331d9dc5c56bcf8066b6d09fd85de5bfc7de7309db16d155
2018-12-31[Trivial] Update license year range to 2019Emil Engler
Update year range
2018-12-29Merge #15026: [test] Rename rpc_timewait to rpc_timeoutMarcoFalke
4999992c34 whitespace: Split ~300 char line into multiple ones (MarcoFalke) fa71b38168 scripted-diff: Rename rpc_timewait to rpc_timeout (MarcoFalke) fa3e5786d0 scripted-diff: Remove unused 'split' parameter to setup_network (MarcoFalke) Pull request description: This is a bugfix, since wallet_dump currently uses the wrong name: https://github.com/bitcoin/bitcoin/blob/18857b4c4034af54e7ad3cbd78ff6f87f4f22567/test/functional/wallet_dump.py#L89-L92 Rename all to the same name with a scripted diff (and some unrelated cleanups). Tree-SHA512: 338ddd20dae12e6cf7aa7adbcfb239cf648017a1572b373f8431fecb184bd2a65492846d81e75a023864d9e41c94afb53044c16b79651a5937d34a5a6b772f81
2018-12-29Merge #14738: Tests: Fix running wallet_listtransactions.py individually ↵MarcoFalke
through test_runner.py 2474de0265 Fix running individually through test_runner.py, as suggested by @MarcoFalke (#14732) (Kristaps Kaupe) Pull request description: As suggested by @MarcoFalke. Resolves #14732. Tree-SHA512: b4e400ba06075e218dbd97d0390845f1c55be42a2b6fd70513381318cfc2693473ba1d0f9d7f379a96939d1960b53801fad7c02e06bddc50c5a835ad024c37ef
2018-12-29Merge #15022: tests: Upgrade Travis OS to XenialMarcoFalke
b6f0db69a9 Increase timeout of featuer_assumevalid test to fix flaky tests (Graham Krizek) aa9aca85f1 If tests are ran with (ASan + LSan), Docker needs access to ptrace (Graham Krizek) a3b8b43663 Update Travis base OS to Xenial (Graham Krizek) Pull request description: Update base Travis OS to `xenial` from `trusty`. Link to Travis Docs for Xenial: https://docs.travis-ci.com/user/reference/xenial/ As noted in the documentation, Docker version is also updated from `17.06` to `18.06` Also includes: - If running Bitcoin config with LSan sanitizer, Allow ptrace in Docker run command - Increase timeout of feature_assumevalid test to fix flaky tests Tree-SHA512: baf2eda0cbb9990c43c76de1aebc8dd4a3f540323ac1fe2e164ac3bcf1fe3afa3e5b026bfeb5d650dae09a6854695d5744c1130c2fa82ece86c6835ba152f68d
2018-12-29Merge #13743: refactor: Replace boost::bind with std::bindMarcoFalke
cb53b825c2 scripted-diff: Replace boost::bind with std::bind (Chun Kuan Lee) 2196c51821 refactor: Use boost::scoped_connection in signal/slot, also prefer range-based loop instead of std::transform (Chun Kuan Lee) Pull request description: Replace boost::bind with std::bind - In `src/rpc/server.cpp`, replace `std::transform` with simple loop. - In `src/validation.cpp`, store the `boost::signals2::connection` object and use it to disconnect. - In `src/validationinterface.cpp`, use 2 map to store the `boost::signals2::scoped_connection` object. Tree-SHA512: 6653cbe00036fecfc495340618efcba6d7be0227c752b37b81a27184433330f817e8de9257774e9b35828026cb55f11ee7f17d6c388aebe22c4a3df13b5092f0
2018-12-29Bump manpagesDrahtBot
2018-12-29Update copyright headers to 2018DrahtBot
2018-12-29Merge #14966: docs: fix testmempoolaccept CLI syntaxMarcoFalke
b74a52192b fix testmempoolaccept CLI syntax (1Il1) Pull request description: `testmempoolaccept "hexstring"` will give a "JSON parse error". The correct syntax is `testmempoolaccept \[\"hexstring\"\]` (but seems escaping is not displayed in other areas so leaving backspaces out). Tree-SHA512: ad755147d6db0bd3f2d8481517dab29df755a32b28a3bdb4553b1fddd1940850450d1e9a6c3bd04e4e3faa7bc09aadfd3412b4cd65e61d61ea34452831597967
2018-12-28Increase timeout of featuer_assumevalid test to fix flaky testsGraham Krizek
2018-12-28If tests are ran with (ASan + LSan), Docker needs access to ptraceGraham Krizek
See https://github.com/google/sanitizers/issues/764 for details
2018-12-28Update Travis base OS to XenialGraham Krizek
Updating the base OS used in Travis to Xenial from Trusty. This also updates Docker to 18.06 instead of 17.06 in CI.
2018-12-28Merge #14981: rpc: Clarifying RPC getrawtransaction's time help textMarcoFalke
84104c781a clarifying getrawtransaction[time] get help text (Ben Carman) Pull request description: #12339 The `time` and `blocktime` entries have the same value so they should have the same help text as well Tree-SHA512: 1e9a94678eec8501c761f16bf3d8e269d68620596d1fdd31a32989a1b53be5a8097ece8bfabe99979e658dec82237e37d8194ae2acd7c1deef7501ee701667fb
2018-12-28Merge #14944: doc: update NetBSD build instructions for 8.0Wladimir J. van der Laan
be5ca825a38bc71c3a79ef35335e9c2e597ad225 doc: update NetBSD build instructions for 8.0 (fanquake) Pull request description: Updates the NetBSD build documentation for 8.0. Use Python37 and add pkg-config. Switches to using our `contrib/install_db4.sh` script for installing bdb. Tree-SHA512: c0ac1a89349a752d9d4d87e2d134fd402e9beaac84e471ec9a0b507ebc5e762e973c8d2821db3824dea82841e38c39b0bb0a0d97f7e58318f2b15e93e81bf654
2018-12-28Merge #14973: doc: Improve Windows native build instructionsWladimir J. van der Laan
523785042b5fccda981d85a7ea85a8ce30fe1709 Modify build instructions to work with Command Prompt as well as PowerShell; other minor changes (Murray Nesbitt) Pull request description: The current instructions assume usage of `PowerShell`; running in a `Command Prompt` results in a syntax error. Proposed change works with both `Command Prompt` and `PowerShell`. Also a few other minor formatting changes. Tree-SHA512: 5f8782d8706c99d7680db01e560ccd823c8442f0f19b65ae54183a810994418d168527bbf3430fa5d88b3a55264e66ef08fe1f5949cce810b0a103a6b55ea363
2018-12-28Merge #15012: Docs: Fix minor error in doc/psbt.mdWladimir J. van der Laan
72b63bc9054f7742a9b12ea29b21770b5e437092 Fix minor grammar error in doc (bitcoinhodler) Pull request description: It's pretty clear that the author meant "rather than" here. Tree-SHA512: aa31d0e8a8a203dba5c0f6edd73ba935b701449243a0fa75d7ca4a35d20c0fd44ba45b58e3d1c7f1854eb1ed66543ecd5d53181c54352e4c3d42eb3ab38cf6f2
2018-12-27Merge #14930: test: pruning: Check that verifychain can be called when prunedMarcoFalke
fa3e874d69 test: pruning: Check that verifychain can be called when pruned (MarcoFalke) Pull request description: Tree-SHA512: b921e550fdad27b791665883ed9fc50210575b0f968840a45284ad0e060ddd443ea7b9b12c17916f68ad28877c58ac51a6acc76ae4ea71bf7bfb2f744b286884
2018-12-25Merge #15033: doc: Add historical release notes for 0.17.1Wladimir J. van der Laan
488563ea1c688c7d1150f3e58c07f7bc756c977a doc: Add historical release notes for 0.17.1 (Wladimir J. van der Laan) Pull request description: Tree-SHA512: e313a70858046ea7d29064ca134db14343618cdb855ac800ca9924279b2c2b3bed412c26a590ef47faa3a301bdead26186381c75950bce815be2c1a03ea2c4a3
2018-12-25doc: Add historical release notes for 0.17.1Wladimir J. van der Laan
2018-12-24Merge #14565: Overhaul importmulti logicMeshCollider
eacff95de Add release notes (Pieter Wuille) bdacbda25 Overhaul importmulti logic (Pieter Wuille) Pull request description: This is an alternative to #14558 (it will warn when fields are being ignored). In addition: * It makes sure no changes to the wallet are made when an error in the input exists. * It validates all arguments, and will fail if anything fails to parse. * Adds a whole bunch of sanity checks Tree-SHA512: fdee0b6aca8c643663f0bc295a7c1d69c1960951493b06abf32c58977f3e565f75918dbd0402dde36e508dc746c9310a968a0ebbacccc385a57ac2a68b49c1d0
2018-12-22Merge #13930: doc: Better explain GetAncestor check for m_failed_blocks in ↵MarcoFalke
AcceptBlockHeader 66e15e8f97 Explain GetAncestor check for m_failed_blocks in AcceptBlockHeader (Sjors Provoost) Pull request description: Salvaged (but slightly modified) from #12138, the comment there was really helpful to wrap my head around that part of the code. In addition, a naive reader like yours truly will first think `IsValid(BLOCK_VALID_SCRIPTS)` means the previous block was invalid. But IIUC that's not what it means. Instead, it means the block hasn't been checked for validity at the `BLOCK_VALID_SCRIPTS` level yet. So in that case the existing text "previous block index isn't valid" is wrong. Tree-SHA512: 442a319a83290d94697fdf51376463b70454e0f3909d4a45594ddc2e7c26cd19dc703808385a25e26d6d2dddab0aa35ca41722f2e65ee6fe57bbaf62652d3ec8
2018-12-22whitespace: Split ~300 char line into multiple onesMarcoFalke
2018-12-22scripted-diff: Rename rpc_timewait to rpc_timeoutMarcoFalke
-BEGIN VERIFY SCRIPT- sed -i -e 's/self.rpc_timewait/self.rpc_timeout/g' $(git grep -l self.rpc_timewait) -END VERIFY SCRIPT-
2018-12-22scripted-diff: Remove unused 'split' parameter to setup_networkMarcoFalke
-BEGIN VERIFY SCRIPT- sed -i -e 's/, split=False//g' $(git grep -l 'def setup_network') -END VERIFY SCRIPT-
2018-12-22Merge #14960: lint/format-strings: Correctly exclude escaped percent symbolsMarcoFalke
57281199b8 lint/format-strings: Correctly exclude escaped percent symbols (Luke Dashjr) Pull request description: The current code fails to exclude correctly for patterns like `"%%%X"` Tree-SHA512: cac6f6fb3f06a9190310cd9764ec31cd7d636f9c831057622f418ae5fd2e1d80927a88f585d18f57b279ac21e81518f714dc1a25155377b9297741a73600461e
2018-12-22Merge #13128: policy: Add Clang thread safety annotations for variables ↵MarcoFalke
guarded by cs_feeEstimator dae1423e5a Add locking annotations to feeStats, shortStats and longStats (practicalswift) 764e42fee2 scripted-diff: Rename from cs_feeEstimator to m_cs_fee_estimator (practicalswift) 9a789d4dc6 policy: Add Clang thread safety annotations for variables guarded by cs_feeEstimator (practicalswift) Pull request description: * Add Clang thread safety annotations for variables guarded by `cs_feeEstimator` * ~~Add missing `cs_feeEstimator` locks~~ Tree-SHA512: 24b1d876ad53524ee8989b9658ac1a1b2766ebb3b27a1f84601d207e74d090e33738b814afac2a1f5bcd37565abcb361c6e5adae212840ff1ca32c3c42953391
2018-12-22Merge #14172: Refactor and add tests for BlockFilter constructionMarcoFalke
e4ed8ce2c8 blockfilter: Remove default clause in switch statement. (Jim Posen) c30620983d blockfilter: Additional constructors for BlockFilter. (Jim Posen) 20b812993a blockfilter: Refactor GCS params into struct. (Jim Posen) Pull request description: These commits have been split out of #14121 because they are fairly independent and that PR is very large. Tree-SHA512: b9643b159e114df50a295f433e807afe6082db55a2a3a17401c1509b850c71bf5011ab3638863b46663709726be4445be6fde1dec514aec7696135497a9f0183
2018-12-21blockfilter: Remove default clause in switch statement.Jim Posen
Now the compiler will warn if not all enums are handled in the switch.
2018-12-21Merge #15013: test: Avoid race in p2p_timeoutsMarcoFalke
fabcd645b9 test: Avoid racy test p2p_timeouts (MarcoFalke) Pull request description: Avoid filesystem/network racyness by sleeping another second. The alternative would be to poll the `debug.log`, but that seems overkill to avoid a sleep in a test that already requires them. Tree-SHA512: 32de75ecba38426323158fda241e37ffae73806d8c0e60b7ad73fb917e9cd25a3e5f0722cbc6f2f7a5b86501221c317783266bc2e3b4697fb120f05898ccc12d
2018-12-21Merge #14811: Mining: Enforce that segwit option must be set in GBTMarcoFalke
d2ce315fbf [docs] add release note for change to GBT (John Newbery) 0025c9eae4 [mining] segwit option must be set in GBT (John Newbery) Pull request description: Calling getblocktemplate without the segwit rule specified is most likely a client error, since it results in lower fees for the miner. Prevent this client error by failing getblocktemplate if called without the segwit rule specified. Of the previous 1000 blocks (measured at block [551591 (hash 0x...173c811)](https://blockstream.info/block/000000000000000000173c811e79858808abc3216af607035973f002bef60a7a)), 991 included segwit transactions. Tree-SHA512: 7933b073d72683c9ab9318db46a085ec19a56a14937945c73f783ac7656887619a86b74db0bdfcb8121df44f63a1d6a6fb19e98505b2a26a6a8a6e768e442fee
2018-12-21test: Avoid racy test p2p_timeoutsMarcoFalke
2018-12-21Merge #15005: test: Bump timeout to run tests in travis thread sanitizerMarcoFalke
fa05d52af4 test: Bump timeout to run tests in travis thread sanitizer (MarcoFalke) Pull request description: No need to exclude tests because their timeout was set too strict Tree-SHA512: ea7032e674a66456bab40122adf4beebd703fd626a7567ca76d2a4e78041af115564d863dc7f742d39bd4adb249c29751439a1238d5e5c34e474c7221d4fd6e1
2018-12-20Fix minor grammar error in docbitcoinhodler
2018-12-21Merge #14653: rpcwallet: Add missing transaction categories to rpc helptextsMarcoFalke
f3f6dde56e Test coinbase category in wallet rpcs (andrewtoth) e982f0b682 Add all category options to wallet rpc help (andrewtoth) Pull request description: The current helptext for `listtransactions`, `listsinceblock` and `gettransaction` only list two of the five possible options for `category`. This incorrectly implies that these are the only two options, and can cause problems if the other three options aren't accounted for. Also, some of the documentation is incorrect when specifying which options are returned for which categories. This PR updates the helptext for these RPCs and adds a functional regression test for the cases when the other three categories are returned. Tree-SHA512: 67dd7ff6269a3b0f17f5d1a61b0ae1fb1f3778f05e1c440bfbb9b3a005c9c6d740abcace20f3d597cf2bd6779c494448690f13fab0bd2340f206213bc7890b51
2018-12-20test: Bump timeout to run tests in travis thread sanitizerMarcoFalke
2018-12-19Merge #14993: rpc: Fix data race (UB) in InterruptRPC()Wladimir J. van der Laan
6c10037f72073eecc674c313580ef50a4f1e1e44 rpc: Fix data race (UB) in InterruptRPC() (practicalswift) Pull request description: Fix data race (UB) in `InterruptRPC()`. Before: ``` $ ./configure --with-sanitizers=thread $ make $ test/functional/test_runner.py feature_shutdown.py … SUMMARY: ThreadSanitizer: data race rpc/server.cpp:314 in InterruptRPC() … ALL | ✖ Failed | 2 s (accumulated) ``` After: ``` $ ./configure --with-sanitizers=thread $ make $ test/functional/test_runner.py feature_shutdown.py … ALL | ✓ Passed | 3 s (accumulated) ``` Tree-SHA512: b139ca1a0480258f8caa7730cabd7783a821d906630f51487750a6b15b7842675ed679747e1ff1bdade77d248807e9d77bae7bb88da54d1df84a179cd9b9b987
2018-12-19Merge #14875: RPCHelpMan: Support required arguments after optional onesMarcoFalke
fa9a5bc1a0 RPCHelpMan: Support required arguments after optional ones (MarcoFalke) Pull request description: There was a requirement that required arguments could not be positioned after an optional argument, but the deprecation of priority made the second argument to `prioritisetransaction` optional. So support that in `RPCHelpMan`. Also format all named arguments in the same way (without the wrapping `"` even for strings), since the extended description already mentions the type and it feels odd to special case strings. Tree-SHA512: c125145afb4a63abc995aaf0a89489efc0f470a720727a1ca6ee0bfd2bcbc59e87c38128dd1e0cdf03dbb5b18e84867887c3dabf6ec8378e66cb1f4cecb9e407
2018-12-19Merge #14985: test: Remove thread_local from test_bitcoinMarcoFalke
fa61202cae test: Add comment to g_insecure_rand_ctx (MarcoFalke) fa0d3c4407 test: Undo thread_local g_insecure_rand_ctx (MarcoFalke) Pull request description: `thread_local` seems to be highly controversial according to the discussion in #14953, so remove it again from the tests. Also remove boost::thread_group in the test that uses it, since I am touching it anyway. Tree-SHA512: 977c1f597e3cfbd0e97d0b037d998fdbc701f62e9a2f57e02dbe1727b63ae8ff478dbd9d3d6dc4ffdfa23f2058b331f04949d51f23a8f55b41ecb75f088f1cbe
2018-12-18rpc: Fix data race (UB) in InterruptRPC()practicalswift
2018-12-19Merge #14829: travis: Enable functional tests in the ThreadSanitizer (TSan) ↵MarcoFalke
build job eaf4070e3a Add suppression for InterruptRPC (fRPCRunning) data race (practicalswift) 5e5138a721 travis: Use trap and set -e errtrace (Chun Kuan Lee) 069752b726 build: Enable functional tests in the ThreadSanitizer (TSan) build job (practicalswift) Pull request description: Enable functional tests in the ThreadSanitizer (TSan) build job. This is a follow-up to @MarcoFalke's #14764 which added TSan but for unit tests only. Tree-SHA512: dcc24d311fa124772c3036b16c2bf94732ece36c3e22b4bb8fe941772e52157ab2b1a90b1880b81079c2eef2d344ca7e1da58324b75dbf82d16204d591ad49fb