-
- Downloads
Modify the relcache to record the temp status of both local and nonlocal
temp relations; this is no more expensive than before, now that we have pg_class.relistemp. Insert tests into bufmgr.c to prevent attempting to fetch pages from nonlocal temp relations. This provides a low-level defense against bugs-of-omission allowing temp pages to be loaded into shared buffers, as in the contrib/pgstattuple problem reported by Stuart Bishop. While at it, tweak a bunch of places to use new relcache tests (instead of expensive probes into pg_namespace) to detect local or nonlocal temp tables.
Showing
- src/backend/catalog/index.c 2 additions, 2 deletionssrc/backend/catalog/index.c
- src/backend/catalog/namespace.c 4 additions, 1 deletionsrc/backend/catalog/namespace.c
- src/backend/catalog/toasting.c 2 additions, 2 deletionssrc/backend/catalog/toasting.c
- src/backend/commands/analyze.c 2 additions, 2 deletionssrc/backend/commands/analyze.c
- src/backend/commands/cluster.c 4 additions, 4 deletionssrc/backend/commands/cluster.c
- src/backend/commands/copy.c 2 additions, 3 deletionssrc/backend/commands/copy.c
- src/backend/commands/indexcmds.c 4 additions, 3 deletionssrc/backend/commands/indexcmds.c
- src/backend/commands/tablecmds.c 9 additions, 10 deletionssrc/backend/commands/tablecmds.c
- src/backend/commands/vacuum.c 2 additions, 2 deletionssrc/backend/commands/vacuum.c
- src/backend/optimizer/prep/prepunion.c 11 additions, 9 deletionssrc/backend/optimizer/prep/prepunion.c
- src/backend/postmaster/autovacuum.c 8 additions, 8 deletionssrc/backend/postmaster/autovacuum.c
- src/backend/storage/buffer/bufmgr.c 19 additions, 1 deletionsrc/backend/storage/buffer/bufmgr.c
- src/backend/utils/cache/relcache.c 10 additions, 6 deletionssrc/backend/utils/cache/relcache.c
- src/include/utils/rel.h 13 additions, 3 deletionssrc/include/utils/rel.h
Loading
Please register or sign in to comment