From: Junio C Hamano <gitster@pobox.com>
To: Jeff King <peff@peff.net>
Cc: "Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
"René Scharfe" <l.s.r@web.de>, "Taylor Blau" <me@ttaylorr.com>,
"Git List" <git@vger.kernel.org>
Subject: Re: [PATCH] merge-recursive: use fspathcmp() in path_hashmap_cmp()
Date: Mon, 13 Sep 2021 12:58:11 -0700 [thread overview]
Message-ID: <xmqqy280dz8s.fsf@gitster.g> (raw)
In-Reply-To: YT+FzPT0RCP2PdNL@coredump.intra.peff.net
Jeff King <peff@peff.net> writes:
> Another approach is to stuff the appropriate globals into the repository
> struct, and then "push" onto the global the_repository pointer, treating
> it like a stack. And then low-level code is free to use that global
> context, even if it wasn't passed in.
> ...
> - it's a challenge with threading (an obvious problem would be a
> multi-threaded grep which wanted to descend into a submodule). Using
> a thread-local global for the_repository might solve that.
>
> It's possible that this is a terrible direction to go, so I'm not
> necessarily endorsing it, but just offering it as a possibility to think
> about. The trickiest thing is that any devil would likely be in the
> details, and we wouldn't know until proceeding for a while along that
> path. Whereas passing around a context struct, while verbose and
> annoying, is a well-understood construct.
I agree that it is cute, thread-unsafe, and tricky. Let's leave it
at an interesting thought experiment for now.
Thanks.
next prev parent reply other threads:[~2021-09-13 19:58 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-28 21:30 [PATCH] merge-recursive: use fspathcmp() in path_hashmap_cmp() René Scharfe
2021-08-29 20:21 ` Taylor Blau
2021-08-29 21:00 ` Jeff King
2021-08-30 0:10 ` Junio C Hamano
2021-08-30 15:09 ` René Scharfe
2021-08-30 18:19 ` Jeff King
2021-08-30 16:55 ` Junio C Hamano
2021-08-30 18:22 ` René Scharfe
2021-08-30 20:49 ` Jeff King
2021-09-11 16:08 ` René Scharfe
2021-09-13 11:37 ` Johannes Schindelin
2021-09-13 17:09 ` Jeff King
2021-09-13 19:58 ` Junio C Hamano [this message]
2021-09-14 10:18 ` Johannes Schindelin
2021-09-14 14:11 ` Jeff King
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=xmqqy280dz8s.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=l.s.r@web.de \
--cc=me@ttaylorr.com \
--cc=peff@peff.net \
/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.