View Issue Details

IDProjectCategoryView StatusLast Update
0008628phpList 3 applicationBatch Processingpublic09-10-10 03:58
Reporteridallen Assigned To 
Status resolvedResolutionfixed 
Product Version2.10.3 
Target Version2.10.7Fixed in Version2.10.4 
Summary0008628: php segmentation fault in Sql_Query on unset($GLOBALS['lastquery']);
DescriptionLatest phplist causes php to segfault when running the batch queue via cron.

Output from a cron job that runs index.php -pprocessqueue:

    eAccelerator requires Zend Engine API version 20050606.
    The Zend Engine API version 20021010 which is installed, is outdated.

    PHPlist version 2.10.3 (c) 2000-2006 Tincan Ltd,
    Sending in batches of 60 emails
    Script stage: 6
    Finished, Nothing to do
    bin/ line 37: 23501 Segmentation fault
      /usr/local/bin/php public_html/mailing_list/admin/index.php -pprocessqueue

I can't reproduce the output from the command line; it only dies when
being run from the cron.

This is the version of PHP running on this host (a cPanel webhost):

    $ /usr/local/bin/php -v
    PHP 4.3.11 (cli) (built: Sep 11 2005 10:10:12)
    Copyright (c) 1997-2004 The PHP Group
    Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

This is the fix I made to phplist to work around the problem:

    $ diff
    < unset($GLOBALS['lastquery']);
    > # fix to avoid PHP seg fault Nov 2006 -IAN!
    > if( isset($GLOBALS['lastquery']) ) {
    > unset($GLOBALS['lastquery']);
    > }

I know little about PHP to know why this is necessary. It just works.
TagsNo tags attached.


related to 0003721 closed phplist 2.10.x 
related to 0010507 closed segmentation fault 



25-11-06 12:23

administrator   ~0021407

thanks for finding what caused it, and how to resolve it, that's very helpful