Thread (3 messages) 3 messages, 3 authors, 2025-05-30

Re: What's cooking in git.git (May 2025, #07; Fri, 23)

From: Justin Tobler <hidden>
Date: 2025-05-27 19:50:30

On 25/05/27 09:50AM, Junio C Hamano wrote:
Patrick Steinhardt [off-list ref] writes:
quoted
I think the only outstanding discussion is whether to name things
`odb_alternate` or `odb_source` [1]. In case others agree that
`odb_source` is a better name I'm happy to revise, but if not I'd rather
keep it as-is.
The model in which the term "alternates" was born is "A repository
has its own object directory, the primary one, and in addition it
can borrow from zero or more alternate object directories that are
used by other repositories".  The presence of the primary makes the
word "alternate" meaningful.

Is the model now "A repository has one object store, which consists
of one or more X, all of which are equals"?  If there is no primary
that is more special than others, then calling X an "alternate" may
indeed sound funny, although (1) I do not find it terribly confusing
and (2) I do not find "source" much better, either.
My understanding is that the object store still has a primary X and zero
or more alternative X. The idea is that eventually, with pluggable ODBs,
X can be a different backend/provider instead of just being "files". If
this is the case, calling X an "alternate" would mean we have a primary
"alternate" and potentially a set of "alternate" alternates.

This sounds a bit odd and doesn't quite match what I would intuitively
expect. But, I also don't find it super confusing either.
The names we use to call the collection and the underlying
implementations of the collection in the reference world
unfortunately does not quite help to guide us, as we do not take two
implementations and compose into one unified view, which is what we
are doing in the object store.  Hmmm...
Similar to references, I still think of a pluggable ODB as a "backend".
The main difference being that with references there is only a single
backend active ("file" or "reftables") at a time, while for the object
store there could be multiple.

-Justin
We call pathspec elements given on the command line collectively a
pathspec.  "Object store elements like loose object directories and
packfiles form the object store"?  That may be a mouthful.  I dunno.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help