[PATCH 2 of 2] log: add flush delay config to graphlog

Pierre-Yves David pierre-yves.david at ens-lyon.org
Tue Sep 22 15:40:12 CDT 2015



On 09/21/2015 07:25 PM, Durham Goode wrote:
>
>
> On 9/21/15 6:54 PM, Pierre-Yves David wrote:
>>
>>
>> On 09/21/2015 06:18 PM, Durham Goode wrote:
>>> # HG changeset patch
>>> # User Durham Goode <durham at fb.com>
>>> # Date 1442884584 25200
>>> #      Mon Sep 21 18:16:24 2015 -0700
>>> # Node ID 7d7d6cde6e4991c96b3db336a4eeeb85148452c9
>>> # Parent  7f997a372e42f61638cb2609b3323c3fb7b45ed3
>>> log: add flush delay config to graphlog
>>>
>>> This was already added to the normal log code path. Let's add it to
>>> the graph
>>> log path as well.
>>
>> We just had a real life discussion with Durham about using a growing
>> windows for flushing instead. He will follow up with details and V2.
>>
> I thought about this a bit more.  I think sticking with a time based
> approach might actually be the right choice here.  The problem we're
> trying to solve is the lack of responsiveness, and using a timer seems
> to ensure that things respond in a timely manner (regardless of whether
> it's for the first commit being output, or the 100th).

The timer (as it currently stand) includes a config option. I think the 
increasing windows options will provide good enough result without any 
change to our UX surface. So it seems like the way to go first.

There is extra appeal for the increasing windows as it is also used for 
reading changesets data during log.

If some problem still exist after that we could search for other options.

> The one thing I will change though is I will make it always call flush
> for the first N results.  That way we always fill the users screen quickly.

-- 
Pierre-Yves David


More information about the Mercurial-devel mailing list