Chapter 67. BKI Backend Interface
Table of Contents
Backend Interface ( BKI ) files are scripts in a special language that is understood by the PostgreSQL backend when running in the " bootstrap " mode. The bootstrap mode allows system catalogs to be created and filled from scratch, whereas ordinary SQL commands require the catalogs to exist already. BKI files can therefore be used to create the database system in the first place. (And they are probably not useful for anything else.)
  
   initdb
  
  uses a
  
   BKI
  
  file
  to do part of its job when creating a new database cluster.  The
  input file used by
  
   initdb
  
  is created as
  part of building and installing
  
   PostgreSQL
  
  by a program named
  
   genbki.pl
  
  , which reads some
  specially formatted C header files in the
  
   src/include/catalog/
  
  directory of the source tree.  The created
  
   BKI
  
  file
  is called
  
   postgres.bki
  
  and is
  normally installed in the
  
   share
  
  subdirectory of the installation tree.
 
Related information can be found in the documentation for initdb .