On Tue, Aug 11, 2015 at 5:27 PM, Tom Lane <t...@sss.pgh.pa.us> wrote:
> Andres Freund <and...@anarazel.de> writes: > > On 2015-08-11 15:07:15 -0700, Jeff Janes wrote: > >> The attached patch adds an else branch to call CHECK_FOR_INTERRUPTS(). > >> > >> But I think we could instead just call vacuum_delay_point > unconditionally. > >> It calls CHECK_FOR_INTERRUPTS(), and if not in a throttled vacuum it > does > >> nothing else. (That is how ANALYZE handles it.) > > > Hm, I find that not exactly pretty. I'd rather just add an unconditional > > CHECK_FOR_INTERRUPTS to the function. > > CHECK_FOR_INTERRUPTS is very cheap. But I tend to agree that you should > be using vacuum_delay_point. > Attached patch does it that way. There was also a free-standing CHECK_FOR_INTERRUPTS() which had no reason that I could see not be a vacuum_delay_point, so I changed that one as well. With this patch, ctrl-C and 'pg_ctl stop -mf' both behave nicely. Cheers, Jeff
gin_pendinglist_interrupt.patch
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers