Problem with django served by mod_wsgi on apache 2.2.14 (Ubuntu server 10.04.3 64bits) - _int_malloc error

94 views
Skip to first unread message

sylock

unread,
Feb 10, 2012, 5:27:58 AM2/10/12
to modwsgi
Hello guys,

I have a very strange error with mod_wsgi for a django application
served by apache 2.2.14. Here are the logs in debug mode :
http://dpaste.com/700868/

My django application doesn't seems to be the problem since I can run
it with ./manage.py runserver 0.0.0.0:port and I can access it with my
browser.

The same version on the django application is running fine on my
virtualbox dev guest with the same distrib (Ubuntu 10.04) and same
version of apache 2.2.14

Is someone have an idea?

Thank you very very much,
Nicolas

Graham Dumpleton

unread,
Feb 10, 2012, 5:35:00 AM2/10/12
to mod...@googlegroups.com
Have you tried mod_wsgi with a simple hello world program to see if
that works first before trying to get your Django application running?

http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide#WSGI_Application_Script_File

Graham

> --
> You received this message because you are subscribed to the Google Groups "modwsgi" group.
> To post to this group, send email to mod...@googlegroups.com.
> To unsubscribe from this group, send email to modwsgi+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/modwsgi?hl=en.
>

sylock

unread,
Feb 10, 2012, 5:54:31 AM2/10/12
to modwsgi
I just tried it and I have the exact same problem with the "Hello
world" wsgi.
So what would be the problem cause and how could I resolve it?

The errors in the log file appears as soon as I restart apache2
(before doing any http request).

Regards,
Nicolas

On 10 fév, 11:35, Graham Dumpleton <graham.dumple...@gmail.com> wrote:
> Have you tried mod_wsgi with a simple hello world program to see if
> that works first before trying to get your Django application running?
>
> http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide#WSGI_Ap...
>
> Graham

Graham Dumpleton

unread,
Feb 10, 2012, 6:02:22 AM2/10/12
to mod...@googlegroups.com
Can you try disabling PHP from Apache temporarily?

Graham

sylock

unread,
Feb 10, 2012, 6:11:00 AM2/10/12
to modwsgi
Whaw. It works disabling the php website and php5 module!
Do you have an idea why this behavior?

This server is in production since some months with a php website and
the django one. Everything were working fine untill yesterday!

Today I restarted apache to take some new code into account and then
the errors comes.

I'd like to understand ^^

Regards,
Nicolas

On 10 fév, 12:02, Graham Dumpleton <graham.dumple...@gmail.com> wrote:
> Can you try disabling PHP from Apache temporarily?
>
> Graham
>

Graham Dumpleton

unread,
Feb 10, 2012, 6:16:38 AM2/10/12
to mod...@googlegroups.com
I have heard there were some security updates to PHP recently. If you
have been applying patch updates to the operating system, then it is
possible you installed the PHP updates. It is then possible that the
newer PHP version is linking against a different version of a shared
library than what some Python module is linking against. This can
cause a crash on startup.

These issues can be fun to track down. All I can suggest you try is as
documented in:

http://code.google.com/p/modwsgi/wiki/DebuggingTechniques#Debugging_Crashes_With_GDB

That is, run Apache manually under gdb as 'httpd -X' and see if you
can work out where it is crashing.

Provided the distro doesn't strip too many symbols out, which
unfortunately they do, then you might get an indication of what shared
library it was calling into when it crashed.

The only other way is to run ldd on the PHP .so and any PHP .so
extension modules and then also run ldd on all Python .so extension
modules and library and see if you can spot what shared library of
different version is being loaded.

Usual culprits are libexpat, and SSL libraries.

Graham

sylock

unread,
Feb 10, 2012, 6:49:22 AM2/10/12
to modwsgi
Thank you for your help.
I never used gdb so I don't really know how to interpret the output.
here it is, if you have an idea :
root@nrbnrl0049:/etc/apache2/conf.d# . /etc/apache2/envvars
root@nrbnrl0049:/etc/apache2/conf.d# gdb /usr/sbin/apache2
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/
gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show
copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/apache2...done.
(gdb) run -X
Starting program: /usr/sbin/apache2 -X
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe97fb700 (LWP 29704)]
[Thread 0x7fffe97fb700 (LWP 29704) exited]
*** glibc detected *** /usr/sbin/apache2: malloc(): memory corruption
(fast): 0x00007ffff882c7d0 ***
======= Backtrace: =========
/lib/libc.so.6(+0x775b6)[0x7ffff71bf5b6]
/lib/libc.so.6(+0x7b8e9)[0x7ffff71c38e9]
/lib/libc.so.6(__libc_malloc+0x6e)[0x7ffff71c458e]
/opt/oracle/client/lib/libclntsh.so.11.1(sltskjadd+0x2b)
[0x7fffee802dcb]
/opt/oracle/client/lib/libclntsh.so.11.1(sltskminit+0x89)
[0x7fffee803081]
/opt/oracle/client/lib/libclntsh.so.11.1(sltsini+0xb9)[0x7fffee802bb7]
/opt/oracle/client/lib/libclntsh.so.11.1(slxmxinit+0x13)
[0x7fffee7344e7]
/opt/oracle/client/lib/libclntsh.so.11.1(lxzinit+0x26)[0x7fffee7b302e]
/opt/oracle/client/lib/libclntsh.so.11.1(lpminitm+0xa2)
[0x7fffee821d94]
/opt/oracle/client/lib/libclntsh.so.11.1(lpminit+0x14)[0x7fffee821cec]
/opt/oracle/client/lib/libclntsh.so.11.1(gsluizgcGetContext+0x27)
[0x7fffef385103]
/opt/oracle/client/lib/libclntsh.so.11.1(gslutcTraceWithCtx+0x168)
[0x7fffef389b4a]
/opt/oracle/client/lib/libclntsh.so.11.1(ldap_set_option+0x34)
[0x7fffef3545e8]
/lib/libnss_ldap.so.2(+0x6b2c)[0x7fffe8bcab2c]
/lib/libnss_ldap.so.2(+0x7832)[0x7fffe8bcb832]
/lib/libnss_ldap.so.2(_nss_ldap_initgroups_dyn+0x288)[0x7fffe8bcc6d8]
/lib/libc.so.6(+0xa6f46)[0x7ffff71eef46]
/lib/libc.so.6(initgroups+0x63)[0x7ffff71ef123]
/usr/lib/apache2/modules/mod_wsgi.so(+0x14bd5)[0x7ffff13babd5]
/usr/lib/apache2/modules/mod_wsgi.so(+0x18607)[0x7ffff13be607]
/usr/sbin/apache2(ap_run_post_config+0x59)[0x7ffff7fd50b9]
/usr/sbin/apache2(main+0xb17)[0x7ffff7fc1327]
/lib/libc.so.6(__libc_start_main+0xfd)[0x7ffff7166c4d]
/usr/sbin/apache2(+0x2f2e9)[0x7ffff7fc02e9]
======= Memory map: ========
7fffe4000000-7fffe4021000 rw-p 00000000 00:00 0
7fffe4021000-7fffe8000000 ---p 00000000 00:00 0
7fffe8bc4000-7fffe8bd8000 r-xp 00000000 fb:00
6078 /lib/libnss_ldap-2.11.1.so
7fffe8bd8000-7fffe8dd7000 ---p 00014000 fb:00
6078 /lib/libnss_ldap-2.11.1.so
7fffe8dd7000-7fffe8dd8000 r--p 00013000 fb:00
6078 /lib/libnss_ldap-2.11.1.so
7fffe8dd8000-7fffe8dd9000 rw-p 00014000 fb:00
6078 /lib/libnss_ldap-2.11.1.so
7fffe8dd9000-7fffe8de4000 rw-p 00000000 00:00 0
7fffe8de4000-7fffe8dfa000 r-xp 00000000 fb:00
177 /lib/libgcc_s.so.1
7fffe8dfa000-7fffe8ff9000 ---p 00016000 fb:00
177 /lib/libgcc_s.so.1
7fffe8ff9000-7fffe8ffa000 r--p 00015000 fb:00
177 /lib/libgcc_s.so.1
7fffe8ffa000-7fffe8ffb000 rw-p 00016000 fb:00
177 /lib/libgcc_s.so.1
7fffe8ffb000-7fffe8ffc000 ---p 00000000 00:00 0
7fffe8ffc000-7fffe97fc000 rwxp 00000000 00:00 0
7fffe97fc000-7fffe988f000 r-xp 00000000 fb:08
35907 /usr/lib/libnetsnmp.so.15.1.2
7fffe988f000-7fffe9a8f000 ---p 00093000 fb:08
35907 /usr/lib/libnetsnmp.so.15.1.2
7fffe9a8f000-7fffe9a90000 r--p 00093000 fb:08
35907 /usr/lib/libnetsnmp.so.15.1.2
7fffe9a90000-7fffe9a92000 rw-p 00094000 fb:08
35907 /usr/lib/libnetsnmp.so.15.1.2
7fffe9a92000-7fffe9ac7000 rw-p 00000000 00:00 0
7fffe9ac7000-7fffe9acd000 r-xp 00000000 fb:08
138034 /usr/lib/php5/20090626/snmp.so
7fffe9acd000-7fffe9ccd000 ---p 00006000 fb:08
138034 /usr/lib/php5/20090626/snmp.so
7fffe9ccd000-7fffe9ccf000 r--p 00006000 fb:08
138034 /usr/lib/php5/20090626/snmp.so
7fffe9ccf000-7fffe9cd0000 rw-p 00008000 fb:08
138034 /usr/lib/php5/20090626/snmp.so
7fffe9cd0000-7fffe9cd7000 r-xp 00000000 fb:08
137857 /usr/lib/php5/20090626/pdo_mysql.so
7fffe9cd7000-7fffe9ed6000 ---p 00007000 fb:08
137857 /usr/lib/php5/20090626/pdo_mysql.so
7fffe9ed6000-7fffe9ed7000 r--p 00006000 fb:08
137857 /usr/lib/php5/20090626/pdo_mysql.so
7fffe9ed7000-7fffe9ed8000 rw-p 00007000 fb:08
137857 /usr/lib/php5/20090626/pdo_mysql.so
7fffe9ed8000-7fffe9eee000 r-xp 00000000 fb:08
138037 /usr/lib/php5/20090626/pdo.so
7fffe9eee000-7fffea0ed000 ---p 00016000 fb:08
138037 /usr/lib/php5/20090626/pdo.so
7fffea0ed000-7fffea0f0000 r--p 00015000 fb:08
138037 /usr/lib/php5/20090626/pdo.so
7fffea0f0000-7fffea0f1000 rw-p 00018000 fb:08
138037 /usr/lib/php5/20090626/pdo.so
7fffea0f1000-7fffea10b000 r-xp 00000000 fb:08
137861 /usr/lib/php5/20090626/mysqli.so
7fffea10b000-7fffea30b000 ---p 0001a000 fb:08
137861 /usr/lib/php5/20090626/mysqli.so
7fffea30b000-7fffea30e000 r--p 0001a000 fb:08
137861 /usr/lib/php5/20090626/mysqli.so
7fffea30e000-7fffea30f000 rw-p 0001d000 fb:08
137861 /usr/lib/php5/20090626/mysqli.so
7fffea30f000-7fffea4d4000 r-xp 00000000 fb:08
34434 /usr/lib/libmysqlclient_r.so.16.0.0
7fffea4d4000-7fffea6d4000 ---p 001c5000 fb:08
34434 /usr/lib/libmysqlclient_r.so.16.0.0
7fffea6d4000-7fffea6d9000 r--p 001c5000 fb:08
34434 /usr/lib/libmysqlclient_r.so.16.0.0
7fffea6d9000-7fffea723000 rw-p 001ca000 fb:08
34434 /usr/lib/libmysqlclient_r.so.16.0.0
7fffea723000-7fffea724000 rw-p 00000000 00:00 0
7fffea724000-7fffea72f000 r-xp 00000000 fb:08
137859 /usr/lib/php5/20090626/mysql.so
7fffea72f000-7fffea92e000 ---p 0000b000 fb:08
137859 /usr/lib/php5/20090626/mysql.so
7fffea92e000-7fffea930000 r--p 0000a000 fb:08
137859 /usr/lib/php5/20090626/mysql.so
7fffea930000-7fffea931000 rw-p 0000c000 fb:08
137859 /usr/lib/php5/20090626/mysql.so
7fffea931000-7fffea95b000 r-xp 00000000 fb:08
44732 /usr/lib/libmcrypt.so.4.4.8
7fffea95b000-7fffeab5b000 ---p 0002a000 fb:08
44732 /usr/lib/libmcrypt.so.4.4.8
7fffeab5b000-7fffeab5d000 r--p 0002a000 fb:08
44732 /usr/lib/libmcrypt.so.4.4.8
7fffeab5d000-7fffeab5f000 rw-p 0002c000 fb:08
44732 /usr/lib/libmcrypt.so.4.4.8
7fffeab5f000-7fffeab64000 rw-p 00000000 00:00 0
7fffeab64000-7fffeab6c000 r-xp 00000000 fb:08
165252 /usr/lib/php5/20090626/mcrypt.so
7fffeab6c000-7fffead6c000 ---p 00008000 fb:08
165252 /usr/lib/php5/20090626/mcrypt.so
7fffead6c000-7fffead6e000 r--p 00008000 fb:08
165252 /usr/lib/php5/20090626/mcrypt.so
7fffead6e000-7fffead6f000 rw-p 0000a000 fb:08
165252 /usr/lib/php5/20090626/mcrypt.so
7fffead6f000-7fffead72000 r-xp 00000000 fb:00
1072 /lib/libgpg-error.so.0.4.0
7fffead72000-7fffeaf71000 ---p 00003000 fb:00
1072 /lib/libgpg-error.so.0.4.0
7fffeaf71000-7fffeaf72000 r--p 00002000 fb:00
1072 /lib/libgpg-error.so.0.4.0

And it hangs there.

Nicolas

On 10 fév, 12:16, Graham Dumpleton <graham.dumple...@gmail.com> wrote:
> I have heard there were some security updates to PHP recently. If you
> have been applying patch updates to the operating system, then it is
> possible you installed the PHP updates. It is then possible that the
> newer PHP version is linking against a different version of a shared
> library than what some Python module is linking against. This can
> cause a crash on startup.
>
> These issues can be fun to track down. All I can suggest you try is as
> documented in:
>
> http://code.google.com/p/modwsgi/wiki/DebuggingTechniques#Debugging_C...
>
> That is, run Apache manually under gdb as 'httpd -X' and see if you
> can work out where it is crashing.
>
> Provided the distro doesn't strip too many symbols out, which
> unfortunately they do, then you might get an indication of what shared
> library it was calling into when it crashed.
>
> The only other way is to run ldd on the PHP .so and any PHP .so
> extension modules and then also run ldd on all Python .so extension
> modules and library and see if you can spot what shared library of
> different version is being loaded.
>
> Usual culprits are libexpat, and SSL libraries.
>
> Graham
>

sylock

unread,
Feb 10, 2012, 6:54:18 AM2/10/12
to modwsgi
Is is better looking on dpaste :
http://dpaste.com/700907/
> ...
>
> plus de détails »

sylock

unread,
Feb 10, 2012, 9:26:35 AM2/10/12
to modwsgi
Thank you for you help. I think I'll try to setup 2 instances of
apache. One for php stuff and the other for the django website.
I think it will be the less painfull option.
> ...
>
> plus de détails »

Graham Dumpleton

unread,
Feb 10, 2012, 10:41:47 PM2/10/12
to mod...@googlegroups.com
The only other thing can suggest is progressively disable sets of PHP
extensions and even possible Apache modules you don't need and see
which is the one causing the conflict. The stack trace points at
Oracle libraries but that could just be the thing it eventually causes
a problem for and not the source of the original problem.

Graham

Reply all
Reply to author
Forward
0 new messages