7468 Commits

Author SHA1 Message Date
Péter Szilágyi
df64a9f5ef [release/1.4.17] core, eth, miner: only retain 1 tx/nonce, remove bad ones
(cherry picked from commit 795b70423eac7180ab85b735f64aae9d6a10449d)
2016-10-10 10:41:58 +02:00
Felix Lange
4fced0972d [release/1.4.16] cmd/geth, VERSION: bumped version to 1.4.16 v1.4.16 2016-10-06 16:25:17 +02:00
Felix Lange
18971d9cb4 [release/1.4.16] core/state: optimize GetState
There is no need to use the reflection-based decoder to decode []byte.

(cherry picked from commit 3c836dd71b192de24774b1848173a4eb0ca9a63b)
2016-10-06 16:25:17 +02:00
Felix Lange
74d5251b70 [release/1.4.16] core/state: rename Delete/IsDeleted to Suicide/HasSuicided
The delete/remove naming has caused endless confusion in the past.

(cherry picked from commit 90fce8bfa621f8c3be6663d62740783949111ff1)
2016-10-06 16:25:17 +02:00
Felix Lange
46a527d014 [release/1.4.16] core/state: implement reverts by journaling all changes
This commit replaces the deep-copy based state revert mechanism with a
linear complexity journal. This commit also hides several internal
StateDB methods to limit the number of ways in which calling code can
use the journal incorrectly.

As usual consultation and bug fixes to the initial implementation were
provided by @karalabe, @obscuren and @Arachnid. Thank you!

(cherry picked from commit 1f1ea18b5414bea22332bb4fce53cc95b5c6a07d)
2016-10-06 16:25:17 +02:00
Felix Lange
e97b30169b [release/1.4.16] tests: update test files from github.com/ethereum/tests @ 45bc1d21d3c1
Two new tests are skipped because they're buggy. Making some newer
random state tests work required implementing the 'compressed return
value encoding'.

(cherry picked from commit 1b7b2ba2163c7b2b2acc0c4f107951ad873cd8a4)
2016-10-06 16:25:17 +02:00
Felix Lange
438efdab28 [release/1.4.16] cmd/utils: disable jitvm A/B test 2016-10-06 16:25:17 +02:00
Péter Szilágyi
f7e6fb7d1c [release/1.4.16] eth: monitor malicious header retrieval requests
(cherry picked from commit e482b5694faece927a29289f88d7a87b1ce1fbd1)
2016-10-06 16:25:17 +02:00
Felix Lange
718881bd35 [release/1.4.16] internal/build: fix git tag env variable for AppVeyor
(cherry picked from commit 82e09c17a9e112cf8fe59ec526fc90a228ad3c0b)
2016-10-06 16:25:17 +02:00
Felix Lange
d1bb89d46d [release/1.4.16] crypto/sha3: update from golang.org/x/crypto/sha3 a 80b25ed4
This pulls in the assembly implementation of keccakf1600 for amd64.

(cherry picked from commit 54ea317375273c8bb558194eb04c73925da9ac14)
2016-10-06 16:25:17 +02:00
Péter Szilágyi
1639f1174e Merge pull request #3074 from karalabe/release/1.4
Geth 1.4.15 "Come at me bro"
2016-10-03 11:40:05 +03:00
Péter Szilágyi
d9ed63ec38 [release/1.4.15] VERSION, cmd/geth: bumped version 1.4.15 2016-10-03 11:36:06 +03:00
Felix Lange
ee58202f2f [release/1.4.15] internal/build: use less edgy command to get the branch name
(cherry picked from commit b4b5921dd030568717d33b03739d65c3aeb9d9af)
2016-10-03 11:36:03 +03:00
Felix Lange
9315bc9c3c [release/1.4.15] build: improve debian packaging
This commit tweaks the debian packaging tool:

* All build environment metadata can now be overriden on the command
  line. This allows testing the CI build behaviour locally.
* -unstable packages now actually contain the binaries (oops)
* packages use Go 1.7 to build
* archiving is skipped for PR builds

