Files
serai/common/db
Luke Parker ce3b90541e Make transactions undroppable
coordinator/cosign/src/delay.rs literally demonstrates how we'd need to rewrite
our handling of transactions with this change. It can be cleaned up a bit but
already identifies ergonomic issues. It also doesn't model passing an &mut txn
to an async function, which would also require using the droppable wrapper
struct.

To locally see this build, run

RUSTFLAGS="-Zpanic_abort_tests -C panic=abort" cargo +nightly build -p serai-cosign --all-targets

To locally see this fail to build, run

cargo build -p serai-cosign --all-targets

While it doesn't say which line causes it fail to build, the only distinction
is panic=unwind.

For more context, please see #578.
2025-01-15 03:56:59 -05:00
..
2025-01-15 03:56:59 -05:00

Serai DB

An inefficient, minimal abstraction around databases.

The abstraction offers get, put, and del with helper functions and macros built on top. Database iteration is not offered, forcing the caller to manually implement indexing schemes. This ensures wide compatibility across abstracted databases.