Re: pgsql: Compress GIN posting lists, for smaller index size.

Поиск
Список
Период
Сортировка
От Fujii Masao
Тема Re: pgsql: Compress GIN posting lists, for smaller index size.
Дата
Msg-id CAHGQGwFAG==9rH1V043-VwvqgmCzHZEbHb6SpzhzW835m0cf-A@mail.gmail.com
обсуждение исходный текст
Ответ на pgsql: Compress GIN posting lists, for smaller index size.  (Heikki Linnakangas <heikki.linnakangas@iki.fi>)
Ответы Re: pgsql: Compress GIN posting lists, for smaller index size.  (Heikki Linnakangas <hlinnakangas@vmware.com>)
Re: pgsql: Compress GIN posting lists, for smaller index size.  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-committers
On Thu, Jan 23, 2014 at 2:28 AM, Heikki Linnakangas
<heikki.linnakangas@iki.fi> wrote:
> Compress GIN posting lists, for smaller index size.
>
> GIN posting lists are now encoded using varbyte-encoding, which allows them
> to fit in much smaller space than the straight ItemPointer array format used
> before. The new encoding is used for both the lists stored in-line in entry
> tree items, and in posting tree leaf pages.
>
> To maintain backwards-compatibility and keep pg_upgrade working, the code
> can still read old-style pages and tuples. Posting tree leaf pages in the
> new format are flagged with GIN_COMPRESSED flag, to distinguish old and new
> format pages. Likewise, entry tree tuples in the new format have a
> GIN_ITUP_COMPRESSED flag set in a bit that was previously unused.
>
> This patch bumps GIN_CURRENT_VERSION from 1 to 2. New indexes created with
> version 9.4 will therefore have version number 2 in the metapage, while old
> pg_upgraded indexes will have version 1. The code treats them the same, but
> it might be come handy in the future, if we want to drop support for the
> uncompressed format.

I failed to compile HEAD because, ISTM, of this patch.

ginvacuum.c:34: error: redefinition of typedef 'GinVacuumState'
../../../../src/include/access/gin_private.h:715: error: previous
declaration of 'GinVacuumState' was here
make[4]: *** [ginvacuum.o] Error 1
make[3]: *** [gin-recursive] Error 2
make[2]: *** [access-recursive] Error 2
make[2]: *** Waiting for unfinished jobs....

$ uname -a
Darwin test.local 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23
16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64

Regards,

--
Fujii Masao


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

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: pgsql: Compress GIN posting lists, for smaller index size.
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: pgsql: Fix declaration of GinVacuumState.