forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commita152ebe
committed
Fix problems seen in parallel regress tests when SI buffer overruns (causing
syscache and relcache flushes). Relcache entry rebuild now preservesoriginal tupledesc, rewrite rules, and triggers if possible, so that pointersto these things remain valid --- if these things change while relcache entryhas positive refcount, we elog(ERROR) to avoid later crash. Arrange forxact-local rels to be rebuilt when an SI inval message is seen for them,so that they are updated by CommandCounterIncrement the same as regular rels.(This is useful because of Hiroshi's recent changes to process our own SImessages at CommandCounterIncrement time.) This allows simplification ofsome routines that previously hacked around the lack of an automatic update.catcache now keeps its own copy of tupledesc for its relation, rather thandepending on the relcache's copy; this avoids needing to reinitialize catcacheduring a cache flush, which saves some cycles and eliminates nasty circularityproblems that occur if a cache flush happens while trying to initialize acatcache.Eliminate a number of permanent memory leaks that used to happen duringcatcache or relcache flush; not least of which was that catcache neverfreed any cached tuples! (Rule parsetree storage is still leaked, however;will fix that separately.)Nothing done yet about code that uses tuples retrieved by SearchSysCachefor longer than is safe.1 parentca0f143 commita152ebe
File tree
15 files changed
+593
-404
lines changed- src
- backend
- access/common
- catalog
- commands
- lib
- utils
- cache
- mmgr
- include
- access
- commands
- lib
- utils
15 files changed
+593
-404
lines changedLines changed: 66 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
226 | 226 |
| |
227 | 227 |
| |
228 | 228 |
| |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
229 | 294 |
| |
230 | 295 |
| |
231 | 296 |
| |
|
Lines changed: 1 addition & 13 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 |
| |
| |||
2098 | 2098 |
| |
2099 | 2099 |
| |
2100 | 2100 |
| |
2101 |
| - | |
2102 |
| - | |
2103 |
| - | |
2104 |
| - | |
2105 |
| - | |
2106 |
| - | |
2107 |
| - | |
2108 |
| - | |
2109 |
| - | |
2110 |
| - | |
2111 |
| - | |
2112 |
| - | |
2113 | 2101 |
| |
2114 | 2102 |
| |
2115 | 2103 |
| |
|
0 commit comments
Comments
(0)