nimbus-eth1/nimbus/db
Jordan Hrycaj 3936d4d0ad
Aristo db fixes n updates needed for filter fifo (#1728)
* Set scheduler state as part of the backend descriptor

details:
  Moved type definitions `QidLayoutRef` and `QidSchedRef` to
 `desc_structural.nim` so that it shares the same folder as
  `desc_backend.nim`

* Automatic filter queue table initialisation in backend

details:
  Scheduler can be tweaked or completely disabled

* Updated backend unit tests

details:
+ some code clean up/beautification, reads better now
+ disabled persistent filters so that there is no automated filter
   management which will be implemented next

* Prettify/update unit tests source code

details:
  Mostly replacing the `check()` paradigm by `xCheck()`

* Somewhat simplified backend type management

why:
  Backend objects are labelled with a `BackendType` symbol where the
  `BackendVoid` label is implicitly assumed for a `nil` backend object
  reference.

  To make it easier, a `kind()` function is used now applicable to
  `nil` references as well.

* Fix DB storage layout for filter objects

why:
  Need to store the filter ID with the object

* Implement reverse [] index on fifo

why:
  An integer index argument on `[]` retrieves the QueueID (label) of the
  fifo item while a QueueID argument on `[]` retrieves the index (so
  it is inverse to the former variant).

* Provide iterator over filters as fifo

why:
  This iterator goes along the cascased fifo structure (i.e. in
  historical order)
2023-09-05 14:57:20 +01:00
..
aristo Aristo db fixes n updates needed for filter fifo (#1728) 2023-09-05 14:57:20 +01:00
core_db Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
notused Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
access_list.nim implement EIP-1153: Transient storage 2023-06-23 14:04:36 +07:00
accounts_cache.nim Implement EIP-4788: Beacon block root in the EVM (#1722) 2023-08-30 23:29:48 +07:00
aristo.nim Aristo db implement filter storage scheduler (#1713) 2023-08-25 23:53:59 +01:00
core_db.nim Aristo db refactor tx paradim (#1674) 2023-08-07 18:45:23 +01:00
distinct_tries.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
geth_db.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
incomplete_db.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
kvstore_rocksdb.nim Silence compiler gossip after nim upgrade cont1 (#1455) 2023-01-31 01:32:17 +00:00
select_backend.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
state_db.nim Unified database frontend integration (#1670) 2023-08-04 12:10:09 +01:00
storage_types.nim implement EIP-1153: Transient storage 2023-06-23 14:04:36 +07:00
transient_storage.nim implement EIP-1153: Transient storage 2023-06-23 14:04:36 +07:00
values_from_bytes.nim More work on stateless mode (#1535) 2023-04-12 08:39:11 -04:00