forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit53e95ee
committed
Fix for rare race-condition-like failure: if a backend receives SIGUSR2
(notify/SI-overrun interrupt) while it is in process of doing proc_exit,it is possible for Async_NotifyHandler() to try to start a transactionwhen one is already running. This leads to Asserts() or worse. I thinkit may only be possible to occur when frontend synchronization is lost(ie, the elog(FATAL) in SocketBackend() fires), but that is a standardoccurrence after error during COPY. In any case, I have seen thisfailure occur during regression tests, so it is definitely possible.1 parent5ea9322 commit53e95ee
2 files changed
+10
-3
lines changedLines changed: 5 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 |
| - | |
| 10 | + | |
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
| |||
593 | 593 |
| |
594 | 594 |
| |
595 | 595 |
| |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
596 | 600 |
| |
597 | 601 |
| |
598 | 602 |
| |
|
Lines changed: 5 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
1071 | 1071 |
| |
1072 | 1072 |
| |
1073 | 1073 |
| |
| 1074 | + | |
1074 | 1075 |
| |
1075 | 1076 |
| |
1076 | 1077 |
| |
1077 | 1078 |
| |
1078 | 1079 |
| |
1079 | 1080 |
| |
| 1081 | + | |
1080 | 1082 |
| |
1081 | 1083 |
| |
1082 | 1084 |
| |
| |||
1689 | 1691 |
| |
1690 | 1692 |
| |
1691 | 1693 |
| |
1692 |
| - | |
| 1694 | + | |
1693 | 1695 |
| |
1694 | 1696 |
| |
1695 | 1697 |
| |
| |||
1736 | 1738 |
| |
1737 | 1739 |
| |
1738 | 1740 |
| |
| 1741 | + | |
1739 | 1742 |
| |
1740 | 1743 |
| |
1741 | 1744 |
| |
|
0 commit comments
Comments
(0)