nimbus-eth1/nimbus/db/kvt
Jordan Hrycaj 6bc55d4e6f
Core db aristo and kvt updates preparing for integration (#1760)
* Kvt: Implemented multi-descriptor access on the same backend

why:
  This behaviour mirrors the one of Aristo and can be used for
  simultaneous transactions on Aristo + Kvt

* Kvt: Update database iterators

why:
  Forgot to run on the top layer first

* Kvt: Misc fixes

* Aristo, use `openArray[byte]` rather than `Blob` in prototype

* Aristo, by default hashify right after cloning descriptor

why:
  Typically, a completed descriptor is expected after cloning. Hashing
  can be suppressed by argument flag.

* Aristo provides `replicate()` iterator, similar to legacy `replicate()`

* Aristo API fixes and updates

* CoreDB: Rename `legacy_persistent` => `legacy_rocksdb`

why:
  More systematic, will be in line with Aristo DB which might have
  more than one persistent backends

* CoreDB: Prettify API sources

why:
  Better to read and maintain

details:
  Annotating with custom pragmas which cleans up the prototypes

* CoreDB: Update MPT/put() prototype allowing `CatchableError`

why:
  Will be needed for Aristo API (legacy is OK with `RlpError`)
2023-09-18 21:20:28 +01:00
..
kvt_desc Core db aristo and kvt updates preparing for integration (#1760) 2023-09-18 21:20:28 +01:00
kvt_init Core db aristo and kvt updates preparing for integration (#1760) 2023-09-18 21:20:28 +01:00
kvt_walk Core db aristo and kvt updates preparing for integration (#1760) 2023-09-18 21:20:28 +01:00
kvt_constants.nim Simple stupid key-value table companion for Aristo DB (#1746) 2023-09-12 19:44:45 +01:00
kvt_desc.nim Core db aristo and kvt updates preparing for integration (#1760) 2023-09-18 21:20:28 +01:00
kvt_init.nim Simple stupid key-value table companion for Aristo DB (#1746) 2023-09-12 19:44:45 +01:00
kvt_persistent.nim Simple stupid key-value table companion for Aristo DB (#1746) 2023-09-12 19:44:45 +01:00
kvt_tx.nim Core db aristo and kvt updates preparing for integration (#1760) 2023-09-18 21:20:28 +01:00
kvt_utils.nim Aristo db api extensions for use as core db backend (#1754) 2023-09-15 16:23:53 +01:00
kvt_walk.nim Simple stupid key-value table companion for Aristo DB (#1746) 2023-09-12 19:44:45 +01:00