On 2018-Jun-28, Yugo Nagata wrote:
> According to the error message, it is not allowed to alter statistics on
> included column because this is "non-expression column".
>
> postgres=# create table test (i int, d int);
> CREATE TABLE
> postgres=# create index idx on test(i) include (d);
> CREATE INDEX
> postgres=# alter index idx alter column 2 set statistics 10;
> ERROR: cannot alter statistics on non-expression column "d" of index "idx"
> HINT: Alter statistics on table column instead.
>
> However, I think this should be forbidded in that this is not a key column
> but a included column. Even if we decide to support expressions in included
> columns in future, it is meaningless to do this because any statistics on
> included column is never used by the planner.
I agree with this reasoning, so I pushed this patch. Thanks! I added a
couple of lines in the regress file for this feature also.
Teodor, Alexander, now would be the time to express dissent :-)
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services