(cherry picked from commit 4f7627972e4997965be6f3c406904ef613e14c20)
2016-10-03 11:35:57 +03:00
Péter Szilágyi
945bcb8293 [release/1.4.15] core/state: track dirty state entries for each object
(cherry picked from commit b7159818f9eb102ac842199fd5af0efca7bdd6b0)
2016-10-03 11:24:07 +03:00
Péter Szilágyi
f1949f4d99 [release/1.4.15] cmd, core, internal, light, tests: avoid hashing the code in the VM
(cherry picked from commit cb84e3f02953f2df166ae69369d222dcbbd7d78d)
2016-10-03 11:24:04 +03:00
Felix Lange
968ab8aa4f [release/1.4.15] trie: fix delete bug for values contained in fullNode
Delete crashed if a fullNode contained a valueNode directly. This bug is
very unlikely to occur with SecureTrie, but can happen with regular
tries. This commit also introduces a randomised test which triggers all
trie operations, which should prevent such bugs in the future.

Credit for finding this bug goes to Github user @rjl493456442.

(cherry picked from commit c3a77d626831b4ffe37ed4f8640e67e70ad5b220)
2016-10-03 11:23:56 +03:00
Péter Szilágyi
f88bca7ba9 Merge pull request #3055 from karalabe/release/1.4
Geth 1.4.14: What else should we rewrite?
v1.4.14
2016-09-28 13:40:44 +03:00
Péter Szilágyi
d4608ae0d2 [release/1.4.14] VERSION, cmd/geth: bumped version 1.4.14 2016-09-28 13:32:14 +03:00
Péter Szilágyi
f50c2a5c70 [release/1.4.14] core, eth, trie: reuse trie journals in all our code
(cherry picked from commit 710435b51b97b4c688b70bda35ab9d1aa704a988)
2016-09-28 13:32:12 +03:00
Felix Lange
ddadf402fc [release/1.4.14] core, trie: replace state caches with trie journal
(cherry picked from commit cd791bd855b55b95afc8a5c8f56b8bf67863d099)
2016-09-28 13:32:10 +03:00
Felix Lange
7c17a6704c [release/1.4.14] build: limit test concurrency
TravisCI and AppVeyor run the tests in very slow VMs.
Some of our tests can't cope with that. Running less tests
in parallel should make them somewhat less flakey.

(cherry picked from commit b0a6b979a3f12e91cfbc89850bfaa00c46653e85)
2016-09-28 13:32:08 +03:00
Felix Lange
25205d64d7 [release/1.4.14] cmd/utils: don't check for stderr redirect on windows
The redirect check did not work on Go 1.6 and below because Stat
returned an error for stdout and stderr. In Go 1.7 Stat works on stdout
but doesn't return anything meaningful, causing cmd/geth test failures
because the message is printed to stderr only. Fix it by printing to
stdout only.

