I have recently found a very bothersome but that leads to apache children seg faulting when an informational message from the database backend shows up in the error logs of apache.
Background:
RedHat Linux 7.1 & 6.2
Apache 1.3.20, & 1.3.12
PHP 4.0.6 & 4.0.5
PostgreSQL 7.1.2 & 7.1 & 7.1.1
With any combination of the above, when the postgresql database throws an informational message to php/apache, it gets entered into the error_log, then the apache child will sometimes hang, and consume 100% CPU until you kil l -9 the rogue process.
This error only seems to happen under heavy parallel load, by the way.
To reproduce it, create a page that runs a select query against the postgresql database like so:
select field1, field2, table2.field3 from table1 where table1.id = table2.t1_id and field1='something';
If you run such a query from the psql monitor, it will put a message up that says: "NOTICE: Adding missing FROM-clause entry for table table2"
Something about putting that notice into the error logs causes apache / php child processes to hang.
So, if you've ever got a high load server running PHP/Apache/Postgresql (or other databases that throw informational messages) look out for this problem.
Can anyone else replicate it? I had to use ab with a -c (concurrent user) setting of 5 or so to get the error to occur, by the way.