git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v1] convert: display progress for filtered objects that have been delayed

From
Lars Schneider <larsxschneider@gmail.com>
Date
Oct 4, 2017, 11:55 UTC
Message-ID
<C5857D7A-4B8E-4DA2-B2BA-EFE6373011E2@gmail.com>
In-Reply-To
<1AD84BB7-5BCA-4982-B157-944890F796EE@gmail.com>
Show 60 quoted lines
> On 04 Oct 2017, at 12:52, Lars Schneider <larsxschneider@gmail.com> wrote:
> 
> 
>> On 24 Aug 2017, at 21:40, Junio C Hamano <gitster@pobox.com> wrote:
>> 
>> Lars Schneider <larsxschneider@gmail.com> writes:
>> 
>>> In 2841e8f ("convert: add "status=delayed" to filter process protocol",
>>> 2017-06-30) we taught the filter process protocol to delayed responses.
>>> These responses are processed after the "Checking out files" phase.
>>> If the processing takes noticeable time, then the user might think Git
>>> is stuck.
>>> 
>>> Display the progress of the delayed responses to let the user know that
>>> Git is still processing objects. This works very well for objects that
>>> can be filtered quickly. If filtering of an individual object takes
>>> noticeable time, then the user might still think that Git is stuck.
>>> However, in that case the user would at least know what Git is doing.
>>> 
>>> It would be technical more correct to display "Checking out files whose
>>> content filtering has been delayed". For brevity we only print
>>> "Filtering content".
>>> 
>>> The finish_delayed_checkout() call was moved below the stop_progress()
>>> call in unpack-trees.c to ensure that the "Checking out files" progress
>>> is properly stopped before the "Filtering content" progress starts in
>>> finish_delayed_checkout().
>>> 
>>> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
>>> Suggested-by: Taylor Blau <me@ttaylorr.com>
>>> ---
>> 
>> Makes sense.  The only thing that made me wonder was if we want the
>> change in unpack-trees.c in this patch.  After all, the procedure to
>> finish up the delayed checkout _is_ a part of the work need to be
>> done to populate the working tree files, so stopping the progress
>> before feels somewhat wrong at the phylosophical level.
>> 
>> I think our output cannot express nested progress bars, and I think
>> that is the reason why this patch tweaks unpack-trees.c; so I am
>> fine with the end result (and that is why I said "made me wonder
>> was", not "makes me wonder", the latter would imply "this we might
>> want fix before applying", but I do not think we want to change
>> anything this patch does to unpack-trees.c in this case).
>> 
>> The delayed progress API is being simplified so I'll probably do a
>> bit of evil merge while merging this to 'pu'.
>> 
>> Thanks.
> 
> Hi Junio,
> 
> I just realized that this patch got lost :-(
> That means 2.14.2 supports the delayed filters but does not show
> progress to the user. To the user Git will appear hanging.
> 
> Can you merge this this topic for 2.14.3 / 2.15 ?
> 
> Thank you,
> Lars

I should have expressed myself more clearly: The patch made it into master with 52f1d62eb44faf569edca360ec9af9ddd4045fe0 . Therefore, I think it will be released with 2.15, right?

The patch just did not make it into 2.14.2 and I wonder if you could merge the patch for 2.14.3?

Thank you, Lars

Previous: Lars SchneiderNext: Junio C Hamano
Message 4 of 6 in “convert: display progress for filtered objects that have been delayed”
  1. convert: display progress for filtered objects that have been delayedLars Schneider, Aug 20, 2017
  2. Junio C HamanoAug 24, 2017
  3. Lars SchneiderOct 4, 2017
  4. Lars SchneiderOct 4, 2017
  5. Junio C HamanoOct 4, 2017
  6. Lars SchneiderOct 4, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.