-
- Downloads
Move materialized views' is-populated status into their pg_class entries.
Previously this state was represented by whether the view's disk file had zero or nonzero size, which is problematic for numerous reasons, since it's breaking a fundamental assumption about heap storage. This was done to allow unlogged matviews to revert to unpopulated status after a crash despite our lack of any ability to update catalog entries post-crash. However, this poses enough risk of future problems that it seems better to not support unlogged matviews until we can find another way. Accordingly, revert that choice as well as a number of existing kluges forced by it in favor of creating a pg_class.relispopulated flag column.
Showing
- doc/src/sgml/catalogs.sgml 11 additions, 3 deletionsdoc/src/sgml/catalogs.sgml
- doc/src/sgml/func.sgml 0 additions, 9 deletionsdoc/src/sgml/func.sgml
- src/backend/catalog/heap.c 1 addition, 20 deletionssrc/backend/catalog/heap.c
- src/backend/catalog/system_views.sql 1 addition, 1 deletionsrc/backend/catalog/system_views.sql
- src/backend/commands/cluster.c 1 addition, 6 deletionssrc/backend/commands/cluster.c
- src/backend/commands/createas.c 7 additions, 4 deletionssrc/backend/commands/createas.c
- src/backend/commands/matview.c 40 additions, 28 deletionssrc/backend/commands/matview.c
- src/backend/commands/vacuumlazy.c 0 additions, 6 deletionssrc/backend/commands/vacuumlazy.c
- src/backend/utils/adt/dbsize.c 0 additions, 27 deletionssrc/backend/utils/adt/dbsize.c
- src/backend/utils/cache/relcache.c 9 additions, 25 deletionssrc/backend/utils/cache/relcache.c
- src/bin/pg_dump/pg_dump.c 35 additions, 19 deletionssrc/bin/pg_dump/pg_dump.c
- src/bin/pg_dump/pg_dump.h 1 addition, 1 deletionsrc/bin/pg_dump/pg_dump.h
- src/include/catalog/catversion.h 1 addition, 1 deletionsrc/include/catalog/catversion.h
- src/include/catalog/heap.h 0 additions, 1 deletionsrc/include/catalog/heap.h
- src/include/catalog/pg_class.h 11 additions, 9 deletionssrc/include/catalog/pg_class.h
- src/include/catalog/pg_proc.h 0 additions, 2 deletionssrc/include/catalog/pg_proc.h
- src/include/commands/matview.h 1 addition, 1 deletionsrc/include/commands/matview.h
- src/include/utils/builtins.h 0 additions, 1 deletionsrc/include/utils/builtins.h
- src/include/utils/rel.h 9 additions, 2 deletionssrc/include/utils/rel.h
- src/test/regress/expected/matview.out 9 additions, 9 deletionssrc/test/regress/expected/matview.out
Loading
Please register or sign in to comment