Re: Re: Upgrading expat for apache question

wayne collier <[email protected]> Tue, 09 Mar 2010 12:18:48 -0500
Newsgroups gmane.comp.python.mod_python
Message-ID <[email protected]>
This is a multi-part message in MIME format.

--===============1227385941==
Content-type: multipart/alternative;
	boundary="Boundary_(ID_Sr64i1wyFFoKyaL168G0kA)"

This is a multi-part message in MIME format.

--Boundary_(ID_Sr64i1wyFFoKyaL168G0kA)
Content-type: text/plain; charset=ISO-8859-1; format=flowed
Content-transfer-encoding: 7BIT

Okay I guess I will look else where. However, I keep getting 
segmentation faults when try an execute the ldap command

t=l.simple_bind_s(dn,pw). It is only line of code that crashes. If the have the classic expat problem, would that mean I would get a segmentation
fault problem from the start.  Also, ldap script works okay as a stand alone script. Thanks.

Wayne



Graham Dumpleton wrote:
> That is not your problem, quoting:
>
> http://code.google.com/p/modwsgi/wiki/IssuesWithExpatLibrary
>
> which is more up to date in respect of this issue, even if the
> mod_wsgi variant of that document:
>
> """Note that this only applies to Python versions prior to Python 2.5.
> >From Python 2.5 onwards, the copy of the "expat" library bundled in
> with Python is name space prefixed, thereby avoid name clashes with an
> "expat" library which has previously been loaded."""
>
> You are using Python 2.6, so you cannot be affected by this problem.
>
> Graham
>
> On 9 March 2010 05:54, wayne collier <[email protected]> wrote:
>   
>> Hello all. I need some help solving the dreaded segmentation fault that has
>> cropped several time on this board. I have read the link
>> http://www.dscpl.com.au/wiki/ModPython/Articles/ExpatCausingApacheCrash and
>> followed the step and have uncovered the following.
>>
>>
>>     
>>> ldd    /usr/local/httpd-2.2.11/bin/httpd | grep expat
>>>       
>>     libexpat.so.0 => /lib/libexpat.so.0 (0x00d70000)
>>
>>     
>>> strings /lib/libexpat.so.0  | grep expat_
>>>       
>> expat_1.95.8
>>
>>     
>>>   ps aux | grep http | head -3
>>>       
>> webuser  14986  0.0  2.1  54236 19048 ?        S    Mar04   0:01
>> /usr/local/httpd-2.2.11/bin/httpd -d /usr/local/httpd-2.2.11 -f
>> /usr/local/httpd-2.2.11/conf/httpd.conf
>> webuser  14987  0.0  3.2 144128 29540 ?        S    Mar04   0:01
>> /usr/local/httpd-2.2.11/bin/httpd -d /usr/local/httpd-2.2.11 -f
>> /usr/local/httpd-2.2.11/conf/httpd.conf
>> webuser  14998  0.0  3.2 144212 29660 ?        S    Mar04   0:01
>> /usr/local/httpd-2.2.11/bin/httpd -d /usr/local/httpd-2.2.11 -f
>> /usr/local/httpd-2.2.11/conf/httpd.conf
>>
>>     
>>>   /usr/sbin/lsof -p 14986 | grep expat
>>>       
>> httpd   14986 webuser  mem    REG     3,5   572313  972637
>> /opt/Python/lib/python2.6/lib-dynload/pyexpat.so
>> httpd   14986 webuser  mem    REG     3,5   133120 1883791
>> /lib/libexpat.so.0.5.0
>>
>> I am not sure why I get 2 shared libaries here.
>>
>>     
>>>   strings  /lib/libexpat.so.0.5.0 | grep expat_
>>>       
>> expat_1.95.8
>>
>>
>>     
>>> strings /opt/Python/lib/python2.6/lib-dynload/pyexpat.so | grep expat_
>>>       
>> pyexpat.expat_CAPI 1.0
>> expat_CAPI
>> expat_2.0.0
>>
>>
>>     
>>>>> import pyexpat
>>>>> pyexpat.version_info
>>>>>           
>> (2, 0, 0)
>>
>>
>> So it seems like I need get expat_1.95.8 apache is using up to expat_2.0.0.
>> Can I simply try replacing the 1.95.8 library with 2.0.0. Or do I have
>> recompile with Apache? If I do recompile I need to recompile apache with
>> mod_python as well?
>>
>>
>>
>>
>>     
>
> _______________________________________________
> Mod_python mailing list
> [email protected]
> http://mailman.modpython.org/mailman/listinfo/mod_python
>
>   


--Boundary_(ID_Sr64i1wyFFoKyaL168G0kA)
Content-type: text/html; charset=ISO-8859-1
Content-transfer-encoding: 7BIT

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Okay I guess I will look else where. However, I keep getting
segmentation faults when try an execute the ldap command <br>
<pre><font><font><font color="#3333ff"><font color="#cc0000">t=l.simple_bind_s(dn,pw)<font
 color="#330000">. It is only line of code that crashes. If the have the classic expat problem, would that mean I would get a segmentation
fault problem from the start.  Also, ldap script works okay as a stand alone script. Thanks.

Wayne
</font></font></font></font></font></pre>
<br>
<br>
Graham Dumpleton wrote:
<blockquote
 cite="mid:88e286471003081446r5ba3da58tc5183beabadba30f-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org"
 type="cite">
  <pre wrap="">That is not your problem, quoting:

<a class="moz-txt-link-freetext" href="http://code.google.com/p/modwsgi/wiki/IssuesWithExpatLibrary">http://code.google.com/p/modwsgi/wiki/IssuesWithExpatLibrary</a>

