Commit 604bd36
committed
PG_FINALLY
This gives an alternative way of catching exceptions, for the common
case where the cleanup code is the same in the error and non-error
cases. So instead of
PG_TRY();
{
... code that might throw ereport(ERROR) ...
}
PG_CATCH();
{
cleanup();
PG_RE_THROW();
}
PG_END_TRY();
cleanup();
one can write
PG_TRY();
{
... code that might throw ereport(ERROR) ...
}
PG_FINALLY();
{
cleanup();
}
PG_END_TRY();
Discussion: https://www.postgresql.org/message-id/flat/95a822c3-728b-af0e-d7e5-71890507ae0c%402ndquadrant.com1 parent 7302514 commit 604bd36
File tree
32 files changed
+91
-245
lines changed- contrib
- auto_explain
- dblink
- hstore_plpython
- jsonb_plpython
- pg_stat_statements
- pg_trgm
- postgres_fdw
- sepgsql
- src
- backend
- catalog
- commands
- libpq
- tcop
- utils/adt
- include/utils
- pl
- plperl
- plpgsql/src
- plpython
- tcl
32 files changed
+91
-245
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
320 | 320 | | |
321 | 321 | | |
322 | 322 | | |
323 | | - | |
324 | 323 | | |
325 | | - | |
| 324 | + | |
326 | 325 | | |
327 | 326 | | |
328 | | - | |
329 | 327 | | |
330 | 328 | | |
331 | 329 | | |
| |||
343 | 341 | | |
344 | 342 | | |
345 | 343 | | |
346 | | - | |
347 | 344 | | |
348 | | - | |
| 345 | + | |
349 | 346 | | |
350 | 347 | | |
351 | | - | |
352 | 348 | | |
353 | 349 | | |
354 | 350 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
776 | 776 | | |
777 | 777 | | |
778 | 778 | | |
779 | | - | |
| 779 | + | |
780 | 780 | | |
781 | 781 | | |
782 | 782 | | |
783 | 783 | | |
784 | | - | |
785 | 784 | | |
786 | 785 | | |
787 | 786 | | |
788 | | - | |
789 | | - | |
790 | | - | |
791 | | - | |
792 | 787 | | |
793 | 788 | | |
794 | 789 | | |
| |||
952 | 947 | | |
953 | 948 | | |
954 | 949 | | |
955 | | - | |
956 | | - | |
957 | 950 | | |
958 | | - | |
| 951 | + | |
959 | 952 | | |
960 | 953 | | |
961 | 954 | | |
962 | | - | |
963 | 955 | | |
964 | 956 | | |
965 | 957 | | |
| |||
1464 | 1456 | | |
1465 | 1457 | | |
1466 | 1458 | | |
1467 | | - | |
| 1459 | + | |
1468 | 1460 | | |
1469 | 1461 | | |
1470 | 1462 | | |
1471 | 1463 | | |
1472 | | - | |
1473 | 1464 | | |
1474 | 1465 | | |
1475 | 1466 | | |
1476 | | - | |
1477 | | - | |
1478 | | - | |
1479 | | - | |
1480 | 1467 | | |
1481 | 1468 | | |
1482 | 1469 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
183 | | - | |
| 183 | + | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
187 | 186 | | |
188 | 187 | | |
189 | 188 | | |
190 | | - | |
191 | | - | |
192 | 189 | | |
193 | 190 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
307 | 307 | | |
308 | 308 | | |
309 | 309 | | |
310 | | - | |
| 310 | + | |
311 | 311 | | |
312 | 312 | | |
313 | | - | |
314 | 313 | | |
315 | 314 | | |
316 | 315 | | |
317 | | - | |
318 | | - | |
319 | 316 | | |
320 | 317 | | |
321 | 318 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
892 | 892 | | |
893 | 893 | | |
894 | 894 | | |
895 | | - | |
896 | 895 | | |
897 | | - | |
| 896 | + | |
898 | 897 | | |
899 | 898 | | |
900 | | - | |
901 | 899 | | |
902 | 900 | | |
903 | 901 | | |
| |||
915 | 913 | | |
916 | 914 | | |
917 | 915 | | |
918 | | - | |
919 | 916 | | |
920 | | - | |
| 917 | + | |
921 | 918 | | |
922 | 919 | | |
923 | | - | |
924 | 920 | | |
925 | 921 | | |
926 | 922 | | |
| |||
1007 | 1003 | | |
1008 | 1004 | | |
1009 | 1005 | | |
1010 | | - | |
1011 | 1006 | | |
1012 | | - | |
| 1007 | + | |
1013 | 1008 | | |
1014 | 1009 | | |
1015 | | - | |
1016 | 1010 | | |
1017 | 1011 | | |
1018 | 1012 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
555 | 555 | | |
556 | 556 | | |
557 | 557 | | |
558 | | - | |
| 558 | + | |
559 | 559 | | |
560 | 560 | | |
561 | | - | |
562 | 561 | | |
563 | 562 | | |
564 | 563 | | |
565 | | - | |
566 | | - | |
567 | 564 | | |
568 | 565 | | |
569 | 566 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
631 | 631 | | |
632 | 632 | | |
633 | 633 | | |
634 | | - | |
| 634 | + | |
635 | 635 | | |
636 | 636 | | |
637 | 637 | | |
638 | | - | |
639 | 638 | | |
640 | 639 | | |
641 | | - | |
642 | | - | |
643 | 640 | | |
644 | 641 | | |
645 | 642 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3155 | 3155 | | |
3156 | 3156 | | |
3157 | 3157 | | |
3158 | | - | |
3159 | | - | |
3160 | | - | |
3161 | 3158 | | |
3162 | | - | |
| 3159 | + | |
3163 | 3160 | | |
3164 | 3161 | | |
3165 | 3162 | | |
3166 | | - | |
3167 | 3163 | | |
3168 | 3164 | | |
3169 | 3165 | | |
| |||
3383 | 3379 | | |
3384 | 3380 | | |
3385 | 3381 | | |
3386 | | - | |
3387 | | - | |
3388 | | - | |
3389 | 3382 | | |
3390 | | - | |
| 3383 | + | |
3391 | 3384 | | |
3392 | 3385 | | |
3393 | 3386 | | |
3394 | | - | |
3395 | 3387 | | |
3396 | 3388 | | |
3397 | 3389 | | |
| |||
4404 | 4396 | | |
4405 | 4397 | | |
4406 | 4398 | | |
4407 | | - | |
4408 | | - | |
4409 | | - | |
4410 | 4399 | | |
4411 | | - | |
| 4400 | + | |
4412 | 4401 | | |
4413 | 4402 | | |
4414 | 4403 | | |
4415 | | - | |
4416 | 4404 | | |
4417 | 4405 | | |
4418 | 4406 | | |
| |||
4925 | 4913 | | |
4926 | 4914 | | |
4927 | 4915 | | |
4928 | | - | |
4929 | | - | |
4930 | | - | |
4931 | | - | |
4932 | 4916 | | |
4933 | | - | |
| 4917 | + | |
4934 | 4918 | | |
4935 | 4919 | | |
4936 | 4920 | | |
4937 | | - | |
4938 | 4921 | | |
4939 | 4922 | | |
4940 | 4923 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
372 | 372 | | |
373 | 373 | | |
374 | 374 | | |
375 | | - | |
| 375 | + | |
376 | 376 | | |
377 | 377 | | |
378 | | - | |
379 | 378 | | |
380 | 379 | | |
381 | | - | |
382 | 380 | | |
383 | 381 | | |
384 | 382 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
465 | 465 | | |
466 | 466 | | |
467 | 467 | | |
468 | | - | |
| 468 | + | |
469 | 469 | | |
470 | 470 | | |
471 | | - | |
472 | 471 | | |
473 | 472 | | |
474 | | - | |
475 | | - | |
476 | 473 | | |
477 | 474 | | |
478 | 475 | | |
| |||
600 | 597 | | |
601 | 598 | | |
602 | 599 | | |
603 | | - | |
| 600 | + | |
604 | 601 | | |
605 | 602 | | |
606 | | - | |
607 | 603 | | |
608 | 604 | | |
609 | | - | |
610 | 605 | | |
611 | 606 | | |
612 | 607 | | |
| |||
640 | 635 | | |
641 | 636 | | |
642 | 637 | | |
643 | | - | |
| 638 | + | |
644 | 639 | | |
645 | 640 | | |
646 | | - | |
647 | 641 | | |
648 | 642 | | |
649 | | - | |
650 | 643 | | |
651 | 644 | | |
652 | 645 | | |
| |||
851 | 844 | | |
852 | 845 | | |
853 | 846 | | |
854 | | - | |
| 847 | + | |
855 | 848 | | |
856 | 849 | | |
857 | | - | |
858 | 850 | | |
859 | 851 | | |
860 | | - | |
861 | 852 | | |
862 | 853 | | |
863 | 854 | | |
| |||
937 | 928 | | |
938 | 929 | | |
939 | 930 | | |
940 | | - | |
| 931 | + | |
941 | 932 | | |
942 | 933 | | |
943 | | - | |
944 | 934 | | |
945 | 935 | | |
946 | 936 | | |
947 | | - | |
948 | | - | |
949 | 937 | | |
950 | 938 | | |
0 commit comments