plpgsql does exceptions.
Tom Lane <tgl@sss.pgh.pa.us>
plpgsql does exceptions. There are still some things that need refinement; in particular I fear that the recognized set of error condition names probably has little in common with what Oracle recognizes. But it's a start.
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/plpgsql.sgml | modified | +104 −26 |
| src/backend/access/transam/xact.c | modified | +123 −14 |
| src/include/access/xact.h | modified | +4 −2 |
| src/include/utils/errcodes.h | modified | +5 −1 |
| src/pl/plpgsql/src/gram.y | modified | +59 −5 |
| src/pl/plpgsql/src/plerrcodes.h | added | +203 −0 |
| src/pl/plpgsql/src/pl_exec.c | modified | +119 −9 |
| src/pl/plpgsql/src/pl_funcs.c | modified | +34 −44 |
| src/pl/plpgsql/src/plpgsql.h | modified | +23 −6 |
| src/test/regress/expected/plpgsql.out | modified | +57 −0 |
| src/test/regress/sql/plpgsql.sql | modified | +33 −0 |