Jeffrey Wilcke
65bb07fb4e
Merge pull request #1980 from fjl/downloader-deliver-hang
...
eth/downloader: don't hang for spurious deliveries
2015-11-19 15:19:21 +01: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
db52a6a0ff
eth: remove workaround for asynchronous processing in the downloader
2015-11-19 14:18:34 +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
Jeffrey Wilcke
ae37a8013d
Merge pull request #1917 from obscuren/validator-interface
...
core, eth, rpc: split out block validator and state processor
2015-11-19 10:57:00 +01:00
Jeffrey Wilcke
23f42d9463
Merge pull request #1964 from obscuren/evm-runtime
...
core/vm/runtime: added simple execution runtime
2015-11-18 17:39:27 +01:00
Jeffrey Wilcke
1372b991c3
core/vm/runtime: added simple execution runtime
...
The runtime environment can be used for simple basic execution of
contract code without the requirement of setting up a full stack and
operates fully in memory.
2015-11-18 16:50:20 +01:00
Jeffrey Wilcke
a1d9ef48c5
core, eth, rpc: split out block validator and state processor
...
This removes the burden on a single object to take care of all
validation and state processing. Now instead the validation is done by
the `core.BlockValidator` (`types.Validator`) that takes care of both
header and uncle validation through the `ValidateBlock` method and state
validation through the `ValidateState` method. The state processing is
done by a new object `core.StateProcessor` (`types.Processor`) and
accepts a new state as input and uses that to process the given block's
transactions (and uncles for rewords) to calculate the state root for
the next block (P_n + 1).
2015-11-18 14:24:42 +01:00
Felix Lange
4a938406dc
Merge pull request #1990 from karalabe/fix-whisper-autocomplete
...
rpc/api: fix #1986 , newIdentity autocomplete
2015-11-18 12:32:39 +01:00
Péter Szilágyi
53f28e71dc
rpc/api: fix #1986 , newIdentity autocomplete
2015-11-18 13:03:20 +02:00
Jeffrey Wilcke
10475f444c
Merge pull request #1984 from fjl/secp256k1-recover-id-verify
...
crypto/secp256k1: verify recovery ID before calling libsecp256k1
2015-11-17 19:39:42 +01:00
Felix Lange
e344e1d490
crypto/secp256k1: drop pkgsrc paths from CFLAGS
...
They cause compiler warnings for people who don't have these
directories. People with pkgsrc can add the directory through CGO_CFLAGS
instead.
2015-11-17 09:53:10 +01:00
Felix Lange
5159f8f649
crypto/secp256k1: raise internal errors as recoverable Go panic
2015-11-17 09:53:10 +01:00
Felix Lange
1b29aed128
crypto/secp256k1: verify recovery ID before calling libsecp256k1
...
The C library treats the recovery ID as trusted input and crashes
the process for invalid values, so it needs to be verified before
calling into C. This will inhibit the crash in #1983 .
Also remove VerifySignature because we don't use it.
2015-11-17 09:51:59 +01:00
Jeffrey Wilcke
9422eec554
Merge pull request #1976 from karalabe/enable-light-kdf
...
cmd/geth, cmd/utils: surface the light KDF flag to the CLI
2015-11-11 12:45:30 +01:00
Péter Szilágyi
9aa77a3769
cmd/geth, cmd/utils: surface the light KDF flag to the CLI
2015-11-10 15:47:19 +02:00
Jeffrey Wilcke
da6696862e
Merge pull request #1974 from karalabe/fix-rpc-regression
...
rpc/api: fix #1972 api regression (nil eth panic) in attach
2015-11-06 13:10:28 +01:00
Péter Szilágyi
6e5349880e
rpc/api: fix #1972 api regression (nil eth panic) in attach
2015-11-06 11:47:57 +02:00
Jeffrey Wilcke
6d09468cab
Merge pull request #1967 from karalabe/fix-filter-test-datarace
...
event/filter: fix data race in the test
2015-11-05 20:31:11 +01:00
Jeffrey Wilcke
2334ee97d0
Merge pull request #1963 from karalabe/fix-database-regression
...
eth: fix error casting regression during database open
2015-11-05 20:27:11 +01:00
Péter Szilágyi
5d89bbdda1
eth: fix error casting regression during database open
2015-11-05 16:59:16 +02:00
Péter Szilágyi
8e2bf42c46
event/filter: fix data race in the test
2015-11-05 16:55:53 +02:00
Felix Lange
76390ef892
Merge pull request #1966 from karalabe/fix-recover-noparam-panic
...
cmd/geth: fix recover command crash if no param is supplied
2015-11-05 13:15:23 +01:00
Felix Lange
636f67f232
Merge pull request #1969 from karalabe/fix-whisper-tests-datarace
...
whisper: fix datarace in expiration test
2015-11-05 13:03:36 +01:00
Felix Lange
eb11c0e597
Merge pull request #1965 from karalabe/fix-natto-test
...
jsre: fix #1876 , sleep too short on a slow test server
2015-11-05 13:03:06 +01:00
Felix Lange
ca4f6d0fdd
Merge pull request #1968 from karalabe/fix-json-tests-datarace
...
tests: fix data race in bad-block-report disabling during tests
2015-11-05 12:59:07 +01:00
Péter Szilágyi
60e0abb595
whisper: fix datarace in expiration test
2015-11-05 13:36:25 +02:00
Péter Szilágyi
9dc5de51a2
tests: fix data race in bad-block-report disabling during tests
2015-11-05 13:29:50 +02:00
Péter Szilágyi
90655736ed
cmd/geth: fix recover command crash if no param is supplied
2015-11-05 11:53:50 +02:00
Péter Szilágyi
bddb13d436
jsre: fix #1876 , sleep too short on a slow test server
2015-11-05 11:36:10 +02:00
Jeffrey Wilcke
e3f36d9728
Merge pull request #1960 from karalabe/fix-peer-ignore-list
...
eth/downloader: fix dysfunctional ignore list hidden by generic set
2015-11-04 14:43:58 +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
Jeffrey Wilcke
e165c2d23c
Merge pull request #1934 from karalabe/polish-protocol-infos
...
eth, p2p, rpc/api: polish protocol info gathering
2015-11-04 11:59:31 +01:00
Jeffrey Wilcke
dda3bf3ce7
Merge pull request #1943 from obscuren/abi-fixes
...
accounts/abi: ABI fixes & added types
2015-11-03 15:22:37 +01:00
Jeffrey Wilcke
6dfbbc3e11
Merge pull request #1948 from bas-vk/rpcfix
...
Infinite loop in filters
2015-11-03 15:22:02 +01:00
Jeffrey Wilcke
5ff0814b1f
VERSION, cmd/geth: bumped version 1.4.0
2015-11-03 11:48:18 +01:00
Felix Lange
001684fb11
Merge pull request #1958 from fjl/secp256k1-pkgsrc
...
crypto/secp256k1: add C compiler flags for pkgsrc
2015-11-03 10:46:04 +01:00
Felix Lange
16b0bc7c3b
crypto/secp256k1: add C compiler flags for pkgsrc
...
pkgsrc is a cross-platform package manager that also
supports OS X.
2015-11-03 10:33:31 +01:00
Jeffrey Wilcke
c841e39476
Merge pull request #1954 from obscuren/regression-miner
...
miner: synchronise start / stop
2015-10-31 20:00:34 +01:00
Jeffrey Wilcke
8c38f8d815
miner: synchronise start / stop
...
This PR fixes an issue where the remote worker was stopped twice and not
properly handled. This adds a synchronised running check to the start
and stop methods preventing closing of a channel more than once.
2015-10-31 02:18:41 +01:00
Jeffrey Wilcke
016ad3e962
Merge pull request #1952 from obscuren/testnet-peers
...
eth: added new testnet peers
2015-10-30 11:00:31 +01:00
Jeffrey Wilcke
98b036ddb6
Merge pull request #1949 from karalabe/update-command-usage
...
cmd/geth, cmd/utils, eth: group CLI flags by purpose
2015-10-30 10:59:36 +01:00
Péter Szilágyi
3c6e285d3b
cmd/geth, cmd/utils, eth: group CLI flags by purpose
2015-10-30 11:33:12 +02:00
Jeffrey Wilcke
1bc789553a
eth: added new testnet peers
2015-10-30 10:01:19 +01:00
Jeffrey Wilcke
1abbe05e93
Merge pull request #1951 from fjl/godeps-upgrade-goupnp
...
Godeps: upgrade github.com/huin/goupnp
2015-10-30 00:14:15 +01:00
Felix Lange
f570b68ed1
p2p/nat: add docs for discover
2015-10-29 22:54:44 +01:00
Felix Lange
bf11a47f22
Godeps: upgrade github.com/huin/goupnp to 90f71cb5
2015-10-29 22:53:59 +01:00
Jeffrey Wilcke
1f72952f04
accounts/abi: ABI fixes & added types
...
Changed field `input` to new `inputs`. Addad Hash and Address as input
types.
Added bytes[N] and N validation
2015-10-29 21:40:18 +01:00
Jeffrey Wilcke
fc46cf337a
Merge pull request #1946 from fjl/xeth-oom
...
Fix for xeth OOM issue
2015-10-29 17:42:55 +01:00