git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: reftable [v7]: new ref storage format

From
Michael Haggerty <mhagger@alum.mit.edu>
Date
Aug 17, 2017, 08:06 UTC
Message-ID
<CAMy9T_GuU68mQTAvmPkaa6jPiNnoDAKCqA8y76rf3UrmMeyfTA@mail.gmail.com>
In-Reply-To
<xmqq60dnjka0.fsf@gitster.mtv.corp.google.com>
On Wed, Aug 16, 2017 at 11:05 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 5 quoted lines
> 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.

I think of `update_index` like a pseudo-time, and the `min_update_index` and `max_update_index` to be stating that "this reftable covers the time interval specified". So it's reasonable to say that the reftable files, together, should cover all time.

But it might be that there are values of `update_index` for which no events survived within a reftable file that covers that time interval. This can happen if reference update records have been compacted away because later reference updates overwrote their effects, and either

* reflogs were turned off for those updates, or
* the corresponding reflogs have been compacted into a separate file, or
* the corresponding reflog entries for those updates have been expired.
Michael
Previous: Junio C HamanoNext: Junio C Hamano
Message 5 of 7 in “Re: reftable [v7]: new ref storage format”
  1. Shawn PearceAug 16, 2017
  2. Stefan BellerAug 16, 2017
  3. Shawn PearceAug 16, 2017
  4. Junio C HamanoAug 16, 2017
  5. Michael HaggertyAug 17, 2017
  6. Junio C HamanoAug 17, 2017
  7. Shawn PearceAug 18, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.