Re: elog(DEBUG2 in SpinLocked section.

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, masao.fujii@oss.nttdata.com, amit.kapila16@gmail.com, pasim@vmware.com, pgsql-hackers@lists.postgresql.org
Date: 2020-06-03T04:48:59Z
Lists: pgsql-hackers
On Wed, Jun 03, 2020 at 12:36:34AM -0400, Tom Lane wrote:
> Ugh, that is just horrid.  I experimented with the attached patch
> but it did not find any other problems.

Oh.  I can see the same "ifndef FRONTEND" logic all around the place
as I did on my local branch :)

> Still, that only proves something about code paths that are taken
> during check-world, and we know that our test coverage is not very
> good :-(.

Yeah.  Not perfect, still we are getting better at it with the years.
I am fine to take care of a backpatch, but I'll wait first a bit to
see if others have any comments.
--
Michael

Commits

  1. Fix instance of elog() called while holding a spinlock

  2. Don't call palloc() while holding a spinlock, either.

  3. Don't call elog() while holding spinlock.