PG17.0 Support - SQL changes, new features
(Issue still under construction ...)
We need to support the following, or print meaningful error messages for currently unsupported features in Citus
-
[ ] PG 17 introduced a new ACL called
ACL_MAINTAINPG commit: ecb0fd33720fab91df1207e85704f382f55e1eb7 https://github.com/postgres/postgres/commit/ecb0fd33720fab91df1207e85704f382f55e1eb7 Our deparser does not handle that https://github.com/citusdata/citus/blob/f6959715dc49404510f2f3340b9719b33ddd152b/src/backend/distributed/deparser/citus_ruleutils.c#L1351 -
[ ] MergeAction can have 3 merge kinds (now enum) in PG17, write compat Relevant PG commit: 0294df2f1f842dfb0eed79007b21016f486a3c6c https://github.com/postgres/postgres/commit/0294df2f1f842dfb0eed79007b21016f486a3c6c New merge kinds should be handled in deparser and Merge logic in Citus. - MATCHED BY SOURCE - MATCHED_BY_TARGET
-
[ ] Supporting MEMORY option when extracting EXPLAIN output from workers. https://github.com/citusdata/citus/blob/f6959715dc49404510f2f3340b9719b33ddd152b/src/backend/distributed/planner/multi_explain.c#L1098 For now we will not be showing memory usage from workers if we do not add support for this.