Re: The fable of DEMETRIUS, CONSTRAINTICUS, and AUTOMATICUS

From: Kenneth Downs <firstinit.lastname_at_lastnameplusfam.net>
Date: Sat, 23 Oct 2004 21:54:43 -0400
Message-ID: <312flc.k8d.ln_at_mercury.downsfam.net>


Jonathan Leffler wrote:

>
> 1. There's a boot-strapping problem. How do you create the initial
> load of data in the system catalog that describes the system
> catalog? You can't create the columns in the 'systables' before
> there's a 'syscolumns' table, nor can you create the 'syscolumns'
> table before there's a 'systables'.
>
> This need not be insuperable - it is a real problem, though.
>

I am not a DBMS vendor, but I've done plenty of data dictionaries of various types. As a bootstrap process, it will contain some hardcoding. I've tried various ways to limit the hardcoding to a single instance, and have concluded it is a bad idea. I actually have each crucial bit of bootstrapping information stored twice (gasp!) in the code. Pass 1 creates the tables, and pass two populates them with self-describing information. This is a finite operation however, so it can be debugged once and for all and then left alone, and considered to be safe and stable.

-- 
Kenneth Downs
Use first initial plus last name at last name plus literal "fam.net" to
email me
Received on Sun Oct 24 2004 - 03:54:43 CEST

Original text of this message