From: Junio C Hamano <gitster@pobox.com>
To: Patrick Steinhardt <ps@pks.im>
Cc: Justin Tobler <jltobler@gmail.com>,
git@vger.kernel.org, Taylor Blau <me@ttaylorr.com>
Subject: Re: What's cooking in git.git (May 2025, #07; Fri, 23)
Date: Fri, 30 May 2025 09:28:13 -0700 [thread overview]
Message-ID: <xmqqwm9yf4gy.fsf@gitster.g> (raw)
In-Reply-To: <aDl-yd2fh4qVRB_V@pks.im> (Patrick Steinhardt's message of "Fri, 30 May 2025 11:47:53 +0200")
Patrick Steinhardt <ps@pks.im> writes:
> Yeah, I understand that confusion indeed. I don't think that the other
> proposals we've got are a lot better, either:
>
> - `odb_backend` was shot down because it may cause the association
> that one object database has one backend. But backends are per
> alternate, so there's a mismatch in expectations.
I do not see where that association would come from, though. But I
agree with the other objection that the word "backend" is more about
implementation and less about an instance that is realized by that
implementation, i.e. two such components that runs the code for a
single backend may be part of a single object database.
> - `odb_source` is better, but we now have the problem that we use
> "alternate" interchangably in most cases where we also use
> `odb_source`. This will likely lead to somewhat awkward interfaces.
>
> The problem with `odb_source` might eventually go away once we clearly
> distinguish the "alternates" concept from the low-level mechanism to
> access objects. But I'm just not certain at all whether it won't cause
> more confusion when in most cases "alternates" and "sources" can be used
> somewhat interchangably.
>
> I dunno. The more I think about this the more I start to like the
> `odb_source` name.
Yeah, I do not mind calling the instantiation backed by a backend
implementation a odb_source.
In any case, when deciding the terminology, we should look at what
we currently have in the glossary and imagine how they should look
like in the updated world. Currently,
- "alternate object database" is described as inheriting the
entirety of another "object database" (we deliberately do not say
that this other object database belongs to another repository, as
a standalone object database is a valid option).
- "object database" is described as what holds a set of "objects".
There is no complication here ;-)
When treating the set of objects stored in $GIT_DIR/objects/??/
directories (i.e. "loose objects") and the set of objects stored in
$GIT_DIR/objects/pack/ directory (i.e. "packed objects") as two
separate odb_something, with a vision that we may add different
implementations of such collection later, it would be very confusing
to call each of them "an alternate". "source" may not be ideal, but
it is the best among what we collectively have come up with, I think.
next prev parent reply other threads:[~2025-05-30 16:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-24 2:16 What's cooking in git.git (May 2025, #07; Fri, 23) Junio C Hamano
2025-05-27 8:15 ` Patrick Steinhardt
2025-05-27 16:50 ` Junio C Hamano
2025-05-27 19:45 ` Justin Tobler
2025-05-30 9:47 ` Patrick Steinhardt
2025-05-30 16:28 ` Junio C Hamano [this message]
2025-06-02 6:42 ` Patrick Steinhardt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqwm9yf4gy.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=jltobler@gmail.com \
--cc=me@ttaylorr.com \
--cc=ps@pks.im \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).