On 25-11-2011 06:12, Brendan Jurd wrote:
Hello list,
I have a PHP application which generates documentation on the fly with context. This has been working really well, but I am now testing deployment on a new server with a more recent version of context, and it seems to be somehow getting itself into a tight loop.
When I run texexec via the mod_php apache module, the command never returns, and `ps ax` shows the following:
9709 ? S 0:00 sh -c texexec --check 2>&1 9710 ? S 0:00 /bin/sh /usr/bin/texexec --check 9711 ? R 9:59 /usr/bin/texlua /usr/bin/mtxrun --usekpse --execute texexec --check
`top` shows the mtxrun process eating 99.9% CPU. Attaching an strace to this process, once it is underway, shows no output.
My test script is as follows:
<?php $result = null; system("texexec --check 2>&1", $result); print $result . "\n"; ?>
When this same test script is run directly from the command line with `php5 -f test.php`, it works as expected and outputs the following:
MTXrun | kpse fallback with progname 'context' initialized in 0.01 secondsTeXExec | current distribution: web2c TeXExec | context source date: 2010.07.30 11:35 TeXExec | format path: . /root/.texmf-config/web2c/luatex /root/.texmf-var/web2c/luatex /root/texmf/web2c/luatex /etc/texmf/web2c/luatex /var/lib/texmf/web2c/luatex /usr/local/share/texmf/web2c/luatex /usr/share/texmf/web2c/luatex /usr/share/texmf-texlive/web2c/luatex /root/.texmf-config/web2c /root/.texmf-var/web2c /root/texmf/web2c /etc/texmf/web2c /var/lib/texmf/web2c /usr/local/share/texmf/web2c /usr/share/texmf/web2c /usr/share/texmf-texlive/web2c TeXExec | start of analysis TeXExec | end of analysis TeXExec | TeXExec | TeXExec | version 6.2.1 - 1997-2009 - PRAGMA ADE/POD
0
Using --timeout=30 in the arguments to texexec makes no difference; mtxrun nonetheless runs forever until it is signalled.
It seems that this must be down to some kind of difference in Apache's execution environment -- I don't see any other way to explain the same PHP code working in cli and failing in mod_php, even when running as the same user. But what possible environmental factor could lead to mtxrun freaking out like this? I'm hoping someone on this list may be able to point me in the right direction.
This server is a VZ instance running under proxmox, with the following relevant ubuntu packages installed (per the 'natty' release):
context 2010.07.30-1 libapache2-mod-php5 5.3.5-1ubuntu7.3 apache2 2.2.17-1ubuntu1.4
in such cases I always run with --batch to make sure that the job itself cannot block i have no clue Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------