After upgrading to 6.28.0 queries are hanging when run using DBeaver.
The queries run normally when run using "psql" command.
The log file shows that the connection runs queries like the following multiple times:
SELECT c.oid, a.attnum, a.attname, c.relname, n.nspname, a.attnotnull OR (t.typtype = 'd' AND t.typnotnull), pg_catalog.pg_get_expr(d.adbin, d.adrelid) LIKE '%nextval(%' FROM pg_catalog.pg_class c JOIN pg_catalog.pg_namespace n ON (c.relnamespace = n.oid) JOIN pg_catalog.pg_attribute a ON (c.oid = a.attrelid) JOIN pg_catalog.pg_type t ON (a.atttypid = t.oid) LEFT JOIN pg_catalog.pg_attrdef d ON (d.adrelid = a.attrelid AND d.adnum = a.attnum) JOIN (SELECT 6658364 AS oid , 0 AS attnum UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0 UNION ALL SELECT 6658364, 0) vals ON (c.oid = vals.oid AND a.attnum = vals.attnum)
This behaviour happens only when running the query via dbeaver (when running via datastage, via psql in the master VM, or psql from local computer, it works fine)
A code change in Greenplum 6.28.0 was leaving some variables unset or set incorrectly which caused connections using PostgreSQL JDBC driver to received unexpected information on the columns and causes the driver to run the query in many times or possibly indefinitely.
Code fix was released in 6.28.1.
Upgrade to 6.28.1 or above to get the fix.