agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
From: Antonin Houska <ah@cybertec.at>
To: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: Srinath Reddy Sadipiralla <srinath2133@gmail.com>
Cc: Matthias van de Meent <boekewurm+postgres@gmail.com>
Cc: Mihail Nikalayeu <mihailnikalayeu@gmail.com>
Cc: Pg Hackers <pgsql-hackers@lists.postgresql.org>
Cc: Robert Treat <rob@xzilla.net>
Subject: Re: Adding REPACK [concurrently]
Date: Thu, 19 Mar 2026 21:37:35 +0100
Message-ID: <34692.1773952655@localhost> (raw)
In-Reply-To: <202603191855.fzsgsnyzfvpt@alvherre.pgsql>
References: <202603191855.fzsgsnyzfvpt@alvherre.pgsql>

Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:

> So here's v43.  Here, I've changed the CONCURRENTLY implementation to go
> through table AM.  This necessitated changing it to use tuples in slots
> instead of HeapTuple.  This is good because we can avoid repeated tuple
> form/deform, which could get pretty expensive.  Antonin's 0004 patch
> here looks suspicious here though, because it deforms the tuple and
> forms it again, which sounds unnecessary now.

I suppose you mean
v42-0004-Serialize-decoded-tuples-without-flattening.patch. This deforms the
tuple to get the external attributes and to write them to file. The tuple the
logical worker received from reorderbuffer.c cannot be passed to the backend
executing REPACK because it may contain "external indirect" attributes,
i.e. pointers to the worker's memory.

-- 
Antonin Houska
Web: https://www.cybertec-postgresql.com





view thread (416+ messages)  latest in thread

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: ah@cybertec.at, alvherre@alvh.no-ip.org, srinath2133@gmail.com, boekewurm+postgres@gmail.com, mihailnikalayeu@gmail.com, pgsql-hackers@lists.postgresql.org, rob@xzilla.net
  Subject: Re: Adding REPACK [concurrently]
  In-Reply-To: <34692.1773952655@localhost>

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

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