forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitb3f919d
committed
Add table relcache invalidation to index builds.
It's necessary to make sure that owning tables have a relcacheinvalidation prior to advancing the command counter to makenewly-entered catalog tuples for the index visible. inval.c must beable to maintain the consistency of the local caches in the event oftransaction abort. There is usually only a problem when CREATE INDEXtransactions abort, since there is a generic invalidation once we reachindex_update_stats().This bug is of long standing. Problems were made much more likely bythe addition of parallel CREATE INDEX (commit9da0cc3), but it isstrongly suspected that similar problems can be triggered withoutinvolving plan_create_index_workers(). (plan_create_index_workers()triggers a relcache build or rebuild, which previously only happened inrare edge cases.)Author: Peter GeogheganReported-By: Luca FerrariDiagnosed-By: Andres FreundReviewed-By: Andres FreundDiscussion:https://postgr.es/m/CAKoxK+5fVodiCtMsXKV_1YAKXbzwSfp7DgDqUmcUAzeAhf=HEQ@mail.gmail.comBackpatch: 9.3-1 parentc1455de commitb3f919d
1 file changed
+6
-0
lines changedLines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
978 | 978 |
| |
979 | 979 |
| |
980 | 980 |
| |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
981 | 987 |
| |
982 | 988 |
| |
983 | 989 |
| |
|
0 commit comments
Comments
(0)