- Notifications
You must be signed in to change notification settings - Fork5
Commit96cc18e
committed
Put back AcceptInvalidationMessages calls in heap_openrv(_extended).
These calls were removed in commit4240e42as part of a general refactoring and improvement of DDL locking. However,there's a problem not solved by the rewrite, which is that GRANT/REVOKEupdate pg_class.relacl without taking any particular lock on the targettable as such. If another backend fails to do AcceptInvalidationMessages,it won't notice a recently-committed change in ACLs. Bug #7557 from PiotrCzachur demonstrates that there's at least one code path in 9.2.0 in whicha command fails to do any AcceptInvalidationMessages calls at all, if thecurrent transaction already holds all the locks it will need.Since we're hard up against the release deadline for 9.2.1, fix this byputting back the AcceptInvalidationMessages calls in heap_openrv andheap_openrv_extended, thereby restoring the historical behavior in thisarea. We ought to look for a more elegant and perhaps more bulletproofsolution, but there's no time for that right now.1 parentf1f722d commit96cc18e
1 file changed
+21
-0
lines changedLines changed: 21 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
986 | 986 |
| |
987 | 987 |
| |
988 | 988 |
| |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
989 | 1003 |
| |
990 | 1004 |
| |
991 | 1005 |
| |
| |||
1008 | 1022 |
| |
1009 | 1023 |
| |
1010 | 1024 |
| |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
1011 | 1032 |
| |
1012 | 1033 |
| |
1013 | 1034 |
| |
|
0 commit comments
Comments
(0)