Commit Graph

12485 Commits

Author SHA1 Message Date
Wladimir J. van der Laan
453c56701a
tests: Disable Tor interaction
This is unnecessary during the current tests (any test for Tor
interaction can explicitly enable it) and interferes with the proxy
test.

Github-Pull: #7170
Rebased-From: 4c40ec0451a8f279f3e2e40af068c9451afd699e
2015-12-22 16:45:56 +01:00
Jonas Schnelli
9ef7c54ef0 [Tests] Add mempool_limit.py test
- [Tests] Add mempool_limit.py test
- [Tests] Refactor some shared functions

Github-Pull: #7153
Rebased-From: 110ff1142c5284edba8aab77fcac0bea0e551969 7632cf689a9b959dd7a059b8b4a04761a4bc6e6a
2015-12-22 14:08:22 +01:00
Suhas Daftuar
301f16ad1c
Add more tests to p2p-fullblocktest
Github-Pull: #7226
Rebased-From: 9b41a5fba278e9ab56a9b86e7a5fe195dcad0b7a
2015-12-22 09:54:52 +01:00
Suhas Daftuar
12c469b236
[Mempool] Fix mempool limiting and replace-by-fee for PrioritiseTransaction
1) Fix mempool limiting for PrioritiseTransaction

Redo the feerate index to be based on mining score, rather than fee.

Update mempool_packages.py to test prioritisetransaction's effect on
package scores.

2) Update replace-by-fee logic to use fee deltas

3) Use fee deltas for determining mempool acceptance

4) Remove GetMinRelayFee

One test in AcceptToMemoryPool was to compare a transaction's fee
agains the value returned by GetMinRelayFee. This value was zero for
all small transactions.  For larger transactions (between
DEFAULT_BLOCK_PRIORITY_SIZE and MAX_STANDARD_TX_SIZE), this function
was preventing low fee transactions from ever being accepted.

With this function removed, we will now allow transactions in that range
with fees (including modifications via PrioritiseTransaction) below
the minRelayTxFee, provided that they have sufficient priority.

Github-Pull: #7062
Rebased-From: eb306664e786ae43d539fde66f0fbe2a3e89d910 9ef2a25603c9ec4e44c4f45c6a5d4e4386ec86d3 27fae3484cdb21b0d24face833b966fce5926be5 901b01d674031f9aca717deeb372bafa160a24af
2015-12-21 17:19:53 +01:00
fanquake
eccd67106d
[Depends] Bump Boost, miniupnpc, ccache & zeromq
Bring dependencies up to date with master:
[depends] Boost 1.59.0
[depends] miniupnpc 1.9.20151026
[depends] native ccache 3.2.4
[depends] zeromq 4.0.7
[depends] Latest config.guess & config.sub
[depends] Fix miniupnpc compilation on osx

Github-Pull: #6980
Rebased-From: 9e940fa4c650dd31c39dbc8ed4038e131c19d59c 17ad964c2ff8f9be62a6826012b565843d3d72ba 26f8ea5342994bc3dcc22163b86f086328b50769 10d3c77644d894338a02b05f64ba822f3a516401 23a3c47f95c9c7c1778c488be6ea9ebbef2311ea e0769e1928f892fb16f851991d8e09a90587a1f4
2015-12-18 09:42:09 +01:00
Wladimir J. van der Laan
f3ad812208
test: don't override BITCOIND and BITCOINCLI if they're set
In rpc-tests.py, don't override BITCOIND and BITCOINCLI if they're
already set. Makes it possible to run the tests with either another tree
or the GUI.

Github-Pull: #7209
Rebased-From: 83cdcbdca41583a5a754a89f45b04b56cd0df627
2015-12-17 10:58:33 +01:00
Elias Rohrer
9572e4944a
Removed offline testnet DNSSeed 'alexykot.me'.
Github-Pull: #7216
Rebased-From: e18378e53fb71c39236db35ab2d560b43602b1be
2015-12-17 10:40:50 +01:00
MarcoFalke
fa8c8d7fa6 torcontrol debug: Change to a blanket message that covers both cases 2015-12-16 12:57:06 +01:00
Pieter Wuille
10b88be798
Replace trickle nodes with per-node/message Poisson delays
We used to have a trickle node, a node which was chosen in each iteration of
the send loop that was privileged and allowed to send out queued up non-time
critical messages. Since the removal of the fixed sleeps in the network code,
this resulted in fast and attackable treatment of such broadcasts.

