diff options
| author | Tomas Vondra | 2017-07-15 15:39:17 +0000 |
|---|---|---|
| committer | Tomas Vondra | 2017-07-15 15:39:17 +0000 |
| commit | 9f4a54d1c433f95a91a29dc417b52d563ee851b5 (patch) | |
| tree | 7bc0729ce7e1542267a1ef12cb1c70c7ed0245c3 /doc/src | |
| parent | 62731781efed4824e890d6caf50681bbe9028927 (diff) | |
Ensure grouping sets get properly distributed data
Grouping sets are stricter about distribution of input data, as all the
execution happens on the coordinator - there is no support for partial
grouping sets yet, so we can either push all the grouping set work to
the remote node (if all the sets include the distribution key), or make
sure that there is a Remote Subquery on the input path.
This is what Postgres-XL 9.6 was doing, but it got lost during merge
with PostgreSQL 10 which significantly reworked this part of the code.
Two queries still produce incorrect result, but those are not actually
using the grouping sets paths because
GROUP BY GROUPING SETS (a, b)
gets transformed into simple
GROUP BY a, b
and ends up using parallel aggregation. The bug seems to be that the
sort orders mismatch for some reason - the remote part produces data
sorted by "a" but the "Finalize GroupAggregate" expects input sorted
by "a, b" leading to duplicate groups in the result.
Diffstat (limited to 'doc/src')
0 files changed, 0 insertions, 0 deletions
