Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Junio C Hamano
Lars Schneider writes: >> Hmm, I would have expected that the basic flow would become >> >> for each paths to be processed: >> convert-to-worktree to buf >> if not delayed: >> do the caller's thing to use buf >> else: >>

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Junio C Hamano
Jakub Narębski writes: >> Yes, this problem happens every day with filters that perform network >> requests (e.g. GitLFS). > > Do I understand it correctly that the expected performance improvement > thanks to this feature is possible only if there is some amount of > parallelism and concurrency

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Taylor Blau
On Wed, Jan 11, 2017 at 11:13:00AM +0100, Lars Schneider wrote: > > In v1 I implemented a) with the busy-loop problem in mind. > > My thinking was this: > > If the filter sees at least one filter request twice then the filter knows > that > Git has already requested all files that require filterin

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Jakub Narębski
W dniu 11.01.2017 o 11:20, Lars Schneider pisze: > On 10 Jan 2017, at 23:11, Jakub Narębski wrote: >> W dniu 09.01.2017 o 00:42, Junio C Hamano pisze: >>> larsxschnei...@gmail.com writes: From: Lars Schneider Some `clean` / `smudge` filters might require a significant amount of >>

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Lars Schneider
> On 10 Jan 2017, at 23:11, Jakub Narębski wrote: > > W dniu 09.01.2017 o 00:42, Junio C Hamano pisze: >> larsxschnei...@gmail.com writes: >>> From: Lars Schneider >>> >>> Some `clean` / `smudge` filters might require a significant amount of >>> time to process a single blob. During this proce

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Lars Schneider
> On 10 Jan 2017, at 00:38, Taylor Blau wrote: > > I've been considering some alternative approaches in order to make the > communication between Git and any extension that implements this protocol more > intuitive. > > In particular, I'm considering alternatives to: > >> for each delayed

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Lars Schneider
> On 08 Jan 2017, at 21:45, Eric Wong wrote: > > larsxschnei...@gmail.com wrote: >> +++ b/t/t0021/rot13-filter.pl > >> +$DELAY{'test-delay1.r'} = 1; >> +$DELAY{'test-delay3.r'} = 3; >> >> open my $debug, ">>", "rot13-filter.log" or die "cannot open log file: $!"; >> >> @@ -166,6 +176,15 @@ wh

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Lars Schneider
> On 08 Jan 2017, at 21:14, Torsten Bögershausen wrote: > > On Sun, Jan 08, 2017 at 08:17:36PM +0100, larsxschnei...@gmail.com wrote: >> From: Lars Schneider >> >> Some `clean` / `smudge` filters might require a significant amount of >> time to process a single blob. During this process the Gi

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-11 Thread Lars Schneider
> On 09 Jan 2017, at 00:42, Junio C Hamano wrote: > > larsxschnei...@gmail.com writes: > >> From: Lars Schneider >> >> Some `clean` / `smudge` filters might require a significant amount of >> time to process a single blob. During this process the Git checkout >> operation is blocked and Git n

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-10 Thread Taylor Blau
On Tue, Jan 10, 2017 at 11:11:01PM +0100, Jakub Narębski wrote: > W dniu 09.01.2017 o 00:42, Junio C Hamano pisze: > > larsxschnei...@gmail.com writes: > >> From: Lars Schneider > >> > >> Some `clean` / `smudge` filters might require a significant amount of > >> time to process a single blob. Duri

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-10 Thread Jakub Narębski
W dniu 09.01.2017 o 00:42, Junio C Hamano pisze: > larsxschnei...@gmail.com writes: >> From: Lars Schneider >> >> Some `clean` / `smudge` filters might require a significant amount of >> time to process a single blob. During this process the Git checkout >> operation is blocked and Git needs to wa

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-08 Thread Junio C Hamano
larsxschnei...@gmail.com writes: > From: Lars Schneider > > Some `clean` / `smudge` filters might require a significant amount of > time to process a single blob. During this process the Git checkout > operation is blocked and Git needs to wait until the filter is done to > continue with the chec

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-08 Thread Eric Wong
larsxschnei...@gmail.com wrote: > +++ b/t/t0021/rot13-filter.pl > +$DELAY{'test-delay1.r'} = 1; > +$DELAY{'test-delay3.r'} = 3; > > open my $debug, ">>", "rot13-filter.log" or die "cannot open log file: $!"; > > @@ -166,6 +176,15 @@ while (1) { > packet_txt_write("status=abort");

Re: [PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-08 Thread Torsten Bögershausen
On Sun, Jan 08, 2017 at 08:17:36PM +0100, larsxschnei...@gmail.com wrote: > From: Lars Schneider > > Some `clean` / `smudge` filters might require a significant amount of > time to process a single blob. During this process the Git checkout > operation is blocked and Git needs to wait until the f

[PATCH v1] convert: add "status=delayed" to filter process protocol

2017-01-08 Thread larsxschneider
From: Lars Schneider Some `clean` / `smudge` filters might require a significant amount of time to process a single blob. During this process the Git checkout operation is blocked and Git needs to wait until the filter is done to continue with the checkout. Teach the filter process protocol (int