Closed Bug 477745 Opened 15 years ago Closed 15 years ago

[Oracle] Search doesn't work because of sql_string_until

Categories

(Bugzilla :: Query/Bug List, defect)

3.3.3
defect
Not set
major

Tracking

()

RESOLVED FIXED
Bugzilla 3.4

People

(Reporter: xiaoou.wu, Assigned: xiaoou.wu)

References

Details

(Keywords: regression)

Attachments

(1 file)

on tip, enter a word and do search.

Software error:
DBD::Oracle::db prepare failed: ORA-00907: missing right parenthesis (DBD ERROR: error possibly near <*> indicator at char 188 in 'SELECT bugs.bug_id, bugs.bug_severity, bugs.priority, bugs.bug_status, bugs.resolution, map_products.name, bugs.bug_severity, bugs.priority, bugs.op_sys, SUBSTR(map_assigned_to.login_name <*>FROM 1 FOR INSTR(map_assigned_to.login_name, '@') - 1), bugs.bug_status, bugs.resolution, bugs.short_desc, SUBSTR(map_reporter.login_name FROM 1 FOR INSTR(map_reporter.login_name, '@') - 1), map_assigned_to.login_name FROM bugs  INNER JOIN profiles  map_assigned_to ON (bugs.assigned_to = map_assigned_to.userid) INNER JOIN profiles  map_reporter ON (bugs.reporter = map_reporter.userid) INNER JOIN products  map_products ON (bugs.product_id = map_products.id) LEFT JOIN longdescs  longdescs_0 ON (longdescs_0.bug_id = bugs.bug_id AND longdescs_0.isprivate < 1) LEFT JOIN bug_status ON (bug_status.value = bugs.bug_status) LEFT JOIN priority ON (priority.value = bugs.priority) LEFT JOIN bug_group_map  ON bug_group_map.bug_id = bugs.bug_id  WHERE (( bugs.bug_status IN ('REOPENED','NEW','ASSIGNED','UNCONFIRMED') )) AND (((1=2) OR (1=2) OR (INSTR(LOWER(bugs.short_desc), LOWER('hello')) > 0) OR (INSTR(LOWER(bugs.status_whiteboard), LOWER('hello')) > 0) OR (INSTR(LOWER(longdescs_0.thetext), LOWER('hello')) > 0))) AND bugs.creation_ts IS NOT NULL AND ((bug_group_map.group_id IS NULL)) GROUP BY bugs.bug_id, bugs.bug_severity, bugs.priority, bugs.bug_status, bugs.resolution, map_products.name, bugs.op_sys, SUBSTR, bugs.short_desc, map_assigned_to.login_name, bug_status.sortkey, bug_status.value, priority.sortkey, priority.value ORDER BY bug_status.sortkey,bug_status.value,priority.sortkey,priority.value,map_assigned_to.login_name,bugs.bug_id') [for Statement "SELECT bugs.bug_id, bugs.bug_severity, bugs.priority, bugs.bug_status, bugs.resolution, map_products.name, bugs.bug_severity, bugs.priority, bugs.op_sys, SUBSTR(map_assigned_to.login_name FROM 1 FOR INSTR(map_assigned_to.login_name, '@') - 1), bugs.bug_status, bugs.resolution, bugs.short_desc, SUBSTR(map_reporter.login_name FROM 1 FOR INSTR(map_reporter.login_name, '@') - 1), map_assigned_to.login_name FROM bugs  INNER JOIN profiles  map_assigned_to ON (bugs.assigned_to = map_assigned_to.userid) INNER JOIN profiles  map_reporter ON (bugs.reporter = map_reporter.userid) INNER JOIN products  map_products ON (bugs.product_id = map_products.id) LEFT JOIN longdescs  longdescs_0 ON (longdescs_0.bug_id = bugs.bug_id AND longdescs_0.isprivate < 1) LEFT JOIN bug_status ON (bug_status.value = bugs.bug_status) LEFT JOIN priority ON (priority.value = bugs.priority) LEFT JOIN bug_group_map  ON bug_group_map.bug_id = bugs.bug_id  WHERE (( bugs.bug_status IN ('REOPENED','NEW','ASSIGNED','UNCONFIRMED') )) AND (((1=2) OR (1=2) OR (INSTR(LOWER(bugs.short_desc), LOWER('hello')) > 0) OR (INSTR(LOWER(bugs.status_whiteboard), LOWER('hello')) > 0) OR (INSTR(LOWER(longdescs_0.thetext), LOWER('hello')) > 0))) AND bugs.creation_ts IS NOT NULL AND ((bug_group_map.group_id IS NULL)) GROUP BY bugs.bug_id, bugs.bug_severity, bugs.priority, bugs.bug_status, bugs.resolution, map_products.name, bugs.op_sys, SUBSTR, bugs.short_desc, map_assigned_to.login_name, bug_status.sortkey, bug_status.value, priority.sortkey, priority.value ORDER BY bug_status.sortkey,bug_status.value,priority.sortkey,priority.value,map_assigned_to.login_name,bugs.bug_id"] at Bugzilla/DB/Oracle.pm line 473
	Bugzilla::DB::Oracle::prepare('undef', 'SELECT bugs.bug_id, bugs.bug_severity, bugs.priority, bugs.bu...') called at /var/www/html/bugzilla-tip-oracle/buglist.cgi line 1076

For help, please send mail to the webmaster (webmaster@bugzilla.org), giving this error message and the time and date of the error.
Attached patch v1Splinter Review
This patch will solve the bug, but how about we use this version of sql_string_until in Bugzilla::DB?
Attachment #361455 - Attachment is patch: true
Attachment #361455 - Flags: review?(mkanat)
(In reply to comment #1)
> This patch will solve the bug, but how about we use this version of
> sql_string_until in Bugzilla::DB?

  Oracle doesn't support the ANSI syntax? I'm pretty sure Pg only supports the ANSI syntax.
Assignee: query-and-buglist → xiaoou.wu
Target Milestone: --- → Bugzilla 3.4
Flags: blocking3.4+
Severity: normal → major
Status: NEW → ASSIGNED
Comment on attachment 361455 [details] [diff] [review]
v1

Okay, looks fine, but just for Oracle. What's in Bugzilla::DB is the ANSI standard, and this syntax is not.
Attachment #361455 - Flags: review?(mkanat) → review+
Flags: approval+
Checking in Bugzilla/DB/Oracle.pm;
/cvsroot/mozilla/webtools/bugzilla/Bugzilla/DB/Oracle.pm,v  <--  Oracle.pm
new revision: 1.23; previous revision: 1.22
done
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Depends on: 219021
Keywords: regression
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: