Item10223: deep recursion warning editing a bug item
Priority: Urgent
Current State: Confirmed
Released In: n/a
Target Release: n/a
How to reproduce: edit an Item; see the error.log file for something like
Max recursive depth reached: %CLASS%
and
Max recursive depth reached: %PRIORITY%
Independent of
BugsContrib this error is reproducible using the following simple parametrized
INCLUDE:
%STARTINCLUDE% %CLASS% %STOPINCLUDE%
%INCLUDE{"%TOPIC%" CLASS="%CLASS%"}%
%CLASS is assigned itself as a value. This pattern can be found in two places in
BugsContrib:
Priority and
AppliesTo.
The idea there is to forward the variable Set to some %URLPARAM expression to the parametrized
INCLUDE. However, this fails
when the core reads the DataForm definition as the %CLASS (and %PRIORITY) settings are not asserted in that situation.
They only contain valid values when you
visit the
Priority or
AppliesTo topics, but not as part of the process when
the core reads the DataForm definition.
That's why the recursion happens where Foswiki tries to set %SOMEVARIABLE to the value %SOMEVARIABLE which ends up into non-terminating
recursion when %SOMEVARIABLE is undefined.
BugsContrib still works properly in that respect, however does generate these warning messages.
--
MichaelDaum - 04 Jan 2011
Bumping this to urgent. We are at 250,000 errors logged on foswiki.org. and increasing as fast as 10-30 per minute.
--
GeorgeClark - 14 Mar 2012