Re: [GENERAL] too may LWLocks - Mailing list pgsql-general

From Julien Rouhaud
Subject Re: [GENERAL] too may LWLocks
Date
Msg-id 20170308193752.GC15188@nol.local
Whole thread Raw
In response to [GENERAL] too may LWLocks  (hariprasath nallasamy <hariprasathnallasamy@gmail.com>)
Responses Re: [GENERAL] too may LWLocks
List pgsql-general
On Wed, Mar 08, 2017 at 03:34:56PM +0530, hariprasath nallasamy wrote:
> Hi all
> I am building an extension using shared memory hash table and for locking
> hash table i am using LWLocks, but the thing was when i try to run some 1k
> queries one after other, for each query i am getting one LWLock but on
> executing 200th query i am getting the error *ERROR:  too many LWLocks
> taken*.
>
> But in each query i acquire and release that block. So that lock has to be
> flushed after executing query, but why am i getting this error.?
>
> Is this due to *held_lwlocks *in LWLock.c is fixed only to some number 200
> here.
> Or am i missing something here.?

The most likely reason is that you have some code path in your extension where
you don't release the LWLock.  Without access to the code we can't do much more
to help you I'm afraid.  You could also try on a postgres build having
LWLOCK_STATS defined.

--
Julien Rouhaud
http://dalibo.com - http://dalibo.org


pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: [GENERAL] Unable to start postgresql
Next
From: Tom Lane
Date:
Subject: Re: [GENERAL] Unable to start postgresql