Thomas Gazagnaire
Thomas Gazagnaire
The new GC feature needs to be documented in the CHANGELOG - and maybe with extra specs/documents added to the repo. There are various tradeoffs that need to be highlighted....
Running the `lib_context` benchmarks on the trace with the first 2 months of hanghzou (so what we use for the release benchmarks). The Gc is called every cycle (8100 blocks),...
The awkward order is not necessary anymore since irmin 1.4 and no such order exists in the wild.
We should probably re-expose a synchronous GC in the API (that doesn't fork) to integrate with the `--single-process` mode of the Tezos node.
This should not be exposed as a configuration option - this doesn't exist in other data-model (and I'm not sure how users could make an informed choice here). Instead, we...
Would be great to review resource management in case of errors (for instance, some file descriptors might not be properly closed in a few places). More generally, in some place...
`Io_legacy` is used by irmin-pack to manage "atomic-write" stores that store branches. This is not used in production by Tezos so should be easy to refactor at one point. This...
An idea would be to create a `Pack_prefix` and `Pack_suffix` module with abstract offset type and make sure we never mix those by mistake. This is a rather low priority.
These functions check whether the node/contents are available in memory or not (ie. if calling a function on those could incur IO costs).
See https://github.com/mirage/irmin/pull/1665#discussion_r766547135