Skip to content

Commit

Permalink
docs: fix broken link in review.md (#10480)
Browse files Browse the repository at this point in the history
  • Loading branch information
nkysg authored Aug 24, 2024
1 parent adf7fb2 commit 8df9efd
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 2 deletions.
2 changes: 1 addition & 1 deletion docs/design/database.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
- We implemented that trait for the following encoding formats:
- [Ethereum-specific Compact Encoding](https://github.com/paradigmxyz/reth/blob/0d9b9a392d4196793736522f3fc2ac804991b45d/crates/codecs/derive/src/compact/mod.rs): A lot of Ethereum datatypes have unnecessary zeros when serialized, or optional (e.g. on empty hashes) which would be nice not to pay in storage costs.
- [Erigon](https://github.com/ledgerwatch/erigon/blob/12ee33a492f5d240458822d052820d9998653a63/docs/programmers_guide/db_walkthrough.MD) achieves that by having a `bitfield` set on Table "PlainState which adds a bitfield to Accounts.
- Akula expanded it for other tables and datatypes manually. It also saved some more space by storing the length of certain types (U256, u64) using the [`modular_bitfield`](https://docs.rs/modular-bitfield/latest/modular_bitfield/) crate, which compacts this information.
- [Akula](https://github.com/akula-bft/akula/) expanded it for other tables and datatypes manually. It also saved some more space by storing the length of certain types (U256, u64) using the [`modular_bitfield`](https://docs.rs/modular-bitfield/latest/modular_bitfield/) crate, which compacts this information.
- We generalized it for all types, by writing a derive macro that autogenerates code for implementing the trait. It, also generates the interfaces required for fuzzing using ToB/test-fuzz:
- [Scale Encoding](https://github.com/paritytech/parity-scale-codec)
- [Postcard Encoding](https://github.com/jamesmunns/postcard)
Expand Down
1 change: 0 additions & 1 deletion docs/design/review.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ This document contains some of our research in how other codebases designed vari
## Database

* [Erigon's DB walkthrough](https://github.com/ledgerwatch/erigon/blob/12ee33a492f5d240458822d052820d9998653a63/docs/programmers_guide/db_walkthrough.MD) contains an overview. They made the most noticeable improvements on storage reduction.
* [Erigon Videos](https://youtu.be/QqL72qWhF-g) explain new proposals in improving in future versions and take some insights from it. (example: CumulativeTxCount, EliasFano)
* [Gio's erigon-db table macros](https://github.com/gio256/erigon-db) + [Akula's macros](https://github.com/akula-bft/akula/blob/74b172ee1d2d2a4f04ce057b5a76679c1b83df9c/src/kv/tables.rs#L61).

## Header Downloaders
Expand Down

0 comments on commit 8df9efd

Please sign in to comment.