Skip site navigation (1) Skip section navigation (2)

Exceeded maximum lock level

From: alexander lunyov <lan(at)zato(dot)ru>
To: pgsql-interfaces(at)postgresql(dot)org
Subject: Exceeded maximum lock level
Date: 2008-04-23 14:24:52
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-interfaces

Freebsd 6.2, Postgresql 8.3 from ports.

I'm trying to add some features to threaded application, like sql logs. 
I've changed application according to examples of libpq usage (simple 
things - connect, inserts, disconnect), everything works for a little 
time (under 1 minute), then i get error:

  Fatal error 'Exceeded maximum lock level' at line 519 in file 
/usr/src/lib/libpthread/thread/thr_mutex.c (errno = 844913743)

This application compiled with -lpthread, and in #postgresql user 
RhodiumToad told me to use -pthread instead, but after changes in 
makefiles to use -pthread the same error comes up right after first use 
of sql functions (in the beginning some amount of data was actually 
inserted to DB before error comes up). For now i told this application 
not to use threads (it have command line key switching thread/fork 
behavior) and it works, but i think threads would be better under heavy 
load (i think in future there will be heavy load).

If i start application with threads but not use sql functions (sql code 
is there but not used) i see no errors. Is it a problem of libpq?

Compilation flags looks like this:

CFLAGS=-O2 -fno-strict-aliasing -pipe  -DFREEBSD -pthread 
-export-dynamic -I/usr/local/include -I . -shared -fPIC

LIBS = -lpthread -L/usr/local/lib -lpq

wbr, alexander


pgsql-interfaces by date

Next:From: Alvaro HerreraDate: 2008-04-23 14:55:10
Subject: Re: Exceeded maximum lock level
Previous:From: DragoDate: 2008-04-16 07:30:59
Subject: NOTIFY connection lost

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group