nimbus-eth1/nimbus/db/aristo/aristo_init
Jordan Hrycaj 09fabd04eb
Aristo db use filter betw backend and tx cache (#1678)
* Provide deep copy for each transaction layer

why:
  Localising changes. Selective deep copy was just overlooked.

* Generalise vertex ID generator state reorg function `vidReorg()`

why:
  makes it somewhat easier to handle when saving layers.

* Provide dummy back end descriptor `NoneBackendRef`

* Optional read-only filter between backend and transaction cache

why:
  Some staging area for accumulating changes to the backend DB. This
  will eventually be an access layer for emulating a backend with
  multiple/historic state roots.

* Re-factor `persistent()` with filter between backend/tx-cache => `stow()`

why:
  The filter provides an abstraction from the physically stored data on
  disk. So, there can be several MPT instances using the same disk data
  with different state roots. Of course, all the MPT instances should
  not differ too much for practical reasons :).

TODO:
  Filter administration tools need to be provided.
2023-08-10 21:01:28 +01:00
..
aristo_rocksdb Aristo db update foreground caching (#1605) 2023-06-22 12:13:24 +01:00
aristo_init_common.nim Aristo db update delete functionality (#1621) 2023-06-30 23:22:33 +01:00
aristo_memory.nim Aristo db use filter betw backend and tx cache (#1678) 2023-08-10 21:01:28 +01:00
aristo_rocksdb.nim Aristo db update delete functionality (#1621) 2023-06-30 23:22:33 +01:00
memory_only.nim Aristo db use filter betw backend and tx cache (#1678) 2023-08-10 21:01:28 +01:00
persistent.nim Aristo db use filter betw backend and tx cache (#1678) 2023-08-10 21:01:28 +01:00