This pull request changes the 3 remaining trickle use cases by random delays:
* Local address broadcast (while also removing the the wiping of the seen filter)
* Address relay
* Inv relay (for transactions; blocks are always relayed immediately)

The code is based on older commits by Patrick Strateman.

Github-Pull: #7125
Rebased-From: 5400ef6bcb9d243b2b21697775aa6491115420f3
2015-12-14 13:43:53 +01:00
accraze
06c6a58463
Checks for null data transaction before issuing error to debug.log
CWalletTx::GetAmounts could not find output address for null data transactions, thus issuing an error in debug.log. This change checks to see if the transaction is OP_RETURN before issuing error.

resolves #6142

Github-Pull: #7200
Rebased-From: b6915b82398d2e1d1f888b3816adfaf06d9a450e c611acc38a95d336a824b632823aa1b652e570df d812daf967ba4173bfa1c37eeb4ab7a0ccc4df25
2015-12-14 13:10:02 +01:00
Matt Corallo
f43c2f9a8a
Add "NODE_BLOOM" to guiutil so that peers don't get UNKNOWN[4]
Rebased-From: daf6466330d9d3e4d9034fd316cded192d2a7d67
Github-Pull: #7206
2015-12-14 09:54:56 +01:00
Wladimir J. van der Laan
8fc174aae6
net: Add and document network messages in protocol.h
- Avoids string typos (by making the compiler check)
- Makes it easier to grep for handling/generation of a certain message type
- Refer directly to documentation by following the symbol in IDE
- Move list of valid message types to protocol.cpp:
    protocol.cpp is a more appropriate place for this, and having
    the array there makes it easier to keep things consistent.

Github-Pull: #7181
Rebased-From: 9bbe71b641e2fc985daf127988a14a67c99da50a
2015-12-11 11:18:50 +01:00
Wladimir J. van der Laan
44fef99e66 net: Fix sent reject messages for blocks and transactions
Ever since we #5913 have been sending invalid reject messages
for transactions and blocks.

test: Add basic test for `reject` code

Extend P2P test framework to make it possible to expect reject
codes for transactions and blocks.

Github-Pull: #7179
Rebased-From: 9fc6ed6003da42f035309240c715ce0fd063ec03 20411903d7b356ebb174df2daad1dcd5d6117f79
2015-12-10 11:59:34 +01:00
TheLazieR Yip
6e19549864 Bump native protobuf to 2.6.1 2015-12-10 10:00:24 +07:00
TheLazieR Yip
7acab55119 Bump native ccache to 3.2.4 2015-12-10 09:59:45 +07:00
TheLazieR Yip
acc28458c6 Bump miniupnpc version to 1.9.20151026 2015-12-10 09:58:46 +07:00
TheLazieR Yip
c4042e0fbf Bump boost version to 1.59 2015-12-10 09:57:38 +07:00
TheLazieR Yip
7a7129d254 Bump openssl to 1.0.1q 2015-12-10 09:55:15 +07:00
AlSzacrel
96e8d12033
Coinselection prunes extraneous inputs from ApproximateBestSubset
This is a combination of 3 commits.

- Coinselection prunes extraneous inputs from ApproximateBestSubset
  A further pass over the available inputs has been added to ApproximateBestSubset after a candidate set has been found. It will prune any extraneous inputs in the selected subset, in order to decrease the number of input and the resulting change.
- Moved set reduction to the end of ApproximateBestSubset to reduce performance impact
- Added a test for the pruning of extraneous inputs after ApproximateBestSet

Github-Pull: #4906
Rebased-From: 5c03483e26ab414d22ef192691b2336c1bb3cb02 af9510e0374443b093d633a91c4f1f8bf5071292 fc0f52d78085b6ef97d6821fc7592326c2d9b495
2015-12-08 10:25:58 +01:00
Wladimir J. van der Laan
b2d7ada372
test: remove necessity to call create_callback_map
Remove necessity to call create_callback_map (as well as the function
itself) from the Python P2P test framework. Invoke the appropriate
methods directly.

