Bug 804505: Oracle crashes when typing "word1 word2" in QuickSearch with "ORA-29907: found duplicate labels in primary invocations"
r=dkl a=LpSolit git-svn-id: svn://10.0.0.236/trunk@264401 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
4ea078339d
commit
77fb2a5ede
@ -1 +1 @@
|
||||
8455
|
||||
8456
|
||||
@ -520,17 +520,14 @@ sub possible_duplicates {
|
||||
if ($dbh->FULLTEXT_OR) {
|
||||
my $joined_terms = join($dbh->FULLTEXT_OR, @words);
|
||||
($where_sql, $relevance_sql) =
|
||||
$dbh->sql_fulltext_search('bugs_fulltext.short_desc',
|
||||
$joined_terms, 1);
|
||||
$dbh->sql_fulltext_search('bugs_fulltext.short_desc', $joined_terms);
|
||||
$relevance_sql ||= $where_sql;
|
||||
}
|
||||
else {
|
||||
my (@where, @relevance);
|
||||
my $count = 0;
|
||||
foreach my $word (@words) {
|
||||
$count++;
|
||||
my ($term, $rel_term) = $dbh->sql_fulltext_search(
|
||||
'bugs_fulltext.short_desc', $word, $count);
|
||||
'bugs_fulltext.short_desc', $word);
|
||||
push(@where, $term);
|
||||
push(@relevance, $rel_term || $term);
|
||||
}
|
||||
|
||||
@ -159,10 +159,13 @@ sub sql_from_days{
|
||||
|
||||
return " TO_DATE($date,'J') ";
|
||||
}
|
||||
|
||||
sub sql_fulltext_search {
|
||||
my ($self, $column, $text, $label) = @_;
|
||||
my ($self, $column, $text) = @_;
|
||||
state $label = 0;
|
||||
$text = $self->quote($text);
|
||||
trick_taint($text);
|
||||
$label++;
|
||||
return "CONTAINS($column,$text,$label) > 0", "SCORE($label)";
|
||||
}
|
||||
|
||||
|
||||
@ -2342,9 +2342,9 @@ sub _content_matches {
|
||||
|
||||
# Create search terms to add to the SELECT and WHERE clauses.
|
||||
my ($term1, $rterm1) =
|
||||
$dbh->sql_fulltext_search("$table.$comments_col", $value, 1);
|
||||
$dbh->sql_fulltext_search("$table.$comments_col", $value);
|
||||
my ($term2, $rterm2) =
|
||||
$dbh->sql_fulltext_search("$table.short_desc", $value, 2);
|
||||
$dbh->sql_fulltext_search("$table.short_desc", $value);
|
||||
$rterm1 = $term1 if !$rterm1;
|
||||
$rterm2 = $term2 if !$rterm2;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user