Forum OpenACS Development: Response to AolServer 3.4 dies frequently
There are a bunch of things to try, I am sure you have already tried some of them.
The pq_recvbuf message is a generic one.
First run ulimit -a (if running ksh) or the related limit command for your shell. Try increasing the max datasize, number of file handles, etc.
Increase the stack size in the nsd.tcl config file. Be sure the MaxOpen and MaxIdle settings for the database connection is set.
It could be an issue with the version of glibc.
My question would be whether increasing the number of threads and/or db connections (maxthreads) would change the behavior; perhaps a db connection or a thread is getting stuck with each search_observer_dequeue problem.