Felix Lange
3e3a79ea13
Merge pull request #2855 from karalabe/downloader-fix-stall-drop
...
eth/downloader: fix the stall checks/drops during sync
2016-07-25 12:56:11 +02:00
Felix Lange
60cd5bf939
Merge pull request #2842 from fjl/downloader-remove-eth61
...
eth, eth/downloader, eth/fetcher: delete eth/61 sync code
2016-07-22 23:23:30 +02:00
Péter Szilágyi
c7c82f1b44
eth/downloader: fix the stall checks/drops during sync
2016-07-22 17:55:46 +03:00
Felix Lange
016007bd25
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.
2016-07-22 13:17:19 +02:00
Péter Szilágyi
c646d287f8
Merge pull request #2833 from karalabe/fix-dao-challenge-annoyance
...
eth: cancel DAO challenge on peer drop (annoying log)
2016-07-22 11:57:43 +03:00
Felix Lange
74ec95e7f6
Merge pull request #2711 from hdiedrich/1.4.7-filter-races-cleanup
...
Fix #2710 Filter race: concurrent map read and map write
2016-07-19 23:14:08 +02:00
zsfelfoldi
56efed71b5
eth: fixed chaindb upgrade
2016-07-19 14:32:38 +02:00
Péter Szilágyi
91f18ffd47
eth: cancel DAO challenge on peer drop (annoying log)
2016-07-19 12:00:09 +03:00
Péter Szilágyi
993b412160
cmd/utils, eth: display the user's current fork, minor text tweak
2016-07-16 12:38:37 +03:00
Péter Szilágyi
2c2e389b77
cmd, core, eth, miner, params, tests: finalize the DAO fork
2016-07-15 16:52:55 +03:00
Péter Szilágyi
3291235711
accounts, core, eth: pass chain config for chain maker to test DAO
2016-07-15 16:52:55 +03:00
Péter Szilágyi
7f00e8c033
core, eth: enforce network split post DAO hard-fork
2016-07-15 16:52:55 +03:00
Péter Szilágyi
6060e098c9
cmd, core, eth, params: implement flags to control dao fork blocks
2016-07-15 16:52:55 +03:00
Péter Szilágyi
f970610c04
Merge pull request #2799 from zsfelfoldi/api-nonce-fix2
...
core: added CheckNonce() to Message interface
2016-07-12 16:07:15 +03:00
Péter Szilágyi
a691aa2a13
eth/downloader: return invalid chain (peer drop) on import fails
2016-07-11 19:00:49 +03:00
zsfelfoldi
00787fe781
core: added CheckNonce() to Message interface
2016-07-11 12:35:23 +02:00
Henning Diedrich
51f8ce26cf
eth: fix #2710 filter races
...
and locking bugs found in its wake.
2016-07-04 17:38:35 +02:00
Péter Szilágyi
ddfef21125
eth: disable eth/61 to prepare for more elaborate fork sync algos
2016-07-04 12:03:19 +03:00
Péter Szilágyi
96dc42d99c
cmd, common, console, eth, release: drop redundant "full"s
2016-06-30 13:03:26 +03:00
Péter Szilágyi
1e50f5dd28
Merge pull request #2159 from zsfelfoldi/light-backend
...
eth: separate common and full node-specific API and backend service
2016-06-30 12:57:50 +03:00
zsfelfoldi
3a97280ae8
eth: separate common and full node-specific API and backend service
2016-06-16 17:36:38 +02:00
Péter Szilágyi
22ef7370e7
Merge pull request #2686 from obscuren/issue-2542
...
core/state, eth: Updated suicides objects when tracing transactions
2016-06-14 16:54:46 +03:00
Jeffrey Wilcke
a38be3eb48
Merge pull request #2455 from zsfelfoldi/chaindb
...
core: improved chain db performance by using sequential keys
2016-06-13 15:16:09 +02:00
Péter Szilágyi
783289068a
eth/downloader: fix occasional fast sync critical section test fails
2016-06-13 13:04:19 +03:00
Jeffrey Wilcke
bb3651abc8
core/state, eth: Updated suicides objects when tracing transactions
...
Consensus rules dictate that objects can only be removed during the
finalisation of the transaction (i.e. after all calls have finished).
Thus calling a suicided contract twice from the same transaction:
A->B(S)->ret(A)->B(S) results in 2 suicides. Calling the suicided
object twice from two transactions: A->B(S), A->B, results in only one
suicide and a call to an empty object.
Our current debug tracing functionality replays all transaction that
were executed prior to the targetted transaction in order to provide
the user with an accurate trace.
As a side effect to calling StateDB.IntermediateRoot it also deletes any
suicides objects. Our tracing code never calls this function because it
isn't interested in the intermediate root. Becasue of this it caused a
bug in the tracing code where transactions that were send to priviously
deleted objects resulted in two suicides rather than one suicide and a
call to an empty object.
Fixes #2542
2016-06-13 11:57:42 +02:00
zsfelfoldi
f9917c8c7b
core: improved chainDb using sequential keys
2016-06-07 16:38:56 +02:00
Péter Szilágyi
32559ccad1
eth: don't accept transactions until we sync up with the network
2016-06-06 14:45:38 +03:00
Péter Szilágyi
88f174a014
eth/downloader: adaptive quality of service tuning
2016-06-06 14:20:57 +03:00
Péter Szilágyi
61ee9f299d
eth/downloader: make fast sync resilient to critical section fails
2016-06-02 12:37:14 +03:00
Péter Szilágyi
16a23ff740
Merge pull request #2637 from karalabe/downloader-always-cancel
...
eth/downloader: ensure cancel channel is closed post sync
2016-05-31 14:48:52 +03:00
Péter Szilágyi
4496a44f68
eth/downloader: ensure cancel channel is closed post sync
2016-05-30 12:01:50 +03:00
Péter Szilágyi
4f1d92b332
eth/downloader, trie: pull head state concurrently with chain
2016-05-27 14:26:00 +03:00
Jeffrey Wilcke
a7434fd008
Merge pull request #2614 from fjl/bad-block-report
...
eth: enable bad block reports
2016-05-25 22:40:28 +02:00
Felix Lange
ca18202eb9
eth: enable bad block reports
...
We used to have reporting of bad blocks, but it was disabled
before the Frontier release. We need it back because users
are usually unable to provide the full RLP data of a bad
block when it occurs.
A shortcoming of this particular implementation is that the
origin peer is not tracked for blocks received during eth/63
sync. No origin peer info is still better than no report at
all though.
2016-05-25 02:02:51 +02:00
Rémy Roy
f86ea9aad5
eth/api: fixed GetCompilers when there is no error creating Solc
2016-05-24 16:44:33 -04:00
Jeffrey Wilcke
7f515b0e88
Merge pull request #2564 from bas-vk/submit-tx
...
eth: add new RPC method (personal.) SignAndSendTransaction
2016-05-23 14:17:46 +02:00
Jeffrey Wilcke
262d92834a
Merge pull request #2575 from bas-vk/filter
...
eth/filter: bugfix which can cause a nil pointer crash when parsing f…
2016-05-23 12:54:35 +02:00
Bas van Kervel
64a6c2c1b6
eth: add new RPC method (personal.) SignAndSendTransaction
2016-05-20 15:54:18 +02:00
Jeffrey Wilcke
847aaffbb8
Merge pull request #2589 from karalabe/estimate-remove-codecheck
...
accounts/abi/bind, eth: rely on getCode for sanity checks, not estimate and call
2016-05-20 15:13:29 +02:00
Jeffrey Wilcke
a8472e0fdb
Merge pull request #2315 from karalabe/concurrent-headers-2
...
eth/downloader: concurrent header downloads
2016-05-20 14:25:28 +02:00
Péter Szilágyi
1580ec1804
accounts/abi/bind, eth: rely on getCode for sanity checks, not estimate and call
2016-05-20 12:29:28 +03:00
Péter Szilágyi
8906b2fe09
eth/downloader: fix reviewer comments
2016-05-20 10:56:01 +03:00
Jeffrey Wilcke
4b1a7d3868
eth: fixed regression in eth_signTransaction fixes #2578
...
Sign transaction returned the unsigned transaction rather than the
signed one.
2016-05-18 17:25:34 +02:00
Bas van Kervel
67cd4ee8d2
eth/filter: bugfix which can cause a nil pointer crash when parsing filter arguments
2016-05-17 16:17:54 +02:00
Péter Szilágyi
d87f7a1e81
eth: skip transaction handling during fast sync
2016-05-17 14:17:20 +03:00
Péter Szilágyi
e86619e75d
eth/downloader: stream partial skeleton filling to processor
2016-05-17 10:03:34 +03:00
Péter Szilágyi
b40dc8a1da
eth/downloader: implement concurrent header downloads
2016-05-17 10:03:34 +03:00
Péter Szilágyi
39ce85cf5d
eth/downloader: bound fork ancestry and allow heavy short forks
2016-05-13 12:12:13 +02:00
Péter Szilágyi
756b62988c
Merge pull request #2523 from fjl/shutdown
...
core, eth, miner: improve shutdown synchronisation
2016-05-09 15:59:41 +03:00
Felix Lange
56ed6152a1
core, eth, miner: improve shutdown synchronisation
...
Shutting down geth prints hundreds of annoying error messages in some
cases. The errors appear because the Stop method of eth.ProtocolManager,
miner.Miner and core.TxPool is asynchronous. Left over peer sessions
generate events which are processed after Stop even though the database
has already been closed.
The fix is to make Stop synchronous using sync.WaitGroup.
For eth.ProtocolManager, in order to make use of WaitGroup safe, we need
a way to stop new peer sessions from being added while waiting on the
WaitGroup. The eth protocol Run function now selects on a signaling
channel and adds to the WaitGroup only if ProtocolManager is not
shutting down.
For miner.worker and core.TxPool the number of goroutines is static,
WaitGroup can be used in the usual way without additional
synchronisation.
2016-05-09 13:03:08 +02:00