Re: BUG #18616: Long-running hash index build can not be interrupted
От | Alexander Lakhin |
---|---|
Тема | Re: BUG #18616: Long-running hash index build can not be interrupted |
Дата | |
Msg-id | 20a57c76-7aaf-a641-add3-147541a4dccf@gmail.com обсуждение исходный текст |
Ответ на | BUG #18616: Long-running hash index build can not be interrupted (PG Bug reporting form <noreply@postgresql.org>) |
Ответы |
Re: BUG #18616: Long-running hash index build can not be interrupted
|
Список | pgsql-bugs |
Hi Pavel,
13.09.2024 17:51, Pavel Borisov wrote:
13.09.2024 17:51, Pavel Borisov wrote:
Reproduced on all supported versions.I was unable to reproduce it on my machine with these settings. Tried statement timeouts 30-120s. Index build appears to be in interruptible phase on my system.But could you check in your environment with the following patch?
Thank you for paying attention to this!
Yes, the patch works for me. The query is interrupted as expected.
But I wonder, why don't you the see same?
Could you please show the server log, with the following change applied and
log_statement = 'all'
backtrace_functions = 'ProcessInterrupts'
?
--- a/src/backend/access/hash/hashsort.c
+++ b/src/backend/access/hash/hashsort.c
@@ -125,6 +125,7 @@ _h_indexbuild(HSpool *hspool, Relation heapRel)
uint32 hashkey = 0;
#endif
+elog(LOG, "_h_indexbuild() start");
tuplesort_performsort(hspool->sortstate);
while ((itup = tuplesort_getindextuple(hspool->sortstate, true)) != NULL)
@@ -151,4 +152,5 @@ _h_indexbuild(HSpool *hspool, Relation heapRel)
pgstat_progress_update_param(PROGRESS_CREATEIDX_TUPLES_DONE,
++tups_done);
}
+elog(LOG, "_h_indexbuild() end; tups_done: %ld", tups_done);
}
Best regards,
Alexander
В списке pgsql-bugs по дате отправления: