All of lore.kernel.org
 help / color / mirror / Atom feed
From: Patrick Steinhardt <ps@pks.im>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 3/5] setup: defer object database creation
Date: Tue, 4 Aug 2026 09:21:47 +0200	[thread overview]
Message-ID: <anGTC81J4q76fUr1@pks.im> (raw)
In-Reply-To: <xmqq5x246x35.fsf@gitster.g>

On Fri, Jul 24, 2026 at 11:50:38AM -0700, Junio C Hamano wrote:
> Patrick Steinhardt <ps@pks.im> writes:
> > diff --git a/setup.c b/setup.c
> > index 825572f5f1..a7b1b9eaef 100644
> > --- a/setup.c
> > +++ b/setup.c
> > @@ -2885,7 +2902,9 @@ int init_db(struct repository *repo,
> >  
> >  	if (!(flags & INIT_DB_SKIP_REFDB))
> >  		create_reference_database(repo, initial_branch, flags & INIT_DB_QUIET);
> > -	create_object_directory(repo);
> > +	create_object_database(repo);
> > +
> > +	startup_info->have_repository = 1;
> 
> Instead we call create_object_database() rather late, after we
> finish creating leading directories and default files and processing
> the configuration.  I guess this is a prelude to specifying "no, we
> are not doing the files backend but are using this new thing" in the
> global configuration?

Yes, exactly. Many of the refactorings I'm doing in "setup.c" ultimately
have the goal to detangle the setup and configuration of repository
extensions. It's been painful back when I introduced the "refStorage"
extension, and it's still painful now with the planned "objectStorage"
extension. So this time around I decided to detangle the logic before
introducing the extension to make the infra easier to understand going
forward.

Patrick

  reply	other threads:[~2026-08-04  7:21 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-24  3:48 [PATCH 0/5] odb: make creation of object database pluggable Patrick Steinhardt
2026-07-24  3:48 ` [PATCH 1/5] loose: load loose object map for the correct source Patrick Steinhardt
2026-07-24 17:26   ` Junio C Hamano
2026-07-28 20:14   ` Justin Tobler
2026-07-30 12:47     ` Toon Claes
2026-08-04  7:21       ` Patrick Steinhardt
2026-07-24  3:48 ` [PATCH 2/5] setup: detangle loading of loose object maps Patrick Steinhardt
2026-07-24 18:41   ` Junio C Hamano
2026-08-04  7:21     ` Patrick Steinhardt
2026-07-28 20:32   ` Justin Tobler
2026-07-30 14:27     ` Toon Claes
2026-08-04  7:21     ` Patrick Steinhardt
2026-07-24  3:48 ` [PATCH 3/5] setup: defer object database creation Patrick Steinhardt
2026-07-24 18:50   ` Junio C Hamano
2026-08-04  7:21     ` Patrick Steinhardt [this message]
2026-07-28 21:13   ` Justin Tobler
2026-08-04  7:21     ` Patrick Steinhardt
2026-08-04  7:28       ` Patrick Steinhardt
2026-07-24  3:48 ` [PATCH 4/5] odb/source: introduce function to map source type to name Patrick Steinhardt
2026-07-26 20:34   ` Junio C Hamano
2026-08-04  7:21     ` Patrick Steinhardt
2026-07-24  3:48 ` [PATCH 5/5] odb: make creation of on-disk structures pluggable Patrick Steinhardt
2026-07-26 20:42   ` Junio C Hamano
2026-08-04  7:21     ` Patrick Steinhardt
2026-07-28 21:23   ` Justin Tobler
2026-08-04  8:29 ` [PATCH v2 0/5] odb: make creation of object database pluggable Patrick Steinhardt
2026-08-04  8:29   ` [PATCH v2 1/5] loose: load loose object map for the correct source Patrick Steinhardt
2026-08-04  8:29   ` [PATCH v2 2/5] setup: detangle loading of loose object maps Patrick Steinhardt
2026-08-04  8:29   ` [PATCH v2 3/5] setup: defer object database creation Patrick Steinhardt
2026-08-04 18:48     ` Toon Claes
2026-08-05  7:27       ` Patrick Steinhardt
2026-08-04  8:29   ` [PATCH v2 4/5] odb/source: introduce function to map source type to name Patrick Steinhardt
2026-08-04  8:29   ` [PATCH v2 5/5] odb: make creation of on-disk structures pluggable Patrick Steinhardt
2026-08-04 16:36   ` [PATCH v2 0/5] odb: make creation of object database pluggable Justin Tobler
2026-08-05  9:28 ` [PATCH v3 0/6] " Patrick Steinhardt
2026-08-05  9:28   ` [PATCH v3 1/6] loose: load loose object map for the correct source Patrick Steinhardt
2026-08-05  9:28   ` [PATCH v3 2/6] setup: detangle loading of loose object maps Patrick Steinhardt
2026-08-05  9:28   ` [PATCH v3 3/6] setup: handle ODB-related environment variables in `odb_new()` Patrick Steinhardt
2026-08-05 13:29     ` Toon Claes
2026-08-06  6:04       ` Patrick Steinhardt
2026-08-05  9:28   ` [PATCH v3 4/6] setup: defer object database creation Patrick Steinhardt
2026-08-05 14:21     ` Toon Claes
2026-08-06  6:02       ` Patrick Steinhardt
2026-08-05  9:28   ` [PATCH v3 5/6] odb/source: introduce function to map source type to name Patrick Steinhardt
2026-08-05  9:28   ` [PATCH v3 6/6] odb: make creation of on-disk structures pluggable Patrick Steinhardt
2026-08-05 15:57     ` Toon Claes
2026-08-06  7:50 ` [PATCH v4 0/6] odb: make creation of object database pluggable Patrick Steinhardt
2026-08-06  7:50   ` [PATCH v4 1/6] loose: load loose object map for the correct source Patrick Steinhardt
2026-08-06  7:51   ` [PATCH v4 2/6] setup: detangle loading of loose object maps Patrick Steinhardt
2026-08-06  7:51   ` [PATCH v4 3/6] setup: handle ODB-related environment variables in `odb_new()` Patrick Steinhardt
2026-08-06  7:51   ` [PATCH v4 4/6] setup: defer object database creation Patrick Steinhardt
2026-08-06 14:23     ` Toon Claes
2026-08-06 14:54       ` Patrick Steinhardt
2026-08-06 17:39         ` Junio C Hamano
2026-08-06  7:51   ` [PATCH v4 5/6] odb/source: introduce function to map source type to name Patrick Steinhardt
2026-08-06  7:51   ` [PATCH v4 6/6] odb: make creation of on-disk structures pluggable Patrick Steinhardt
2026-08-06 14:26   ` [PATCH v4 0/6] odb: make creation of object database pluggable Toon Claes
2026-08-07  3:34 ` [PATCH v5 " Patrick Steinhardt
2026-08-07  3:34   ` [PATCH v5 1/6] loose: load loose object map for the correct source Patrick Steinhardt
2026-08-07  3:34   ` [PATCH v5 2/6] setup: detangle loading of loose object maps Patrick Steinhardt
2026-08-07  3:34   ` [PATCH v5 3/6] setup: handle ODB-related environment variables in `odb_new()` Patrick Steinhardt
2026-08-07  3:34   ` [PATCH v5 4/6] setup: defer object database creation Patrick Steinhardt
2026-08-07  4:28     ` Junio C Hamano
2026-08-07  7:16       ` Toon Claes
2026-08-07  3:34   ` [PATCH v5 5/6] odb/source: introduce function to map source type to name Patrick Steinhardt
2026-08-07  3:34   ` [PATCH v5 6/6] odb: make creation of on-disk structures pluggable Patrick Steinhardt
2026-08-07  7:17   ` [PATCH v5 0/6] odb: make creation of object database pluggable Toon Claes
2026-08-07  9:10     ` 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=anGTC81J4q76fUr1@pks.im \
    --to=ps@pks.im \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.