From: Junio C Hamano <gitster@pobox.com>
To: Karthik Nayak <karthik.188@gmail.com>
Cc: Abhijeet Sonar <abhijeet.nkt@gmail.com>,
git@vger.kernel.org, karthik.188@gmail.com,
Paul Millar <paul.millar@desy.de>,
Phillip Wood <phillip.wood123@gmail.com>,
Elijah Newren <newren@gmail.com>, Jeff King <peff@peff.net>
Subject: Re: [PATCH v3] describe: refresh the index when 'broken' flag is used
Date: Tue, 25 Jun 2024 09:05:53 -0700 [thread overview]
Message-ID: <xmqqy16t6m8u.fsf@gitster.g> (raw)
In-Reply-To: <xmqq34p1813n.fsf@gitster.g> (Junio C. Hamano's message of "Tue, 25 Jun 2024 08:59:40 -0700")
Junio C Hamano <gitster@pobox.com> writes:
> (#leftoverbit)
>
> Outside the scope of this patch, I'd prefer to see somebody makes
> sure that it is truly equivalent to prepare a separate and new
> struct child_process for each run_command() call and to reuse the
> same struct child_process after calling child_process_clear() each
> time. It is unclear if they are equivalent in general, even though
> in this particular case I think we should be OK.
>
> There _might_ be other things in the child_process structure that
> need to be reset to the initial state before it can be reused, but
> are not cleared by child_process_clear(). .git_cmd and other flags
> as well as in/out/err file descriptors do not seem to be cleared,
> and other callers of run_command() may even be depending on the
> current behaviour that they are kept.
Ahh, the reuse of the same struct came directly from Karthik's
review on the second iteration. I guess Karthik volunteered himself
into this #leftoverbit task? I am not convinced that
(1) the selective clearing done by current child_process_clear() is
the best thing we can do to make child_process reusable, and
(2) among the current callers, there is nobody that depends on the
state left by the previous use of child_process in another
run_command() call that is left uncleared by child_process_clear().
If (1) is false, then reusing child_process structure is not quite
safe, and if (2) is false, updating child_process_clear() to really
clear everything will first need to adjust some callers.
Thanks.
next prev parent reply other threads:[~2024-06-25 16:05 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-25 13:35 [PATCH v3] describe: refresh the index when 'broken' flag is used Abhijeet Sonar
2024-06-25 15:59 ` Junio C Hamano
2024-06-25 16:05 ` Junio C Hamano [this message]
2024-06-26 11:16 ` Karthik Nayak
2024-06-26 6:11 ` Abhijeet Sonar
2024-06-26 6:37 ` [PATCH v4] " Abhijeet Sonar
2024-06-26 6:50 ` Abhijeet Sonar
2024-06-26 6:52 ` [PATCH v5] " Abhijeet Sonar
2024-06-26 11:30 ` Karthik Nayak
2024-06-26 12:06 ` Abhijeet Sonar
2024-06-26 15:34 ` Re* " Junio C Hamano
2024-06-26 16:17 ` Junio C Hamano
2024-06-26 17:29 ` Abhijeet Sonar
2024-06-26 17:35 ` Junio C Hamano
2024-06-26 17:45 ` Junio C Hamano
2024-06-26 18:07 ` Abhijeet Sonar
2024-06-26 18:49 ` Junio C Hamano
2024-06-26 20:34 ` Jeff King
2024-06-27 0:33 ` Jeff King
2024-06-26 21:23 ` Karthik Nayak
2024-06-26 14:59 ` Junio C Hamano
2024-06-26 18:31 ` Junio C Hamano
2024-06-26 19:08 ` [PATCH v7] " Abhijeet Sonar
2024-06-26 19:25 ` Abhijeet Sonar
2024-06-27 6:01 ` Abhijeet Sonar
2024-06-27 15:47 ` Junio C Hamano
2024-06-27 17:33 ` Abhijeet Sonar
2024-06-30 16:12 ` Karthik Nayak
2024-07-01 19:06 ` Junio C Hamano
2024-07-02 10:13 ` Karthik Nayak
2024-07-03 18:17 ` Junio C Hamano
2024-07-03 20:41 ` Karthik Nayak
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=xmqqy16t6m8u.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=abhijeet.nkt@gmail.com \
--cc=git@vger.kernel.org \
--cc=karthik.188@gmail.com \
--cc=newren@gmail.com \
--cc=paul.millar@desy.de \
--cc=peff@peff.net \
--cc=phillip.wood123@gmail.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.