- Notifications
You must be signed in to change notification settings - Fork5
Commit50ff07d
committed
Remove arbitrary 10MB limit on two-phase state file size. It's not that hard
to go beoynd 10MB, as demonstrated by Gavin Sharry's example of dropping aschema with ~25000 objects. The really bogus thing about the limit was thatit was enforced when a state file file was read in, not when it was written,so you would end up with a prepared transaction that you can't commit orabort, and the only recourse was to shut down the server and remove the fileby hand.Raise the limit to MaxAllocSize, and enforce it also when a state file iswritten. We could've removed the limit altogether, but reading in a filelarger than MaxAllocSize would fail anyway because we read it into apalloc'd buffer.Backpatch down to 8.1, where 2PC and this issue was introduced.1 parent07a5606 commit50ff07d
1 file changed
+15
-3
lines changedLines changed: 15 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 |
| - | |
| 10 | + | |
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
| |||
56 | 56 |
| |
57 | 57 |
| |
58 | 58 |
| |
| 59 | + | |
59 | 60 |
| |
60 | 61 |
| |
61 | 62 |
| |
| |||
865 | 866 |
| |
866 | 867 |
| |
867 | 868 |
| |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
868 | 878 |
| |
869 | 879 |
| |
870 | 880 |
| |
| |||
1045 | 1055 |
| |
1046 | 1056 |
| |
1047 | 1057 |
| |
1048 |
| - | |
| 1058 | + | |
| 1059 | + | |
| 1060 | + | |
1049 | 1061 |
| |
1050 | 1062 |
| |
1051 | 1063 |
| |
| |||
1060 | 1072 |
| |
1061 | 1073 |
| |
1062 | 1074 |
| |
1063 |
| - | |
| 1075 | + | |
1064 | 1076 |
| |
1065 | 1077 |
| |
1066 | 1078 |
| |
|
0 commit comments
Comments
(0)