Re: Fix error message when trying to alter statistics on included column

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: Fix error message when trying to alter statistics on included column
Дата
Msg-id CA+TgmoZFNDsgvy+pyfQyz9UQm0GHcHtoA=V51Ra6Lav+t1uFWg@mail.gmail.com
обсуждение исходный текст
Ответ на Fix error message when trying to alter statistics on includedcolumn  (Yugo Nagata <nagata@sraoss.co.jp>)
Ответы Re: Fix error message when trying to alter statistics on includedcolumn  (Yugo Nagata <nagata@sraoss.co.jp>)
Список pgsql-hackers
On Thu, Jun 28, 2018 at 5:28 AM, Yugo Nagata <nagata@sraoss.co.jp> 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.
>
> Attached is the patch to fix the error message. In this fix, column number
> is checked first. After applying this, the message is changed as below;
>
>  postgres=# alter index idx alter column 2 set statistics 10;
>  ERROR:  cannot alter statistics on included column "d" of index "idx"

I think you should add an open item for this.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: alter index WITH ( storage_parameter = value [, ... ] ) forpartition index.
Следующее
От: Andrew Gierth
Дата:
Сообщение: Re: Should contrib modules install .h files?