The following documentation comment has been logged on the website:
Page: https://www.postgresql.org/docs/11/plpgsql-transactions.html
Description:
This chapter fails to state:
(1) If a PL/pgSQL procedure issues "commit" then it must be called with
AUTOCOMMIT set to On. This is counter-intuitive. You'd expect the
opposite.
(2) If a PL/pgSQL procedure has a block statement with an exception section
(this might be the procedure's defining block, or an inner block) then that
block's executabe section must not issue "commit". Doing so causes a
run-time error.