Announcement

Collapse
No announcement yet.

Can't search for three-letter words?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Can't search for three-letter words?

    Hi,

    It used to be possible to search for three-letter words, like XBT. Why is this no longer possible?

    Could you enable it again please?

    See also http://www.vbulletin.org/forum/showthread.php?p=1142827

  • #2
    This is because the sites now use full text searching and is set to a minimum of 4 characters.
    Kerry-Anne :)

    Twitter Blog

    www.peterska2.com www.worldnewszone.com www.popularusenetgroups.com www.superclickers.co.uk www.forumsforchrist.com www.browsergameplanet.com

    Comment


    • #3
      Originally posted by peterska2 View Post
      This is because the sites now use full text searching and is set to a minimum of 4 characters.
      Could you change the configuration to 3?

      Comment


      • #4
        No sorry.

        Comment


        • #5
          The wildcard still works, so enter xbt* to get results.
          Lats...

          Comment


          • #6
            Originally posted by Floris View Post
            No sorry.
            Why not?

            Comment


            • #7
              There really aren't that many 3-letter words to search for and get meaningful results. The cost of reconfiguring all our servers, restarting them and rebuilding all the indexes plus the overhead with continual use aren't justified.
              Translations provided by Google.

              Wayne Luke
              The Rabid Badger - a vBulletin Cloud customization and demonstration site.
              vBulletin 5 Documentation - Updated every Friday. Report issues here.
              vBulletin 5 API - Full / Mobile
              I am not currently available for vB Messenger Chats.

              Comment


              • #8
                We have got plans to do it at some point, the old servers had 3 letter full text indexes.

                The reason we can't is that it requires a serious amount of downtime to rebuild 21 fulltext indexes on a large amount of tables. We can't really afford to be down for that long.
                Scott MacVicar

                My Blog | Twitter

                Comment


                • #9
                  Originally posted by Lats View Post
                  The wildcard still works, so enter xbt* to get results.
                  That doesn't work. It searches for words of at least four letters that start with xbt.

                  Comment


                  • #10
                    Originally posted by Scott MacVicar View Post
                    We have got plans to do it at some point, the old servers had 3 letter full text indexes.

                    The reason we can't is that it requires a serious amount of downtime to rebuild 21 fulltext indexes on a large amount of tables. We can't really afford to be down for that long.
                    I recently extended my search from 3-12 to 3-15 and it doesn't need to be done all at once. Just reconfigure the MySQL servers to have a min length of 3 instead of 4 and restart them.

                    At that point you can just schedule a few indexes per day and rebuild them. I didn't have more than a few minutes of downtime per day on any given site and I have 12G of DB data (well, 24GB if you count the slave).
                    Jason Litka - Utter Ramblings

                    Comment


                    • #11
                      We tried already without restarting and got several corrupt index files that we had to rebuild. This was on the slave servers as well as the master.

                      The manual also states they need to get rebuilt.

                      • The minimum and maximum lengths of words to be indexed are defined by the ft_min_word_len and ft_max_word_len system variables. (See Section 5.2.3, “System Variables”.) The default minimum value is four characters; the default maximum is version dependent. If you change either value, you must rebuild your FULLTEXT indexes. For example, if you want three-character words to be searchable, you can set the ft_min_word_len variable by putting the following lines in an option file:
                        Code:
                        [mysqld]
                        ft_min_word_len=3
                        Then you must restart the server and rebuild your FULLTEXT indexes. Note particularly the remarks regarding myisamchk in the instructions following this list.
                      Scott MacVicar

                      My Blog | Twitter

                      Comment


                      • #12
                        Originally posted by Scott MacVicar View Post
                        We tried already without restarting and got several corrupt index files that we had to rebuild. This was on the slave servers as well as the master.

                        The manual also states they need to get rebuilt.
                        Well, you do need to restart mysqld after you change those values. What you don't need to do is actually run "REPAIR TABLE ... QUICK" immediately after the restart. Your DB will continue to function as it did before, with a minimum of 4 characters, until you do run the REPAIR statements.

                        What I was saying is that you can space those REPAIR statements out over a week or so so that each outage is short.

                        You can control the downtime even more closely by not allowing the rebuild to cascade automatically to the slave server(s). By running the REPAIR on your slave server(s) first and then adding "LOCAL" after the word "REPAIR" when running on the master, you can halve the downtime for each rebuild session.
                        Last edited by jasonlitka; Wed 3rd Jan '07, 11:51am.
                        Jason Litka - Utter Ramblings

                        Comment


                        • #13
                          Originally posted by Scott MacVicar View Post
                          We tried already without restarting and got several corrupt index files that we had to rebuild. This was on the slave servers as well as the master.

                          The manual also states they need to get rebuilt.
                          How did that happen?
                          I thought MySQL didn't read the conf files while it's running?

                          Comment


                          • #14
                            Originally posted by xtf View Post
                            How did that happen?
                            I thought MySQL didn't read the conf files while it's running?
                            Ooh... I wonder if they tried running 'myisamchk' while mysqld was running. That could be how the corruption happened. You really should have mysqld stopped when you do that...
                            Jason Litka - Utter Ramblings

                            Comment


                            • #15
                              I'll be doing it in when we have our upgrade to Apache 2.2.4 scheduled, but we got plenty of errors about the index file being corrupted and every single one of them was a table containing a full text index.

                              I'll do the changes when we have time, not before. Searching for 3 letter words isn't something that justifies downtime.
                              Scott MacVicar

                              My Blog | Twitter

                              Comment

                              widgetinstance 262 (Related Topics) skipped due to lack of content & hide_module_if_empty option.
                              Working...
                              X