| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Andres Freund <andres(at)2ndquadrant(dot)com> |
| Cc: | PostgreSQL-development Hackers <pgsql-hackers(at)postgresql(dot)org>, Christophe Pettus <xof(at)thebuild(dot)com> |
| Subject: | Re: "stuck spinlock" |
| Date: | 2013-12-13 14:52:06 |
| Message-ID: | 8048.1386946326@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Andres Freund <andres(at)2ndquadrant(dot)com> writes:
> Tom, could this be caused by c357be2cd9434c70904d871d9b96828b31a50cc5?
> Specifically the added CHECK_FOR_INTERRUPTS() in handle_sig_alarm()?
> ISTM nothing is preventing us from jumping out of code holding a
> spinlock?
Hm ... what should stop it is that ImmediateInterruptOK wouldn't be
set while we're messing with any spinlocks. Except that ProcessInterrupts
doesn't check that gating condition :-(. I think you're probably right:
what should be in the interrupt handler is something like
"if (ImmediateInterruptOK) CHECK_FOR_INTERRUPTS();"
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2013-12-13 15:07:25 | Re: ruleutils vs. empty targetlists |
| Previous Message | Heikki Linnakangas | 2013-12-13 14:27:49 | Re: Logging WAL when updating hintbit |