Graham Dumpleton
grahamd at dscpl.com.au
Thu Jan 27 00:37:51 EST 2005
David Fraser wrote .. > >It is a frequent problem that the version of the expat shared library > which > >is used by the Python modules differs to that which Apache or PHP may > >already be using. This difference can result in a server crash. > > > >You should thus try to determine if you have multiple versions of expat > >present and whether these different packages are using different versions. > > > >On Linux, you might be able to use "ldd" to work this out by running it > >on the "httpd" binary, as well as the appropriate .so Python module. > > > > ldd /somepath-to-apache-bin-dir/httpd > > ldd /somepath-to-python-module-dir/lib-dynload/pyexpat.so > > ldd /somepath-to-apache-module-dir/*php*.so > > > >The paths will need to be adjusted obviously. > > > >Please post the results of ldd if you can as am curious to see if this > >does help, I have never suggested trying it before. > > > Since this is a common problem, I wonder if there may be a way to put > checks into the Python modules that use expat to prevent this happening? Probably not very easy to determine. Trying ldd was an attempt to understand the problem better and see if that might help but in the end it didn't show anything that would help. In this case, it actually didn't turn out to be a problem with different incompatible versions of libexpat.so, but a buggy one. Using next minor point revision of library, without even recompiling looks like it may fix it. I'll be able to confirm that on site I can access later. When we have a clearer picture of the situation, should at least perhaps be mentioned in the FAQ. Graham
|