Page 1 of 2

Threads that break

Posted: Sat Nov 18, 2006 7:06 pm
by Dr. Doog
Surely you've noticed in threads such as Word Association that sometimes the link sends you to a page that starts several posts after the last post (like, say the thread has 12,403 posts and the link to the last page starts at post 12,405. It gives you a "no thread exists here" error and then you have to edit the URL to a lower number. Is there any way to fix this? Is it from deleting some posts in the thread?

Posted: Sun Nov 19, 2006 1:49 am
by Zaaphod
Got me. I'm as baffled about that as you are. :?:

Posted: Sun Nov 19, 2006 2:22 am
by Kyler Thatch
We've had that concern over at another forum I go to. What we did was to lock the Word Association thread in question after 1500 posts (or around that number), and continuing the game on an entirely new thread. So far we haven't had any problems yet.

Does that help?

Posted: Sun Nov 19, 2006 3:43 am
by Dr. Doog
no. :( I like the really friggen big thread

Posted: Sun Nov 19, 2006 4:16 am
by Richard K Niner
There's always the database repair solution: the reply counter is stored in phpbb_topics.topic_replies, so the process would be:
  1. UPDATE phpbb_topics SET topic_status = 1 WHERE topic_id = 105;
  2. SELECT COUNT(*) FROM phpbb_posts WHERE topic_id = 105; (this is a temporary lock while we fix this)
  3. Record this number decremented by 1 (the initial post is not a reply). We will call this $replies, for now.
  4. UPDATE phpbb_topics SET topic_status = 0, topic_replies = $replies WHERE topic_id = 105; (Replace $replies with one less than the total count. This makes the correction and unlocks the thread)

Posted: Sun Nov 19, 2006 4:18 am
by Dr. Doog
I like Richard's idea

Posted: Sun Nov 19, 2006 2:52 pm
by Richard K Niner
On that note, I'll point out that 105 is the Word Association thread.

Posted: Mon Dec 18, 2006 2:13 am
by The Donmeister
There's always the database repair solution: the reply counter is stored in phpbb_topics.topic_replies, so the process would be:
  1. UPDATE phpbb_topics SET topic_status = 1 WHERE topic_id = 105;
  2. SELECT COUNT(*) FROM phpbb_posts WHERE topic_id = 105; (this is a temporary lock while we fix this)
  3. Record this number decremented by 1 (the initial post is not a reply). We will call this $replies, for now.
  4. UPDATE phpbb_topics SET topic_status = 0, topic_replies = $replies WHERE topic_id = 105; (Replace $replies with one less than the total count. This makes the correction and unlocks the thread)
I'm getting said problem with word association, but I don't understand any of RKN's post.

Posted: Mon Dec 18, 2006 3:06 am
by Richard K Niner
It's a bunch of SQL statements...

Posted: Mon Dec 18, 2006 3:33 am
by Dr. Doog
I got it :)

Jason, or one of the mods, want to fix that? I'm sure one of us would be glad too if you don't know how or don't have the time.

Posted: Mon Dec 18, 2006 3:48 am
by Zaaphod
I think at the moment only Jason can fix it. We'll have to hassle him when he gets back from vacation. :D

Posted: Tue Dec 19, 2006 2:05 am
by Dr. Doog
oh yeah...he is on vacation... I forgot :P

Posted: Sat Dec 23, 2006 11:32 pm
by The Donmeister
I think at the moment only Jason can fix it. We'll have to hassle him when he gets back from vacation. :D
Bump!

Posted: Sun Dec 24, 2006 4:26 am
by Dr. Doog
...is he back?

Posted: Mon Dec 25, 2006 1:10 am
by Zaaphod
Not yet. Unless he sneaked in without telling anyone. :P