#15580 closed Bug (fixed)
DB cache backend uses LIMIT / OFFSET query for culling
| Reported by: | Erin Kelly | Owned by: | nobody |
|---|---|---|---|
| Component: | Core (Cache system) | Version: | dev |
| Severity: | Normal | Keywords: | oracle |
| Cc: | Triage Stage: | Accepted | |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
As a result, the DB cache backend cannot safely be used with Oracle.
Attachments (1)
Change History (8)
comment:1 by , 15 years ago
comment:2 by , 15 years ago
| Triage Stage: | Unreviewed → Accepted |
|---|
This is obviously a limitation -- however, it's not clear to me what the resolution should be. I really don't want to replace the internals of the DB cache backend with the ORM just so that we can get LIMIT and OFFSET support for Oracle. We may just need to introduce an 'Oracle' DB backend, and specialize that one call.
comment:3 by , 15 years ago
| Type: | → Bug |
|---|
comment:4 by , 15 years ago
| Severity: | → Normal |
|---|
by , 15 years ago
| Attachment: | 15580.patch added |
|---|
comment:5 by , 15 years ago
| Has patch: | set |
|---|
I've added a patch that pushes out this one query to connection.ops rather than to the ORM. I don't think tests are needed since this is already caught by regressiontests.cache.tests.DBCacheTests.test_cull.
Russell, please let me know if this looks okay to you.
comment:6 by , 14 years ago
| Easy pickings: | unset |
|---|---|
| Resolution: | → fixed |
| Status: | new → closed |
| UI/UX: | unset |
comment:7 by , 13 years ago
I committed ikelly's patch in d3c2eb103f6682c029a850e60dc4cf85896b6aa2 to make the cache database backend 3rd party database friendly.
For Oracle, the existing query should probably be replaced with: