On Tue, Jun 12, 2001 at 09:37:43PM +0200, Peter Eisentraut wrote:
> Marko Kreen writes:
> > *** src/backend/tcop/postgres.c 2001/06/07 04:50:57 1.219
> > --- src/backend/tcop/postgres.c 2001/06/11 09:17:07
> > + ctx = IsUnderPostmaster ? PGC_BACKEND : PGC_POSTMASTER;
> > +
>
> This is wrong. If you're in PostgresMain then the context is PGC_BACKEND
> -- by definition.
Well, but how do you explain this: (line 1463 in current CVS):
/* all options are allowed if not under postmaster */
SetConfigOption(name, value,
(IsUnderPostmaster) ? PGC_BACKEND : PGC_POSTMASTER, true);
As I understand, when you run ./postgres directly, you get
PGC_POSTMASTER, which includes PGC_BACKEND.
And sorry, I should have updated that check to 'ctx' too, it
would have been clearer.
> > ! if (!cf->variable || !cf->default_val)
> > ! continue;
>
> This shouldn't happen. Just let it crash.
>
> > !
> > ! if (!*cf->variable || strcmp(cf->default_val, *cf->variable))
>
> Evil coding style alert. Suggest:
Ok, will send a update to that, waiting first your
comment on the ctx issue.
--
marko