Message ID | 05e8d1df2d9921426b803d71b22ba3dba188836c.1715336798.git.ps@pks.im (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | reftable: expose write options as config | expand |
Patrick Steinhardt <ps@pks.im> writes: > The restart interval can at most be `UINT16_MAX` as specified in the > technical documentation of the reftable format. Furthermore, it cannot > ever be negative. Regardless of that we use an `int` to track the > restart interval. > > Change the type to use an `uint16_t` instead. Not wrong per-se, but this one is more or less a Meh, as we know we do not work on 16-bit platforms anyway.
On Mon, May 13, 2024 at 03:42:37PM -0700, Junio C Hamano wrote: > Patrick Steinhardt <ps@pks.im> writes: > > > The restart interval can at most be `UINT16_MAX` as specified in the > > technical documentation of the reftable format. Furthermore, it cannot > > ever be negative. Regardless of that we use an `int` to track the > > restart interval. > > > > Change the type to use an `uint16_t` instead. > > Not wrong per-se, but this one is more or less a Meh, as we know we > do not work on 16-bit platforms anyway. Yeah, my intent isn't really "platform portability". It's rather that I think that an `uint16_t` documents the accepted range of values much better than `int` does. Patrick
diff --git a/reftable/block.h b/reftable/block.h index ea4384a7e2..cd5577105d 100644 --- a/reftable/block.h +++ b/reftable/block.h @@ -25,7 +25,7 @@ struct block_writer { uint32_t header_off; /* How often to restart keys. */ - int restart_interval; + uint16_t restart_interval; int hash_size; /* Offset of next uint8_t to write. */ diff --git a/reftable/reftable-writer.h b/reftable/reftable-writer.h index 44cb986465..4cd8ebe6c7 100644 --- a/reftable/reftable-writer.h +++ b/reftable/reftable-writer.h @@ -28,7 +28,7 @@ struct reftable_write_options { unsigned skip_index_objects : 1; /* how often to write complete keys in each block. */ - int restart_interval; + uint16_t restart_interval; /* 4-byte identifier ("sha1", "s256") of the hash. * Defaults to SHA1 if unset
The restart interval can at most be `UINT16_MAX` as specified in the technical documentation of the reftable format. Furthermore, it cannot ever be negative. Regardless of that we use an `int` to track the restart interval. Change the type to use an `uint16_t` instead. Signed-off-by: Patrick Steinhardt <ps@pks.im> --- reftable/block.h | 2 +- reftable/reftable-writer.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)