When a topic in the cache needs to be updated the
onReload()
handler is
called but the
_onReload()
method is to be called instead which then
calls the
onReload()
method (mind the underscore). The
_onReload()
handler is the default handler of the
DBCacheContrib::WebDB
base class that
grants that a minimun stuff is done in any case...like setting the
_up
relation.
So the
_up
relation was set only the first time the cache was created but not
when a topic in it needed to be updated (using
_updateCache()
) .
A one-char fix:
--- lib/TWiki/Contrib/DBCacheContrib.pm (revision 8675)
+++ lib/TWiki/Contrib/DBCacheContrib.pm (working copy)
@@ -378,7 +378,7 @@
if ( $readFromFile || $removed ) {
# refresh relations
- $this->onReload( \@readTopic );
+ $this->_onReload( \@readTopic );
}
return ( $readFromCache, $readFromFile, $removed );
Fixed in SVN 8682.
MD