[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