pg_internal.init
是数据目录中的一个文件,其中包含关系缓存。在全局子目录中存在一个文件,在每个数据库子目录中存在一个文件,并且可能在每个非默认的 表空间 中存在一个文件。
每个 pg_internal.init
文件在 postmaster 启动时被删除,并由第一个启动的后端重新创建。
实现细节
每个 pg_internal.init
包含最多 100 个 Relation
条目(此数字在 src/backend/utils/cache/relcache.c 中硬编码)。有关 Relation 的定义,请参阅 src/include/utils/rel.h。
源代码
pg_internal.init
定义为 RELCACHE_INIT_FILENAME
。
该文件由 src/backend/utils/cache/relcache.c 管理。