Christopher Franko
efc04c3cbd
Merge branch 'rebase-1.5.9'
2017-03-29 19:39:05 -04:00
Christopher Franko
a85150f0b4
upstream merge continued
2017-03-26 12:08:39 -04:00
Christopher Franko
5822644626
Merge remote-tracking branch 'refs/remotes/ethereum/master' into rebase-1.5.9
2017-03-26 11:40:56 -04:00
Christopher Franko
85d410d34e
move all the deps to the latest repo
...
This was over looked for so long because it was already taken care of in
the newer branches.
2017-03-20 09:11:55 -04:00
Nick Johnson
555273495b
trie: add difference iterator ( #3637 )
...
This PR implements a differenceIterator, which allows iterating over trie nodes
that exist in one trie but not in another. This is a prerequisite for most GC
strategies, in order to find obsolete nodes.
2017-02-22 23:49:34 +01:00
Christopher Franko
57638f70e6
Merge https://github.com/ethereum/go-ethereum into rebase-1.5.9
2017-02-15 13:21:31 -05:00
Felix Lange
40cdcf1183
trie, core/state: improve memory usage and performance ( #3135 )
...
* trie: store nodes as pointers
This avoids memory copies when unwrapping node interface values.
name old time/op new time/op delta
Get 388ns ± 8% 215ns ± 2% -44.56% (p=0.000 n=15+15)
GetDB 363ns ± 3% 202ns ± 2% -44.21% (p=0.000 n=15+15)
UpdateBE 1.57µs ± 2% 1.29µs ± 3% -17.80% (p=0.000 n=13+15)
UpdateLE 1.92µs ± 2% 1.61µs ± 2% -16.25% (p=0.000 n=14+14)
HashBE 2.16µs ± 6% 2.18µs ± 6% ~ (p=0.436 n=15+15)
HashLE 7.43µs ± 3% 7.21µs ± 3% -2.96% (p=0.000 n=15+13)
* trie: close temporary databases in GetDB benchmark
* trie: don't keep []byte from DB load around
Nodes decoded from a DB load kept hashes and values as sub-slices of
the DB value. This can be a problem because loading from leveldb often
returns []byte with a cap that's larger than necessary, increasing
memory usage.
* trie: unload old cached nodes
* trie, core/state: use cache unloading for account trie
* trie: use explicit private flags (fixes Go 1.5 reflection issue).
* trie: fixup cachegen overflow at request of nick
* core/state: rename journal size constant
2016-10-14 19:04:33 +03:00
Christopher Franko
87ec39aadb
Merge https://github.com/ethereum/go-ethereum into rebase-1.4.16
2016-10-08 09:23:35 -04:00
Felix Lange
ddadf402fc
[release/1.4.14] core, trie: replace state caches with trie journal
...
(cherry picked from commit cd791bd855 )
2016-09-28 13:32:10 +03:00
Felix Lange
cd791bd855
core, trie: replace state caches with trie journal
2016-09-28 11:27:28 +03:00
Christopher Franko
e959453cda
Merge remote-tracking branch 'refs/remotes/ethereum/master' into rebase-1.4.4
2016-06-14 18:14:19 -04:00
Péter Szilágyi
af53767e16
[release/1.4.6] core, core/state, trie: enterprise hand-tuned multi-level caching
...
(cherry picked from commit 748d1c171d )
2016-06-06 16:21:39 +03:00
Péter Szilágyi
748d1c171d
core, core/state, trie: enterprise hand-tuned multi-level caching
2016-05-26 16:33:09 +03:00
Christopher Franko
87272925b9
Merge remote-tracking branch 'ethereum/master' into rebase-1.4.4
2016-05-17 17:41:14 -04:00
Péter Szilágyi
b8d59d9c98
core/state, trie: switch iterator panics to error fields
2016-02-16 12:37:00 +02:00
Péter Szilágyi
151c7bef41
core/state, trie: node iterator reports parent hashes too
2016-02-16 12:21:08 +02:00
Péter Szilágyi
5a057a8ded
core/state, trie: surface iterator entry hashes
2016-02-16 12:21:08 +02:00
Péter Szilágyi
7e29b0b5b4
core/state, trie: add node iterator, test state/trie sync consistency
2016-02-16 12:21:08 +02:00
zsfelfoldi
52904ae32f
trie: added error handling
...
Created alternate versions of Trie and SecureTrie functions that can return a MissingNodeError (used by ODR services)
2015-12-01 01:38:32 +01:00
Christopher Franko
9cdd178759
Merge remote-tracking branch 'refs/remotes/ethereum/master' into rebase-1.3.1
...
Conflicts:
Godeps/Godeps.json
Godeps/_workspace/src/github.com/expanse-project/ethash/ethash_test.go
Makefile
VERSION
cmd/gexp/blocktestcmd.go
cmd/gexp/js.go
cmd/gexp/js_test.go
cmd/gexp/main.go
cmd/utils/cmd.go
cmd/utils/flags.go
common/natspec/natspec.go
common/natspec/natspec_e2e_test.go
common/natspec/natspec_e2e_test.go.orig
common/path.go
common/registrar/registrar.go
core/block_processor.go
core/block_processor_test.go
core/chain_manager.go
core/chain_manager_test.go
core/chain_util_test.go
core/events.go
core/execution.go
core/filter.go
core/state/errors.go
core/state/statedb.go
core/state_transition.go
core/transaction_util.go
core/types/bloom9.go
core/types/common.go
core/types/derive_sha.go
core/types/receipt.go
core/vm/common.go
core/vm/environment.go
core/vm/instructions.go
core/vm/jit.go
core/vm/jit_test.go
core/vm/vm.go
docker/Dockerfile
docker/supervisord.conf
eth/downloader/modes.go
event/filter/eth_filter.go
exp/backend.go
exp/downloader/downloader.go
exp/downloader/downloader_test.go
exp/downloader/peer.go
exp/downloader/queue.go
exp/gasprice.go
exp/handler.go
exp/sync.go
miner/worker.go
rpc/api/admin.go
rpc/api/debug.go
rpc/api/eth.go
rpc/api/eth_args.go
rpc/api/miner.go
rpc/api/personal.go
rpc/comms/ipc.go
rpc/comms/ipc_unix.go
rpc/comms/ipc_windows.go
tests/block_test_util.go
tests/files/BlockchainTests/bcUncleTest.json
trie/cache.go
trie/fullnode.go
trie/hashnode.go
trie/secure_trie.go
trie/shortnode.go
trie/trie.go
trie/trie_test.go
trie/valuenode.go
xeth/xeth.go
2015-11-03 18:25:50 -05:00
Felix Lange
565d9f2306
core, trie: new trie
2015-09-22 22:53:49 +02:00
Christopher Franko
164a9acc5d
updated copyright headers
2015-09-12 18:17:11 -04:00
Christopher Franko
9d6221444c
test change lol
2015-09-01 18:24:03 -04:00
Ethan Buchman
c1d516546d
faster hex-prefix codec and string -> []byte
2015-08-06 03:17:59 -04:00
Felix Lange
bfbcfbe4a9
all: fix license headers one more time
...
I forgot to update one instance of "go-ethereum" in commit 3f047be5a .
2015-07-23 18:35:11 +02:00
Felix Lange
3f047be5aa
all: update license headers to distiguish GPL/LGPL
...
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
2015-07-22 18:51:45 +02:00
Felix Lange
ea54283b30
all: update license information
2015-07-07 14:12:44 +02:00
=
a6fe92194f
Fixed iterator bug which skips the 0x000...000 key
2015-03-05 01:47:49 +00:00
obscuren
99ebb869bf
Fixed iterator
2015-02-07 17:03:22 +01:00
obscuren
db4aaedcbd
Moved ptrie => trie. Removed old trie
2015-01-08 11:47:04 +01:00
obscuren
fed3e6a808
Refactored ethutil.Config.Db out
2015-01-07 13:17:48 +01:00
obscuren
af34749a6b
ethtrie => trie
2014-10-31 14:45:03 +01:00