Malte Ubl wrote:
[...]
We made this test on the production system where the error seems to occur on about 50% of the occassions described in my older mails.

We introduced a #line statement which gives conclusive results pointing to this line in PerlRun.pm:
$pr->{'code'} = $pr->{r}->slurp_filename; # this is line 215

Then we pumped $pr using Devel::Peek. The result is:
<dump>
SV = RV(0x87893e4) at 0x8461c04
[...]
</dump>

There doesn't seem to be anything read-only here?

no, but there could be other things that hang off those structures.

One extra piece of information: The app that we ported to mod_perl uses file-locks (flock) using type glob (pre perl 5.6 style) file handles.

Could this error occur if the close or unlock a type glob that does not have a file handle in it?

May be. It's hard to tell w/o being able to reproduce the problem.

Another thing to try is to change the perl source code to dump the sv:

  sv_dump(sv);

in the place it logs this error, so it may give you an idea what kind of the variable it has the problem with.

also any difference if you replace {r}->slurp_filename with a manually coded version that just reads the file in?

--
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

Reply via email to