On Fri, 27 Mar 2026 09:50:07 +0000
Dean Rasheed <[email protected]> wrote:

> On Fri, 27 Mar 2026 at 04:46, Yugo Nagata <[email protected]> wrote:
> >
> > On Fri, 27 Mar 2026 07:45:37 +0700
> > John Naylor <[email protected]> wrote:
> >
> > > On Fri, Mar 27, 2026 at 6:23 AM Michael Paquier <[email protected]> 
> > > wrote:
> > > > -    errmsg("extended statistics require at least 2 columns")));
> > > > +    errmsg("extended statistics are not supported on a single 
> > > > column")));
> > > >
> > > > Now our documentation also tells that the former message is not the
> > > > preferred project style (full sentences usually avoided in primary
> > > > messages):
> > > > https://www.postgresql.org/docs/devel/error-style-guide.html#ERROR-STYLE-GUIDE-GRAMMAR-PUNCTUATION
> > >
> > > My reading of that is that hints/details need to be complete
> > > sentences, and primary messages don't need to be. If the obvious way
> > > to write primary message is with a complete sentence, I would say
> > > that's fine, but I don't have a lot of context here.
> > >
> > > > Perhaps something like "could not create extended statistics" with a
> > > > hint describing the cause would be better..  Full sentences usually
> > > > apply to errdetails or errhints.  If we're on it, we could just as
> > > > well improve the whole thing, I guess?
> > >
> > > I don't feel strongly either way, so in that case I would default to
> > > not changing to errdetail. Looking elsewhere in this file, however, I
> > > do see some messages with "cannot do X because ....", and I'd be more
> > > motivated to turn those "because" phrases into errdetails.
> >
> > I don't have a strong preference here, so I'm fine with either approach.
> > I also agree that moving "because ..." into errdetails in some longer
> > messages makes sense.
> 
> I don't think it should be a hint, because that's more for suggestions
> on how to fix the problem.
> 
> Given that the user just tried to create extended statistics on a
> single column, they're probably not interested in expression
> statistics or multivariate statistics, so a single short "not
> supported" error seems sufficient.
> 
> If we were to give more detail, it should probably be to point out
> that regular statistics will already be built for single columns,
> which is why single-column extended statistics would be redundant. So
> perhaps something like this:
> 
> Error: cannot create extended statistics on a single column
> Detail: Univariate statistics are already built for each individual
> table column.

That makes sense to me.

Using an errdetail to explain the reason sounds reasonable.

-- 
Yugo Nagata <[email protected]>


Reply via email to