rjl493456442
bff84a99fe
cmd, core, eth, les, light: track deleted nodes ( #25757 )
...
* cmd, core, eth, les, light: track deleted nodes
* trie: add docs
* trie: address comments
* cmd, core, eth, les, light, trie: trie id
* trie: add tests
* trie, core: updates
* trie: fix imports
* trie: add utility print-method for nodeset
* trie: import err
* trie: fix go vet warnings
Co-authored-by: Martin Holst Swende <martin@swende.se>
2022-09-27 10:01:02 +02:00
Justin Traglia
2c5648d891
all: fix some typos ( #25551 )
...
* Fix some typos
* Fix some mistakes
* Revert 4byte.json
* Fix an incorrect fix
* Change files to fails
2022-08-19 09:00:21 +03:00
rjl493456442
8b53b92eb4
core, trie: rework trie committer ( #25320 )
...
* all: rework trie and trie committer
* all: get rid of internal cache in trie
* all: fixes
* trie: polish
* core, trie: address comments
* trie: fix imports
* core/state: address comments
* core/state/snapshot: polish
* trie: remove unused code
* trie: update tests
* trie: don't set db as nil
* trie: address comments
* trie: unskip test
2022-08-04 11:03:20 +03:00
rjl493456442
22defa5af7
all: introduce trie owner notion ( #24750 )
...
* cmd, core/state, light, trie, eth: add trie owner notion
* all: refactor
* tests: fix goimports
* core/state/snapshot: fix ineffasigns
Co-authored-by: Martin Holst Swende <martin@swende.se>
2022-06-06 17:14:55 +02:00
gary rong
a5a5237178
core, light, tests, trie: add state metrics ( #23433 )
2021-08-24 22:00:42 +03:00
gary rong
23524f8900
all: disable recording preimage of trie keys ( #21402 )
...
* cmd, core, eth, light, trie: disable recording preimage by default
* core, eth: fix unit tests
* core: fix import
* all: change to nopreimage
* cmd, core, eth, trie: use cache.preimages flag
* cmd: enable preimages for archive node
* cmd/utils, trie: simplify preimage tracking a bit
* core: fix linter
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
2020-11-18 11:51:33 +02:00
gary rong
93da0cf8a1
cmd, core, eth, light, trie: dump clean cache periodically ( #20391 )
...
* cmd, core, eth, light, trie: dump clean cache periodically
* eth: update config
* trie: minor fix
* core, trie: address comments
* eth: remove useless
* trie: print clean cache dump start too
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
2020-07-28 16:30:31 +03:00
Felix Lange
af258efdb9
light: goimports -w ( #21325 )
2020-07-13 11:17:49 +02:00
gary rong
6eef141aef
les: historical data garbage collection ( #19570 )
...
This change introduces garbage collection for the light client. Historical
chain data is deleted periodically. If you want to disable the GC, use
the --light.nopruning flag.
2020-07-13 11:02:54 +02:00
gary rong
b9bac1f384
les: fix and slim the unit tests of les ( #20247 )
...
* les: loose restriction of unit tests
* les: update unit tests
* les, light: slim the unit tests
2019-11-06 22:09:37 +01:00
gary rong
2ed729d38e
les: handler separation ( #19639 )
...
les: handler separation
2019-08-21 11:29:34 +02:00
Péter Szilágyi
38f6b85638
eth, les, light: enforce CHT checkpoints on fast-sync too
2019-04-17 13:16:15 +03:00
Zsolt Felfoldi
64f9c1ea09
les, light: remove support for les/1 4096 block CHT sections
2019-04-08 13:17:24 +02:00
Péter Szilágyi
ccffad5553
light, params: update CHTs, integrate CHT for Goerli too
2019-04-02 11:47:01 +03:00
Péter Szilágyi
054412e335
all: clean up and proerly abstract database access
2019-03-06 13:35:03 +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
gary rong
c5d34fc94e
les, light: reduce les testing stress ( #17867 )
2018-10-08 16:52:23 +03:00
Péter Szilágyi
af89093116
les, light, params: update light client CHTs
2018-09-20 14:14:48 +03:00
gary rong
b69476b372
all: make indexer configurable ( #17188 )
2018-08-28 10:08:16 +03:00
Péter Szilágyi
9f036647e4
consensus/clique, light: light client snapshots on Rinkeby
2018-08-21 15:21:59 +03:00
Felföldi Zsolt
1de9ada401
light: new CHTs ( #17448 )
2018-08-20 16:49:28 +03:00
Felföldi Zsolt
2cdf6ee7e0
light: CHT and bloom trie indexers working in light mode ( #16534 )
...
This PR enables the indexers to work in light client mode by
downloading a part of these tries (the Merkle proofs of the last
values of the last known section) in order to be able to add new
values and recalculate subsequent hashes. It also adds CHT data to
NodeInfo.
2018-08-15 22:25:46 +02:00
Felföldi Zsolt
f524ec4326
light: new CHTs ( #17124 )
2018-07-04 12:41:17 +03:00
Felföldi Zsolt
2977538ac0
light: new CHTs for mainnet and ropsten ( #16926 )
2018-06-11 10:38:05 +03:00
Felföldi Zsolt
595b47e535
light: new CHT for mainnet and ropsten ( #16736 )
2018-05-14 12:23:58 +03:00
Péter Szilágyi
6cf0ab38bd
core/rawdb: separate raw database access to own package ( #16666 )
2018-05-07 14:35:06 +03:00
Felföldi Zsolt
92c6d13083
light: new CHTs ( #16515 )
2018-04-17 09:33:31 +03:00
Felföldi Zsolt
45bd4fedde
light: new CHT for ropsten ( #16393 )
2018-03-27 10:09:15 +03:00
Felix Lange
89cc604a50
light: new mainnet CHT ( #16390 )
2018-03-26 18:02:12 +03:00
Felföldi Zsolt
5ad7b9123c
light: new CHTs ( #16233 )
2018-03-03 00:52:54 +01:00
Felix Lange
a5c0bbb4f4
all: update license information ( #16089 )
2018-02-14 13:49:11 +01:00
Felföldi Zsolt
8d32c4b990
light: new CHTs ( #16074 )
2018-02-12 18:03:17 +02:00
Péter Szilágyi
7a0019c63b
les, light: fix CHT trie retrievals ( #16039 )
...
* les, light: fix CHT trie retrievals
* les, light: minor polishes, test remote CHT retrievals
* les, light: deterministic nodeset rlp, bloombits test skeleton
* les: add an event emission to the les bloombits test
* les: drop dead tester code
2018-02-11 14:57:46 +02:00
Péter Szilágyi
eb07dbb079
eth, light: minor light client startup cleanups
2018-02-08 07:49:23 +02:00
Péter Szilágyi
55599ee95d
core, trie: intermediate mempool between trie and database ( #15857 )
...
This commit reduces database I/O by not writing every state trie to disk.
2018-02-05 17:40:32 +01:00
Felföldi Zsolt
ec96216d16
Chain indexer fix + new CHT ( #15934 )
...
* core, light: fix chain indexer bug
* light: add new CHT
2018-01-23 13:10:49 +02:00
Felföldi Zsolt
ca376ead88
les, light: LES/2 protocol version ( #14970 )
...
This PR implements the new LES protocol version extensions:
* new and more efficient Merkle proofs reply format (when replying to
a multiple Merkle proofs request, we just send a single set of trie
nodes containing all necessary nodes)
* BBT (BloomBitsTrie) works similarly to the existing CHT and contains
the bloombits search data to speed up log searches
* GetTxStatusMsg returns the inclusion position or the
pending/queued/unknown state of a transaction referenced by hash
* an optional signature of new block data (number/hash/td) can be
included in AnnounceMsg to provide an option for "very light
clients" (mobile/embedded devices) to skip expensive Ethash check
and accept multiple signatures of somewhat trusted servers (still a
lot better than trusting a single server completely and retrieving
everything through RPC). The new client mode is not implemented in
this PR, just the protocol extension.
2017-10-24 15:19:09 +02:00