#14149 closed Bug (fixed)
LIKE clauses fail in Oracle 9.2.0.7
Reported by: | Jirka Vejrazka | Owned by: | nobody |
---|---|---|---|
Component: | Database layer (models, ORM) | Version: | 1.2 |
Severity: | Normal | Keywords: | oracle |
Cc: | Erin Kelly, Matt Boersma, Andrii Kurinnyi, tsawyer1 | Triage Stage: | Accepted |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
I've recently started using Oracle backend, connecting to a database I don't own or operate. I started seeing behaviour described in #5985 (DatabaseError: ORA-01425: escape character must be character string of length 1), fixed in r7412. Since I was hitting an issue that's been apparently fixed, I started digging in history and found that the fix was reverted in r12293 (related ticket: #11017). The fact that it might reintroduce the bug is actually mentioned in the ticket.
I'm happy monkeypatching my Oracle base.py as I may as well be the only person suffering from this issue these days. Mentioning it here mostly for the record, if someone searches for it in future. I'm also happy to help testing any suggested solutions if someone has an idea that would fix #5985 without breaking #11017 again.
For the record, the database I'm connecting to is 9.2.0.7 (I know, old).
Attachments (1)
Change History (15)
comment:1 by , 14 years ago
Component: | Uncategorized → Database layer (models, ORM) |
---|
comment:2 by , 14 years ago
comment:3 by , 14 years ago
Cc: | added |
---|
comment:4 by , 14 years ago
Summary: | Oracle backend - conflict between two tickets → LIKE clauses fail in Oracle 9.2.0.7 |
---|
comment:5 by , 14 years ago
Cc: | added |
---|
comment:6 by , 14 years ago
We've just upgraded Oracle 10.2.0.4 to 10.2.0.5 and I've started encountering this bug.
I've patched my Django to use LIKEC instead of LIKE and it seems ok.
comment:7 by , 14 years ago
Cc: | added |
---|
by , 14 years ago
Attachment: | 14149.diff added |
---|
comment:9 by , 14 years ago
Has patch: | set |
---|---|
Triage Stage: | Unreviewed → Accepted |
I've uploaded a patch against trunk that should fix this issue by choosing between LIKE and LIKEC at runtime, based on the discussion at http://groups.google.com/group/django-users/browse_thread/thread/360ad7db223af4da
Since I can't test this myself other than to verify that it doesn't break anything, I would appreciate it if those involved would test that this patch fixes the problem before I check it in.
comment:10 by , 14 years ago
milestone: | → 1.3 |
---|
comment:11 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:12 by , 14 years ago
comment:14 by , 8 years ago
Description: | modified (diff) |
---|---|
Easy pickings: | unset |
Severity: | → Normal |
Type: | → Bug |
UI/UX: | unset |
Argh! I'm really starting to hate this issue. The underlying Oracle bug that was uncovered in #11017 is supposed to have been fixed in 9.2.0.6. I've tested it myself in 9.2.0.8 and am reasonably confident that the current implementation works there. I'm flummoxed as to what might be causing it in your scenario.