go-ethereum/eth
Martin Holst Swende 3531ca2246
eth/tracers: avoid unsyncronized mutations on trie database (#23632)
This PR fixes an issue in traceChain, where the statedb Commit operation was performed asynchronously with dereference-operations agains the underlying trie.Database instance. Due to how the reference counting works within the trie database (where parent count is recursively updated when new parents are added), doing dereferencing in the middle of Commit can cause the refcount to become wrong, leading to an inconsistent state. 

This was fixed by doing Commit/Deref from the same routine.
2021-09-28 13:06:19 +02:00
..
catalyst all: removed blockhash from statedb (#23126) 2021-06-30 15:17:01 +02:00
downloader Revert "Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426)" (#23456) 2021-08-24 21:52:58 +03:00
ethconfig eth/gasprice: feeHistory improvements (#23422) 2021-08-23 23:50:24 +02:00
fetcher eth/fetcher, trie: unit test reliability fixes (#23020) 2021-06-30 22:24:17 +02:00
filters accounts/abi/bind: fix bounded contracts and sim backend for 1559 (#23038) 2021-06-15 13:56:14 +03:00
gasprice eth/gasprice: feeHistory improvements (#23422) 2021-08-23 23:50:24 +02:00
protocols core/state: move state account to core/types + abstracted "write account to trie" (#23567) 2021-09-28 10:48:07 +02:00
tracers eth/tracers: avoid unsyncronized mutations on trie database (#23632) 2021-09-28 13:06:19 +02:00
api_backend.go core/rawdb: avoid unnecessary receipt processing for log filtering (#23147) 2021-09-28 12:54:49 +02:00
api_test.go cmd/geth, eth, core: snapshot dump + unify with trie dump (#22795) 2021-05-12 11:05:39 +03:00
api.go Revert "eth, internal/ethapi: make RPC block miner field show block sealer correctly (#23312)" (#23466) 2021-08-26 08:35:37 +02:00
backend.go all: remove noop vm config flags (#23111) 2021-07-06 22:03:09 +02:00
bloombits.go eth: move eth.Config to a common package (#22205) 2021-02-05 13:51:15 +01:00
discovery.go cmd/utils: use eth DNS tree for snap discovery (#22808) 2021-05-04 11:29:32 +02:00
handler_eth_test.go Revert "Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426)" (#23456) 2021-08-24 21:52:58 +03:00
handler_eth.go eth: check snap satelliteness, delegate drop to eth (#22235) 2021-02-02 10:44:36 +02:00
handler_snap.go eth: check snap satelliteness, delegate drop to eth (#22235) 2021-02-02 10:44:36 +02:00
handler_test.go core, eth, miner: enforce configured mining reward post 1559 too 2021-06-04 10:18:37 +03:00
handler.go Revert "Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426)" (#23456) 2021-08-24 21:52:58 +03:00
peer.go eth: check snap satelliteness, delegate drop to eth (#22235) 2021-02-02 10:44:36 +02:00
peerset.go eth: don't wait for snap registration if we're not running snap (#22272) 2021-02-05 14:15:22 +01:00
state_accessor.go eth/tracers: avoid unsyncronized mutations on trie database (#23632) 2021-09-28 13:06:19 +02:00
sync_test.go Revert "Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426)" (#23456) 2021-08-24 21:52:58 +03:00
sync.go Revert "Revert "eth: drop eth/65, the last non-reqid protocol version" (#23426)" (#23456) 2021-08-24 21:52:58 +03:00