Pieter Wuille
2d1d6581ec
Track block download times per individual block
...
Currently, we're keeping a timeout for each requested block, starting
from when it is requested, with a correction factor for the number of
blocks in the queue.
That's unnecessarily complicated and inaccurate.
As peers process block requests in order, we can make the timeout for each
block start counting only when all previous ones have been received, and
have a correction based on the number of peers, rather than the total number
of blocks.
2016-04-07 12:13:10 +02:00
MarcoFalke
fada0c422c
[doc] Fix doxygen comments for members
2016-04-03 11:58:01 +02:00
Wladimir J. van der Laan
3081fb9a31
Merge #7763 : Put hex-encoded version in UpdateTip
...
eff736e
Reformat version in UpdateTip and other messages (Pieter Wuille)
2016-03-31 13:24:50 +02:00
Pieter Wuille
eff736e55e
Reformat version in UpdateTip and other messages
...
Also remove the hardly-readable nBits from UpdateTip's log message.
2016-03-31 12:28:34 +02:00
Wladimir J. van der Laan
e8a8f3d4b2
Merge #7648 : BIP9 versionbits softfork for BIP68, BIP112 and BIP113
...
71527a0
Test of BIP9 fork activation of mtp, csv, sequence_lock (NicolasDorier)
19d73d5
Add RPC test for BIP 68/112/113 soft fork. (Alex Morcos)
12c89c9
Policy: allow transaction version 2 relay policy. (BtcDrak)
02c2435
Soft fork logic for BIP68 (BtcDrak)
478fba6
Soft fork logic for BIP113 (BtcDrak)
65751a3
Add CHECKSEQUENCEVERIFY softfork through BIP9 (Pieter Wuille)
2016-03-30 18:59:39 +02:00
Alex Morcos
9e072a6e66
Implement "feefilter" P2P message.
...
The "feefilter" p2p message is used to inform other nodes of your mempool min fee which is the feerate that any new transaction must meet to be accepted to your mempool. This will allow them to filter invs to you according to this feerate.
2016-03-21 10:46:25 -04:00
Wladimir J. van der Laan
29b2be6ad7
Merge #7692 : Remove p2p alert system
...
cfd519e
Add release note documentation (BtcDrak)
6601ce5
protocol.h/cpp: Removes NetMsgType::ALERT (Thomas Kerin)
ad72104
Formatting (BtcDrak)
1b77471
Remove alert keys (BtcDrak)
01fdfef
Remove `-alerts` option (BtcDrak)
9206634
Update alert notification and GUI (BtcDrak)
bbb9d1d
Remove p2p alert handling (BtcDrak)
2016-03-21 13:41:05 +01:00
Wladimir J. van der Laan
9426632cb5
Merge #7708 : De-neuter NODE_BLOOM
...
c90036f
Always disconnect old nodes which request filtered connections. (Patrick Strateman)
2016-03-21 12:44:19 +01:00
Patrick Strateman
c90036f664
Always disconnect old nodes which request filtered connections.
2016-03-18 21:26:49 -07:00
BtcDrak
01fdfeffc4
Remove -alerts
option
2016-03-18 19:33:59 +00:00
BtcDrak
92066344fd
Update alert notification and GUI
2016-03-18 19:33:59 +00:00
BtcDrak
bbb9d1d123
Remove p2p alert handling
2016-03-18 19:33:59 +00:00
BtcDrak
02c2435802
Soft fork logic for BIP68
2016-03-18 08:09:06 +00:00
BtcDrak
478fba6d52
Soft fork logic for BIP113
2016-03-18 08:09:06 +00:00
Pieter Wuille
65751a3cf2
Add CHECKSEQUENCEVERIFY softfork through BIP9
2016-03-18 08:09:06 +00:00
Wladimir J. van der Laan
73b7eb501e
Merge #7575 : Minimal BIP9 implementation
...
8c74ced
RPC test for BIP9 warning logic (Suhas Daftuar)
7870deb
Test versionbits deployments (Suhas Daftuar)
532cbb2
Add testing of ComputeBlockVersion (Suhas Daftuar)
d23f6c6
Softfork status report in RPC (Pieter Wuille)
732e774
Versionbits tests (Pieter Wuille)
6851107
BIP9 Implementation (Pieter Wuille)
2016-03-18 08:50:43 +01:00
Wladimir J. van der Laan
01f4267623
Merge #7594 : Mempool: Add tracking of ancestor packages
...
ce019bf
Check all ancestor state in CTxMemPool::check() (Suhas Daftuar)
e2eeb5d
Add ancestor feerate index to mempool (Suhas Daftuar)
72abd2c
Add ancestor tracking to mempool (Suhas Daftuar)
76a7632
Remove work limit in UpdateForDescendants() (Suhas Daftuar)
5de2baa
Rename CTxMemPool::remove -> removeRecursive (Suhas Daftuar)
7659438
CTxMemPool::removeForBlock now uses RemoveStaged (Suhas Daftuar)
2016-03-17 13:33:54 +01:00
Wladimir J. van der Laan
14d6324a24
Merge #7187 : Keep reorgs fast for SequenceLocks checks
...
982670c
Add LockPoints (Alex Morcos)
2016-03-16 21:20:04 +01:00
Alex Morcos
982670c333
Add LockPoints
...
Obtain LockPoints to store in CTxMemPoolEntry and during a reorg, evaluate whether they are still valid and if not, recalculate them.
2016-03-16 16:11:46 -04:00
Pieter Wuille
d23f6c6a0d
Softfork status report in RPC
2016-03-15 16:54:38 +01:00
Pieter Wuille
6851107b3a
BIP9 Implementation
...
Inspired by former implementations by Eric Lombrozo and Rusty Russell, and
based on code by Jorge Timon.
2016-03-15 16:54:38 +01:00
Suhas Daftuar
72abd2ce3c
Add ancestor tracking to mempool
...
This implements caching of ancestor state to each mempool entry, similar to
descendant tracking, but also including caching sigops-with-ancestors (as that
metric will be helpful to future code that implements better transaction
selection in CreatenewBlock).
2016-03-14 12:13:33 -04:00
Suhas Daftuar
76a76321d2
Remove work limit in UpdateForDescendants()
...
The work limit served to prevent the descendant walking algorithm from doing
too much work by marking the parent transaction as dirty. However to implement
ancestor tracking, it's not possible to similarly mark those descendant
transactions as dirty without having to calculate them to begin with.
This commit removes the work limit altogether. With appropriate
chain limits (-limitdescendantcount) the concern about doing too much
work inside this function should be mitigated.
2016-03-14 12:13:31 -04:00
Suhas Daftuar
5de2baa138
Rename CTxMemPool::remove -> removeRecursive
...
remove is no longer called non-recursively, so simplify the logic
and eliminate an unnecessary parameter
2016-03-14 12:11:09 -04:00
Wladimir J. van der Laan
26a2a7214f
Merge #7592 : mempool: Re-remove ERROR logging for mempool rejects
...
8fc81e0
mempool: Reduce ERROR logging for mempool rejects (Wladimir J. van der Laan)
2016-03-11 08:20:42 +01:00
R E Broadley
9988554fc7
No "Unknown command" for getaddr command.
2016-03-08 08:49:42 +00:00
Wladimir J. van der Laan
8fc81e0983
mempool: Reduce ERROR logging for mempool rejects
...
Continues "Make logging for validation optional" from #6519 .
The idea there was to remove all ERROR logging of rejected transaction,
and move it to one message in the class 'mempoolrej' which logs the
state message (and debug info). The superfluous ERRORs in the log
"terrify" users, see for example issue #5794 .
Unfortunately a lot of new logging was introduced in #6871 (RBF) and
#7287 (misc refactoring). This pull updates that new code.
2016-02-24 19:40:29 +01:00
Wladimir J. van der Laan
8b70a64d62
Merge #7526 : fix spelling of advertise (shows up in the debug log)
...
37767fd
fix spelling of advertise in src and doc (jloughry)
2016-02-16 12:37:03 +01:00
Wladimir J. van der Laan
2d4f73f47e
Merge #7509 : Common argument defaults for NODE_BLOOM stuff and -wallet
...
1fb91b3
Common argument defaults for NODE_BLOOM stuff and -wallet (Luke Dashjr)
2016-02-16 10:00:21 +01:00
jloughry
37767fd46f
fix spelling of advertise in src and doc
2016-02-12 12:51:54 -07:00
Wladimir J. van der Laan
80d1f2e483
Merge #7184 : Implement SequenceLocks functions for BIP 68
...
b043c4b
fix sdaftuar's nits again (Alex Morcos)
a51c79b
Bug fix to RPC test (Alex Morcos)
da6ad5f
Add RPC test exercising BIP68 (mempool only) (Suhas Daftuar)
c6c2f0f
Implement SequenceLocks functions (Alex Morcos)
2016-02-12 17:03:46 +01:00
Alex Morcos
b043c4b746
fix sdaftuar's nits again
...
it boggles the mind why these nits can't be delivered on a more timely basis
2016-02-11 15:34:04 -05:00
Luke Dashjr
1fb91b3496
Common argument defaults for NODE_BLOOM stuff and -wallet
2016-02-11 06:38:04 +00:00
Alex Morcos
c6c2f0fd78
Implement SequenceLocks functions
...
SequenceLocks functions are used to evaluate sequence lock times or heights per BIP 68.
The majority of this code is copied from maaku in #6312
Further credit: btcdrak, sipa, NicolasDorier
2016-02-10 15:35:33 -05:00
Pieter Wuille
e4eebb604e
Update the wallet best block marker when pruning
2016-02-10 17:11:13 +01:00
Wladimir J. van der Laan
3ffe4b241e
Merge #7482 : [P2P] Ensure headers count is correct
...
301bc7b
Update nQueuedValidatedHeaders after peer disconnection (Suhas Daftuar)
2016-02-09 08:54:25 +01:00
Suhas Daftuar
301bc7bc7e
Update nQueuedValidatedHeaders after peer disconnection
2016-02-08 15:50:52 -05:00
Wladimir J. van der Laan
e7ea5db0c1
Merge #7459 : Consensus: Decouple pow.o from util.o
...
f3757a0
Consensus: Decouple pow.cpp from util.h (Jorge Timón)
2016-02-05 11:19:45 +01:00
Jorge Timón
f3757a0391
Consensus: Decouple pow.cpp from util.h
2016-02-04 19:21:55 +01:00
Wladimir J. van der Laan
d2228384de
Merge #6480 : include the chaintip blockindex in the SyncTransaction signal, add signal UpdateTip()
...
7d0bf0b
include the chaintip *blockIndex in the SyncTransaction signal (Jonas Schnelli)
2016-02-04 17:03:09 +01:00
Wladimir J. van der Laan
4f4dc5ef72
Merge #7070 : Move maxTxFee out of mempool
...
fad6244
ATMP: make nAbsurdFee const (MarcoFalke)
fa762d0
[wallet.h] Remove main.h include (MarcoFalke)
fa79db2
Move maxTxFee out of mempool (MarcoFalke)
2016-02-04 14:54:23 +01:00
Wladimir J. van der Laan
eb331794a2
Merge #7225 : Eliminate unnecessary call to CheckBlock
...
dbb89dc
Eliminate unnecessary call to CheckBlock (Suhas Daftuar)
2016-02-03 13:23:49 +01:00
MarcoFalke
fad6244879
ATMP: make nAbsurdFee const
2016-02-03 13:14:23 +01:00
Wladimir J. van der Laan
5fd95b4490
Merge #7431 : Rename permitrbf to mempoolreplacement and provide minimal string-list forward compatibility (needs 0.12 backport)
...
b922fbe
Rename replacebyfee=opt-in to mempoolreplacement=fee (Luke Dashjr)
3b66e54
Simplify check for replacebyfee=opt-in (Luke Dashjr)
d65dee9
Accept replacebyfee=opt-in for turning on opt-in RBF (Luke Dashjr)
77b55a0
Rename permitrbf to replacebyfee (Luke Dashjr)
2016-02-03 10:27:32 +01:00
MarcoFalke
fa79db2641
Move maxTxFee out of mempool
...
Also, remove default values in CMerkleTx::AcceptToMemoryPool()
2016-02-02 20:08:51 +01:00
Wladimir J. van der Laan
11d74f6a6b
Merge #7084 : mempool: Replace maxFeeRate of 10000*minRelayTxFee with maxTxFee
...
fa1193e
[doxygen] Actually display comment (MarcoFalke)
fa331db
mempool: Replace maxFeeRate of 10000*minRelayTxFee with maxTxFee (MarcoFalke)
2016-02-02 15:18:07 +01:00
Suhas Daftuar
dbb89dc793
Eliminate unnecessary call to CheckBlock
...
ProcessNewBlock would return failure early if CheckBlock failed, before
calling AcceptBlock. AcceptBlock also calls CheckBlock, and upon failure
would update mapBlockIndex to indicate that a block was failed. By returning
early in ProcessNewBlock, we were not marking blocks that fail a check in
CheckBlock as permanently failed, and thus would continue to re-request and
reprocess them.
2016-02-01 14:29:45 -05:00
Wladimir J. van der Laan
58a8574400
Merge #7439 : Add whitelistforcerelay to control forced relaying. [ #7099 redux]
...
89d113e
Blacklist -whitelistalwaysrelay; replaced by -whitelistrelay. (Gregory Maxwell)
325c725
Add whitelistforcerelay to control forced relaying. (Gregory Maxwell)
2016-02-01 14:11:15 +01:00
Wladimir J. van der Laan
31ec14b74b
Merge #7287 : Consensus: Remove calls to error() and FormatStateMessage()
...
93fc58c
Consensus: Remove calls to error() and FormatStateMessage() from some consensus code in main (Jorge Timón)
2016-02-01 10:21:53 +01:00
MarcoFalke
fa331db68b
mempool: Replace maxFeeRate of 10000*minRelayTxFee with maxTxFee
2016-01-30 11:29:22 +01:00