Péter Szilágyi
c4e4baf668
[release/1.4.11] eth/downloader: fewer headers and futures too un ancestor lookup
...
(cherry picked from commit d68865f3b1
)
2016-08-18 15:01:49 +02:00
Péter Szilágyi
86493f9103
[release/1.4.11] eth/downloader: abort sync if master drops (timeout prev)
...
(cherry picked from commit 8f0a4a25f8
)
2016-08-18 15:01:46 +02:00
Péter Szilágyi
6c672a55c0
[release/1.4.11] eth, eth/downloader: don't forward the DAO challenge header
...
(cherry picked from commit 071af57bcf
)
2016-08-18 15:01:43 +02:00
Péter Szilágyi
48709d5340
[release/1.4.11] eth, eth/downloader: better remote head tracking
...
(cherry picked from commit 1dd272080d
)
Conflicts:
eth/handler.go
eth/sync.go
2016-08-18 15:01:39 +02:00
Felix Lange
65da8f601f
[release/1.4.11] eth, eth/downloader, eth/fetcher: delete eth/61 code
...
The eth/61 protocol was disabled in #2776 , this commit removes its
message handlers and hash-chain sync logic.
(cherry picked from commit 016007bd25
)
Conflicts:
eth/handler.go
eth/handler_test.go
2016-08-18 15:01:34 +02:00
Péter Szilágyi
9eb2873a9c
[release/1.4.11] eth/downloader: fix the stall checks/drops during sync
...
(cherry picked from commit c7c82f1b44
)
2016-08-18 15:01:15 +02:00
Péter Szilágyi
b8c0883770
[release/1.4.10] accounts, core, eth: pass chain config for chain maker to test DAO
...
(cherry picked from commit 3291235711
)
2016-07-16 14:30:05 +03:00
Péter Szilágyi
d0668838b9
[release/1.4.10] eth/downloader: return invalid chain (peer drop) on import fails
...
(cherry picked from commit a691aa2a13
)
2016-07-16 14:29:43 +03:00
Péter Szilágyi
0405f728c6
[release/1.4.7] eth/downloader: fix occasional fast sync critical section test fails
...
(cherry picked from commit 783289068a
)
2016-06-14 17:12:03 +03:00
Péter Szilágyi
058c5fe960
[release/1.4.6] eth/downloader: adaptive quality of service tuning
...
(cherry picked from commit 88f174a014
)
2016-06-06 16:22:05 +03:00
Péter Szilágyi
a29bdf547c
[release/1.4.6] eth/downloader: make fast sync resilient to critical section fails
...
(cherry picked from commit 61ee9f299d
)
2016-06-06 16:22:03 +03:00
Péter Szilágyi
cd134178f7
[release/1.4.6] eth/downloader: ensure cancel channel is closed post sync
...
(cherry picked from commit 4496a44f68
)
2016-06-06 16:21:51 +03:00
Péter Szilágyi
4918c820c6
[release/1.4.6] eth/downloader, trie: pull head state concurrently with chain
...
(cherry picked from commit 4f1d92b332
)
2016-06-06 16:21:49 +03:00
Péter Szilágyi
170036289b
[release/1.4.6] eth/downloader: fix reviewer comments
...
(cherry picked from commit 8906b2fe09
)
2016-06-06 16:21:04 +03:00
Péter Szilágyi
8ebbd9b7c7
[release/1.4.6] eth/downloader: stream partial skeleton filling to processor
...
(cherry picked from commit e86619e75d
)
2016-06-06 16:21:01 +03:00
Péter Szilágyi
7df36e5ec1
[release/1.4.6] eth/downloader: implement concurrent header downloads
...
(cherry picked from commit b40dc8a1da
)
2016-06-06 16:20:58 +03:00
Péter Szilágyi
efcfa2209b
[release/1.4.4] eth/downloader: bound fork ancestry and allow heavy short forks
2016-05-12 17:32:06 +02:00
Felix Lange
a40e61b4ac
rpc: remove NotifierContextKey
...
Context keys must have a unique type in order to prevent
any unintented clashes. The code used int(1) as key.
Fix it by implementing the pattern recommended by package context.
2016-04-15 18:10:52 +02:00
Felix Lange
6fdd0893c3
all: fix go vet warnings
2016-04-15 11:17:27 +02:00
Felix Lange
d04a2e7557
all: update license information
2016-04-15 09:48:05 +02:00
Bas van Kervel
f7328c5ecb
rpc: add pub/sub support
2016-04-01 18:26:35 +02:00
Leif Jurvetson
434e4b31d8
core, eth: replace reorganiz with reorganis
2016-03-15 12:03:17 -07:00
Leif Jurvetson
bbbe2360d0
eth: various typos
2016-03-15 11:27:49 -07:00
Péter Szilágyi
e3f2b541f2
eth/downloader: fix a throughput estimation data race
2016-03-10 12:58:46 +02:00
Péter Szilágyi
64ee5763ee
eth/downloader: fix premature exit before notifying all part fetchers
2016-02-29 14:22:28 +02:00
Felix Lange
26e72b2ccd
eth/downloader: fix header download limiting
...
Fixes #2201
2016-02-26 15:24:51 +01:00
Péter Szilágyi
66b148dd8f
Merge pull request #2251 from karalabe/increase-downlaoder-queue
...
eth/downloader: bump the download queue size to prevent starvation
2016-02-24 15:55:21 +02:00
Jeffrey Wilcke
483feb0d3f
Merge pull request #2242 from jimenezrick/upstream-crypto
...
Closes #2241 : Use Keccak-256 from golang.org/x/crypto/sha3 and mention explicitly
2016-02-24 12:57:57 +01:00
Péter Szilágyi
93c0012000
eth/downloader: bump the download queue size to prevent starvation
2016-02-23 13:12:11 +02:00
Ricardo Catalinas Jiménez
436fc8d76a
all: Rename crypto.Sha3{,Hash}() to crypto.Keccak256{,Hash}()
...
As we aren't really using the standarized SHA-3
2016-02-21 22:34:34 +00:00
Péter Szilágyi
216729009b
eth/downloader: fix partial rollback and ancestor lookup
2016-02-19 11:17:02 +02:00
Péter Szilágyi
59cd60b266
eth, eth/downloader, jsre: surface state sync progress through the API
2016-02-10 14:30:41 +02:00
Péter Szilágyi
f1ec226d80
eth/downloader: raise pending state limit that prevented concurrency
2016-02-08 14:57:02 +02:00
Bas van Kervel
19b2640e89
rpc: migrated the RPC insterface to a new reflection based RPC layer
2016-01-26 13:51:50 +01:00
Péter Szilágyi
9e011ff1cd
core, eth/downloader: ensure state presence in ancestor lookup
2016-01-04 16:27:23 +02:00
Péter Szilágyi
1f39746886
eth/downloader: throttling tests are time-sensitive, don't run parallel
2015-12-30 14:42:21 +02:00
Felix Lange
9be5d5cd90
eth/downloader: fix negative balance issue in tests
...
The test chain generated by makeChainFork included invalid uncle
headers, crashing the generator during the state commit.
The headers were invalid because they used the iteration counter as the
block number, even though makeChainFork uses a block with number > 0 as
the parent. Fix this by introducing BlockGen.Number, which allows
accessing the actual number of the block being generated.
2015-12-18 12:09:10 +01:00
Bas van Kervel
eae81465c1
rpc: new RPC implementation with pub/sub support
2015-12-14 16:34:05 +01:00
Péter Szilágyi
b6f5523bdc
eth/downloader: fetch data proportionally to peer capacity
2015-11-19 17:01:39 +02:00
Felix Lange
dd09af27af
eth/downloader: run tests in parallel
2015-11-19 14:18:35 +01:00
Felix Lange
b7b62d4b3c
eth/downloader: also drain stateCh, receiptCh in eth/61 mode
...
State and receipt deliveries from a previous eth/62+ sync can hang if
the downloader has moved on to syncing with eth/61. Fix this by also
draining the eth/63 channels while waiting for eth/61 data.
A nicer solution would be to take care of the channels in a central
place, but that would involve a major rewrite.
2015-11-19 14:18:35 +01:00
Felix Lange
900da3d800
eth/downloader: don't hang for spurious deliveries
...
Unexpected deliveries could block indefinitely if they arrived at the
right time. The fix is to ensure that the cancellation channel is
always closed when the sync ends, unblocking any deliveries. Also remove
the atomic check for whether a sync is currently running because it
doesn't help and can be misleading.
Cancelling always seems to break the tests though. The downloader
spawned d.process whenever new data arrived, making it somewhat hard to
track when block processing was actually done. Fix this by running
d.process in a dedicated goroutine that is tied to the lifecycle of the
sync. d.process gets notified of new work by the queue instead of being
invoked all the time. This removes a ton of weird workaround code,
including a hairy use of atomic CAS.
2015-11-19 14:18:34 +01:00
Péter Szilágyi
b658a73ed5
eth/downloader: fix dysfunctional ignore list hidden by generic set
2015-11-04 13:11:52 +02:00
Péter Szilágyi
2019ed71b4
eth: don't block sync goroutines that short circuit
2015-10-28 16:41:01 +02:00
Péter Szilágyi
5b0ee8ec30
core, eth, trie: fix data races and merge/review issues
2015-10-21 16:49:55 +03:00
Péter Szilágyi
aa0538db0b
eth: clean out light node notions from eth
2015-10-19 10:03:10 +03:00
Péter Szilágyi
a9d8dfc8e7
core, eth: roll back uncertain headers in failed fast syncs
2015-10-19 10:03:10 +03:00
Péter Szilágyi
b97e34a8e4
eth/downloader: concurrent receipt and state processing
2015-10-19 10:03:10 +03:00
Péter Szilágyi
ab27bee25a
core, eth, trie: direct state trie synchronization
2015-10-19 10:03:09 +03:00
Péter Szilágyi
832b37c822
core, eth: receipt chain reconstruction
2015-10-19 10:03:09 +03:00