Re: [HACKERS] releaseOk and LWLockWaitForVar

2014-06-23 Thread Amit Kapila
On Mon, Jun 23, 2014 at 10:10 PM, Heikki Linnakangas < hlinnakan...@vmware.com> wrote: > On 06/23/2014 05:38 PM, Amit Kapila wrote: >> >> While looking at function LWLockWaitForVar(), espacially below >> code: >> >> TRACE_POSTGRESQL_LWLOCK_ACQUIRE(T_NAME(l), T_ID(l), LW_EXCLUSIVE); >> >> I think in

Re: [HACKERS] releaseOk and LWLockWaitForVar

2014-06-23 Thread Heikki Linnakangas
On 06/23/2014 05:38 PM, Amit Kapila wrote: While looking at function LWLockWaitForVar(), espacially below code: TRACE_POSTGRESQL_LWLOCK_ACQUIRE(T_NAME(l), T_ID(l), LW_EXCLUSIVE); I think in this function tracing is done considering the Exclusive lock is acquired, however it might have granted a

Re: [HACKERS] releaseOk and LWLockWaitForVar

2014-06-23 Thread Heikki Linnakangas
On 06/17/2014 03:17 PM, Andres Freund wrote: LWLockWaitForVar() doesn't set releaseOk to true when waiting again. Isn't that a bug? LWLockWaitForVar() waits in LW_WAIT_UNTIL_FREE mode, because it's not interested in acquiring the lock, it just wants to be woken up when it's released (or the "

Re: [HACKERS] releaseOk and LWLockWaitForVar

2014-06-23 Thread Amit Kapila
On Tue, Jun 17, 2014 at 5:47 PM, Andres Freund wrote: > > Hi Heikki, All, > > Amit just pointed me to a case where the lwlock scalability patch > apparently causes problems and I went on to review it and came across > the following problem in 9.4/master: > LWLockWaitForVar() doesn't set releaseOk

[HACKERS] releaseOk and LWLockWaitForVar

2014-06-17 Thread Andres Freund
Hi Heikki, All, Amit just pointed me to a case where the lwlock scalability patch apparently causes problems and I went on to review it and came across the following problem in 9.4/master: LWLockWaitForVar() doesn't set releaseOk to true when waiting again. Isn't that a bug? What if there's anothe