This is a huge change, which includes some changes to replace code that
originally cloned to reuse allocations instead. The updated
`elastic-array` crate renames its consuming `Vec`-conversion method to
`into_vec`, which means that I can do a simple
`sed -i 's/to_vec/into_vec/'` and then fix the compilation errors.
This commit is probably a minor performance win and definitely a
significant readability win.
* Create new column family for local node info
* remove DBTransaction::new reliance on DB
* KeyValueDB trait
* InMemory KeyValueDB implementation
* journaldb generic over KVDB
* make most of `ethcore` generic over KVDB
* fix json tests compilation
* get all tests compiling
* implement local store (just for transactions)
* finish local store API, test
* put everything into place
* better test for skipping bad transactions
* fix warning
* update local store every 15 minutes
* remove superfluous `{}`s
* bloom crate link
* database layout and outdated tests
* state db alterations
* v10 migration run
* using arc
* bloom migration
* migration fixes and mess
* fix tests
* Consolidation migration
* Started db amalgamation
* Using client constants for columns
* Adding with_columns constructor
* Migrating to single db
* Fixing tests.
* test.sh without verbose
* Fixing warnings
* add migration tests that catch the bug
* make multiple migrations more robust
* add moved v9
* Merge branch 'noop-migrations' into single-db
* spurious line
* clean up migrations ordering
* update comment [ci skip]
* Bumping default number of max_open_files & re-ordering columns.
* fix merge
* fix ignored analysis tests
* Caching best block content
* Faster best_block_header
* Adding progress to v8 migration
* clean up warnings
* Separate hashes and bodies in the DB
* Separate hashes and bodies in the DB
* Fixed tests
* add migration tests that catch the bug
* make multiple migrations more robust
* clean up migrations ordering
* update comment [ci skip]
* remove explicit iter
* Use tree index for DB
* Set uncles_hash, tx_root, receipts_root from verified block
* Use Filth instead of a bool
* Fix empty root check
* Flush block queue properly
* Expunge deref
* partially done alternate migration scheme
* finish altering migration framework
* migrate tests to new migration framework
* address comments
* remove superfluous newline
[ci skip]
* TempIdx -> TempIndex
[ci skip]
* modify account_db to work on address hash, not address
* add a database migration for new accountdb
* preserve first 96 bits of keys when combining
* handle metadata keys in migration and preserve first 96 bits
* fix comments and hash address instead of hash
* different migrations based on pruning
* migrations mutably borrow self
* batch abstraction for migration
* added missing licence headers
* overlay recent v7 migration
* better error handling, migrate version key as well
* fix migration tests
* commit final batch and migrate journaled insertions
* two passes on journal to migrate all possible deleted keys
* use bloomchain crate in blockchain module. remove obsole chainfilter submodule
* update database version to 6.0
* removed redundant line
* simple db migration
* make migration slightly more functional
* bloomchain migration
* migration version is just a single unsigned integer
* updated migration v6
* parity migration
* db migration
* removed hardcoded migration dir
* replace ptr::copy with clone_from_slice, removed potential endianess problem from trace/db.rs
* removed superfluous line
* blockchains log blooms config is not exposed any more