The following bug has been logged on the website:
Bug reference: 15555
Logged by: Feike Steenbergen
Email address: feikesteenbergen@gmail.com
PostgreSQL version: 11.1
Operating system: CentOS Linux release 7.5.1804 (Core)
Description:
Recently, I ran into an issue when trying to put comments on objects in
plpgsql DO block, for example the following:
DO $$
DECLARE
"comment" text := 'This is a comment';
BEGIN
COMMENT ON TABLE abc IS 'This is another comment';
END;
$$;
Generates the following error message:
ERROR: 42601: syntax error at or near "ON"
LINE 5: COMMENT ON TABLE abc IS 'This is another comment';
Renaming the variable from "comment" to something else makes the problem go
away,
as well as wrapping the COMMENT command in an EXECUTE call;
It happens both when double quoting the identifier, or when omitting the
double
quotes.
For now I'll just avoid using comment as a variable name altogether, but I
was
surprised by this behaviour.
Kind regards,
Feike