Incident Brief
What happened: A statement was rejected because of how it was written or what value it carried — not because of missing objects or permissions:
ERROR: permission denied for language plpgsql
Captured live on PostgreSQL 14.23, 15.18, 16.14, 17.10, 18.4 by running the statement below in an isolated transaction. Th
Immediate action: 1. Read the message — it states precisely what PostgreSQL objected to.
2. GRANT USAGE ON LANGUAGE … TO the role (trusted languages), or create the function as a privileged role; untrusted languages
The fix
- Read the message — it states precisely what PostgreSQL objected to.
- GRANT USAGE ON LANGUAGE ... TO the role (trusted languages), or create the function as a privileged role; untrusted languages