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

Alex Vandiver alexmv at bestpractical.com
Thu Jan 8 15:58:15 EST 2015


The branch 4.2/mysql-native-fts was deleted and repushed:
       was 8e36778bbe2c67b1f3fe3cc35e8b26804de78701
       now 737acafb6802aad3b2ada8686bcc52be5f2358e4

1:  4660cf6 = 1:  2823ea5 Add full path to one rt-fulltext-indexer that lacks it
2:  9655340 = 2:  37af06d Add additional clarification points about Sphinx on MySQL
3:  e390dc6 = 3:  437c763 Drop sphinx xmlpipe2 output, which was unusable and undocumented
4:  6ba220e = 4:  48e71ae Drop finalize and clean functions, which are now unused
5:  8da4115 = 5:  f408dcf Rename Sphinx FTS search tests to "sphinx", not "mysql"
6:  982ca07 ! 6:  d8f3b0c Support native FTS on MySQL 5.6 and above
    @@ -58,6 +58,19 @@
     +C<cron>:
     +
     +    /opt/rt4/sbin/rt-fulltext-indexer --quiet
    ++
    ++=head3 Caveats
    ++
    ++Searching is done in "boolean mode."  As such, the TicketSQL query
    ++C<Content LIKE 'winter 2014'> will return tickets with transactions that
    ++contain I<either> word.  To find transactions which contain both (but
    ++not necessarily adjacent), use C<Content LIKE '+winter +2014'>.  To find
    ++transactions containing the precise phrase, use C<Content LIKE '"winter
    ++2014">.
    ++
    ++See L<the mysql documentation, at
    ++L<http://dev.mysql.com/doc/refman/5.6/en/fulltext-boolean.html>, for a
    ++list of the full capabilities.
     +
     +
     +=head2 MySQL with Sphinx
    @@ -159,12 +172,11 @@
              }
     +        elsif ( $db_type eq 'mysql' and not $config->{Sphinx}) {
     +            my $dbh = $RT::Handle->dbh;
    -+            $value =~ s/["\\]+/ /g;
     +            $self->Limit(
     +                %rest,
     +                FUNCTION    => "MATCH($alias.Content)",
     +                OPERATOR    => 'AGAINST',
    -+                VALUE       => '("'. $dbh->quote($value) .'" IN BOOLEAN MODE)',
    ++                VALUE       => "(". $dbh->quote($value) ." IN BOOLEAN MODE)",
     +                QUOTEVALUE  => 0,
     +            );
     +            # As with Oracle, above, this forces the LEFT JOINs into
7:  8e36778 ! 7:  737acaf Using a separate MyISAM table, we can also support FTS on MySQL < 5.6
    @@ -27,21 +27,6 @@
     +table (which is InnoDB on versions of MySQL which support it), run:
      
          /opt/rt4/sbin/rt-setup-fulltext-index
    - 
    -@@
    - 
    -     /opt/rt4/sbin/rt-fulltext-indexer --quiet
    - 
    -+=head3 Caveats
    -+
    -+On versions of MySQL prior to 5.6, a MyISAM table is used.  This may
    -+cause poor performance, as the database server is likely tuned for
    -+InnoDB performance, not MyISAM performance.  Once the MySQL server is
    -+upgraded to version 5.6 or above, the extra table should be re-created
    -+as InnoDB by re-running the steps above.
    -+
    - 
    - =head2 MySQL with Sphinx
      
     
     diff --git a/sbin/rt-setup-fulltext-index.in b/sbin/rt-setup-fulltext-index.in



More information about the rt-commit mailing list