Re: PHP Source Dump

From: Date: Sun, 10 Dec 2000 02:04:02 +0000
Subject: Re: PHP Source Dump
References: 1  Groups: php.qa 
Request: Send a blank email to php-qa+get-1788@lists.php.net to get a copy of this message
> > Since the current theory is that it happens when somebody is editing the > > config file and/or httpd is starting up or shutting down, > > Another possibility which occured to me later was that > somebody upgraded PHP on the web-server (we are using apxs): > > 1. Apache is running with PHP as a DSO > 2. a new PHP DSO is installed over the old libphp4.so binary > 3. Apache tries to serve a new request and passes that to PHP > > AFAIK relocatable shared libraries under Linux are simply > mmap'ed into the process virtual memory space. Changes in the > underlying file are instantly reflected in the virtual memory > space. So, by simply installing a new DSO we might have > created a situation where some entry points had changed in a > way which caused PHP to serve some bogus document, instead of > immediately segfaulting. This also could presumably be tested by swapping in/out two different DSO compilations -- one with some extra external libraries that aren't actually used by the scripts, and one without... It certainly does sound like a more reasonable explanation overall -- processes starting/stopping is pretty common and old technology, so I figure that's been pounded on more than this (relatively) new and funky DSO apxs thingie. If true, the solution could end up being as simple as making sure you kill all httpd's before swapping in the new DSO... Kinda messes up the whole "graceful" thing, though, don't it?...

« previous php.qa (#1788) next »