nimbus-eth1/nimbus/db/core_db
Jordan Hrycaj ea7c756a9d
Core db reorg (#2444)
* CoreDb: Merged all sub-descriptors into `base_desc` module

* Dissolve `aristo_db/common_desc.nim`

* No need to export `Aristo` methods in `CoreDb`

* Resolve/tighten methods in `aristo_db` sub-moduled

why:
  So they can be straihgt implemented into the `base` module

* Moved/re-implemented `KVT` methods into `base` module

* Moved/re-implemented `MPT` methods into `base` module

* Moved/re-implemented account methods into `base` module

* Moved/re-implemented `CTX` methods into `base` module

* Moved/re-implemented `handler_{aristo,kvt}` into `aristo_db` module

* Moved/re-implemented `TX` methods into `base` module

* Moved/re-implemented base methods into `base` module

* Replaced `toAristoSavedStateBlockNumber()` by proper base method

why:
  Was the last for keeping reason for keeping low level backend access
  methods

* Remove dedicated low level access to `Aristo` backend

why:
  Not needed anymore, for debugging the descriptors can be accessed
  directly

also:
  some clean up stuff

* Re-factor `CoreDb` descriptor layout and adjust base methods

* Moved/re-implemented iterators into `base_iterator*` modules

* Update docu
2024-07-03 15:50:27 +00:00
..
backend Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
base Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
README.md Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
TODO.md Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
base.nim Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
base_iterators.nim Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
base_iterators_persistent.nim Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
core_apps.nim Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
memory_only.nim Core db reorg (#2444) 2024-07-03 15:50:27 +00:00
persistent.nim Coeredb related clean up and maint fixes (#2360) 2024-06-14 11:19:48 +00:00

README.md

Core database

Layout of CoreDb descriptor objects

Objects dependence:

    CoreDbRef                           -- Base descriptor
     | | |
     | | +--- CoreDbCtxRef              -- Context descriptor
     | |       | | | |
     | |       | | | +--- CoreDbKvtRef  -- Key-value table
     | |       | | |
     | |       | | +----- CoreDbMptRef  -- Generic MPT
     | |       | |
     | |       | +------- CoreDbAccRef  -- Accounts database
     | |       |
	 | |       +--------- CoreDbTxRef   -- Transaction handle
     | |
     | +----- CoreDbCtxRef
     |         : : : :
     |
     +------- CoreDbCtxRef
               : : : :