[MERGE] forward port of branch 7.0 up to 8dff247

This commit is contained in:
Denis Ledoux 2014-09-09 18:23:32 +02:00
commit b1f4a61705
1 changed files with 7 additions and 1 deletions

View File

@ -2158,13 +2158,19 @@ class BaseModel(object):
# same ordering, and can be merged in one pass.
result = []
known_values = {}
if len(groupby_list) < 2 and context.get('group_by_no_leaf'):
count_attr = '_'
else:
count_attr = groupby
count_attr += '_count'
def append_left(left_side):
grouped_value = left_side[groupby] and left_side[groupby][0]
if not grouped_value in known_values:
result.append(left_side)
known_values[grouped_value] = left_side
else:
count_attr = groupby + '_count'
known_values[grouped_value].update({count_attr: left_side[count_attr]})
def append_right(right_side):
grouped_value = right_side[0]