Having hacked on the PG driver in the past, I would wonder about
it. The current means of statically linking libpq.a may be the
culprit here, as libpq.a isn't built -fPIC as a library statically
linked to a dynamic loaded shared object should be. The driver
should be dynamically linked to libpq -- and the make structure
should be changed to make this the default.
IT could be this issue -- it could also be postmaster dropping out
from under the driver, which the driver has never really handled
very well. Hack the driver and see if you can find a leakage.
It may even be libpq not really being threadsafe -- can we say
'proxy daemon' -- eeewwwww, that was ugly sounding. Incidentally,
libpq is not advertised as being threadsafe -- going the proxy
daemon route may be the safest way of doing it. Don? Dan?
Was there a nsdb API change between 3.3.x and 3.4.x?
Scott Goodwin is hacking on the AOLserver fork of the OpenACS
PostgreSQL driver, and has substantially reorganized the code. Is
it worth looking at a resync here? What's the CVS module name for
the current OpenACS pgdriver, so I can check out a HEAD of it?
Again, I say these things having more than just a passing
familiarity with that driver. Don made good progress on it -- but
maybe it's time to revisit how the driver is handling things. It
certainly is the most taxed of all the pieces of the OpenACS puzzle.