[go: up one dir, main page]

Skip to content

reftable/writer: ensure valid range for log's update_index

Each reftable addition has an associated update_index. While writing refs, the update_index is verified to be within the range of the reftable writer, i.e. writer.min_update_index < ref.update_index and writer.max_update_index > ref.update_index.

The corresponding check for reflogs in reftable_writer_add_log is however missing. Add a similar check, but only check for the upper limit. This is because reflogs are treated a bit differently than refs. Each reflog entry in reftable has an associated update_index and we also allow expiring entries in the middle, which is done by simply writing a new reflog entry with the same update_index. This means, writing reflog entries with update_index lesser than the writer's update_index is an expected scenario.

Add a new unit test to check for the limits and fix some of the existing tests, which were setting arbitrary values for the update_index by ensuring they stay within the now checked limits.

Closes #424 (closed)

Edited by Karthik Nayak

Merge request reports

Loading