Hello all,
plpgsql_lint going to beta.
A PostgreSQL's plpgsql interpreter uses a two step checking. First
step is syntax checking when function is validated - it is done on
function's creation time or when function is executed first time in a
session. Second step - a deeper checks of embedded SQL and expressions
are done in runtime when SQL or expression is evaluated first time in
a session. This step is slower and this technique eliminates checking
of SQL or expressions that are never evaluated (but some errors can be
found too late).
plpgsql_lint ensures a deep validation of all embedded SQL and
expressions (not only evaluated) every time when function is started.
Source code and documentation living on GitHub
https://github.com/okbob/plpgsql_lint
Regards
Pavel Stehule