COMMENT/SEC LABEL tab complete support suggests wrong SQL.

From: Kirill Reshke <reshkekirill(at)gmail(dot)com>
To: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: COMMENT/SEC LABEL tab complete support suggests wrong SQL.
Date: 2026-09-18 08:01:18
Message-ID: CALdSSPgcdsj9T3w0i1mc1ujWJGVJuQzGnnOxNNaG4QunP3hMpQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

HI!

I noticed an issue on tab completion with LARGE OBJECT support. I am
aware that tab complete support need not to be always-correct, but
this cases are simple, so decided to fix.

The psql tab completion for COMMENT ON and SECURITY LABEL ON suggests
"IS" immediately after "LARGE OBJECT", this produces invalid SQL:

=# COMMENT ON LARGE OBJECT <TAB>
-- now COMMENT ON LARGE OBJECT IS

The same bug exists for SECURITY LABEL. SEC LABEL also missed EVENT
TRIGGER/ FOREIGN TABLE/MATERIALIZED VIEW cases.

Same bug was fixed for GRANT/REVOKE in ff0bcb248e6.

Quick sum up:
Before:
COMMENT ON LARGE OBJECT <TAB> → IS (invalid SQL)
SECURITY LABEL ON LARGE OBJECT <TAB> → IS (invalid SQL)
SECURITY LABEL ON EVENT TRIGGER <TAB> → IS (invalid SQL)
SECURITY LABEL ON FOREIGN TABLE <TAB> → IS (invalid SQL)
SECURITY LABEL ON MATERIALIZED VIEW <TAB> → IS (invalid SQL)

After:
COMMENT ON LARGE OBJECT <TAB> → OID list (correct)
SECURITY LABEL ON LARGE OBJECT <TAB> → OID list (correct)
SECURITY LABEL ON EVENT TRIGGER <TAB> → trigger name list (correct)
SECURITY LABEL ON FOREIGN TABLE <TAB> → foreign table list (correct)
SECURITY LABEL ON MATERIALIZED VIEW <TAB> → matview list (correct)

--
Best regards,
Kirill Reshke

Attachment Content-Type Size
v1-0001-psql-Fix-tab-completion-for-COMMENT-SECURITY-LABE.patch application/octet-stream 3.0 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Nisha Moond 2026-09-18 08:05:04 Re: Proposal: Conflict log history table for Logical Replication
Previous Message Matthias van de Meent 2026-09-18 08:01:07 Re: Init connection time grows quadratically