Bug #16037 Updated: random parse errors on dual xeon machine
| From: | agarza at campus dot mty dot itesm dot mx | Date: | Fri, 07 Jun 2002 20:48:11 +0000 |
| Subject: | Bug #16037 Updated: random parse errors on dual xeon machine | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-9797@lists.php.net to get a copy of this message | ||
ID: 16037
Updated by: agarza@campus.mty.itesm.mx
Reported By: hfielker@softsolutions.de
Status: Open
Bug Type: Scripting Engine problem
Operating System: Win
PHP Version: 4.1.2
New Comment:
I tried switching to PHP4.1.2 on Solaris 5.8, however the problems
still remained.
I followed the steps mentioned by chris@dvdplaza.com.au (editing the
scripts), I was able to get the scripts to work--ALL STRINGS with
${variable} or $variable within them HAD to be changed to get rid of
the errors.
for example:
echo "Hello $foobar";
$foo="This is a ${bar}";
changed to:
echo "Hello ".$foobar;
$foo="This is a ".${bar};
Don´t you think this is rather serious? (Random errors are a
troublesome thing, arent they? Also, the lines reported as having
errors were wrong most of the time).
Previous Comments:
------------------------------------------------------------------------
[2002-06-05 15:17:35] agarza@campus.mty.itesm.mx
I am experiencing the same problem--random parse errors--on SunOS 5.8
with PHP 4.2.1. It seems the larger the script the easier it is to get
a parse error.
PHP is set up to run under NSAPI (Iplanet webserver).
The setup is:
'./configure' '--with-mysql=/usr/local/www/biblio/dev/mysql'
'--with-nsapi=/opt/iplanet/webserver/' '--enable-track-vars'
'--enable-libgcc'
------------------------------------------------------------------------
[2002-05-09 18:00:52] chris@dvdplaza.com.au
Been a week and a half and my error log is still dead silent since
making those changes, compared with several MB worth of
random/intermittent errors that occurred months ago when we first
upgraded to PHP 4.1 onward.
------------------------------------------------------------------------
[2002-05-01 10:54:28] chris@dvdplaza.com.au
Well I've finally found the problem, having lived with all the hell
this has caused all these months...
Let's say you have a line such as:
echo "$blah->blah!!!\n\n";
That line of code may work, but THAT is what is causing the random
failures - if PHP 4.1 onward (including PHP 4.2) is used that line will
randomly fail with parse errors. As a result of those parse errors,
the scripts would not have been fully loaded into memory and what ends
up executing causes even more errors.
I have edited such references in a third-party script we purchased to
instead read as follows:
echo $blah->blah . "!!!\n\n";
As a result of this, instead of my error log filling up thick and fast
per MINUTE with all these weird parse errors (and as a result 90% or so
of page requests working, the remainder failing with a blank page or
partial page) the error log has been dead silent this past couple of
hours and I've not yet seen a single page failure!
------------------------------------------------------------------------
[2002-04-30 22:26:04] chris@dvdplaza.com.au
We have EXACTLY the same problem, and it is 100% specific to PHP 4.1
onward (ie both PHP 4.1 and now PHP 4.2 do this). For example sake
let's compare 4.0.6 to 4.2 - install PHP 4.2 and everything works fine,
but every so often (let's say 10% of the time) they get nothing/part of
a page and the error log shows a parse error (whinges about all sorts
of stuff that isn't true) - a simple refresh solves this problem. It's
easily reproducable, though as per the original repor there it might be
load related as we get a lot of activity. Now here's the thing - PHP
4.1 introduced this, if you put PHP 4.0.6 back on everything is 100%
PERFECT. Put 4.1 or 4.2 back on and 10% or so of requests fail, put
4.0.6 back on and it's perfect, put 4.1 or 4.2 back on and the problem
is back - this has been major hell for us and I hoped to heck 4.2 would
fix it, but alas the problem still exists.... HELP!!!! Running as a
module under Apache, was Apache 1.3.24 until last night - as of last
night we're now under Apache 2.0.35, with the same problem.
------------------------------------------------------------------------
[2002-03-13 06:28:26] hfielker@softsolutions.de
I am using Php in a Win enviornment. The machine has a Raid 5 system,
1GB
Ram and two Xeon 700 CPUs. PHP runs in Apache (1.3.23) as Module. I am
using "official" binaries PHP and Apache.
There are very strang parse errors in files that are 100% ok. The files
are used
in three other installations and there are no errors at all.
I think there is something bad with threading. I noticed the error when
a
session is accessed within a frame e.g. 3 or more independant PHP files
usind the same data.
There is a newsgroup posting dealing with the same problem:
http://groups.google.com/groups?q=php+xeon+parse+error&hl=de&selm=Pine.BSF.4.10.10203070837300.22588-100000%40sea-incorporated.com&rnum=1
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=16037&edit=1