Re: [PATCH 0/5] refs/reftable: add fsck checks
- From
shejialuo <shejialuo@gmail.com>
- Date
- Aug 26, 2025, 16:39 UTC
- Message-ID
- <aK3jNK82FILr2GuT@ArchLinux>
- In-Reply-To
- <20250819-228-reftable-introduce-consistency-checks-v1-0-8b8f6879fa9e@gmail.com>
On Tue, Aug 19, 2025 at 02:20:59PM +0200, Karthik Nayak wrote:
Show 25 quoted lines
> This series adds the required infrastructure and also some fsck checks
> for the reftable backend.
>
> Since the reftable backend is treated as a library within the Git
> codebase, we don't want to spillover our internal fsck implementation
> into the library. At the same time, the fsck checks need to access
> internal structures of the reftable library which aren't exposed outside
> the library.
>
> So we solve this by adding a 'reftable/fsck.[ch]' which implements and
> exposes a checker for the reftable library and returns specific errors
> as defined by the library. We then add glue code within
> 'refs/reftable-backend.c' to map these errors to errors which Git's fsck
> implementation would understand. This allows us to separate concerns.
>
> This series then adds some checks on the stack ('reftable/tables.list')
> level of reftable, namely:
> 1. The table name is as per the spec
> 2. The number of tables are consistent
> 3. The tables.list has a newline at the end of file
> 4. The table names follow correct index sequences
>
> I also plan to send in follow up series's which will implement further
> checks and go into deeper layers (tables, block, references).
> Thanks for your patches, it's very nice to see that we begin to implement the consistency checks for reftable backend. And I have left some comments.
Thanks, Jialuo