Re: [PoC] Improve dead tuple storage for lazy vacuum

From: Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>
To: John Naylor <johncnaylorls(at)gmail(dot)com>
Cc: Andres Freund <andres(at)anarazel(dot)de>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Nathan Bossart <nathandbossart(at)gmail(dot)com>, Matthias van de Meent <boekewurm+postgres(at)gmail(dot)com>, Yura Sokolov <y(dot)sokolov(at)postgrespro(dot)ru>
Subject: Re: [PoC] Improve dead tuple storage for lazy vacuum
Date: 2024-03-06 08:40:20
Message-ID: CAD21AoD7zCDq6usMc3CwAo97n=nXmaD+XJ6f402eJxP=SVAJJQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Mar 6, 2024 at 5:33 PM John Naylor <johncnaylorls(at)gmail(dot)com> wrote:
>
> On Wed, Mar 6, 2024 at 3:02 PM Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:
> >
> > ../../src/include/port/simd.h:326:71: error: incompatible type for
> > argument 1 of \342\200\230vshrq_n_s8\342\200\231
> > uint8x16_t masked = vandq_u8(vld1q_u8(mask), (uint8x16_t) vshrq_n_s8(v, 7));
> > ^
> >
> > Since 'v' is uint8x16_t I think we should have used vshrq_n_u8() instead.
>
> I've looked around and it seems clang is more lax on conversions.
> Since it works fine for clang, I think we just need a cast here for
> gcc. I've attached a blind attempt at a fix -- I'll apply shortly
> unless someone happens to test and find it doesn't work.

I've reproduced the same error on my raspberry pi, and confirmed the
patch fixes the error.

My previous idea was wrong. With my proposal, the regression test for
radix tree failed on my raspberry pi. On the other hand, with your
patch the tests passed.

Regards,

--
Masahiko Sawada
Amazon Web Services: https://aws.amazon.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2024-03-06 08:51:08 Re: MERGE ... RETURNING
Previous Message John Naylor 2024-03-06 08:33:44 Re: [PoC] Improve dead tuple storage for lazy vacuum