On Thu, Apr 16, 2020 at 7:47 AM Andy Fan <zhihui.fan1...@gmail.com> wrote:
> (9 rows) > > With this feature: > explain analyze select a, sum(c) from grp2 group by a; > QUERY PLAN > -------------------------------------------------------------------------------------------------------------------------- > GroupAggregate (cost=0.00..553031.57 rows=10000023 width=12) (actual > time=0.044..13209.485 rows=10000000 loops=1) > Group Key: a > -> Seq Scan on grp2 (cost=0.00..403031.23 rows=10000023 width=8) (actual > time=0.023..4938.171 rows=10000000 loops=1) > Planning Time: 0.400 ms > Execution Time: 13749.121 ms > (5 rows) > Applying the patch gives a white space warning git am /tmp/v6-000* Applying: Introduce UniqueKeys to determine RelOptInfo unique properties .git/rebase-apply/patch:545: indent with spaces. /* Fast path */ warning: 1 line adds whitespace errors. Applying: Skip DISTINCT / GROUP BY if input is already unique Compiling the patch causes one warning nodeAgg.c:2134:3: warning: enumeration value ‘AGG_UNIQUE’ not handled in switch [-Wswitch] I have not looked at the patch. The numbers above look good. The time spent in summing up a column in each row (we are summing only one number per group) is twice the time it took to read those rows from the table. That looks odd. But it may not be something unrelated to your patch. I also observed that for explain analyze select a from grp2 group by a; we just produce a plan containing seq scan node, which is a good thing. -- Best Wishes, Ashutosh Bapat