The next query returns strange result.
EXECUTE DIRECT ON (datanode1) $$SELECT relkind FROM pg_class GROUP BY relname, relkind$$;
It should return like Table A, but it returns like Table B.
Table A
relkind --------- i r v t (4 rows)
Table B
relkind --------- h \x18 ` 8 \x10 X 0 x \x08 P ( p H
And next queries return the right results.
# execute direct on (datanode1) $$select relkind from pg_class group by relkind$$; # execute direct on (datanode1) $$select relname, relkind from pg_class group by relname, relkind$$;
It seems that this problem is produced when select target does not contain all of the columns listed in the GROUP BY clause.
A query to a regular table work well.
On master_pg93_merge, this issue may cause psql disconnection.
This query doesn't make coordinator to be aborted.
A datanode is returning the right result but a coordinator is returning wrong result.
I think this issue is bug of coordinator.