From: Tom Lane Date: Fri, 10 Mar 2006 20:18:25 +0000 (+0000) Subject: Add a CHECK_FOR_INTERRUPTS() in _bt_buildadd(). This fixes problem X-Git-Tag: REL8_1_4~63 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d777a571336aff734a4f00cbcb7b9bd268dd23d7;p=postgresql Add a CHECK_FOR_INTERRUPTS() in _bt_buildadd(). This fixes problem with not responding to query cancel during the last stage of btree index creation. --- diff --git a/src/backend/access/nbtree/nbtsort.c b/src/backend/access/nbtree/nbtsort.c index d18ecbce57..b674eacd58 100644 --- a/src/backend/access/nbtree/nbtsort.c +++ b/src/backend/access/nbtree/nbtsort.c @@ -56,7 +56,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/access/nbtree/nbtsort.c,v 1.95.2.2 2006/01/07 22:45:53 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/access/nbtree/nbtsort.c,v 1.95.2.3 2006/03/10 20:18:25 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -475,6 +475,12 @@ _bt_buildadd(BTWriteState *wstate, BTPageState *state, BTItem bti) Size pgspc; Size btisz; + /* + * This is a handy place to check for cancel interrupts during the + * btree load phase of index creation. + */ + CHECK_FOR_INTERRUPTS(); + npage = state->btps_page; nblkno = state->btps_blkno; last_off = state->btps_lastoff;