Forum Themes:
Welcome !

 Thread table does not contain all threads issue

Author Message
Samuel

  • Total Posts : 11853
  • Reward points : 180670
  • Joined: May 23 '01
  • Status: offline
Thread table does not contain all threads issue Thu. Sep 18, '08 11:03 AM (permalink)
If you upgraded from version 2.x before Aug 16, 2008 and are facing an issue with regards to your thread count (the original migration script only migrates 10000 messages), please run the following script against your database (using SQL Management Studio):

Declare @count int 
 
 SELECT @count = count(*) FROM pgd_messages m where parent = 0  
     and not exists (SELECT messageID from pgd_threads t where m.messageID = t.messageID) 
 
 
 While @count > 0 Begin 
     Set rowcount 10000 
      
     Insert into [pgd_Threads] 
         (messageID, dateCreated, ForumID, totalReply, isTop,  
         hits, rating, isPoll, isFAQ, lastUpdate, lastMem, mem, login, subject, attachment, cashReward) 
 
     SELECT messageID, dateCreated, ForumID,  
         (SELECT count(*) - 1 from pgd_messages mm WHERE mm.threadID = m.messageID),  
         0,  
         (SELECT (count(*) - 1) * 300 from pgd_messages mm WHERE mm.threadID = m.messageID),  
         rating,  
         Case When exists(SELECT * from pgd_poll p where p.pollID = m.messageID) then 1 else 0 End,  
         isFAQ,  
         Case  
             When exists(SELECT * from pgd_recyclebin r where r.messageID = m.messageID) or m.moderated = 1 then ''  
             else (SELECT top 1 mm.dateCreated from pgd_messages mm WHERE mm.threadID = m.messageID ORDER By mm.messageID desc) End, 
         (SELECT top 1 cast(mm.mem as varchar(50)) + '$''' + p.login from pgd_messages mm inner join pgd_members p on p.mem = mm.mem WHERE mm.threadID = m.messageID ORDER By mm.messageID desc), 
         m.mem, p.login, subject,  
         Case When exists(SELECT * from pgd_upfile u where u.messageID = m.messageID) then 1 else 0 End, 0 
     FROM [pgd_messages] m inner join pgd_members p on m.mem = p.mem  
     WHERE parent = 0 and not exists (SELECT * from pgd_threads t where t.messageID = m.messageID ) 
     Order By messageID DESC 
      
     SELECT @count = count(*) FROM pgd_messages m where parent = 0  
         and not exists (SELECT messageID from pgd_threads t where m.messageID = t.messageID) 
 
     Set rowcount 0 
      
 END

ASPPlayground.NET
~ see our Version 4 plans here

 
#1
    Online Bookmarks Sharing: Share/Bookmark

    Jump to:

    Current active users

    There are 0 members and 1 guests.

    Icon Legend and Permission

    • New Messages
    • No New Messages
    • Hot Topic w/ New Messages
    • Hot Topic w/o New Messages
    • Locked w/ New Messages
    • Locked w/o New Messages
    • Read Message
    • Post New Thread
    • Reply to message
    • Post New Poll
    • Submit Vote
    • Post reward post
    • Delete my own posts
    • Delete my own threads
    • Rate post

    2000-2012 ASPPlayground.NET Forum Version 3.9