You can check it out yourself by editing a story in LC and clicking
Choose Topics, but there seems to be an extra phantom topic at
the top of the scroller list, one with no name and tid 0 apparently.
Its HTML is:
<span id="st-line-1" ondblclick="st_ok()"
onclick="st_toggle_select(1,0)"><img id="st-node-1"...
I don't see this on slash.mccarthy.vg.
And I did a Dumper() of LC's topic tree and it looks fine.
So I don't know what's going on...
Logged In: YES
user_id=3660
I saw this and thought it was a data problem. Apparently not! I'll look.
Logged In: YES
user_id=3660
This is a data problem. My guess is somewhere, someone is modifying
the cached $tree. Best I can do without figuring out where (could be
anywhere) is to skip tids that evaluate to false, which is what I added
code for (next unless $tid).
This should be tracked down and properly fixed, of course.
Logged In: YES
user_id=3889
One way to do this would be to add closure debug code to getTopicTree()
that throws an error if the number of keys has increased since the last
time it was called.
Logged In: YES
user_id=3660
OK, I found it. Another autovivify, of course.
$story->{topic} = $tree->{$story->{tid}}{keyword};
I tied again to find the problem. From now on I am just leaving the tie
class in Slash::Utility::Environment, and then it is simple to modify the
STORE method to detect the condition we want, and then tie the hash
we're trying to debug. This can be used for all our cached hashes, if they
are running into problems. An example is given in the comments in
Environment.pm.
Logged In: YES
user_id=3889
Thanks pudge (and sorry it took me so long to close this)