- Easy to forget to call it and wonder why it doesn't work
- Simplifies the code
- This makes it easier to handle new messages in subclasses

Github-Pull: #7171
Rebased-From: 2f601d215da1683ae99ab9973219044c32fa2093
2015-12-07 12:45:14 +01:00
Matt Corallo
82aff880d3
Don't do mempool lookups for "mempool" command without a filter
Github-Pull: #7174
Rebased-From: 96918a2f0990a8207d7631b8de73af8ae5d24aeb
2015-12-07 12:35:20 +01:00
Gregory Maxwell
f31955d9da
Replace setInventoryKnown with a rolling bloom filter.
Github-Pull: #7133
Rebased-From: ec73ef37eccfeda76de55c4ff93ea54d4e69e1ec e20672479ef7f2048c2e27494397641d47a4d88d 6b849350ab074a7ccb80ecbef387f59e1271ded6 b6a0da45db8d534e7a77d1cebe382cd5d83ba9b8 d41e44c9accb3df84e0abbc602cc76b72754d382 aa4b0c26b0a94ca6164c441aae723e118554d214
2015-12-04 15:01:09 +01:00
Gregory Maxwell
6ba25d2886
Disconnect on mempool requests from peers when over the upload limit.
Mempool requests use a fair amount of bandwidth when the mempool is large,
 disconnecting peers using them follows the same logic as disconnecting
 peers fetching historical blocks.

Rebased-From: 6aadc7557823b7673b8f661b3d41cf867e2936a3
Github-Pull: #7166
2015-12-04 09:44:24 +01:00
Matt Bogosian
cfb44ce97a
Add missing automake package to deb-based UNIX install instructions.
Rebased-From: b4404090259be4e34ef5dba33e47a41e7d9acc03
Github-Pull: #7152
2015-12-03 13:57:51 +01:00
Wladimir J. van der Laan
2985000808
Bump version to 0.12.0
Bump version from 0.11.99 to 0.12.0 so that we don't forget to do this
when rc1 is released.
2015-12-03 12:18:53 +01:00
Wladimir J. van der Laan
3cd836c1d8
Merge pull request #7158
fab8347 [qt] Use tr() instead of _() (MarcoFalke)
2015-12-03 10:52:49 +01:00
UdjinM6
f02e331048 Do not create denoms if there are DENOMS_COUNT_MAX (100) of them already 2015-12-03 09:51:56 +03:00
MarcoFalke
fab83476ac [qt] Use tr() instead of _()
Also, `make translate`
2015-12-02 17:25:59 +01:00
Wladimir J. van der Laan
aeedd8a53b
Merge pull request #7157
fabd10a Fix typo in wallet.cpp (MarcoFalke)
fad2460 Update contrib/devtools/README.md (MarcoFalke)
5e151a8 PartitionCheck: remove useless spaces (paveljanik)
fad0088 TRIVIAL: Chainparams: Remove unused CBaseUnitTestParams (Jorge Timón)
74f7341 Update miner.cpp: Fix typo in comment (antonio-fr)
e69bad1 [trivial] Fix typo in peertablemodel.cpp (MarcoFalke)
8a03727 Fix various typos (paveljanik)
2015-12-02 16:28:13 +01:00
MarcoFalke
fabd10a9c9 Fix typo in wallet.cpp 2015-12-02 15:21:18 +01:00
MarcoFalke
fad246037f Update contrib/devtools/README.md
* Fix order
* Update subtree check
2015-12-02 15:20:40 +01:00
paveljanik
5e151a842c PartitionCheck: remove useless spaces 2015-12-02 15:18:23 +01:00
Jorge Timón
fad0088e75 TRIVIAL: Chainparams: Remove unused CBaseUnitTestParams 2015-12-02 15:18:23 +01:00
antonio-fr
74f7341fec Update miner.cpp: Fix typo in comment 2015-12-02 15:18:23 +01:00
MarcoFalke
e69bad19f8 [trivial] Fix typo in peertablemodel.cpp 2015-12-02 15:18:23 +01:00
paveljanik
8a03727d9c Fix various typos 2015-12-02 15:18:22 +01:00
Wladimir J. van der Laan
df2ced5c83
Merge pull request #7128
02354c9 Constrain rpcport default values to a single location in code (Luke Dashjr)
2015-12-02 14:38:43 +01:00
Wladimir J. van der Laan
93236c0455
qt: Final translation update before 0.12 fork
- Add new translations (finally, after a long time)
- update-translation script was not considering new translations - oops
  - fixed this, also remove (nearly) empty translations
