Re: pgsql: Fix base backup rate limiting in presence of slow i/o

From: Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: pgsql-committers <pgsql-committers(at)postgresql(dot)org>
Subject: Re: pgsql: Fix base backup rate limiting in presence of slow i/o
Date: 2016-12-22 10:10:13
Message-ID: CAEZATCXwVctbNtbxi7ce2SmVb+nA61A764TNNoMpX=Mv8=LKMQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On 21 December 2016 at 20:20, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
> On Wed, Dec 21, 2016 at 6:55 PM, Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com>
>> basebackup.c: In function ‘throttle’:
>> basebackup.c:1284:8: warning: variable ‘wait_result’ set but not used
>> [-Wunused-but-set-variable]
>> int wait_result;
>
> Interesting.
>
> ff44fba4 replaced the latch in walsender, which was not backported (of
> course).
>
> But it also added a CHECK_FOR_INTERRUPTS there.
>
> 9.4 does not have a CHECK_FOR_INTERRUPTS anywhere near there. Perhaps what's
> really needed is to put one of those in regardless?
>

Yeah, it seems reasonable that there should be a CHECK_FOR_INTERRUPTS() there.

I'm not really familiar with that code, but it looks like the signal
handler in 9.4 might not set that latch, so throttle() would have to
rely on setting ImmediateInterruptOK to make the sleep interruptable,
in which case the wait result would be irrelevant, right?

Regards,
Dean

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2016-12-22 16:19:35 pgsql: Give a useful error message if uuid-ossp is built without precon
Previous Message Michael Meskes 2016-12-22 07:36:44 pgsql: Fix buffer overflow on particularly named files and clarify docu