Shawn Pearce <spea...@spearce.org> writes:

> 7th iteration of the reftable storage format.
>
> You can read a rendered version of this here:
> https://googlers.googlesource.com/sop/jgit/+/reftable/Documentation/technical/reftable.md
>
> Changes from v6:
> - Blocks are variable sized, and alignment is optional.
> - ref index is required on variable sized multi-block files.
>
> - restart_count/offsets are again at the end of the block.
> - value_type = 0x3 is only for symbolic references.
> - "other" files cannot be stored in reftable.
>
> - object blocks are explicitly optional.
> - object blocks use position (offset in bytes), not block id.
> - removed complex log_chained format for log blocks
>
> - Layout uses log, ref file extensions
> - Described reader algorithm to obtain a snapshot

I read this version through pretending that I never read the
previous iterations, and it still made sense to me, which is a good
indication that the document is well self contained.  

I think I agree with all the simplication from v6.

I found it a slightly odd that we do not insist that update_indices
that appear in a single reftable file are consecutive, yet we
require that min_update_index of a reftable file must be one greater
than the max_update_index of a previous one.  That is not a new
issue in v7, though.

Thanks.

Reply via email to