diff options
author | Max Kanat-Alexander <mkanat@bugzilla.org> | 2010-07-18 02:52:52 +0200 |
---|---|---|
committer | Max Kanat-Alexander <mkanat@bugzilla.org> | 2010-07-18 02:52:52 +0200 |
commit | 7b5e8372bf4306cf99eddb474bd8b7754510a683 (patch) | |
tree | 4426d79fcdf18bc740273d852f8b0eeda6f1e13c /xt/lib | |
parent | 0087cc076fc48f24b73e8aa0935941a7b9a2b6d8 (diff) | |
download | bugzilla-7b5e8372bf4306cf99eddb474bd8b7754510a683.tar.gz bugzilla-7b5e8372bf4306cf99eddb474bd8b7754510a683.tar.xz |
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/lib')
-rw-r--r-- | xt/lib/Bugzilla/Test/Search/Constants.pm | 16 |
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" => { }, |