Closed
Bug 305976
Opened 19 years ago
Closed 19 years ago
Allow Bugzilla::DB sql_regexp/sql_not_regexp methods to accept string and pattern as arguments
Categories
(Bugzilla :: Database, enhancement, P3)
Tracking
()
RESOLVED
FIXED
Bugzilla 2.22
People
(Reporter: lance.larsh, Assigned: lance.larsh)
References
Details
Attachments
(1 file, 1 obsolete file)
(deleted),
patch
|
bugreport
:
review+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.3) Gecko/20041119
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.3) Gecko/20041119
Currently the abstract methods sql_regexp() and sql_not_regexp() in the
Bugzilla::DB drivers do not take any arguments, and return only the given
database driver's regexp operator name. Callers construct a regexp query with
the following usage:
... "$my_string " . $dbh->sql_regexp . " $my_pattern" ...
This usage assumes the database's regexp operator is a binary infix operator,
but this is not the case for all databases (e.g., in Oracle 10g, it looks like
"REGEXP_LIKE($my_string, $my_pattern)").
Changing the sql_regexp()/sql_not_regexp() methods to take the string and
pattern as arguments would make the database abstraction more generic, allowing
greater flexibility for different types of regexp operators.
Reproducible: Always
Steps to Reproduce:
Updated•19 years ago
|
Assignee: database → lance.larsh
Status: UNCONFIRMED → NEW
Ever confirmed: true
Version: unspecified → 2.21
Assignee | ||
Updated•19 years ago
|
Status: NEW → ASSIGNED
Assignee | ||
Comment 1•19 years ago
|
||
This patch changes the sql_regexp/sql_not_regexp methods to take the string to
be searched and the search pattern as arguments. The patch also updates all
callers to use the new syntax.
The code change in the "^percentage_complete," block of Bugzilla/Search.pm
seems a little less than ideal, but this seemed to be the simplest way to
change the regexp calls without making huge changes.
Attachment #194245 -
Flags: review?(mkanat)
Comment 2•19 years ago
|
||
Comment on attachment 194245 [details] [diff] [review]
Complete sql(_not)_regexp patch
Now that sql_regexp() requires arguments, it's not really OK to call it without
arguments in Search.pm (it will throw "uninitialized value" warnings, and it
just seems like not the best idea anyhow).
Also, the POD docs in Bugzilla::DB for sql_regexp need to be updated.
Otherwise, this is an impressively clean patch, particularly for a first
submission.
For the Bugzilla::DB stuff, you'll probably want to ask Joel for review -- he's
better in that area than I am.
Attachment #194245 -
Flags: review?(mkanat) → review-
Assignee | ||
Comment 3•19 years ago
|
||
This patch includes everything in the previous patch, plus adds the POD doc
changes and Search.pm changes that Max asked for.
Attachment #194245 -
Attachment is obsolete: true
Attachment #194327 -
Flags: review?(bugreport)
Comment 4•19 years ago
|
||
Comment on attachment 194327 [details] [diff] [review]
Revised patch w/ POD doc, Search.pm changes
I do have to wonder why someone would want to use a regexp for percent
complete.
Attachment #194327 -
Flags: review?(bugreport) → review+
Updated•19 years ago
|
Flags: approval?
Updated•19 years ago
|
Priority: -- → P3
Target Milestone: --- → Bugzilla 2.22
Updated•19 years ago
|
Flags: approval? → approval+
Comment 5•19 years ago
|
||
Oh, and oops, I meant "For the Bugzilla::Search stuff, you'll want to ask Joel."
:-D The Bugzilla::DB stuff is definitely me (or Joel, or various other reviewers
also, of course). :-)
Checking in checksetup.pl;
/cvsroot/mozilla/webtools/bugzilla/checksetup.pl,v <-- checksetup.pl
new revision: 1.434; previous revision: 1.433
done
Checking in editusers.cgi;
/cvsroot/mozilla/webtools/bugzilla/editusers.cgi,v <-- editusers.cgi
new revision: 1.101; previous revision: 1.100
done
Checking in Bugzilla/DB.pm;
/cvsroot/mozilla/webtools/bugzilla/Bugzilla/DB.pm,v <-- DB.pm
new revision: 1.64; previous revision: 1.63
done
Checking in Bugzilla/Search.pm;
/cvsroot/mozilla/webtools/bugzilla/Bugzilla/Search.pm,v <-- Search.pm
new revision: 1.111; previous revision: 1.110
done
Checking in Bugzilla/DB/Mysql.pm;
/cvsroot/mozilla/webtools/bugzilla/Bugzilla/DB/Mysql.pm,v <-- Mysql.pm
new revision: 1.28; previous revision: 1.27
done
Checking in Bugzilla/DB/Pg.pm;
/cvsroot/mozilla/webtools/bugzilla/Bugzilla/DB/Pg.pm,v <-- Pg.pm
new revision: 1.14; previous revision: 1.13
done
Checking in contrib/BugzillaEmail.pm;
/cvsroot/mozilla/webtools/bugzilla/contrib/BugzillaEmail.pm,v <-- BugzillaEmail.pm
new revision: 1.4; previous revision: 1.3
done
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•