diff options
| author | Sergey Fedoseev <fedoseev.sergey@gmail.com> | 2015-12-18 00:16:43 +0500 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-12-17 17:07:10 -0500 |
| commit | ed1bcf05158acf4bf4e0189d477b6c762bd0133e (patch) | |
| tree | 0d65e6656f4d3d3f73de25f8f810046a5c90812c /django | |
| parent | 9af40f5df13801ffadcc5ded7440e4616123959f (diff) | |
Refs #25894 -- Fixed evaluation of zero-length slices of QuerySet.values() on Oracle.
Diffstat (limited to 'django')
| -rw-r--r-- | django/db/backends/oracle/compiler.py | 3 | ||||
| -rw-r--r-- | django/db/models/sql/compiler.py | 2 | ||||
| -rw-r--r-- | django/db/models/sql/query.py | 3 |
3 files changed, 3 insertions, 5 deletions
diff --git a/django/db/backends/oracle/compiler.py b/django/db/backends/oracle/compiler.py index 1044a5feb7..7073dc34e8 100644 --- a/django/db/backends/oracle/compiler.py +++ b/django/db/backends/oracle/compiler.py @@ -12,9 +12,6 @@ class SQLCompiler(compiler.SQLCompiler): If 'with_limits' is False, any limit/offset information is not included in the query. """ - if with_limits and self.query.low_mark == self.query.high_mark: - return '', () - # The `do_offset` flag indicates whether we need to construct # the SQL needed to use limit/offset with Oracle. do_offset = with_limits and (self.query.high_mark is not None diff --git a/django/db/models/sql/compiler.py b/django/db/models/sql/compiler.py index a018517b89..47a85bb9a4 100644 --- a/django/db/models/sql/compiler.py +++ b/django/db/models/sql/compiler.py @@ -367,8 +367,6 @@ class SQLCompiler(object): refcounts_before = self.query.alias_refcount.copy() try: extra_select, order_by, group_by = self.pre_sql_setup() - if with_limits and self.query.low_mark == self.query.high_mark: - return '', () distinct_fields = self.get_distinct() # This must come after 'select', 'ordering', and 'distinct' -- see diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py index 0686bf8875..f9df41392b 100644 --- a/django/db/models/sql/query.py +++ b/django/db/models/sql/query.py @@ -1550,6 +1550,9 @@ class Query(object): else: self.low_mark = self.low_mark + low + if self.low_mark == self.high_mark: + self.set_empty() + def clear_limits(self): """ Clears any existing limits. |
