Re: Yet another fast GiST build

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Yet another fast GiST build
Дата
Msg-id 896113.1600643169@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Yet another fast GiST build  (Heikki Linnakangas <hlinnaka@iki.fi>)
Ответы Re: Yet another fast GiST build
Re: Yet another fast GiST build
Список pgsql-hackers
Justin Pryzby <pryzby@telsasoft.com> writes:
> This also appears to break checksums.

I was wondering about that, because the typical pattern for use of
smgrextend for indexes seems to be

    RelationOpenSmgr(rel);
    PageSetChecksumInplace(page, lastblock);
    smgrextend(rel->rd_smgr, MAIN_FORKNUM, lastblock, zerobuf.data, false);

and gist_indexsortbuild wasn't doing either of the first two things.

gist_indexsortbuild_flush_ready_pages looks like it might be
a few bricks shy of a load too.  But my local CLOBBER_CACHE_ALWAYS
run hasn't gotten to anything except the pretty-trivial index
made in point.sql, so I don't have evidence about it.

Another interesting point is that all the other index AMs seem to WAL-log
the new page before the smgrextend call, whereas this code is doing it
in the other order.  I strongly doubt that both patterns are equally
correct.  Could be that the other AMs are in the wrong though.

            regards, tom lane



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Yet another fast GiST build
Следующее
От: Ranier Vilela
Дата:
Сообщение: Re: Planner, check if can use consider HASH for groupings (src/backend/optimizer/plan/planner.c)