Re: Thoughts on the location of configuration files, how about this:

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: mlw <markw(at)mohawksoft(dot)com>
Cc: PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Thoughts on the location of configuration files, how about this:
Date: 2001-12-20 17:12:55
Message-ID: Pine.LNX.4.30.0112201720590.634-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

mlw writes:

> -C filepath_name
> If filepath_name is a file, it is treated as a configuration file, no other
> information is assumed. If filepath_file is a directory, it is used to replace
> the default "sysconfdir" obtained from configure.

This seems like a reasonable compromise, but I think I'm OK with -C
specifying the name of the config file only. Otherwise it would be too
much logic for something that you can work around with tab completion.

> postgresql.conf
> By default it will live in sysconfdir as configured by "configure."
> If it is not found in the "sysconfdir," $PGDATA will be searched.

I don't think I like "if not found in X then search Y". If the file is
not where it was configured to be then it's an error or it will be
ignored, or whatever the usual behavior would be.

Looking into $PGDATA is probably something we want to discourage, not do
implicitly. The backup/upgrade issue would be much simplified if we kept
hand-edited files out of there. Are you concerned about backward
compatibility? I think a note in the data directory that tells users
where to find the files is OK. Others may disagree.

Also, I'm not sure exactly what you mean with $PGDATA. If you mean "the
data area", then this would be complicated to arrange, because the data
area is or may be configured in postgresql.conf. If you mean the actual
environment variable, I think environment variables should override
compiled-in defaults, not serve as fallbacks. That's just the usual order
of priorities.

> pg_hba.conf
> By default it will live in sysconfdir as configured by "configure."
> Its location can be changed by "hbaconfig" in postgresql.conf.
> If not configured in postgresql.conf and not found within "sysconfdir," $PGDATA
> will be searched. If explicitly configured in the postgresql.conf file, it must
> exist as specified.

Same concern here.

> Note:
> I think the data directory should be explicitly configured by either the
> posgresql.conf file, environment variable (PGDATA), or through the command line
> option, but using the "configure" statedir isn't anything anyone would object
> too.

Fixed locations create consistency and save typing. Both are tremendous
time-savers.

--
Peter Eisentraut peter_e(at)gmx(dot)net

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2001-12-20 17:13:12 Re: tkConfig.sh vs. ./configure
Previous Message Andrew Bell 2001-12-20 16:55:56 Re: long ints use for 4-byte entities in ODBC