John Naylor escribió:
> Hello everyone,
>
> I was quite intrigued by a discussion that happened this past summer
> regarding generation of bootstrap files such as postgres.bki, and the
> associated pain points of maintaining the DATA() statements in catalog headers.
> It occurred to me that the current system is backwards: Instead of
> generating the
> bootstrap files from hard-coded strings contained in various header files, it
> seems it would be a cleaner design to generate both from a human-readable
> high-level description of the system catalogs.
I had a look at this some time ago and I must admit that I find it
pretty interesting. The technology choices make it
obviously impossible to merge -- not only the particular Perl modules
used, but the mere fact that Perl is used (and that such a recent
version is required). But you're already aware of all this so I'm not
going to say more.
As far as the data file is concerned, I think having it all in a single
file is a loser. I'd go for a file per catalog. Also, I don't like the
fact that the column descriptions are lost because of being in a
YAML comment. I think it'd be better if the generated pg_foo.h files
had them.
One thing I loved about this is that it's trivial to add a column to
pg_proc and that this not mean that I have to edit almost every single
line of the damn monster file.
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support