pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Justin Pryzby <pryzby@telsasoft.com>
Cc: Heikki Linnakangas <hlinnaka@iki.fi>
Cc: Andrey M. Borodin <x4mmm@yandex-team.ru>
Cc: Darafei Komяpa Praliaskouski <me@komzpa.net>
Cc: Pavel Borisov <pashkin.elfe@gmail.com>
Cc: Thomas Munro <thomas.munro@gmail.com>
Cc: Michael Paquier <michael@paquier.xyz>
Cc: Alexander Korotkov <a.korotkov@postgrespro.ru>
Cc: pgsql-hackers@postgresql.org
Subject: Re: Yet another fast GiST build
Date: Sun, 20 Sep 2020 19:06:09 -0400
Message-ID: <896113.1600643169@sss.pgh.pa.us> (raw)
In-Reply-To: <20200920224446.GF30557@telsasoft.com>
References: <7d9158ca-d7cb-88f0-dbbd-1d5cec32b1ae@iki.fi>
	<CAC8Q8t+KG6oeyC697X3agZmHFTMjZYKvg13X2KapbfcTiYvdhw@mail.gmail.com>
	<fdee7ef5-1ea3-e381-0611-19352c4f9d1d@iki.fi>
	<8516B6A8-11B2-41A8-B7EB-D0C38ADD06C3@yandex-team.ru>
	<50e03197-6e75-faec-16dc-41a2a38f080c@iki.fi>
	<123F5F32-9A85-4D0B-9C7A-1686E6BBE15D@yandex-team.ru>
	<85df399a-e8a4-2369-f723-fd1a3a872575@iki.fi>
	<!63596817-db40-1093-c6ce-5dea7dac67c4@iki.fi>
	<884200.1600634472@sss.pgh.pa.us>
	<891385.1600636205@sss.pgh.pa.us>
	<20200920224446.GF30557@telsasoft.com>

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





view thread (111+ messages)  latest in thread

Message-ID: <896113.1600643169@sss.pgh.pa.us>
Permalink:  ../896113.1600643169@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/896113.1600643169@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: tgl@sss.pgh.pa.us, pryzby@telsasoft.com, hlinnaka@iki.fi, x4mmm@yandex-team.ru, me@komzpa.net, pashkin.elfe@gmail.com, thomas.munro@gmail.com, michael@paquier.xyz, a.korotkov@postgrespro.ru
  Subject: Re: Yet another fast GiST build
  In-Reply-To: <896113.1600643169@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox