Tag Archiv für Recode

Ergänzung zum Beitrag Core-Dumps beim Apache Start mit aktiviertem PHP

Welche Auswirkungen die falsche Reihenfolge der PHP Module in der extension.ini haben kann, zeigte sich heute an dem FreeBSD 10 Server, den ich gerade als  Nachfolger aufsetze:

===>>> Starting build for ports that need updating <<<===

===>>> Launching child to install comms/pear-Horde_ActiveSync

===>>> All >> comms/pear-Horde_ActiveSync (1/8)

===>>> Currently installed version: pear-Horde_ActiveSync-2.19.0
===>>> Port directory: /usr/ports/comms/pear-Horde_ActiveSync

===>>> Starting check for build dependencies
===>>> Gathering dependency list for comms/pear-Horde_ActiveSync from ports
===>>> Dependency check complete for comms/pear-Horde_ActiveSync

===>>> All >> pear-Horde_ActiveSync-2.19.0 (1/8)

===>  Cleaning for pear-Horde_ActiveSync-2.19.3
===>   pear-Horde_ActiveSync-2.19.3 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by pear-Horde_ActiveSync-2.19.3 for building
===>  Extracting for pear-Horde_ActiveSync-2.19.3
=> SHA256 Checksum OK for Horde/Horde_ActiveSync-2.19.3.tgz.
===>  Patching for pear-Horde_ActiveSync-2.19.3
===>   pear-Horde_ActiveSync-2.19.3 depends on file: /usr/local/share/pear/.channels/pear.horde.org.reg - found
===>   pear-Horde_ActiveSync-2.19.3 depends on executable: pear - found
===>  Configuring for pear-Horde_ActiveSync-2.19.3
===>  Staging for pear-Horde_ActiveSync-2.19.3
===>   Generating packing list with pear
*** Signal 11

Stop.
make: stopped in /usr/ports/comms/pear-Horde_ActiveSync

===>>> make stage failed for comms/pear-Horde_ActiveSync
===>>> Aborting update

===>>> Update for comms/pear-Horde_ActiveSync failed
===>>> Aborting update

===>>> You can restart from the point of failure with this command line:
       portmaster <flags> comms/pear-Horde_ActiveSync devel/pear-Horde_Core archivers/pear-Horde_Pack textproc/pear-Horde_CssMinify www/pear-Horde_Dav databases/pear-Horde_Db mail/pear-Horde_Imap_Client devel/pear-Horde_Timezone

Nachdem ich auch hier die Reihenfolge der Module entsprechend abgeändert hatte, lief das Update problemlos. Ein Core Dump mit Signal 11 habe ich sonst bislang nur bei defektem Ram oder ähnlichem erlebt. Deshalb wäre ich hier normalerweise nie auf die Idee der falschen Ladereihenfolge der PHP Module gekommen.

Core-Dumps beim Apache Start mit aktiviertem PHP

Seit einiger Zeit kämpfte ich nach nahezu jedem Update von Apache oder PHP damit, daß anschließend mein Webserver beim Starten mit Core Dump die Grätsche machte. Ich habe dann eigentlich immer erstmal PHP komplett deaktiviert, damit die Websites die ohne PHP laufen, nicht beeinträchtigt wurden. Dann habe ich so lange verschiedene PHP Module neu kompiliert, bis es irgendwann wieder ging. Das war teilweise ein langes, nerviges Vorgehen und vor allem war mir trotz ausführlichem Googlen weder die echte Ursache noch die wirkliche Lösung ersichtlich. Das Problem äußerte sich neben dem kommentarlosen Crash des Indianers durch folgende Einträge im PHP-Log:

[15-Oct-2014 01:07:42 Europe/Berlin] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212/memcache.so' - /usr/local/lib/php/20121212/memcache.so: Undefined symbol &quot;php_session_create_id&quot; in Unknown on line 0
[15-Oct-2014 01:07:42 Europe/Berlin] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212/memcached.so' - /usr/local/lib/php/20121212/memcached.so: Undefined symbol &quot;ps_globals&quot; in Unknown on line 0
[15-Oct-2014 01:07:43 Europe/Berlin] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212/igbinary.so' - /usr/local/lib/php/20121212/igbinary.so: Undefined symbol &quot;ps_globals&quot; in Unknown on line 0
[15-Oct-2014 01:07:43 Europe/Berlin] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212/soap.so' - /usr/local/lib/php/20121212/soap.so: Undefined symbol &quot;ps_globals&quot; in Unknown on line 0
[15-Oct-2014 01:07:43 Europe/Berlin] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20121212/wddx.so' - /usr/local/lib/php/20121212/wddx.so: Undefined symbol &quot;ps_globals&quot; in Unknown on line 0

Heute habe ich dann scheinbar besser gesucht bzw. bin endlich auf die offizielle Seite des Moduls gegangen und habe dort tatsächlich die Lösung gefunden:

Abstürze und Startprobleme von PHP können auftreten, wenn die Recode-Extension nach einer der beiden Extensions mysql oder imap geladen wird. Wenn die Recode-Extension vor den genannten anderen geladen wird, tritt das Problem nicht auf.

Nachdem ich das Modul in der /usr/local/etc/php/extensions.ini von fast letzter an die zweite Stelle verschoben hatte, klappte es auch wieder problemlos mit dem Starten des Indianers!

Ich hoffe, damit ist dieses Problem für immer erledigt.