summaryrefslogtreecommitdiff
path: root/xt
diff options
context:
space:
mode:
authorMax Kanat-Alexander <mkanat@bugzilla.org>2010-07-17 17:52:52 -0700
committerMax Kanat-Alexander <mkanat@bugzilla.org>2010-07-17 17:52:52 -0700
commit7b5e8372bf4306cf99eddb474bd8b7754510a683 (patch)
tree4426d79fcdf18bc740273d852f8b0eeda6f1e13c /xt
parentBug 67036: Allow searching for product, component, etc. names that contain (diff)
downloadbugzilla-7b5e8372bf4306cf99eddb474bd8b7754510a683.tar.gz
bugzilla-7b5e8372bf4306cf99eddb474bd8b7754510a683.tar.bz2
bugzilla-7b5e8372bf4306cf99eddb474bd8b7754510a683.zip
Bug 579568: Search.pm: Improve the implementation and performance of
substring and "words" searches, improve the formatting of generated SQL, and use real subselects instead of performing the subselect and using its results in an IN. r=mkanat, a=mkanat (module owner)
Diffstat (limited to 'xt')
-rw-r--r--xt/lib/Bugzilla/Test/Search/Constants.pm16
1 files changed, 3 insertions, 13 deletions
diff --git a/xt/lib/Bugzilla/Test/Search/Constants.pm b/xt/lib/Bugzilla/Test/Search/Constants.pm
index b03ed30db..248b59f53 100644
--- a/xt/lib/Bugzilla/Test/Search/Constants.pm
+++ b/xt/lib/Bugzilla/Test/Search/Constants.pm
@@ -374,7 +374,6 @@ use constant KNOWN_BROKEN => {
# Same for attach_data.thedata.
'allwords-<1>' => {
ALLWORDS_BROKEN,
- 'attach_data.thedata' => { contains => [1] },
'flagtypes.name' => { contains => [1] },
},
@@ -384,19 +383,16 @@ use constant KNOWN_BROKEN => {
# attachments.
nowords => {
NOWORDS_BROKEN,
- 'attach_data.thedata' => { contains => [1,5] },
},
# anywords searches don't work on decimal values.
# attach_data doesn't work (perhaps because it's the entire
# data, or some problem with the regex?).
anywords => {
- 'attach_data.thedata' => { contains => [1] },
work_time => { contains => [1] },
},
'anywords-<1> <2>' => {
percentage_complete => { contains => [2] },
- 'attach_data.thedata' => { contains => [1,2] },
work_time => { contains => [1,2] },
},
@@ -477,11 +473,8 @@ use constant KNOWN_BROKEN => {
# where MySQL isn't, but the result is still a bit surprising to the user.
use constant PG_BROKEN => {
'attach_data.thedata' => {
- allwords => { },
- allwordssubstr => { },
- anywords => { },
- notregexp => { contains => [5] },
- nowords => { contains => [5] },
+ notregexp => { contains => [5] },
+ nowords => { contains => [5] },
},
percentage_complete => {
'allwordssubstr-<1>' => { contains => [3] },
@@ -562,7 +555,6 @@ use constant NEGATIVE_BROKEN_NOT => (
use constant BROKEN_NOT => {
allwords => {
COMMON_BROKEN_NOT,
- "attach_data.thedata" => { contains => [1,5] },
bug_group => { contains => [1] },
cc => { contains => [1] },
"flagtypes.name" => { contains => [1,5] },
@@ -617,13 +609,12 @@ use constant BROKEN_NOT => {
},
anywords => {
COMMON_BROKEN_NOT,
- "attach_data.thedata" => { contains => [1, 5] },
"work_time" => { contains => [1, 2] },
"work_time" => { contains => [1] },
FIELD_TYPE_MULTI_SELECT, { contains => [5] },
},
'anywords-<1> <2>' => {
- 'attach_data.thedata' => { contains => [1,2,5] },
+ 'attach_data.thedata' => { contains => [5] },
"percentage_complete" => { contains => [1,3,4,5] },
work_time => { contains => [1,2] },
},
@@ -727,7 +718,6 @@ use constant BROKEN_NOT => {
notsubstring => { NEGATIVE_BROKEN_NOT },
nowords => {
NEGATIVE_BROKEN_NOT,
- "attach_data.thedata" => { contains => [1] },
"work_time" => { contains => [2, 3, 4] },
"cc" => { contains => [5] },
"flagtypes.name" => { },