- Update translation process, it was still describing the old repository
  structure
2015-12-02 14:28:35 +01:00
Wladimir J. van der Laan
83f06ca937
Merge pull request #6216
db6047d Take the training wheels off anti-fee-sniping (Peter Todd)
2015-12-02 13:56:57 +01:00
Wladimir J. van der Laan
7c7a05d274
Merge pull request #7147
9827091 Squashed 'src/univalue/' changes from 5839ac3..2740c4f (MarcoFalke)
2015-12-02 13:26:54 +01:00
Wladimir J. van der Laan
0dd194c917
Merge pull request #7146
1812de9 Name union to prevent compiler warning (Pavel Janík)
2015-12-02 12:58:25 +01:00
Wladimir J. van der Laan
8e598dc4ea
Merge pull request #7118
b212f94 Describe maxmempool and mempoolminfee in the getmempoolinfo RPC help. (Pavel Janík)
2015-12-02 12:44:04 +01:00
Wladimir J. van der Laan
3fd3b8617f
Merge pull request #7155
092e9ad Remove old replace-by-fee tests (Peter Todd)
2015-12-02 12:42:57 +01:00
MarcoFalke
fad4ea836d Merge commit '982709199f1b4e9e35211c419a81938f9f1dd4ed' into bitcoin 2015-12-02 12:28:48 +01:00
MarcoFalke
982709199f Squashed 'src/univalue/' changes from 5839ac3..2740c4f
2740c4f Merge branch '2015_11_escape_plan' into bitcoin
7482163 Add new testcase to Makefile.am
46098ee Version 1.0.1.
ccf3575 parser: Ensure multiple values cannot follow each other
eb6cd64 Omit Obj/Arr open token from jsonTokenIsValue() test
bfef9e2 Makefile.am: list recently added test data, fail{35,36}.json
3e319f3 parser: Tighten array, object syntax checks.
c74185c parser: transform C++ variables into bitmask
f2568bc Prefer C++ STL vector .at() for accessing object values.
8eafa26 travis: run parallel 'make distcheck'
fd448da test: Improve tester diagnostics.  Add failing test case from #15
2158205 Use internal, locale-independent isspace(), isdigit() implementations.
2ab9ad4 travis: Make 'make distcheck' for more comprehensive checks.
3339191 Escape all control characters

git-subtree-dir: src/univalue
git-subtree-split: 2740c4f71242086a7eb3dc32f812546ba9fad913
2015-12-02 12:26:24 +01:00
Peter Todd
092e9ad7d9
Remove old replace-by-fee tests
Made redundant by tests in qa/rpc-tests/replace-by-fee.py
2015-12-02 18:26:53 +08:00
Wladimir J. van der Laan
1b0241fcec
Merge pull request #7144
8f0d79e test: Disable scheduler test manythreads (Wladimir J. van der Laan)
2015-12-02 10:18:20 +01:00
Wladimir J. van der Laan
bdda4d567e
Merge pull request #6872
dd5862c Flush coins cache also after transaction processing (Pieter Wuille)
bde953e Uncache input txn in utxo cache if a tx is not accepted to mempool (Matt Corallo)
97bf377 Add CCoinsViewCache::HaveCoinsInCache to check if a tx is cached (Matt Corallo)
677aa3d Discard txn cache entries that were loaded for removed mempool txn (Matt Corallo)
b2e74bd Get the set of now-uncacheable-txn from CTxMemPool::TrimToSize (Matt Corallo)
74d0f90 Add method to remove a tx from CCoinsViewCache if it is unchanged (Matt Corallo)
2015-12-02 10:17:43 +01:00
Jonas Schnelli
4a63f94676
Merge pull request #7040
b171c69 [doc] Update OS X build notes for new qt5 configure (Michael Ford)
2015-12-02 09:43:06 +01:00
Pavel Janík
1812de9091 Name union to prevent compiler warning 2015-12-02 08:40:47 +01:00