[Rt-commit] rt branch, 4.2/mysql-native-fts, repushed

Alex Vandiver alexmv at bestpractical.com
Wed Nov 26 16:10:49 EST 2014


The branch 4.2/mysql-native-fts was deleted and repushed:
       was 17850b60d781282fa57fca0b70781db54b5e96a6
       now 77641fc397e6abe83bc3935bad44c55591a3d2ca

--:  ------- >  1:  a7968ec Add full path to one rt-fulltext-indexer that lacks it
 1:  ff018f3 =  2:  84747c7 Add additional clarification points about Sphinx on MySQL
 2:  7d52ea3 =  3:  ac688e2 Drop sphinx xmlpipe2 output, which was unusable and undocumented
 3:  3152f64 =  4:  d5f256f Drop finalize and clean functions, which are now unused
 4:  fd038d9 !  5:  02a8588 Rename Sphinx FTS search tests to "sphinx", not "mysql"
    @@ -1,6 +1,6 @@
     Author: Alex Vandiver <alexmv at bestpractical.com>
     
    -    Rename Sphinx FTS search
    +    Rename Sphinx FTS search tests to "sphinx", not "mysql"
     
     diff --git a/t/fts/indexed_mysql.t b/t/fts/indexed_mysql.t
     deleted file mode 100644
 5:  2374496 !  6:  84066c4 Support native FTS on MySQL 5.6 and above
    @@ -21,19 +21,19 @@
     +marks attachment data as C<BINARY>, it cannot index this content without
     +creating additional tables.  To create the required table, run:
     +
    -+    sbin/rt-setup-fulltext-index
    ++    /opt/rt4/sbin/rt-setup-fulltext-index
     +
     +If you have a non-standard database administrator username or password,
     +you may need to pass the C<--dba> or C<--dba-password> options:
     +
    -+    sbin/rt-setup-fulltext-index --dba root --dba-password secret
    ++    /opt/rt4/sbin/rt-setup-fulltext-index --dba root --dba-password secret
     +
     +This will also output an appropriate C<%FullTextSearch> configuration to
     +add to your F<RT_SiteConfig.pm>; you will need to restart your webserver
     +after making these changes.  However, the index will also need to be
     +filled before it can be used.  To update the index initially, run:
     +
    -+    sbin/rt-fulltext-indexer --all
    ++    /opt/rt4/sbin/rt-fulltext-indexer --all
     +
     +This will tokenize and index all existing attachments in your database;
     +it may take quite a while if your database already has a large number of
    @@ -43,13 +43,21 @@
     +
     +To keep the index up-to-date, you will need to run:
     +
    -+    sbin/rt-fulltext-indexer
    ++    /opt/rt4/sbin/rt-fulltext-indexer
     +
     +...at regular intervals.  By default, this will only tokenize up to 100
     +tickets at a time; you can adjust this upwards by passing
     +C<--limit 500>.  Larger batch sizes will take longer and
    -+consume more memory.  Care should be taken to ensure that multiple
    -+instances of C<rt-fulltext-indexer> are not run at the same time.
    ++consume more memory.
    ++
    ++If there is already an instances of C<rt-fulltext-indexer> running, new
    ++ones will exit abnormally (with exit code 1) and the error message
    ++"rt-fulltext-indexer is already running."  You can suppress this message
    ++and end those processes normally (with exit code 0) using the C<--quiet>
    ++option; this is particularly useful when running the command via
    ++C<cron>:
    ++
    ++    /opt/rt4/sbin/rt-fulltext-indexer --quiet
     +
     +
     +=head2 MySQL with Sphinx
 6:  bfd8dce !  7:  77641fc Using a separate MyISAM table, we can also support FTS on MySQL < 5.6
    @@ -26,11 +26,11 @@
     +content without creating an additional table.  To create the required
     +table (which is InnoDB on versions of MySQL which support it), run:
      
    -     sbin/rt-setup-fulltext-index
    +     /opt/rt4/sbin/rt-setup-fulltext-index
      
     @@
    - consume more memory.  Care should be taken to ensure that multiple
    - instances of C<rt-fulltext-indexer> are not run at the same time.
    + 
    +     /opt/rt4/sbin/rt-fulltext-indexer --quiet
      
     +=head3 Caveats
     +
    @@ -58,7 +58,7 @@
     -            if $index_type ne 'sphinx';
     +        $msg = "Complete support for full-text search requires MySQL 5.6 or higher.  For prior\n"
     +              ."versions such as yours, full-text indexing can either be provided using MyISAM\n"
    -+              ."tables, or the external  Sphinx indexer.  Using MyISAM tables requires that your\n"
    ++              ."tables, or the external Sphinx indexer.  Using MyISAM tables requires that your\n"
     +              ."database be tuned to support them, as RT uses InnoDB tables for all other content.\n"
     +              ."Using Sphinx will require recompiling MySQL.  Which indexing solution would you\n"
     +              ."prefer?"
    @@ -153,4 +153,3 @@
      run_tests(
          "Content LIKE 'book'" => { book => 1, bar => 0 },
          "Content LIKE 'bar'" => { book => 0, bar => 1 },
    -
 7:  a4e5362 < --:  ------- extract_text and extract_html are identical; inline them
 8:  2474f53 < --:  ------- Inline the differences between text/plain and text/html attachment lists
 9:  b276cbe < --:  ------- Stop skipping indexing of text/html within multipart/alternative
10:  b3bf43a < --:  ------- Use the new, shorterm initialization form
11:  06e22fe < --:  ------- Simplify and condense option parsing
12:  5b8ed2a < --:  ------- Documentation has moved out; update --help accordingly
13:  b06fef2 < --:  ------- Remove AUTHOR section; it is unnecessary in core sbin files
14:  929539a < --:  ------- Skipping ACL checks yields a sizable performance increase
15:  434556b < --:  ------- Index attachments in one pass through the database, not two
16:  1f70512 < --:  ------- Index attachments even on deleted tickets
17:  f9c8eae < --:  ------- mysql and pg share the same last_indexed; unify the method
18:  31fe979 < --:  ------- Replace the last use of goto_specific with explicit function calls
19:  0692e70 < --:  ------- Simplify last_indexed
20:  2152feb < --:  ------- Only call last_indexed once, as it may be heavy
21:  6f02246 < --:  ------- Index even empty attachments
22:  35037b6 < --:  ------- As last_indexed is based on the highest insert, there will never be an UPDATE needed
23:  6842b22 < --:  ------- Inversion of control of main indexing loops
24:  00037f9 < --:  ------- Switch to preparing statements, rather than just setting strings
25:  d2b9064 < --:  ------- INSERT DELAYED provides notable speed benefits on MyISAM
26:  17850b6 < --:  ------- Improve MySQL insert speed by batching inserts into one statement



More information about the rt-commit mailing list