Apache crashes with munmap_chunk(): invalid pointer after update to php7 on Jessie

Viewed 2676

I recently updated to php 7.0.4 on my server running a Debian 8.

here is what dpkg -l | grep php gives me:

ii  libapache2-mod-php7.0          7.0.4-1~dotdeb+8.1           amd64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  php-common                     21-1~dotdeb+8.1              all          Common files for PHP packages
ii  php-readline                   21-1~dotdeb+8.1              all          readline module for PHP [default]
ii  php7.0                         7.0.4-1~dotdeb+8.1           all          server-side, HTML-embedded scripting language (metapackage)
ii  php7.0-cli                     7.0.4-1~dotdeb+8.1           amd64        command-line interpreter for the PHP scripting language
ii  php7.0-common                  7.0.4-1~dotdeb+8.1           all          Common files for packages built from the PHP source
ii  php7.0-curl                    7.0.4-1~dotdeb+8.1           amd64        CURL module for PHP
ii  php7.0-gd                      7.0.4-1~dotdeb+8.1           amd64        GD module for PHP
ii  php7.0-imap                    7.0.4-1~dotdeb+8.1           amd64        IMAP module for PHP
ii  php7.0-intl                    7.0.4-1~dotdeb+8.1           amd64        Internationalisation module for PHP
ii  php7.0-json                    7.0.4-1~dotdeb+8.1           amd64        JSON module for PHP
ii  php7.0-mcrypt                  7.0.4-1~dotdeb+8.1           amd64        libmcrypt module for PHP
ii  php7.0-mysql                   7.0.4-1~dotdeb+8.1           amd64        MySQL module for PHP
ii  php7.0-opcache                 7.0.4-1~dotdeb+8.1           amd64        Zend OpCache module for PHP
ii  php7.0-readline                7.0.4-1~dotdeb+8.1           amd64        readline module for PHP

My php applications run fine most of the time.But on some requests I just get a Page being generated for no foreseeable reason.

The /var/log/apache2/error.log states in such a case:

*** Error in `/usr/sbin/apache2': munmap_chunk(): invalid pointer: 0x00007efc6ddb4a50 ***
*** Error in `/usr/sbin/apache2': munmap_chunk(): invalid pointer: 0x00007efc6dd5cad0 ***
[Wed Mar 09 11:26:44.940931 2016] [core:notice] [pid 28486] AH00052: child pid 29338 exit signal Aborted (6)
[Wed Mar 09 11:26:44.941017 2016] [core:notice] [pid 28486] AH00052: child pid 29344 exit signal Aborted (6)
*** Error in `/usr/sbin/apache2': munmap_chunk(): invalid pointer: 0x00007efc6dd5cad0 ***
[Wed Mar 09 11:26:46.942581 2016] [core:notice] [pid 28486] AH00052: child pid 29347 exit signal Aborted (6)

I'll give some more information:

Syntax:

$ apachectl configtest
Syntax OK

Version:

apachectl -v
Server version: Apache/2.4.10 (Debian)
Server built:   Nov 28 2015 14:05:48

Before the php update I did not see those errors. What is wrong here? Or how can I better find the source? I am lost here because this error occures kind of random. Sometimes the same request succeeds that faild with this error a minute ago. I would apprechiate your help.

4 Answers

I also kept getting those nasty apache crashes, but none of the solutions above and on other websites were working for me. After a lot of trial and error, I found out the root cause on my system. I manually edited the PHP configuration and added two extensions. Both for Microsoft's SQL Server. I added the following lines to the php.ini

extension=sqlsrv.so
extension=pdo_sqlsrv

I did not notice that I fogot the ".so" at the pdo driver. After changing the lines as shown below, the Apache service is running fine again.

extension=sqlsrv.so
extension=pdo_sqlsrv.so
Related