This article is now available in our new knowledge base: IBM i Apache startup will not complete, PHP keeps restarting, space offset error
Issue
On start up, the PHP child jobs will not start in Apache. Instead, the PHP parent job continually crashes and restarts. Job logs for these jobs may show messages similar to this one:
Space offset X'00000000' or X'00000000ADE58D20' is outside
current limit for object ZENDSVR6 QTMHHTTP 248327.
If this is happening, it is important to shut down Apache quickly, as the job logs will accumulate rapidly.
Environment
Zend Server for IBM i
Resolution
A common reason for a space offset error is some damage in a shared memory object. The reset function provided with Zend Server for IBM i will delete and recreate the shared memory objects, and can often resolve this issue. The following article tells how to do the reset:
If the reset fails to fix the issue, you can perform a clean install:
Perform a clean install of Zend Server for IBM i
There is almost nothing a clean install won't fix, including this issue.
Details
To determine if this is happening on your system, please display the QHTTPSVR subsystem active jobs:
wrkactjob sbs(qhttpsvr)
Apache server instances that run PHP will have jobs similar to these (ZENDSVR6 is the default Apache instance configured for Zend Server, so that is the job name displayed here):
ZENDSVR6 QTMHHTTP BCH .0 PGM-QZHBMAIN SIGW
ZENDSVR6 QTMHHTTP BCI .0 PGM-QZSRLOG SIGW
ZENDSVR6 QTMHHTTP BCI .0 PGM-QZSRLOG SIGW
ZENDSVR6 QTMHHTTP BCI .0 PGM-QZSRHTTP SIGW
ZENDSVR6 QTMHHTTP BCI .0 PGM-zfcgi SELW
ZENDSVR6 QTMHHTTP BCI .0 PGM-php-cgi.bi THDW
ZENDSVR6 QTMHHTTP BCI .0 PGM-php-cgi.bi TIMW
ZENDSVR6 QTMHHTTP BCI .0 PGM-php-cgi.bi TIMW
ZENDSVR6 QTMHHTTP BCI .0 PGM-php-cgi.bi TIMW
ZENDSVR6 QTMHHTTP BCI .0 PGM-php-cgi.bi TIMW
The first jobs that are running functions that start with 'Q' are Apache jobs. The job that runs zfcgi is the FastCGI gateway job that calls PHP. The first job running php-cgi.bi is the parent PHP job. The normal status for this job is THDW. The rest of the jobs running php-cgi.bi are the child PHP jobs.
If this issue is happening to you, there will not be any child jobs. The last job shown will be the parent. If you use F5 rapidly over and over, you will notice the parent job is constantly failing and respawning. If job logging is active for these jobs, you can look into the job log to see if the space offset error is there. If you are not getting job logs, you can set the logging levels for the FastCGI job (zfcgi) and those levels will be used in subsequent parent jobs that start up. Be careful, because these jobs are starting up rapidly, and you can quickly accumulate far too many job logs.
Comments