aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-02Disable fee estimates for a confirm target of 1 blockAlex Morcos
Backport of #9239 without GUI changes and fixing conflicts in tests.
2016-12-02Merge #9191: [qa] 0.13.2 BackportsWladimir J. van der Laan
e846166 Modify getblocktxn handler not to drop requests for old blocks (Russell Yanofsky) 2cad5db Align constant names for maximum compact block / blocktxn depth (Pieter Wuille) 3d23a0e Add cmpctblock to debug help list (instagibbs) 76ba1c9 More agressively filter compact block requests (Matt Corallo) 36e3b95 Dont remove a "preferred" cmpctblock peer if they provide a block (Matt Corallo) 286e548 [qa] Fix stale data bug in test_compactblocks_not_at_tip (Russell Yanofsky) 2ba5d78 [qa] Fix bug in compactblocks v2 merge (Russell Yanofsky) eca9b46 [qa] Wait for specific block announcement in p2p-compactblocks (Russell Yanofsky) dccdc3a test: Fix use-after-free in scheduler tests (Wladimir J. van der Laan) da4926b [qa] Add more helpful RPC timeout message (Russell Yanofsky) 1d4c884 [qa] Increase wallet-dump RPC timeout (Russell Yanofsky) 3107280 [qa] add assert_raises_message to check specific error message (mrbandrews)
2016-12-02Revert "Use async name resolving to improve net thread responsiveness"Matt Corallo
This reverts commit caf6150e9785da408f1e603ae70eae25b5202d98. getaddrinfo_a has a nasty tendency to segfault internally in its background thread, on every version of glibc I tested, especially under helgrind. See https://sourceware.org/bugzilla/show_bug.cgi?id=20874 Github-Pull: #9229 Rebased-From: 10ae7a7b2316f8052ec58ef237ce6dd987300900
2016-11-30torcontrol: Explicitly request RSA1024 private keyWladimir J. van der Laan
When generating a new service key, explicitly request a RSA1024 one. The bitcoin P2P protocol has no support for the longer hidden service names that will come with ed25519 keys, until it does, we depend on the old hidden service type so make this explicit. See #9214. Rebased-From: 7d3b627395582ae7c9d54ebdbc68096d7042162b Github-Pull: #9234
2016-11-20Modify getblocktxn handler not to drop requests for old blocksRussell Yanofsky
The current getblocktxn implementation drops and ignores requests for old blocks, which causes occasional sync_block timeouts during the p2p-compactblocks.py test as reported in https://github.com/bitcoin/bitcoin/issues/8842. The p2p-compactblocks.py test setup creates many new blocks in a short period of time, which can lead to getblocktxn requests for blocks below the hardcoded depth limit of 10 blocks. This commit changes the getblocktxn handler not to ignore these requests, so the peer nodes in the test setup will reliably be able to sync. The protocol change is documented in BIP-152 update "Allow block responses to getblocktxn requests" at https://github.com/bitcoin/bips/pull/469. The protocol change is not expected to affect nodes running outside the test environment, because there shouldn't normally be lots of new blocks being rapidly added that need to be synced. Github-Pull: #9058 Rebased-From: dac53b58b555183ccc0d5e64c428528267cd98b3 Github-Pull: #9160 Rebased-From: ec34648766c4052816e4072cc61ad429430bcfd9
2016-11-20Align constant names for maximum compact block / blocktxn depthPieter Wuille
Github-Pull: #8637 Rebased-From: 3ac6de0a045cc9b2047ceb19af970e7ffbf905fa
2016-11-20Add cmpctblock to debug help listinstagibbs
Github-Pull: #8637 Rebased-From: b2e93a343ec2dc7d255b970e6ee45e9c390f7ed0
2016-11-20More agressively filter compact block requestsMatt Corallo
Unit test adaptations by Pieter Wuille. Github-Pull: #8637 Rebased-From: fe998e962dc015978f104b782afb7daec3c4d4df
2016-11-20Dont remove a "preferred" cmpctblock peer if they provide a blockMatt Corallo
Github-Pull: #8637 Rebased-From: 02a337defdd854efc78ecba6d1fb19cb1c075f16
2016-11-19[qa] Fix stale data bug in test_compactblocks_not_at_tipRussell Yanofsky
Clear test_node.last_block before requesting blocks in the compactblocks_not_at_tip test so comparisons won't fail if a blocks were received before the test started. The bug doesn't currently cause any problems due to the order tests run, but this will change in the next commit. Github-Pull: #9058 Rebased-From: 55bfddcabbf9e8a3743f77167ba4a43aaba9f948
2016-11-19[qa] Fix bug in compactblocks v2 mergeRussell Yanofsky
Bug caused the wait_for_block_announcement to be called on the wrong node, leading to nondeterminism and occasional test failures. Bug was introduced in merge commit: d075479 Merge #8882: [qa] Fix race conditions in p2p-compactblocks.py and sendheaders.py Underlying commits which conflicted were: 27acfc1 [qa] Update p2p-compactblocks.py for compactblocks v2 6976db2 [qa] Another attempt to fix race condition in p2p-compactblocks.py The first commit changed the test_compactblock_construction function signature and second commit added code which wasn't updated during the merge to use the new arguments. Suhas Daftuar <sdaftuar@chaincode.com> noticed the bug and suggested the fix. Github-Pull: #9058 Rebased-From: 47e9659ecfbe07077a4564591095bd5510e0f917
2016-11-19[qa] Wait for specific block announcement in p2p-compactblocksRussell Yanofsky
Change check_announcement_of_new_block() to wait specifically for the announcement of the newly created block, instead of waiting for any announcement at all. A difficult to reproduce failure in check_announcement_of_new_block() that happened in a travis build (https://travis-ci.org/bitcoin/bitcoin/jobs/175198367) might have happened because an older announcement was mistaken for the expected one. The error looked like: Assertion failed: Failed File ".../bitcoin/qa/rpc-tests/test_framework/test_framework.py", line 145, in main self.run_test() File ".../bitcoin/build/../qa/rpc-tests/p2p-compactblocks.py", line 787, in run_test self.test_sendcmpct(self.nodes[1], self.segwit_node, 2, old_node=self.old_node) File ".../bitcoin/build/../qa/rpc-tests/p2p-compactblocks.py", line 201, in test_sendcmpct check_announcement_of_new_block(node, test_node, lambda p: p.last_cmpctblock is None and p.last_inv is not None) File ".../bitcoin/build/../qa/rpc-tests/p2p-compactblocks.py", line 194, in check_announcement_of_new_block assert(predicate(peer)) This commit also changes the assertion failed message above to include more detailed information for debug. Github-Pull: #9159 Rebased-From: dfa44d1b07a6d1022005dba63dd6372739eee8a0
2016-11-19test: Fix use-after-free in scheduler testsWladimir J. van der Laan
Make a copy of the boost time-point to wait for, otherwise the head of the queue may be deleted by another thread while this one is waiting, while the boost function still has a reference to it. Although this problem is in non-test code, this is not an actual problem outside of the tests because we use the thread scheduler with only one service thread, so there will never be threads fighting at the head of the queue. The old boost fallback escapes this problem because it passes a scalar value to wait_until instead of a const object reference. Found by running the tests in LLVM-4.0-master asan. Github-Pull: #9186 Rebased-From: 12519bf62b8c49b1c1744eca6ea5b3162a61f962
2016-11-19[qa] Add more helpful RPC timeout messageRussell Yanofsky
Replace previous timeout('timed out',) exception with more detailed error. Github-Pull: #9077 Rebased-From: e89614b6abf28d7fe201c3db44a0df6e4db6de03
2016-11-19[qa] Increase wallet-dump RPC timeoutRussell Yanofsky
Increase wallet-dump RPC timeout from 30 seconds to 1 minute. This avoids a timeout error that seemed to happen regularly (around 50% of builds) on a particular jenkins server during the first getnewaddress RPC call made by the test. The failing stack trace looked like: Unexpected exception caught during testing: timeout('timed out',) File ".../bitcoin/qa/rpc-tests/test_framework/test_framework.py", line 146, in main self.run_test() File ".../bitcoin/qa/rpc-tests/wallet-dump.py", line 73, in run_test addr = self.nodes[0].getnewaddress() File ".../bitcoin/qa/rpc-tests/test_framework/coverage.py", line 49, in __call__ return_val = self.auth_service_proxy_instance.__call__(*args, **kwargs) File ".../bitcoin/qa/rpc-tests/test_framework/authproxy.py", line 145, in __call__ response = self._request('POST', self.__url.path, postdata.encode('utf-8')) File ".../bitcoin/qa/rpc-tests/test_framework/authproxy.py", line 121, in _request return self._get_response() File ".../bitcoin/qa/rpc-tests/test_framework/authproxy.py", line 160, in _get_response http_response = self.__conn.getresponse() File "/usr/lib/python3.4/http/client.py", line 1171, in getresponse response.begin() File "/usr/lib/python3.4/http/client.py", line 351, in begin version, status, reason = self._read_status() File "/usr/lib/python3.4/http/client.py", line 313, in _read_status line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") File "/usr/lib/python3.4/socket.py", line 374, in readinto return self._sock.recv_into(b) Github-Pull: #9077 Rebased-From: 8463aaa63c5ac76421c4d2754ea9e17a31584c93
2016-11-19[qa] add assert_raises_message to check specific error messagemrbandrews
Github-Pull: #9168 Rebased-From: 307acdd3df03082295ac0f7fe9eba7dd35973bc4
2016-11-09Merge #9048: [0.13 backport] Fix handling of invalid compact blocksWladimir J. van der Laan
e8ef50b Bump the protocol version to distinguish new banning behavior. (Suhas Daftuar) 015865e Fix compact block handling to not ban if block is invalid (Suhas Daftuar) 8290506 [qa] Test that invalid compactblocks don't result in ban (Suhas Daftuar)
2016-11-02Merge #9011: 0.13.2 backportsWladimir J. van der Laan
b16cdb7 Add MIT license to build-aux/m4 scripts (Luke Dashjr) 2cfcca7 Trivial: build-aux/m4/l_atomic: Fix typo (Luke Dashjr) fa58e55 Add MIT license to autogen.sh and share/genbuild.sh (Luke Dashjr) 6d05fe1 Add MIT license to Makefiles (Luke Dashjr) 1d048b9 Don't return the address of a P2SH of a P2SH. (jnewbery) ce0d817 Fix relaypriority calculation error (maiiz) 9ef3875 Add missing cs_main lock to ::GETBLOCKTXN processing (Matt Corallo)
2016-11-01Bump the protocol version to distinguish new banning behavior.Suhas Daftuar
This allows future software that would relay compact blocks before full validation to announce only to peers that will not ban if the block turns out to be invalid.
2016-11-01Fix compact block handling to not ban if block is invalidSuhas Daftuar
2016-10-31[qa] Test that invalid compactblocks don't result in banSuhas Daftuar
2016-10-27Move release notes to release-notes/release-notes-0.13.1.mdWladimir J. van der Laan
And clean out current release notes, ready for next release from this branch.
2016-10-27Add MIT license to build-aux/m4 scriptsLuke Dashjr
Github-Pull: #8784 Rebased-From: 0c4e6ce88f58c13ed81807e3a5bef28b673aa503
2016-10-27Trivial: build-aux/m4/l_atomic: Fix typoLuke Dashjr
Github-Pull: #8784 Rebased-From: 3f8a5d8f6e95c3c1aa62433abc5edb0c93caae11
2016-10-27Add MIT license to autogen.sh and share/genbuild.shLuke Dashjr
Github-Pull: #8784 Rebased-From: 3b4b6dcdd77f3ba76fb0cda6f2c277ec1629d8d3
2016-10-27Add MIT license to MakefilesLuke Dashjr
Github-Pull: #8784 Rebased-From: f4dffdd6bffc58377b7505b639f0431244321c32
2016-10-27Don't return the address of a P2SH of a P2SH.jnewbery
Github-Pull: #8845 Rebased-From: d51f18246165b580761af824f1bb4a49b6908f28
2016-10-27Fix relaypriority calculation errormaiiz
Github-Pull: #8357 Rebased-From: 94a34a5d951cee59ef9c9274c5ad49ac2a91ab8a
2016-10-27Add missing cs_main lock to ::GETBLOCKTXN processingMatt Corallo
Note that this is not a major issue as, in order for the missing lock to cause issues, you have to receive a GETBLOCKTXN message while reindexing, adding a block header via RPC, etc, which results in either a table rehash or an insert into the bucket which you are currently looking at. Github-Pull: #8995 Rebased-From: dfe79060a62c8de098e75d527d97b99c3b10de50
2016-10-27Merge #9022: Update release notes to mention dropping OS X 10.7 supportv0.13.1Wladimir J. van der Laan
1d12463 Update release notes for dropping osx 10.7 support (Michael Ford)
2016-10-27Update release notes for dropping osx 10.7 supportMichael Ford
2016-10-26release: bump required osx version to 10.8. Credit jonasschnelli.Cory Fields
libc++ on 10.7 causes too many issues. See #8577 for discussion/details. Github-Pull: #9015 Rebased-From: 339c4b6c3a8e68e4bba1969d144e413a462b68f1
2016-10-25[net] Remove assert(nMaxInbound > 0)v0.13.1rc3MarcoFalke
nMaxInbound might very well be 0 or -1, if the user prefers to keep a small number of maxconnections. Note: nMaxInbound of -1 means that the user set maxconnections to 8 or less, but we still want to keep an additional slot for the feeler connection. Github-Pull: #9008 Rebased-From: fa1c3c2eb0a1853ed0e0662fc2bdbca51e05ccf5
2016-10-25Merge #9012: release-notes: Update from blog draftWladimir J. van der Laan
99f5cf1 release-notes: Update from blog draft (Luke Dashjr)
2016-10-25release-notes: Update from blog draftLuke Dashjr
2016-10-20doc: Update blurb in release notesWladimir J. van der Laan
Minor version, not major version.
2016-10-20doc: Add missing credit to release notesWladimir J. van der Laan
(Eric participated in Segwit work but has no direct commits, so should be mentioned)
2016-10-19doc: Update release notes for rc2v0.13.1rc2Wladimir J. van der Laan
2016-10-19nMaxOutbound is MAX_OUTBOUND_CONNECTIONS on 0.13Wladimir J. van der Laan
Github-Pull: #8949
2016-10-19qt: pre-rc2 translations updateWladimir J. van der Laan
2016-10-19RPC/Mining: getblocktemplate: Update and fix formatting of helpLuke Dashjr
Github-Pull: #8951 Rebased-From: 59daa58d6a17bb1170c724f2d01d43c2ec21a9b4
2016-10-19Make dnsseed's definition of acute need include relevant services.Gregory Maxwell
We normally prefer to connect to peers offering the relevant services. If we're not connected to enough peers with relevant services, we probably don't know about them and could use dnsseed's help. Github-Pull: #8949 Rebased-From: 46304791353d2bb61004a035869612620c30b4eb
2016-10-19Be more aggressive in connecting to peers with relevant services.Gregory Maxwell
Only allow skipping relevant services until there are four outbound connections up. This avoids quickly filling up with peers lacking the relevant services when addrman has few or none of them. Github-Pull: #8949 Rebased-From: 9583477288072e203541b747fcffe8d50cfefb8d
2016-10-18Merge #8960: doc: update 0.13.1 release note info on linux arm buildsWladimir J. van der Laan
d179eed doc: update 0.13.1 release note info on linux arm builds [skip ci] (mruddy)
2016-10-18doc: update 0.13.1 release note info on linux arm buildsmruddy
[skip ci]
2016-10-18Remove bogus assert on number of oubound connections.Matt Corallo
This value can be significantly higher if the users uses addnode Github-Pull: #8944 Rebased-From: 1ab21cf344ed0547de5ae679b7e479cb4b1a923b
2016-10-18rpc: Generate auth cookie in hex instead of base64Wladimir J. van der Laan
Base64 contains '/', and the '/' character in credentials is problematic for AuthServiceProxy which represents the RPC endpoint as an URI with user and password embedded. Closes #8399. Github-Pull: #8858 Rebased-From: 1c80386bceb216ca5b5da657e03a29f9c779d58b
2016-10-18Merge #8947: Add historical release notes for v0.13.0Wladimir J. van der Laan
c9ffe90 Add historical release notes for v0.13.0 (Micha)
2016-10-18Merge #8943: Release notes: add info about segwit and null dummy soft forksWladimir J. van der Laan
bf86073 Release notes: correct segwit signalling period start conditions (David A. Harding) 2de93f0 Relase notes: correct segwit activation point (David A. Harding) 5f9c7b0 Release notes: add info about segwit and null dummy soft forks (David A. Harding)
2016-10-18Bump version to 0.13.1Wladimir J. van der Laan