Restructure soft-error handling in formatting.c.
Tom Lane <tgl@sss.pgh.pa.us>
Restructure soft-error handling in formatting.c. Replace the error trapping scheme introduced in 5bc450629 with our shiny new errsave/ereturn mechanism. This doesn't have any real functional impact (although I think that the new coding is able to report a few more errors softly than v15 did). And I doubt there's any measurable performance difference either. But this gets rid of an ad-hoc, one-of-a-kind design in favor of a mechanism that will be widely used going forward, so it should be a net win for code readability. Discussion: https://postgr.es/m/3bbbb0df-7382-bf87-9737-340ba096e034@postgrespro.ru
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/adt/formatting.c | modified | +315 −351 |
| src/backend/utils/adt/jsonpath_exec.c | modified | +6 −6 |
| src/include/utils/formatting.h | modified | +1 −1 |
Discussion
- Error-safe user functions 175 messages · 2022-10-03 → 2023-01-03