which is more up to date in respect of this issue, even if the
mod_wsgi variant of that document:

"""Note that this only applies to Python versions prior to Python 2.5.
&gt;From Python 2.5 onwards, the copy of the "expat" library bundled in
with Python is name space prefixed, thereby avoid name clashes with an
"expat" library which has previously been loaded."""

You are using Python 2.6, so you cannot be affected by this problem.

Graham

On 9 March 2010 05:54, wayne collier <a class="moz-txt-link-rfc2396E" href="mailto:[email protected]">&lt;[email protected]&gt;</a> wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">Hello all. I need some help solving the dreaded segmentation fault that has
cropped several time on this board. I have read the link
<a class="moz-txt-link-freetext" href="http://www.dscpl.com.au/wiki/ModPython/Articles/ExpatCausingApacheCrash">http://www.dscpl.com.au/wiki/ModPython/Articles/ExpatCausingApacheCrash</a> and
followed the step and have uncovered the following.


    </pre>
    <blockquote type="cite">
      <pre wrap="">ldd&nbsp;&nbsp;&nbsp; /usr/local/httpd-2.2.11/bin/httpd | grep expat
      </pre>
    </blockquote>
    <pre wrap="">&nbsp;&nbsp;&nbsp; libexpat.so.0 =&gt; /lib/libexpat.so.0 (0x00d70000)

    </pre>
    <blockquote type="cite">
      <pre wrap="">strings /lib/libexpat.so.0&nbsp; | grep expat_
      </pre>
    </blockquote>
    <pre wrap="">expat_1.95.8

    </pre>
    <blockquote type="cite">
      <pre wrap="">&nbsp; ps aux | grep http | head -3
      </pre>
    </blockquote>
    <pre wrap="">webuser&nbsp; 14986&nbsp; 0.0&nbsp; 2.1&nbsp; 54236 19048 ?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; S&nbsp;&nbsp;&nbsp; Mar04&nbsp;&nbsp; 0:01
/usr/local/httpd-2.2.11/bin/httpd -d /usr/local/httpd-2.2.11 -f
/usr/local/httpd-2.2.11/conf/httpd.conf
webuser&nbsp; 14987&nbsp; 0.0&nbsp; 3.2 144128 29540 ?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; S&nbsp;&nbsp;&nbsp; Mar04&nbsp;&nbsp; 0:01
/usr/local/httpd-2.2.11/bin/httpd -d /usr/local/httpd-2.2.11 -f
/usr/local/httpd-2.2.11/conf/httpd.conf
webuser&nbsp; 14998&nbsp; 0.0&nbsp; 3.2 144212 29660 ?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; S&nbsp;&nbsp;&nbsp; Mar04&nbsp;&nbsp; 0:01
/usr/local/httpd-2.2.11/bin/httpd -d /usr/local/httpd-2.2.11 -f
/usr/local/httpd-2.2.11/conf/httpd.conf

    </pre>
    <blockquote type="cite">
      <pre wrap="">&nbsp; /usr/sbin/lsof -p 14986 | grep expat
      </pre>
    </blockquote>
    <pre wrap="">httpd&nbsp;&nbsp; 14986 webuser&nbsp; mem&nbsp;&nbsp;&nbsp; REG&nbsp;&nbsp;&nbsp;&nbsp; 3,5&nbsp;&nbsp; 572313&nbsp; 972637
/opt/Python/lib/python2.6/lib-dynload/pyexpat.so
httpd&nbsp;&nbsp; 14986 webuser&nbsp; mem&nbsp;&nbsp;&nbsp; REG&nbsp;&nbsp;&nbsp;&nbsp; 3,5&nbsp;&nbsp; 133120 1883791
/lib/libexpat.so.0.5.0

I am not sure why I get 2 shared libaries here.

    </pre>
    <blockquote type="cite">
      <pre wrap="">&nbsp; strings&nbsp; /lib/libexpat.so.0.5.0 | grep expat_
      </pre>
    </blockquote>
    <pre wrap="">expat_1.95.8


    </pre>
    <blockquote type="cite">
      <pre wrap="">strings /opt/Python/lib/python2.6/lib-dynload/pyexpat.so | grep expat_
      </pre>
    </blockquote>
    <pre wrap="">pyexpat.expat_CAPI 1.0
expat_CAPI
expat_2.0.0


    </pre>
    <blockquote type="cite">
      <blockquote type="cite">
        <blockquote type="cite">
          <pre wrap="">import pyexpat
pyexpat.version_info
          </pre>
        </blockquote>
      </blockquote>
    </blockquote>
    <pre wrap="">(2, 0, 0)


So it seems like I need get expat_1.95.8 apache is using up to expat_2.0.0.
Can I simply try replacing the 1.95.8 library with 2.0.0. Or do I have
recompile with Apache? If I do recompile I need to recompile apache with
mod_python as well?




    </pre>
  </blockquote>
  <pre wrap=""><!---->
_______________________________________________
Mod_python mailing list
<a class="moz-txt-link-abbreviated" href="mailto:[email protected]">[email protected]</a>
<a class="moz-txt-link-freetext" href="http://mailman.modpython.org/mailman/listinfo/mod_python">http://mailman.modpython.org/mailman/listinfo/mod_python</a>

  </pre>
</blockquote>
<br>
</body>
</html>

--Boundary_(ID_Sr64i1wyFFoKyaL168G0kA)--

--===============1227385941==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Mod_python mailing list
[email protected]
http://mailman.modpython.org/mailman/listinfo/mod_python

--===============1227385941==--