Idea: cross-check versions during initdb

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgreSQL(dot)org
Subject: Idea: cross-check versions during initdb
Date: 2000-10-26 15:42:11
Message-ID: 5819.972574931@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

While answering the n'th why-is-initdb-failing question that looked like
a version mismatch problem, it occurred to me to wonder why we don't
make initdb verify that the executable and library files it's using
are all from the same release it is. I think this would eliminate an
installation mistake that's practically reached FAQ status.

A sketch of a way to do this is:

1. Add a --version switch to postgres or postmaster to print its version
and exit. Then initdb could check the executable's version against its
own. (Alternatively we could rely on pg_config, but at a minimum that
would mean checking to make sure that pg_config is found in the same
directory that postgres is in. A direct check on the key executable
seems a lot safer.)

2. During "make install", generate a PGVERSION file and store it in the
same directory that global.bki etc are stored in (the .../share install
directory). initdb could look for this to ensure that PGLIB is pointing
to a compatible library directory. Alternatively, add version info as
a comment in the first line of global.bki.

I don't have time to pursue this right now, but maybe someone else would
like to pick up on it.

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2000-10-26 16:34:10 Re: Re: Add support for <xti.h>
Previous Message Stephan Szabo 2000-10-26 15:12:04 Re: DBD::Pg::st execute failed: ERROR