Re: Allow to collect statistics on virtual generated columns

Dean Rasheed <dean.a.rasheed@gmail.com>

From: Dean Rasheed <dean.a.rasheed@gmail.com>
To: Yugo Nagata <nagata@sraoss.co.jp>
Cc: Andres Freund <andres@anarazel.de>, pgsql-hackers@postgresql.org
Date: 2026-03-26T17:44:01Z
Lists: pgsql-hackers
On Thu, 26 Mar 2026 at 17:18, Yugo Nagata <nagata@sraoss.co.jp> wrote:
>
> On Thu, 26 Mar 2026 16:00:38 +0000
> Dean Rasheed <dean.a.rasheed@gmail.com> wrote:
>
> > On Thu, 26 Mar 2026 at 15:09, Yugo Nagata <nagata@sraoss.co.jp> wrote:
> > >
> > > I've attached an updated patch including the documentation and tests.
> >
> > I think this is a much better approach.
> >
> > One thing that stands out in CreateStatistics() is that the check for
> > a less-than operator can be skipped if there is just a single virtual
> > generated column, for the same reason as for statistics on a single
> > expression. I.e., it should be possible to build statistics on a
> > single virtual generated column of any data type.
>
> I've attached a revised patch to skip the less-than operator check
> for a single virtual generated column.
>
> In fact, this change skips the check for any single column,
> not just virtual generated columns. However, using a non-virtual
> single column will result in an error elsewhere.

Makes sense. I think the comments could just be simplified to say
"Disallow data types without a less-than operator in multivariate
statistics", and add the word "multivariate" to the error message, as
in the expression case.

Regards,
Dean



Commits

  1. Add support for extended statistics on virtual generated columns.