Add RPCs for requesting iteration results from TKO and supporting model code.
Signed-off-by: Steve Howard <showard@google.com>
git-svn-id: http://test.kernel.org/svn/autotest/trunk@3623 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/frontend/afe/model_logic.py b/frontend/afe/model_logic.py
index d26aaab..affbf5a 100644
--- a/frontend/afe/model_logic.py
+++ b/frontend/afe/model_logic.py
@@ -169,8 +169,8 @@
@param suffix suffix to add to join_table for the join alias
@param exclude if true, exclude rows that match this join (will use a
LEFT OUTER JOIN and an appropriate WHERE condition)
- @param force_left_join - if true, a LEFT OUTER JOIN will be used instead of an
- INNER JOIN regardless of other options
+ @param force_left_join - if true, a LEFT OUTER JOIN will be used
+ instead of an INNER JOIN regardless of other options
"""
join_from_table = self.model._meta.db_table
join_from_key = self.model._meta.pk.name
@@ -194,7 +194,7 @@
filter_object.add_where(full_join_key + ' IS NULL')
query_set = self._add_customSqlQ(query_set, filter_object)
- return query_set.distinct()
+ return query_set
def _get_quoted_field(self, table, field):
@@ -632,7 +632,7 @@
if query_start and not query_limit:
raise ValueError('Cannot pass query_start without '
'query_limit')
- sort_by = filter_data.pop('sort_by', [])
+ sort_by = filter_data.pop('sort_by', None)
extra_args = filter_data.pop('extra_args', {})
extra_where = filter_data.pop('extra_where', None)
if extra_where:
@@ -656,8 +656,9 @@
query = query._clone(klass=ReadonlyQuerySet)
# sorting + paging
- assert isinstance(sort_by, list) or isinstance(sort_by, tuple)
- query = query.order_by(*sort_by)
+ if sort_by:
+ assert isinstance(sort_by, list) or isinstance(sort_by, tuple)
+ query = query.order_by(*sort_by)
if query_start is not None and query_limit is not None:
query_limit += query_start
return query[query_start:query_limit]