[ic] mysql having problems reconnecting on catalog reconfig
Mike Heins
mike at perusion.com
Thu Nov 10 14:19:36 UTC 2011
Quoting Mike Heins (mike at perusion.com):
> Quoting Peter (peter at pajamian.dhs.org):
> > I'm having problems with IC 5.7 (latest GIT HEAD), perl 5.12.4 and
> > mysql. When a catalog reconfig is done none of the sql tables would
> > load back up all giving errors like this in catalog.cfg:
> >
> > table 'variants' failed: table variants connect failed -- unknown error.
> > Driver 'mysql' installed?
> >
> > I traced the problem down to DBI.pm and found that if I change line 372
> > from:
> >
> > $db = DBI->connect( @call ) unless $bad;
> >
> > ...to:
> >
> > $db = DBI->connect( @call );
> >
> > ...then everything now works again. It would seem that for some reason
> > the ached connection goes bad, but it all comes back to life if I allow
> > an attempt to go through to reconnect.
> >
> > I then checked the git logs to find out the history behind that line of
> > code and traced it back to this commit:
> >
> > https://github.com/interchange/interchange/commit/17a12070#L0R372
> >
> > I'm not sure I really understand what the problem was that was fixed
> > back in 2001 by this commit, but perhaps someone (Mike?) could shed some
> > light on it? It seems to make sense to me to try to connect again if
> > the connection goes bad, so why are we not doing that now? Is there any
> > other light that can be shed on this problem?
>
> It's a part of the alternate DSN stuff, where you can fall back to a
> different database server if one is down.
>
> But the bigger question is -- why did your connect fail originally,
> so that you have a connection marked as bad?
Going forward, perhaps it makes sense to reset %DBI_connect_bad
on a catalog reconfig.
--
Mike Heins
Perusion -- Expert Interchange Consulting http://www.perusion.com/
phone +1.765.328.4479 <mike at perusion.com>
There's nothing sweeter than life nor more precious than time.
-- Barney
More information about the interchange-users
mailing list