[ic] workaround found for 99%CPU usage problem in Vend/SessionFile.pm: "::uneval($ref);" fixes it

Mike Heins interchange-users@interchange.redhat.com
Wed Nov 14 15:40:01 2001


Quoting Steffen Dettmer (steffen@dett.de):
> Hi,
> 
> as I wrote, I had a problem with hanging interchange processes.
> strace showed that there is an endless loop (see my mails for
> details). Surprisingly I found that this problem seems not to
> occure with enabled debugging. I assumed a side effect.
> 
> I tried to determine the position with try and error. I found a
> single line that seem to be a workaround. This line in in the
> file Vend/SessionFile.pm. It's at the end in sub DELETE and reads
> as it follows:
> 
> ::logDebug("storing in $SessionFile: " . ::uneval($ref));
> 
> To go sure, I used the original File, which has this line
> commented out. Instead I added:
> 
> ::uneval($ref);
> 
> And it works, too. No 99% CPU processes. I don't know what unveal
> does, but it workarounds the problem. I'm afraid that this don't
> fixes the issue but gives a point less where it gets triggered.
> 
> For completness a patch:

I don't see any context here, but I do recommend that no one do
this -- you shouldn't be sticking in patches when you know not what
they do.

I am guessing your operating system is BSD. Why I should have to
guess, I don't know -- it should be mandatory to mention that
in a message like this.

In any case, the thing you mentioned makes it seem like you
have a problem with file locks.  I would run my "make test"
on Perl and see whether it passed 100%.

-- 
Red Hat, Inc., 3005 Nichols Rd., Hamilton, OH  45013
phone +1.513.523.7621      <mheins@redhat.com>

Nature, to be commanded, must be obeyed. -- Francis Bacon