Re: Relation bulk write facility

Поиск
Список
Период
Сортировка
Искать
От
Thomas Munro
Тема
Re: Relation bulk write facility
Дата
Msg-id
CA+hUKGKtVazR0yEDxOrZYAmeaVbvQxNXSb6K8BDYOtuRVnCMDQ@mail.gmail.com
Ответ на
Список
Дерево обсуждения
Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Andres Freund <andres@anarazel.de>
Re: Relation bulk write facility Andrey Borodin <x4mmm@yandex-team.ru>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Robert Haas <robertmhaas@gmail.com>
Re: Relation bulk write facility vignesh C <vignesh21@gmail.com>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Peter Smith <smithpb2250@gmail.com>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Thomas Munro <thomas.munro@gmail.com>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Andres Freund <andres@anarazel.de>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Thomas Munro <thomas.munro@gmail.com>
Re: Relation bulk write facility Thomas Munro <thomas.munro@gmail.com>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Tom Lane <tgl@sss.pgh.pa.us>
Re: Relation bulk write facility Robert Haas <robertmhaas@gmail.com>
Re: Relation bulk write facility Michael Paquier <michael@paquier.xyz>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Andres Freund <andres@anarazel.de>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Tom Lane <tgl@sss.pgh.pa.us>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Tom Lane <tgl@sss.pgh.pa.us>
Re: Relation bulk write facility Tom Lane <tgl@sss.pgh.pa.us>
Re: Relation bulk write facility Andres Freund <andres@anarazel.de>
Re: Relation bulk write facility Andres Freund <andres@anarazel.de>
Re: Relation bulk write facility Thomas Munro <thomas.munro@gmail.com>
Remove AIX Support (was: Re: Relation bulk write facility) Michael Banck <mbanck@gmx.net>
Re: Remove AIX Support (was: Re: Relation bulk write facility) Andres Freund <andres@anarazel.de>
Re: Remove AIX Support (was: Re: Relation bulk write facility) Michael Banck <mbanck@gmx.net>
Re: Remove AIX Support (was: Re: Relation bulk write facility) Andres Freund <andres@anarazel.de>
RE: Remove AIX Support (was: Re: Relation bulk write facility) Phil Florent <philflorent@hotmail.com>
Re: Remove AIX Support (was: Re: Relation bulk write facility) Daniel Gustafsson <daniel@yesql.se>
Re: Remove AIX Support (was: Re: Relation bulk write facility) Daniel Gustafsson <daniel@yesql.se>
Re: Relation bulk write facility Thomas Munro <thomas.munro@gmail.com>
Re: Relation bulk write facility Thomas Munro <thomas.munro@gmail.com>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Noah Misch <noah@leadboat.com>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Tom Lane <tgl@sss.pgh.pa.us>
Re: Relation bulk write facility Heikki Linnakangas <hlinnaka@iki.fi>
Re: Relation bulk write facility Tom Lane <tgl@sss.pgh.pa.us>
On Sun, Feb 25, 2024 at 6:24 AM Noah Misch  wrote:
> On Fri, Feb 23, 2024 at 04:27:34PM +0200, Heikki Linnakangas wrote:
> > Committed this. Thanks everyone!
>
> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=mandrill&dt=2024-02-24%2015%3A13%3A14 got:
> TRAP: failed Assert("(uintptr_t) buffer == TYPEALIGN(PG_IO_ALIGN_SIZE, buffer)"), File: "md.c", Line: 472, PID: 43188608
>
> with this stack trace:
> #5  0x10005cf0 in ExceptionalCondition (conditionName=0x1015d790  "`", fileName=0x0, lineNumber=16780064) at assert.c:66
> #6  0x102daba8 in mdextend (reln=0x1042628c , forknum=812540744, blocknum=33, buffer=0x306e6000, skipFsync=812539904) at md.c:472
> #7  0x102d6760 in smgrextend (reln=0x306e6670, forknum=812540744, blocknum=33, buffer=0x306e6000, skipFsync=812539904) at smgr.c:541
> #8  0x104c8dac in smgr_bulk_flush (bulkstate=0x306e6000) at bulk_write.c:245

So that's:

static const PGIOAlignedBlock zero_buffer = {{0}};  /* worth BLCKSZ */

...
                smgrextend(bulkstate->smgr, bulkstate->forknum,
                           bulkstate->pages_written++,
                           &zero_buffer,
                           true);

... where PGIOAlignedBlock is:

typedef union PGIOAlignedBlock
{
#ifdef pg_attribute_aligned
    pg_attribute_aligned(PG_IO_ALIGN_SIZE)
#endif
    char        data[BLCKSZ];
...

We see this happen with both xlc and gcc (new enough to know how to do
this).  One idea would be that the AIX *linker* is unable to align it,
as that is the common tool-chain component here (and unlike stack and
heap objects, this scope is the linker's job).  There is a
pre-existing example of a zero-buffer that is at file scope like that:
pg_prewarm.c.  Perhaps it doesn't get tested?

Hmm.


В списке pgsql-hackers по дате отправления
От: Tomas Vondra
Дата:
От: Noah Misch
Дата:
FAQ