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, 10:52 UTC
Message-ID
<1AD84BB7-5BCA-4982-B157-944890F796EE@gmail.com>
In-Reply-To
<xmqqwp5svjne.fsf@gitster.mtv.corp.google.com>
Show 46 quoted lines
> 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

Previous: Junio C HamanoNext: Lars Schneider
Message 3 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.