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]>
