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.?