open
コマンドは、テーブルが、使用するテーブルが存在し、開かれるテーブルに対しエントリを所有するまで使用できません。(これら最小限度のテーブルは、pg_class
、pg_attribute
、pg_proc
、およびpg_type
です。)これらのテーブル自体が充填されるようにするには、bootstrap
オプションを伴ったcreate
が明示的にデータの挿入のために作成されたテーブルを開きます。
また、必要とするシステムカタログが作成され、値が設定されるまで、declare index
およびdeclare toast
コマンドは使用できません。
従い、postgres.bki
の構造は以下でなければなりません。
1つの重要なテーブルをcreate bootstrap
insert
data describing at least the critical tables
少なくとも重要なテーブルを記述するデータをinsert
close
その他の重要テーブルに対して反復。
重要でないテーブルを(bootstrap
無しで)create
open
求められるデータのinsert
close
その他の重要でないテーブルに対して反復。
インデックスおよびTOASTテーブルの定義。
build indices
他にも確かに、ドキュメント化されていない順序に関する依存性があります。