InsaneJournal Announcements

Comment rot solved

InsaneJournal Announcements

Comment rot solved

Previous Entry Add to Memories Tell a Friend Next Entry
I found the cause of comment rot. There was an old legacy setting that I didn't know what it did. It was among the last of the things to trace out in the code. I traced it out and found the offending code that was deleting comments and entry properties (status, userpic, etc) and removed it. Please let me know in THIS post if any NEW comment rot occurs after this post.

This has been a very very long and trying road and I want to thank all of you who have stuck it out here in spite of this major bug.


sub new_entry_cleanup_hack {
my ($u, $jitemid) = @_;

# sanitize input
$jitemid += 0;
return unless $jitemid;
my $ownerid = LJ::want_userid($u);
return unless $ownerid;

# delete logprops
$u->do("DELETE FROM logprop2 WHERE journalid=$ownerid AND jitemid=$jitemid");

# delete comments
my $ids = LJ::Talk::get_talk_data($u, 'L', $jitemid);
return unless ref $ids eq 'HASH' && %$ids;
my $list = join ',', map { $_+0 } keys %$ids;
$u->do("DELETE FROM talk2 WHERE journalid=$ownerid AND jtalkid IN ($list)");
$u->do("DELETE FROM talktext2 WHERE journalid=$ownerid AND jtalkid IN ($list)");
$u->do("DELETE FROM talkprop2 WHERE journalid=$ownerid AND jtalkid IN ($list)");
}
</pre>



Edit: After looking at the code even more closely I am sure that this was the cause, I think we can call comment rot a closed issue. Now to getting to writing a mass icon uploader.
  • As far as I know I wasn't affected, but yay for most likely figuring the problem out. I know how difficult it can be trying to find your way around code that was written by someone else (not to mention my own once a reasonable amount of time has passed)

    • If you ever had an entries have the default icon or the security setting reset, then you were affected. The code tells me that.
Powered by InsaneJournal