Re: proposal: rounding up time value less than its unit. - Mailing list pgsql-hackers

From David Johnston
Subject Re: proposal: rounding up time value less than its unit.
Date
Msg-id CAKFQuwbxfE7ZAT_cLuSGiCb3ZdVf0D6YZJa0gXMwj-m3d3GDzA@mail.gmail.com
Whole thread Raw
In response to Re: proposal: rounding up time value less than its unit.  (Alvaro Herrera <alvherre@2ndquadrant.com>)
List pgsql-hackers
On Friday, September 26, 2014, Alvaro Herrera <alvherre@2ndquadrant.com> wrote:
David Johnston wrote:
> On Friday, September 26, 2014, Alvaro Herrera <alvherre@2ndquadrant.com>
> wrote:
>
> > Tom Lane wrote:
> >
> > > The impression I had was that Stephen was thinking of actually setting
> > > min_val to 1 (or whatever) and handling zero or -1 in some out-of-band
> > > fashion, perhaps by adding GUC flag bits showing those as allowable
> > > special cases.  I'm not sure how we would display such a state of affairs
> > > in pg_settings, but other than that it doesn't sound implausible.
> >
> > I would think that if we're going to have "out of band" values, we
> > should just use "off", not 0 or -1.
>
> Except "off" is not always semantically correct - some GUCs (not sure which
> ones ATM) use zero to mean 'default'.  I think -1 always means off.
> Instead of 0 and -1 we'd need 'default' and 'off' with the ability to error
> if there is no meaningful default defined or if a feature cannot be turned
> off.

Sure, "off" (and other spellings of boolean false value) and "default"
where they make sense, and whatever other values that make sense.  My
point is to avoid collapsing such logical values to integer/floating
point values just because the option uses a numeric scale.


My comment was more about storage than data entry.  I'm not sure, though, that we'd want to allow 0 as valid input even if it is acceptable for Boolean.

David J.

pgsql-hackers by date:

Previous
From: Gregory Smith
Date:
Subject: Re: proposal: rounding up time value less than its unit.
Next
From: Peter Geoghegan
Date:
Subject: Re: INSERT ... ON CONFLICT {UPDATE | IGNORE}