From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#26201: hydra.gnu.org uses =?UTF-8?Q?=E2=80=98guix_?= =?UTF-8?Q?publish=E2=80=99?= for nars and narinfos Date: Tue, 28 Mar 2017 16:47:14 +0200 Message-ID: <87wpb931cd.fsf@gnu.org> References: <20170320184449.5ac06051@khaalida> <144e9ba8-af93-fb18-d2b9-f198ae7c11e9@tobias.gr> <20170320195247.05f72fc9@khaalida> <8e7e07d1-563f-666f-2c32-2a772757c86f@tobias.gr> <8760j2wpfy.fsf@gnu.org> <9889a4b5-c300-cd03-1095-1115428067fb@tobias.gr> <87r31pyms2.fsf_-_@gnu.org> <87inmzrgbf.fsf@netris.org> <25b2472a-c705-53fe-f94f-04de9a2d484e@tobias.gr> <87y3vvozy5.fsf@netris.org> <1988d01c-1e67-bf47-2b43-cf3551d0651b@tobias.gr> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55318) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cssPm-00016X-5I for bug-guix@gnu.org; Tue, 28 Mar 2017 10:48:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cssPi-0006g1-Fs for bug-guix@gnu.org; Tue, 28 Mar 2017 10:48:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:51241) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cssPi-0006fx-CL for bug-guix@gnu.org; Tue, 28 Mar 2017 10:48:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1cssPi-0000R4-6I for bug-guix@gnu.org; Tue, 28 Mar 2017 10:48:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: (Tobias Geerinckx-Rice's message of "Mon, 27 Mar 2017 20:47:17 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Tobias Geerinckx-Rice Cc: 26201@debbugs.gnu.org Hey! Tobias Geerinckx-Rice skribis: > On 26/03/17 19:35, Tobias Geerinckx-Rice wrote: >> I can try to do some simple tests tomorrow. > > Two observations: > > - =E2=80=98proxy_cache_lock_timeout=E2=80=99 alone won't suffice to seria= lise requests; > =E2=80=98proxy_cache_lock_age=E2=80=99 must also be set to an equally r= idiculously > long span. Otherwise, multiple requests will still be sent to =E2=80=98= guix > publish=E2=80=99 if they are more than 5s apart. Bleh. > > (The problem then becomes that clients will stall while the file is > being cached, as explained by Mark. curl patiently waited.) Setting =E2=80=98proxy_cache_lock_timeout=E2=80=99 to 5s is reasonable I th= ink: if you=E2=80=99re unlucky, you wait for 5 seconds, and then we get =E2=80=98gu= ix publish=E2=80=99 threads serving the same request in parallel; in the most common case, there=E2=80=99s only ever one instance of a given request being served at a given time. > - Say client A requests a nar from =E2=80=98guix publish=E2=80=99 (no ngi= nx involved). > If another client requests the same nar while A's still downloading, > =E2=80=98guix publish=E2=80=99 will... silently drop A's connection? > I was not expecting this. That would be a bug. Do you have an easy way to reproduce? Thanks, Ludo=E2=80=99.