[Date Prev][Date Next][Thread Prev][Thread Next][Interchange by date
][Interchange by thread
]
[ic] PreFork causes errors
On Mon, 2002-02-18 at 12:53, Mike Heins wrote:
> Quoting Bill Carr (bill@worldwideimpact.com):
> > IC 4.8.3, PERL 5.6.1, Linux-2.4.16
> >
> > I can not set PreFork to Yes on my production machines without creating
> > periodic (about 9 out of 10) Internal Server errors. I see "...index
> > Died in server spawn: DBD:mysq:st execute failed: MySQL server has gone
> > away at (eval 55) line 18." in /var/log/interchange/error.log. I have
> > had this problem as long as I have known about PreFork (around 4.8.1).
> >
> > On my development machine it is not a problem.
> >
> > The devolopment machine is almost identical to the production machines.
> > The only difference that I can think of is that the production machines
> > are behind a LVS-NAT.
> >
> > Any ideas? I have the idea that setting PreFork will improve
> > performance. Should I just not care?
>
> Hmm.
>
> Try changing the call to connect() in Vend::Table::DBI::open to
> connect_cached() and see if this goes away...
That does not make the problem go away.
I am not receiving Internal Server errors any longer, regardless of the
suggestion above. About 9 out of 10 times I get a partial page. The
other time I get what I expect.
Here are some more details.
I have a UserTag like this:
UserTag layout HasEndTag 1
UserTag layout Routine <<EOR
sub {
my $input = shift;
return <<"EOL";
$Variable->{TOP}
$Variable->{HEADER}
$input
$Variable->{FOOTER}
$Variable->{BOT}
EOL
}
EOR
A typical page looks like this:
index.html:
[layout]
[query ....][/query]
And other HTML and IC stuff
[/layout]
When I request index.html 9 out of 10 times I get TOP, HEADER, FOOTER
and BOT but not the body of the page.
This behavior goes away when I don't set PreFork on the production
machines. I never have this problem on my Devo machine.
--
Bill Carr
Worldwide Impact
bill@worldwideimpact.com
413-253-6700