Skip to content

Commit 923a715

Browse files
committed
Fix psql describe commands' handling of ACL columns for old servers.
Commit d1379eb carelessly broke printACLColumn for pre-9.4 servers, by using the cardinality() function which we introduced in 9.4. We expect psql's describe-related commands to work back to 9.2, so this is bad. Use the longstanding array_length() function instead. Per report from Christoph Berg. Back-patch to v17. Discussion: https://postgr.es/m/ZvLXYglRS6hMMhtr@msg.df7cb.de
1 parent d7ec59a commit 923a715

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/bin/psql/describe.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6660,7 +6660,7 @@ printACLColumn(PQExpBuffer buf, const char *colname)
66606660
{
66616661
appendPQExpBuffer(buf,
66626662
"CASE"
6663-
" WHEN pg_catalog.cardinality(%s) = 0 THEN '%s'"
6663+
" WHEN pg_catalog.array_length(%s, 1) = 0 THEN '%s'"
66646664
" ELSE pg_catalog.array_to_string(%s, E'\\n')"
66656665
" END AS \"%s\"",
66666666
colname, gettext_noop("(none)"),

0 commit comments

Comments
 (0)