Last night I found and fixed a bug in the new persistent link cache
code which seriously broke updates to the link tables; when the
persistent cache was loaded, the 'old' links variables weren't being
set at all, so every link in the page would be added as a duplicate to
the database, and newly removed links would not get cleared. On top of
this the linkscc entry wasn't cleared due to a missing global
declaration. Oh, those annoying little tiny things!
Anyway, we've still got a whole bunch of _old_ link table bugs to deal
with, as well as having monstrously corrupt tables to start with. E23's
working on speeding up the link rebuild script, which is great -- soon
we hopefully will be able to clean up the tables without taking the
wikis offline for half a day just to do it.
We really should scrutinize the persistent linkcache stuff a little
more, since synchronization errors between the cache and the regular
links tables can cause fun trouble that's hard to track down.
(Particularly as the data blob in linkscc is gzipped to minimize
io/cache stress; this makes it very hard to inspect it manually.)
Anyway, a number of reported link-table bugs have been consolidated
into bug #802814:
http://sourceforge.net/tracker/index.php?
func=detail&aid=802814&group_id=34373&atid=411192
Bad link tables are mostly just a nuisance at present, but they do
interfere with a lot of things.
-- brion vibber (brion @
pobox.com)