I'm having this very strange behavior using Saxon C php extension calling the XsltProcessor() constructor. When I call it the first time, everything works fine, but the next time I call it, if I wait about 10 seconds or more to call it again, it makes apache restart and I get the error in question:
[pid 4540:tid 476] AH00428: Parent: child process 5168 exited with status 1 -- Restarting.
Then it restarts:
[pid 4540:tid 476] AH00418: Parent: Created child process 5184
And the next time I call the constructor again, $xslt = new XsltProcessor(); it works fine, but when calling it again, apache crashes again,
Parent: child process 5184 exited with status 1
Killing the last child process created. And this goes on and on.
I did read for hours trying to find about this, all I got was that "exited with status 1" didn't really mean anything, that it is like a general fail error code.
So I was wondering if there's any way to know what this really means? And also, can you kill the child process before calling the constructor? Like patching the error the wrong way.
Here's the piece of the code:
$xslt = new XsltProcessor(); <--- Here it crashes apache every second time
$result = $xslt->xsltApplyStylesheet($xmlfile, $xsltfile);
if($result == NULL) {
$errCount = $xslt->getExceptionCount();
echo $errCount;
if($errCount>0){
echo 'Error: '.$xslt->getErrorMessage(0)." code:".$xslt->getErrorCode(0);
}
} else {
echo $result;
}
Here's the link to the saxon c site: http://www.saxonica.com/saxon-c/index.xml
Any tips or suggestions would be greatly appreciated, I tried moving the suggested dlls for the Parent: child process exited with status 3221226356 — Restarting, but it didn't do anything for me.