Thread: Weird behaviour on Solaris: recv() returns ENOENT

Weird behaviour on Solaris: recv() returns ENOENT

From
"David F. Skoll"
Date:
Hi,

I'm having a customer running PostgreSQL 7.2.3 on Solaris 9 with
PHP 4.3.0, and he's getting this error:

    could not receive data from server: No such file or directory

grepping through the libpq source, it appears that the only way this
message could happen is if recv() returns -1 with errno set to ENOENT.
This is not one of the documented recv() error codes!

My questions:

1) Has anyone else ever seen this?
2) Is libpq thread-safe?  Do you need to compile with special flags to
   make it thread-safe?  My first guess is that he's using a multithreaded
   version of PHP (with iPlanet Web server) and errno is not behaving properly.

Regards,

David.