From: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
---|---|
To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | check for interrupts in set_rtable_names |
Date: | 2015-11-13 22:51:08 |
Message-ID: | CAMkU=1zq5a74E9JSftTDuyonqnSnSOxja8961qW+qq7Ua74u5w@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Someone sent my server a deranged query, it tripped my
auto_explain.log_min_duration setting, that hit some kind of
pathological case while assigning aliases, and now it sits
uninterruptibly in set_rtable_names for hours.
Is there any reason we can't check for interrupts in set_rtable_names,
like the attached?
I've tried it on a deranged query and it seems to do the job.
A deranged query:
perl -le 'print "explain"; print "select * from pgbench_accounts where
aid=5 union" foreach 1..5000; print "select * from pgbench_accounts
where aid=5 ;"'|psql
Cheers,
Jeff
Attachment | Content-Type | Size |
---|---|---|
rtable_names_interrupts.patch | application/octet-stream | 423 bytes |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2015-11-13 23:10:39 | Re: Inaccurate results from numeric ln(), log(), exp() and pow() |
Previous Message | Robert Haas | 2015-11-13 22:09:20 | Re: [DESIGN] ParallelAppend |