(cherry picked from commit b04219fdbbef06527f77e93129d6a196b6841f44)
2016-09-28 13:32:06 +03:00
Felix Lange
03b2f56485 [release/1.4.14] appveyor.yml: don't install Go and MinGW, they're already there (#2813)
(cherry picked from commit e11489eb5f58a63cb39a3189de7263837dc95b93)
2016-09-28 13:31:55 +03:00
Péter Szilágyi
7a5843de31 Merge pull request #3038 from fjl/release/1.4
[release/1.4.13] core/state: track all accounts in canon state
2016-09-26 12:36:53 +03:00
Felix Lange
0cc6397195 [release/1.4.13] node: fix go vet issue 2016-09-26 10:49:40 +02:00
Felix Lange
dc2b23c869 [release/1.4.13] core/state: track all accounts in canon state
This change introduces a global, per-state cache that keeps account data
in the canon state. Thanks to @karalabe for lots of fixes.

(cherry picked from commit a59a93f476434f2805c8fd3e10bf1b2f579b078f)
2016-09-26 10:31:18 +02:00
Péter Szilágyi
6999f1da6b Merge pull request #3036 from karalabe/release/1.4
Geth 1.4.13
2016-09-26 08:55:23 +03:00
Péter Szilágyi
95bfedd599 [release 1.4.12] VERSION, cmd/geth: bumped version 1.4.13 2016-09-26 08:50:13 +03:00
Gustav Simonsson
42e4e18667 [release 1.4.12] core: short-circuit balance change if zero value
(cherry picked from commit 25ed5feddadea8201974bfacb2a57d060b697acb)
2016-09-26 08:49:59 +03:00
Péter Szilágyi
9bdbaf459a Merge pull request #3008 from karalabe/release/1.4
G
2016-09-19 04:32:32 +03:00
Péter Szilágyi
dfc63c49c7 [release/1.4.12] VERSION, cmd/geth: bumped version 1.4.12 2016-09-19 04:23:42 +03:00
Nick Johnson
e44b2dc881 [release 1.4.12] core/state: Fix memory expansion bug by not copying clean objects
(cherry picked from commit 581b320b9dfb42c0c4842e0bc5aeb507267a8eba)
2016-09-19 04:23:36 +03:00
Jeffrey Wilcke
99a0c76435 Merge pull request #2915 from obscuren/release/1.4
Geth 1.4.11
2016-08-18 17:04:31 +02:00
Jeffrey Wilcke
5ca5ccf90c [release/1.4.11] VERSION, cmd/geth: bumped version 1.4.11 2016-08-18 15:25:16 +02:00
Bas van Kervel
c4ed34f008 [release/1.4.11] core: ensure the canonical block is written before the canonical hash is set
(cherry picked from commit bb8059f6aa86d1052d7c2dd75a6985982cb278f4)

Conflicts:
	core/blockchain.go
	core/database_util.go
	core/headerchain.go
	eth/filters/filter.go
2016-08-18 15:25:16 +02:00
Péter Szilágyi
0ab7e90cbb [release/1.4.11] Godeps: pull in ethash with the big endian build fix
(cherry picked from commit f0134f363bf62ba18668c2524050f14b2a43b6bd)
2016-08-18 15:25:04 +02:00
Péter Szilágyi
bdbfe572f1 [release/1.4.11] Makefile: support building for the MIPS64 platforms (#2682)
(cherry picked from commit 4c2cc32f2e279baa3059603b8c8a4329f31606f6)
2016-08-18 15:01:51 +02:00
Péter Szilágyi
c4e4baf668 [release/1.4.11] eth/downloader: fewer headers and futures too un ancestor lookup
(cherry picked from commit d68865f3b1b93e2463f7e3381e39fbbd137df825)
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 8f0a4a25f82f48005e6252a90c008bdc76219cc3)
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 071af57bcf516d92a0b56c5bb119d9576d32b5cb)
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 1dd272080dfb49a07a87c46e18d8aeaa0fd41a08)

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 016007bd25f2b5e597c2ac2f7256c4e73574f70e)

Conflicts:
	eth/handler.go
	eth/handler_test.go
2016-08-18 15:01:34 +02:00
Péter Szilágyi
2c6214e846 [release/1.4.11] Makefile, build: move cross compilation into ci.go
(cherry picked from commit 8c23f20c68b59c5534ab249d23b452114ba75f74)
2016-08-18 15:01:30 +02:00
Felix Lange
0398075ced [release/1.4.11] build: add ci.go, use it everywhere
The new build script, ci.go, replaces some of the older shell scripts.
ci.go can compile go-ethereum, run the tests, create release archives
and debian source packages.

(cherry picked from commit 6c33ba14a4db99409657e6a68a7c629e09ceee3f)
2016-08-18 15:01:27 +02:00
Felix Lange
d1696dbf07 [release/1.4.11] core/vm: hide ecrecover error message
Fixes #2825

(cherry picked from commit e4736fe46938008b7fa88879f728fa81c6ce09e8)
2016-08-18 15:01:23 +02:00
Felix Lange
626604e86d [release/1.4.11] Godeps: update github.com/rjeczalik/notify to f627deca7a51
Fixes #2829

(cherry picked from commit 4be37222efb2064140bd3d285ef553ec077e0487)
2016-08-18 15:01:19 +02:00
Péter Szilágyi
9eb2873a9c [release/1.4.11] eth/downloader: fix the stall checks/drops during sync
(cherry picked from commit c7c82f1b44e07ad0906dde563cce46ea87b6fc83)
2016-08-18 15:01:15 +02:00
Péter Szilágyi
08a7cd74da [release/1.4.11] eth: cancel DAO challenge on peer drop (annoying log)
(cherry picked from commit 91f18ffd47d766b1493016da6802befbf9739709)
2016-08-18 15:01:05 +02:00
Henning Diedrich
35d479b6d3 [release/1.4.11] eth: fix #2710 filter races
and locking bugs found in its wake.

(cherry picked from commit 51f8ce26cf6dbc20ddc548af305739db981fdd41)
2016-08-18 15:00:48 +02:00