Daniel Liu
b9626bfebf
trie: fix gaped range proof test case #21484 ( #1047 )
...
Co-authored-by: gary rong <garyrong0905@gmail.com>
2025-05-26 15:17:31 +08:00
Daniel Liu
6395c15280
core/state, eth, trie: stabilize memory use, fix memory leak #21491 ( #1040 )
2025-05-20 15:14:47 +08:00
Daniel Liu
b94b29b8d0
trie: check nil bloom ( #1039 )
2025-05-20 15:13:34 +08:00
Daniel Liu
b9a6c8c32d
cmd, core, eth, trie: add trie read caching layer ( #18087 ) ( #946 )
2025-04-16 17:27:43 +08:00
Daniel Liu
5759893f2b
trie: quell linter warnings in commiter.go ( #21329 ) ( #945 )
2025-04-16 17:10:42 +08:00
Daniel Liu
bf893cb73b
trie: reduce allocs in insertPreimage ( #21261 ) ( #943 )
...
Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
2025-04-16 17:08:31 +08:00
Daniel Liu
5328a637c0
trie: use unified emptyRootHash and emptyCodeHash ( #26718 )
2025-04-07 16:44:32 +08:00
Daniel Liu
c8b39cabae
trie: faster trie node encoding ( #24126 )
2025-04-07 16:44:32 +08:00
Paweł Bylica
4df7801137
trie: simplify StackTrie implementation ( #23950 )
...
Trim the search key from head as it's being pushed deeper into the trie. Previously the search key was never modified but each node kept information how to slice and compare it in keyOffset. Now the keyOffset is not needed as this information is included in the slice of the search key. This way the keyOffset can be removed and key manipulation
simplified.
2025-04-07 16:44:32 +08:00
Paweł Bylica
ad16ad23a5
trie: more tests for stacktrie ( #23936 )
2025-04-07 16:44:32 +08:00
aaronbuchwald
f25180b7f8
trie: add missing copyright header ( #23530 )
...
* Add missing copyright header
* Update stacktrie_test.go
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
2025-04-07 16:44:32 +08:00
Martin Holst Swende
e3efb24444
trie: make stacktrie support binary marshal/unmarshal ( #22685 )
2025-04-07 16:44:32 +08:00
Martin Holst Swende
a8bd860e2f
trie: make stacktrie not mutate input values ( #22673 )
...
The stacktrie is a bit un-untuitive, API-wise: since it mutates input values.
Such behaviour is dangerous, and easy to get wrong if the calling code 'forgets' this quirk. The behaviour is fixed by this PR, so that the input values are not modified by the stacktrie.
Note: just as with the Trie, the stacktrie still references the live input objects, so it's still _not_ safe to mutate the values form the callsite.
2025-04-07 16:44:32 +08:00
Daniel Liu
3eb9f63513
core/types: implement DerivableList interface for transactions and receipts ( #21502 )
2025-04-07 16:44:32 +08:00
Daniel Liu
dcea73039c
trie: bloom-filter based pruning mechanism ( #21724 )
2025-04-07 16:44:32 +08:00
Martin Holst Swende
f7fd4af087
trie: stacktrie fixes ( #21799 )
...
* trie: fix error in stacktrie not committing small roots
* trie: improved tests
* trie: fix error in stacktrie with small nodes
* trie: add (skipped) testcase for stacktrie
* trie: fix docs in stacktrie
2025-04-07 16:44:32 +08:00
Martin Holst Swende
87270e3988
trie: fix flaw in stacktrie pool reuse ( #21699 )
2025-04-07 16:44:32 +08:00
gary rong
1424987768
trie: polish commit function ( #21692 )
...
* trie: polish commit function
* trie: fix typo
2025-04-07 16:44:32 +08:00
gary rong
9da3ae1075
trie: polishes to trie committer ( #21351 )
...
* trie: update tests to check commit integrity
* trie: polish committer
* trie: fix typo
* trie: remove hasvalue notion
According to the benchmarks, type assertion between the pointer and
interface is extremely fast.
BenchmarkIntmethod-12 1000000000 1.91 ns/op
BenchmarkInterface-12 1000000000 2.13 ns/op
BenchmarkTypeSwitch-12 1000000000 1.81 ns/op
BenchmarkTypeAssertion-12 2000000000 1.78 ns/op
So the overhead for asserting whether the shortnode has "valuenode"
child is super tiny. No necessary to have another field.
* trie: linter nitpicks
Co-authored-by: Martin Holst Swende <martin@swende.se>
2025-04-07 16:44:32 +08:00
Daniel Liu
54f73e471f
trie: Derivesha with stacktrie ( #21407 )
2025-04-07 16:44:32 +08:00
Daniel Liu
7198179c2a
cmd, trie: remove cmd/gc and hide some types in trie
2025-04-01 16:34:35 +08:00
Daniel Liu
a9b9f53701
core, eth, trie: add a prefix to contract code (21080)
2025-03-24 22:31:03 +08:00
Daniel Liu
ebb2c3b2ea
all: new empty trie with types.EmptyRootHash instead of null ( #27230 )
2025-02-07 13:04:45 +08:00
Daniel Liu
5b10b2441c
all: use T.TempDir to create temporary test directories ( #24633 )
2025-01-24 16:54:08 +08:00
Daniel Liu
97c50f97bb
all: add read-only option to database
2025-01-24 14:24:39 +08:00
Daniel Liu
4cc2b2ea5f
tests/fuzzers: move fuzzers into native packages ( #28467 )
2024-12-28 09:06:31 +08:00
Péter Szilágyi
39e9d8f94d
common/prque: generic priority queue ( #26290 )
2024-12-28 09:06:31 +08:00
Daniel Liu
5f66fb5de0
fix tautological condition: nil == nil
2024-10-31 09:01:12 +08:00
Daniel Liu
464a89074b
all: use unified emptyRootHash and emptyCodeHash ( #26718 )
2024-10-21 17:55:16 +08:00
Daniel Liu
edace6ac6c
all: change format 0x%x to %#x ( #25221 )
2024-09-27 15:24:31 +08:00
Daniel Liu
67b5b2bf9a
core/vm: less allocations for various call variants ( #21222 )
2024-09-22 18:42:11 +08:00
JukLee0ira
2d89951e5b
all: use errrors.New instead of empty fmt.Errorf
2024-06-14 19:19:21 +08:00
Daniel Liu
48f9bbed50
core: types: less allocations when hashing and tx handling ( #21265 )
2024-05-13 22:07:03 +08:00
Wanwiset Peerapatanapokin
aaa246f60e
PDF-01 ( #397 )
...
* replace deprecated ioutil lib calls
* fix for FileInfo type required
* fix for ioutil.Discard
* fix .Discard
* fix for go-bindata generated files
2024-01-19 15:05:03 +04:00
olumuyiwadad
b5abbfed79
new EVM Upgrade
...
- Solidity Upgraded up to v0.8.0
- Fixed and Added eth_chainId
- Fix error in TransactionRecipet
- Reward halving issue fixed
2021-09-21 16:53:46 +05:30
olumuyiwadad
571c41f891
FIx Bad block error.
2021-09-17 17:59:06 +05:30
Jianrong
0fdab2027c
add linting as the first CI task
2021-08-07 14:27:08 +10:00
dev-vadim
dbe8c9d984
upgrade XDC.Network with v1.8.27.
2020-12-23 16:32:06 +05:30
Péter Szilágyi
80a2a35bc3
trie: there's no point in retrieving the metaroot
2019-04-08 12:00:42 +03:00
Martin Holst Swende
a458153098
trie: fix error in node decoding ( #19111 )
2019-02-19 10:59:57 +02:00
Dave McGregor
33d233d3e1
vendor, crypto, swarm: switch over to upstream sha3 package
2019-01-04 09:26:07 +02:00
Martin Holst Swende
2843001ac2
trie: fix overflow in write cache parent tracking ( #18165 )
...
trie/database: fix overflow in parent tracking
2018-11-22 15:14:31 +02:00
Péter Szilágyi
d136e985e8
trie: go fmt package
2018-11-16 16:35:39 +02:00
Łukasz Kurowski
68be45e5f8
trie: return hasher to pool ( #18116 )
...
* trie: return hasher to pool
* trie: minor code formatting fix
2018-11-16 11:50:48 +02:00
Péter Szilágyi
434dd5bc00
cmd, core, eth, light, trie: add trie read caching layer
2018-11-15 12:22:13 +02:00
Péter Szilágyi
53634f1e04
trie: remove unused originalRoot field ( #17862 )
2018-10-08 13:16:16 +02:00
Wenbiao Zheng
6a33954731
core, eth, trie: use common/prque ( #17508 )
2018-09-03 17:33:21 +02:00
Mymskmkt
70398d300d
trie: fix typo ( #17498 )
2018-08-24 21:08:48 +03:00
Péter Szilágyi
11bbc66082
eth, trie: fix tracer GC which accidentally pruned the metaroot
2018-08-09 12:33:30 +03:00
Mymskmkt
8051a0768a
trie: fix comment typo ( #17350 )
2018-08-08 16:08:40 +03:00