pgsql: Drop the rule against included index columns duplicating keycol

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Drop the rule against included index columns duplicating keycol
Дата
Msg-id E1ffrPx-0001qH-Uv@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Drop the rule against included index columns duplicating key columns.

The initial version of the included-index-column feature stated that
included columns couldn't be the same as any key column of the index.
While it'd be pretty silly to do that, since the included column would be
entirely redundant, we've never prohibited redundant index columns before
so it's not very consistent to do so here.  Moreover, the prohibition
was itself badly implemented, so that it failed to reject columns that
were effectively identical but not spelled quite alike, as reported by
Aditya Toshniwal.

(Moreover, it's not hard to imagine that for some non-btree index types,
such cases would be non-silly anyhow: the index might use a lossy
representation for key columns but be able to support retrieval of the
original form of included columns.)

Hence, let's just drop the prohibition.

In passing, do some copy-editing on the documentation for the
included-column feature.

Yugo Nagata; documentation and test corrections by me

Discussion: https://postgr.es/m/CAM9w-_mhBCys4fQNfaiQKTRrVWtoFrZ-wXmDuE9Nj5y-Y7aDKQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/701fd0bbc98fe8211d36e96f90753985104cd295

Modified Files
--------------
doc/src/sgml/catalogs.sgml                    | 24 +++++++++------
doc/src/sgml/indexam.sgml                     |  9 +++---
doc/src/sgml/indices.sgml                     |  8 ++---
doc/src/sgml/ref/create_index.sgml            | 44 ++++++++++++---------------
doc/src/sgml/ref/create_table.sgml            | 10 +++---
src/backend/commands/indexcmds.c              |  7 +----
src/test/regress/expected/index_including.out | 14 ++++-----
src/test/regress/sql/index_including.sql      |  6 ++--
8 files changed, 58 insertions(+), 64 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Use a ResourceOwner to track buffer pins in all cases.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Remove race-prone hot_standby_feedback test cases in001_stream_