nimbus-eth1/nimbus
Jordan Hrycaj 221e6c9e2f
Unified database frontend integration (#1670)
* Nimbus folder environment update

details:
* Integrated `CoreDbRef` for the sources in the `nimbus` sub-folder.
* The `nimbus` program does not compile yet as it needs the updates
  in the parallel `stateless` sub-folder.

* Stateless environment update

details:
* Integrated `CoreDbRef` for the sources in the `stateless` sub-folder.
* The `nimbus` program compiles now.

* Premix environment update

details:
* Integrated `CoreDbRef` for the sources in the `premix` sub-folder.

* Fluffy environment update

details:
* Integrated `CoreDbRef` for the sources in the `fluffy` sub-folder.

* Tools environment update

details:
* Integrated `CoreDbRef` for the sources in the `tools` sub-folder.

* Nodocker environment update

details:
* Integrated `CoreDbRef` for the sources in the
  `hive_integration/nodocker` sub-folder.

* Tests environment update

details:
* Integrated `CoreDbRef` for the sources in the `tests` sub-folder.
* The unit tests compile and run cleanly now.

* Generalise `CoreDbRef` to any `select_backend` supported database

why:
  Generalisation was just missed due to overcoming some compiler oddity
  which was tied to rocksdb for testing.

* Suppress compiler warning for `newChainDB()`

why:
  Warning was added to this function which must be wrapped so that
  any `CatchableError` is re-raised as `Defect`.

* Split off persistent `CoreDbRef` constructor into separate file

why:
  This allows to compile a memory only database version without linking
  the backend library.

* Use memory `CoreDbRef` database by default

detail:
 Persistent DB constructor needs to import `db/core_db/persistent

why:
 Most tests use memory DB anyway. This avoids linking `-lrocksdb` or
 any other backend by default.

* fix `toLegacyBackend()` availability check

why:
  got garbled after memory/persistent split.

* Clarify raw access to MPT for snap sync handler

why:
  Logically, `kvt` is not the raw access for the hexary trie (although
  this holds for the legacy database)
2023-08-04 12:10:09 +01:00
..
common Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
core Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
db Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
evm Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
graphql Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
rpc Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
sync Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
transaction Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
utils Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
common.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
config.nim Add cli option for providing bootstrap and static peers by ENR (#1634) 2023-07-07 09:47:26 +02:00
constants.nim fix blob tx limit 2023-07-20 20:20:41 +07:00
errors.nim fix EIP-3860 bugs 2023-01-13 13:04:23 +07:00
launcher.nim Premix-related changes 2019-01-28 12:38:23 +02:00
lightchain_shell.nim Some renames 2018-05-28 13:22:28 +03:00
makefile Snap sync fix trie interpolation fringe condition (#1457) 2023-02-01 18:56:06 +00:00
nim.cfg NAT port mapping 2019-04-17 03:56:28 +02:00
nimbus.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
rpc.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
stateless_runner.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
tracer.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
transaction.nim fix blob tx limit 2023-07-20 20:20:41 +07:00
version.nim dist: precompiled binaries and Docker images (#1015) 2022-03-27 13:21:15 +02:00
vm_compile_info.nim Prepare snap server client test scenario (#1483) 2023-03-02 09:57:58 +00:00
vm_computation.nim refactor touched accounts, selfdestruct, and log 2023-03-21 08:14:06 +07:00
vm_gas_costs.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_internals.nim Revert "Some work on speculative execution (#1552)" (#1561) 2023-04-24 16:59:38 -04:00
vm_precompiles.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_state.nim Implement plugable EVM tracer 2023-08-03 16:45:39 +07:00
vm_state_transactions.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_types.nim Implement plugable EVM tracer 2023-08-03 16:45:39 +07:00