[COMMITTERS] pgsql: Allow no-op GiST support functions to be omitted.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема [COMMITTERS] pgsql: Allow no-op GiST support functions to be omitted.
Дата
Msg-id E1duVlM-0001eb-TN@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Allow no-op GiST support functions to be omitted.

There are common use-cases in which the compress and/or decompress
functions can be omitted, with the result being that we make no
data transformation when storing or retrieving index values.
Previously, you had to provide a no-op function anyway, but this
patch allows such opclass support functions to be omitted.

Furthermore, if the compress function is omitted, then the core code
knows that the stored representation is the same as the original data.
This means we can allow index-only scans without requiring a fetch
function to be provided either.  Previously you had to provide a
no-op fetch function if you wanted IOS to work.

This reportedly provides a small performance benefit in such cases,
but IMO the real reason for doing it is just to reduce the amount of
useless boilerplate code that has to be written for GiST opclasses.

Andrey Borodin, reviewed by Dmitriy Sarafannikov

Discussion: https://postgr.es/m/CAJEAwVELVx9gYscpE=Be6iJxvdW5unZ_LkcAaVNSeOwvdwtD=A@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/d3a4f89d8a3e500bd7c0b7a8a8a5ce1b47859128

Modified Files
--------------
doc/src/sgml/gist.sgml                 | 34 +++++++++++++++++++--------
src/backend/access/gist/gist.c         | 24 ++++++++++++++-----
src/backend/access/gist/gistget.c      |  4 +++-
src/backend/access/gist/gistutil.c     | 42 ++++++++++++++++++++++++++++++----
src/backend/access/gist/gistvalidate.c |  3 ++-
5 files changed, 85 insertions(+), 22 deletions(-)


--
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers

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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: [COMMITTERS] pgsql: Make new crash restart test a bit morerobust.
Следующее
От: Andres Freund
Дата:
Сообщение: [COMMITTERS] pgsql: Accept that server might not be able to send error in crashreco