Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. what a lousy job Chris Munder and his buddies have done with this thread management.

what a lousy job Chris Munder and his buddies have done with this thread management.

Scheduled Pinned Locked Moved The Lounge
data-structuresquestiondiscussioncareer
32 Posts 18 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • E Offline
    E Offline
    Edd
    wrote on last edited by
    #1

    Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

    S K D C M 10 Replies Last reply
    0
    • E Edd

      Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

      S Offline
      S Offline
      SimonS
      wrote on last edited by
      #2

      I couldn't disagree more. I think Chris has done a super cool job with CP and any bugs can be attributed to the fact that he's using VBS and not C#! ;P Cheers, Simon "Every good work of software starts by scratching a developer's personal itch.", Eric S. Raymond

      1 Reply Last reply
      0
      • E Edd

        Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

        K Offline
        K Offline
        Klaus Probst
        wrote on last edited by
        #3

        Edd wrote: Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading. Thoughts lining and threads renagading, indeed. All your tree management are belong to us. ___________ Klaus [vbbox.com]

        1 Reply Last reply
        0
        • E Edd

          Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

          D Offline
          D Offline
          Daniel Ferguson
          wrote on last edited by
          #4

          Edd wrote: I am trying hard not to think It's working. "Until you spoke, and showed me understanding is a dream"
          - How Beautiful You Are, The Cure

          R 1 Reply Last reply
          0
          • E Edd

            Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

            C Offline
            C Offline
            Chris Maunder
            wrote on last edited by
            #5

            When you have a clue, some suggestions on how to help alleviate the problem and a spell checker then I'll discuss the issue with you. FYI I did make some changes today that I hope will reduce the problem but until I get the time to rewrite the entire thing the best thing to do is write me a polite email and ask me to fix up whichever thread is playing up. It's called courtesy. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

            S L E D S 7 Replies Last reply
            0
            • D Daniel Ferguson

              Edd wrote: I am trying hard not to think It's working. "Until you spoke, and showed me understanding is a dream"
              - How Beautiful You Are, The Cure

              R Offline
              R Offline
              Roger Allen
              wrote on last edited by
              #6

              Daniel Ferguson wrote: Edd wrote: I am trying hard not to think A Gross misrepresentation of what he wrote, but I agree :-D Roger Allen Sonork 100.10016 If I had a quote, it would be a very good one.

              1 Reply Last reply
              0
              • E Edd

                Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

                M Offline
                M Offline
                MS le Roux
                wrote on last edited by
                #7

                I've always found the thread bug very odd. Doesn't each thread contain its own ID and its parent thread's ID? Perhaps the bug occurs in the incorrect parent thread ID being sent when you reply to a post?

                C 1 Reply Last reply
                0
                • C Chris Maunder

                  When you have a clue, some suggestions on how to help alleviate the problem and a spell checker then I'll discuss the issue with you. FYI I did make some changes today that I hope will reduce the problem but until I get the time to rewrite the entire thing the best thing to do is write me a polite email and ask me to fix up whichever thread is playing up. It's called courtesy. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                  S Offline
                  S Offline
                  Steve Hopkins
                  wrote on last edited by
                  #8

                  kill -9 Edd (what is the smiley for "ignorant sod"?) if(E_NOINTERFACE == pThat->QueryInterface(IID_IUnknown,(void**)&pUnk)) { // I aint no pUnk bitch! }

                  1 Reply Last reply
                  0
                  • M MS le Roux

                    I've always found the thread bug very odd. Doesn't each thread contain its own ID and its parent thread's ID? Perhaps the bug occurs in the incorrect parent thread ID being sent when you reply to a post?

                    C Offline
                    C Offline
                    Chris Maunder
                    wrote on last edited by
                    #9

                    Each message knows it's parent so all thread info is there (meaning we can rethread when necessary). The issue is that in order to display the messages in the correct order as fast as possible we need to calculate a 'position' value that orders the message according to it's parent and siblings. The position contains the order of the message relative to each level of indentation of the message (so we can have nested threads), so in order to get the correct position value for a given message at the given thread indentation level we need to dynamically search for the highest position value in that thread, at that indendation level, add 1, and use this. Using a look up table is impracticle because each forum has thousands of threads, and each thread has multiple subthreads. So - the problem occurs when two messages are posted simultaneously. If they are both in the same thread at the same indentation level and both query for the next position value before one of them has had a chance to plant it's flag and say 'I'm here' then they end up with the same position value. There are a number of ways to get around this - ranging from a complete overhaul of the method used to display the information (so that this type of pre-calculated 'position' value is not necessary) through to revamping of the way the position value is obtained. It would be interesting to see what ideas others have for this scenario. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                    T 1 Reply Last reply
                    0
                    • C Chris Maunder

                      Each message knows it's parent so all thread info is there (meaning we can rethread when necessary). The issue is that in order to display the messages in the correct order as fast as possible we need to calculate a 'position' value that orders the message according to it's parent and siblings. The position contains the order of the message relative to each level of indentation of the message (so we can have nested threads), so in order to get the correct position value for a given message at the given thread indentation level we need to dynamically search for the highest position value in that thread, at that indendation level, add 1, and use this. Using a look up table is impracticle because each forum has thousands of threads, and each thread has multiple subthreads. So - the problem occurs when two messages are posted simultaneously. If they are both in the same thread at the same indentation level and both query for the next position value before one of them has had a chance to plant it's flag and say 'I'm here' then they end up with the same position value. There are a number of ways to get around this - ranging from a complete overhaul of the method used to display the information (so that this type of pre-calculated 'position' value is not necessary) through to revamping of the way the position value is obtained. It would be interesting to see what ideas others have for this scenario. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                      T Offline
                      T Offline
                      Thomas Freudenberg
                      wrote on last edited by
                      #10

                      Which DB design does CP use? Currently I am writing an ASP.NET forum myself, and I am thinking to use following design: SQL for Threaded Discussion Forums [Paul]. Regards Thomas Sonork id: 100.10453 Thömmi


                      Disclaimer:
                      Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.

                      C 1 Reply Last reply
                      0
                      • E Edd

                        Could it be that chris and his buddies can't do effective tree management? I am trying hard not to think that is the case, but that's the only way my thoughts are lining. Too many threads renagading.

                        P Offline
                        P Offline
                        Paul Watson
                        wrote on last edited by
                        #11

                        Edd wrote: what a lousy job Chris Munder and his buddies have done Could you be any more ungrateful? I would like to see you run a huge website like CodeProject with basically zero funding and only your fingernails as support! There are some people we certainly don't need. :mad: regards, Paul Watson Bluegrass Cape Town, South Africa The greatest thing you'll ever learn is just to love, and to be loved in return - Moulin Rouge Brian Delahunty wrote: one of my boys on the inside instead of the outside benjymous wrote: All the male CP inhabitants cross their legs in unison

                        J 1 Reply Last reply
                        0
                        • T Thomas Freudenberg

                          Which DB design does CP use? Currently I am writing an ASP.NET forum myself, and I am thinking to use following design: SQL for Threaded Discussion Forums [Paul]. Regards Thomas Sonork id: 100.10453 Thömmi


                          Disclaimer:
                          Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.

                          C Offline
                          C Offline
                          Chris Maunder
                          wrote on last edited by
                          #12

                          Very similar to that, except that we have a 'position' field that requires sorting by a single column instead of the two columns that uses. Their idea is excellent though - I may adapt mine to use that instead since it would save on storage (or position field is large). Thanks for the link! cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                          T 1 Reply Last reply
                          0
                          • C Chris Maunder

                            Very similar to that, except that we have a 'position' field that requires sorting by a single column instead of the two columns that uses. Their idea is excellent though - I may adapt mine to use that instead since it would save on storage (or position field is large). Thanks for the link! cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                            T Offline
                            T Offline
                            Thomas Freudenberg
                            wrote on last edited by
                            #13

                            Chris Maunder wrote: Very similar to that, except that we have a 'position' field that requires sorting by a single column instead of the two columns that uses. As far as I understand this means you have to update many records, if someone posts to an older thread, doesn't it? IMHO the most difficult point is to find a balance between simple DB design and fast reading/writing. As I already told, I am currently designing my own forum, so please can you tell me the relation between select's and insert's/update's in the fora at CP? However, you do a great job w/ CP! Definitely. :) Regards Thomas Sonork id: 100.10453 Thömmi


                            Disclaimer:
                            Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.

                            C 1 Reply Last reply
                            0
                            • P Paul Watson

                              Edd wrote: what a lousy job Chris Munder and his buddies have done Could you be any more ungrateful? I would like to see you run a huge website like CodeProject with basically zero funding and only your fingernails as support! There are some people we certainly don't need. :mad: regards, Paul Watson Bluegrass Cape Town, South Africa The greatest thing you'll ever learn is just to love, and to be loved in return - Moulin Rouge Brian Delahunty wrote: one of my boys on the inside instead of the outside benjymous wrote: All the male CP inhabitants cross their legs in unison

                              J Offline
                              J Offline
                              Joao Vaz
                              wrote on last edited by
                              #14

                              Paul Watson wrote: Could you be any more ungrateful? I would like to see you run a huge website like CodeProject with basically zero funding and only your fingernails as support! I'll second that ! Cheers, Joao Vaz A person who is nice to you, but rude to the waiter, is not a nice person - Natalie Portman (Padme/Amidala of Star Wars)

                              1 Reply Last reply
                              0
                              • T Thomas Freudenberg

                                Chris Maunder wrote: Very similar to that, except that we have a 'position' field that requires sorting by a single column instead of the two columns that uses. As far as I understand this means you have to update many records, if someone posts to an older thread, doesn't it? IMHO the most difficult point is to find a balance between simple DB design and fast reading/writing. As I already told, I am currently designing my own forum, so please can you tell me the relation between select's and insert's/update's in the fora at CP? However, you do a great job w/ CP! Definitely. :) Regards Thomas Sonork id: 100.10453 Thömmi


                                Disclaimer:
                                Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.

                                C Offline
                                C Offline
                                Chris Maunder
                                wrote on last edited by
                                #15

                                Thomas Freudenberg wrote: As far as I understand this means you have to update many records, if someone posts to an older thread, doesn't it? No - it's only 1 record that is added regardless of where the message is entered. Thomas Freudenberg wrote: IMHO the most difficult point is to find a balance between simple DB design and fast reading/writing. As I already told, I am currently designing my own forum, so please can you tell me the relation between select's and insert's/update's in the fora at CP? The SELECT is a simple "SELECT * FROM Posts WHERE forum=n ORDER BY Position" Take a look at the version Uwe posted: The Code Project Discussion boards Thomas Freudenberg wrote: However, you do a great job w/ CP ta :) cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                                T L 2 Replies Last reply
                                0
                                • C Chris Maunder

                                  When you have a clue, some suggestions on how to help alleviate the problem and a spell checker then I'll discuss the issue with you. FYI I did make some changes today that I hope will reduce the problem but until I get the time to rewrite the entire thing the best thing to do is write me a polite email and ask me to fix up whichever thread is playing up. It's called courtesy. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                                  L Offline
                                  L Offline
                                  Lost User
                                  wrote on last edited by
                                  #16

                                  Chris Maunder wrote: When you have a clue, some suggestions on how to help alleviate the problem and a spell checker then I'll discuss the issue with you. Are al putdowns from Canberra this polite? :-D Chris Maunder wrote: ...but until I get the time to rewrite the entire thing... I thought this would be a quickie before breakfast kind of a thing for you. ;P Michael Martin Australia mjm68@tpg.com.au "In Summer, I like to dance naked on the roof to celebrate the event of the temperature finally falling below 40C (usually about midnight). But the neighbors have lately taken up the habit of staying up late. And looking up, at times, from their dreary, pointless lives..." - Roger Wright 15/05/2002

                                  1 Reply Last reply
                                  0
                                  • C Chris Maunder

                                    Thomas Freudenberg wrote: As far as I understand this means you have to update many records, if someone posts to an older thread, doesn't it? No - it's only 1 record that is added regardless of where the message is entered. Thomas Freudenberg wrote: IMHO the most difficult point is to find a balance between simple DB design and fast reading/writing. As I already told, I am currently designing my own forum, so please can you tell me the relation between select's and insert's/update's in the fora at CP? The SELECT is a simple "SELECT * FROM Posts WHERE forum=n ORDER BY Position" Take a look at the version Uwe posted: The Code Project Discussion boards Thomas Freudenberg wrote: However, you do a great job w/ CP ta :) cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                                    T Offline
                                    T Offline
                                    Thomas Freudenberg
                                    wrote on last edited by
                                    #17

                                    Chris Maunder wrote: Take a look at the version Uwe posted: The Code Project Discussion boards I see. So it is something like mentioned in the comments of the article I referenced in my previous post? Regards Thomas Sonork id: 100.10453 Thömmi


                                    Disclaimer:
                                    Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.

                                    C 1 Reply Last reply
                                    0
                                    • T Thomas Freudenberg

                                      Chris Maunder wrote: Take a look at the version Uwe posted: The Code Project Discussion boards I see. So it is something like mentioned in the comments of the article I referenced in my previous post? Regards Thomas Sonork id: 100.10453 Thömmi


                                      Disclaimer:
                                      Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.

                                      C Offline
                                      C Offline
                                      Chris Maunder
                                      wrote on last edited by
                                      #18

                                      It's exactly that. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                                      1 Reply Last reply
                                      0
                                      • C Chris Maunder

                                        Thomas Freudenberg wrote: As far as I understand this means you have to update many records, if someone posts to an older thread, doesn't it? No - it's only 1 record that is added regardless of where the message is entered. Thomas Freudenberg wrote: IMHO the most difficult point is to find a balance between simple DB design and fast reading/writing. As I already told, I am currently designing my own forum, so please can you tell me the relation between select's and insert's/update's in the fora at CP? The SELECT is a simple "SELECT * FROM Posts WHERE forum=n ORDER BY Position" Take a look at the version Uwe posted: The Code Project Discussion boards Thomas Freudenberg wrote: However, you do a great job w/ CP ta :) cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                                        L Offline
                                        L Offline
                                        Lost User
                                        wrote on last edited by
                                        #19

                                        Chris Maunder wrote: "SELECT * FROM Posts WHERE forum=n ORDER BY Position" Chris, you're not really doing a "select *" are you? replace the * with the explicit column names, this will remove the need for sql to query column names on every execution now sql will optimize this if it is a stored procedure, but it will still check on each execute if the table's schema has changed,, explicitly naming columns is faster for both direct sql submission or stored procedures -John

                                        C 1 Reply Last reply
                                        0
                                        • C Chris Maunder

                                          When you have a clue, some suggestions on how to help alleviate the problem and a spell checker then I'll discuss the issue with you. FYI I did make some changes today that I hope will reduce the problem but until I get the time to rewrite the entire thing the best thing to do is write me a polite email and ask me to fix up whichever thread is playing up. It's called courtesy. cheers, Chris Maunder Rub your belly and pat your head simultaneously. Sometimes that helps me make sense of things - Jon Sagara

                                          E Offline
                                          E Offline
                                          Edd
                                          wrote on last edited by
                                          #20

                                          oh... don't give me that courtesy crap. You think u're doing anyone here a f*ckin favor? please... Your ads and microsoft sponsorship data is not renagading, but the forum isn't generating money, so let it stink. I think when there's a problem for this long, it needs to be pointed out, and there's no need to insult me for that.

                                          D 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups