- Feb 23, 2021
-
-
Martin Holst Swende authored
This PR introduces: - db.put to put a value into the database - db.get to read a value from the database - db.delete to delete a value from the database - db.stats to check compaction info from the database - db.compact to trigger a db compaction It also moves inspectdb to db.inspect.
-
- May 26, 2020
-
-
ucwong authored
-
- Apr 15, 2020
-
-
Martin Holst Swende authored
* core/state/snapshot: start fixing disk iterator seek * ethdb, rawdb, leveldb, memorydb: implement iterators with prefix and start * les, core/state/snapshot: iterator fixes * all: remove two iterator methods * all: rename Iteratee.NewIteratorWith -> NewIterator * ethdb: fix review concerns
-
- Sep 26, 2019
-
-
Gary Rong authored
* vendor: update leveldb * ethdb/leveldb: disable seek compaction and add metrics * vendor: udpate latest levledb * ethdb/leveldb: fix typo
-
- Aug 22, 2019
-
-
Andrey Petrov authored
- Move the existing tests from memorydb into a generalized testsuite that can be run by any ethdb backend implementation. - Add several more test cases to clarify some non-obvious nuances when implementing a custom ethdb backend, such as the behaviour of NewIteratorWithPrefix vs NewIteratorWithStart. - Add leveldb to the testsuite using in-memory storage for fast execution.
-
- Aug 01, 2019
-
-
Péter Szilágyi authored
* ethdb/memorydb: allow noop compact on memdb * ethdb/memorydb: fix comment type
-
- Jul 22, 2019
-
-
Péter Szilágyi authored
-
- Jun 11, 2019
-
-
Péter Szilágyi authored
-
- May 16, 2019
-
-
Gary Rong authored
* core, eth: some fixes for freezer * vendor, core/rawdb, cmd/geth: add db inspector * core, cmd/utils: check ancient store path forceily * cmd/geth, common, core/rawdb: a few fixes * cmd/geth: support windows file rename and fix rename error * core: support ancient plugin * core, cmd: streaming file copy * cmd, consensus, core, tests: keep genesis in leveldb * core: write txlookup during ancient init * core: bump database version
-
Gary Rong authored
* all: freezer style syncing core, eth, les, light: clean up freezer relative APIs core, eth, les, trie, ethdb, light: clean a bit core, eth, les, light: add unit tests core, light: rewrite setHead function core, eth: fix downloader unit tests core: add receipt chain insertion test core: use constant instead of hardcoding table name core: fix rollback core: fix setHead core/rawdb: remove canonical block first and then iterate side chain core/rawdb, ethdb: add hasAncient interface eth/downloader: calculate ancient limit via cht first core, eth, ethdb: lots of fixes * eth/downloader: print ancient disable log only for fast sync
-
Gary Rong authored
-
Péter Szilágyi authored
-
- May 13, 2019
-
-
Péter Szilágyi authored
* core, eth, trie: bloom filter for trie node dedup during fast sync * eth/downloader, trie: address review comments * core, ethdb, trie: restart fast-sync bloom construction now and again * eth/downloader: initialize fast sync bloom on startup * eth: reenable eth/62 until we properly remove it
-
- Mar 26, 2019
-
-
Martin Holst Swende authored
This PR is a more advanced form of the dirty-to-clean cacher (#18995), where we reuse previous database write batches as datasets to uncache, saving a dirty-trie-iteration and a dirty-trie-rlp-reencoding per block.
-
- Mar 12, 2019
-
-
Péter Szilágyi authored
-
- Mar 06, 2019
-
-
Péter Szilágyi authored
-
- Feb 07, 2019
-
-
Péter Szilágyi authored
-
- Oct 15, 2018
-
-
Dmitrij Koniajev authored
The changes allow building WebAssembly applications which use ethclient.Client.
-
- Sep 17, 2018
-
-
Gary Rong authored
-
- Jul 18, 2018
-
-
Gary Rong authored
* ethdb: fix memory database * core: fix bloombits checking * core: minor polish
-
- Jul 12, 2018
-
-
Gary Rong authored
* vendor: update leveldb * ethdb: remove useless warning log
-
- Jul 02, 2018
-
-
Gary Rong authored
-
- Jun 11, 2018
-
-
Gary Rong authored
* ethdb: gratefullly handle quit channel * ethdb: minor polish
-
- May 22, 2018
-
-
Gary Rong authored
* vendor: update leveldb package * ethdb: print warning log if db is performing compaction * ethdb: update annotation and log
-
- May 09, 2018
-
-
Gary Rong authored
* all: get rid of error when create mdb * core: clean up variables definition * all: inline mdb definition
-
- Apr 16, 2018
-
-
Gary Rong authored
-
- Apr 09, 2018
-
-
Felix Lange authored
-
- Mar 26, 2018
-
-
Péter Szilágyi authored
-
Gary Rong authored
-
- Mar 08, 2018
-
-
Kurkó Mihály authored
* cmd, dashboard, ethdb, vendor: send iostats to dashboard * ethdb: change names * ethdb: handle parsing errors * ethdb: handle iostats syntax error * ethdb: r -> w
-
- Feb 23, 2018
-
-
Anton Evangelatov authored
* go-metrics: fork library and introduce ResettingTimer and InfluxDB reporter. * vendor: change nonsense/go-metrics to ethersphere/go-metrics * go-metrics: add tests. move ResettingTimer logic from reporter to type. * all, metrics: pull in metrics package in go-ethereum * metrics/test: make sure metrics are enabled for tests * metrics: apply gosimple rules * metrics/exp, internal/debug: init expvar endpoint when starting pprof server * internal/debug: tiny comment formatting fix
-
- Jan 30, 2018
-
-
Péter Szilágyi authored
-
Martin Holst Swende authored
* leveldb: Update leveldb to 211f780 (poolfix) * core, ethdb: reuse database batches
-
- Dec 21, 2017
-
-
Péter Szilágyi authored
* cmd, core, eth/tracers: support fancier js tracing * eth, internal/web3ext: rework trace API, concurrency, chain tracing * eth/tracers: add three more JavaScript tracers * eth/tracers, vendor: swap ottovm to duktape for tracing * core, eth, internal: finalize call tracer and needed extras * eth, tests: prestate tracer, call test suite, rewinding * vendor: fix windows builds for tracer js engine * vendor: temporary duktape fix * eth/tracers: fix up 4byte and evmdis tracer * vendor: pull in latest duktape with my upstream fixes * eth: fix some review comments * eth: rename rewind to reexec to make it more obvious * core/vm: terminate tracing using defers
-
- Sep 09, 2017
-
-
Felix Lange authored
* ethdb: add Putter interface and Has method * ethdb: improve docs and add IdealBatchSize * ethdb: remove memory batch lock Batches are not safe for concurrent use. * core: use ethdb.Putter for Write* functions This covers the easy cases. * core/state: simplify StateSync * trie: optimize local node check * ethdb: add ValueSize to Batch * core: optimize HasHeader check This avoids one random database read get the block number. For many uses of HasHeader, the expectation is that it's actually there. Using Has avoids a load + decode of the value. * core: write fast sync block data in batches Collect writes into batches up to the ideal size instead of issuing many small, concurrent writes. * eth/downloader: commit larger state batches Collect nodes into a batch up to the ideal size instead of committing whenever a node is received. * core: optimize HasBlock check This avoids a random database read to get the number. * core: use numberCache in HasHeader numberCache has higher capacity, increasing the odds of finding the header without a database lookup. * core: write imported block data using a batch Restore batch writes of state and add blocks, tx entries, receipts to the same batch. The change also simplifies the miner. This commit also removes posting of logs when a forked block is imported. * core: fix DB write error handling * ethdb: use RLock for Has * core: fix HasBlock comment
-
- Aug 11, 2017
-
-
Gary Rong authored
-
- Aug 08, 2017
-
-
Egon Elbre authored
* ethdb: add basic sanity test * ethdb: test MemDatabase * ethdb: add parallel tests
-
- Jun 20, 2017
-
-
Felix Lange authored
* ethdb: remove Set Set deadlocks immediately and isn't part of the Database interface. * trie: add Err to Iterator This is useful for testing because the underlying NodeIterator doesn't need to be kept in a separate variable just to get the error. * trie: add LeafKey to iterator, panic when not at leaf LeafKey is useful for callers that can't interpret Path. * trie: retry failed seek/peek in iterator Next Instead of failing iteration irrecoverably, make it so Next retries the pending seek or peek every time. Smaller changes in this commit make this easier to test: * The iterator previously returned from Next on encountering a hash node. This caused it to visit the same path twice. * Path returned nibbles with terminator symbol for valueNode attached to fullNode, but removed it for valueNode attached to shortNode. Now the terminator is always present. This makes Path unique to each node and simplifies Leaf. * trie: add Path to MissingNodeError The light client trie iterator needs to know the path of the node that's missing so it can retrieve a proof for it. NodeIterator.Path is not sufficient because it is updated when the node is resolved and actually visited by the iterator. Also remove unused fields. They were added a long time ago before we knew which fields would be needed for the light client.
-
- Mar 02, 2017
-
-
Péter Szilágyi authored
* accounts, cmd, eth, ethdb: port logs over to new system * ethdb: drop concept of cache distribution between dbs * eth: fix some log nitpicks to make them nicer
-
- Feb 23, 2017
-
-
Péter Szilágyi authored
-