agora inbox for [email protected]
help / color / mirror / Atom feedPoC/WIP: Extended statistics on expressions
974+ messages / 3 participants
[nested] [flat]
* PoC/WIP: Extended statistics on expressions
@ 2020-11-16 13:49 Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
0 siblings, 1 reply; 974+ messages in thread
From: Tomas Vondra @ 2020-11-16 13:49 UTC (permalink / raw)
To: pgsql-hackers
Hi,
Attached is a PoC/WIP patch adding support for extended statistics on
expressions. This is by no means "ready" - most of the stuff works, but
often in a rather hackish way. I certainly don't expect this to pass
regression tests, for example.
There's an example demonstrating how this works for two queries at the
end of this message. Now let's talk about the main parts of the patch:
1) extending grammar to allow expressions, not just plain columns
Fairly straighforward, I think. I'm sure the logic which expressions
are allowed is not 100% (e.g. volatile functions etc.) but that's
a detail we can deal with later.
2) store the expressions in pg_statistic_ext catalog
I ended up adding a separate column, similar to indexprs, except that
the order of columns/expressions does not matter, so we don't need to
bother with storing 0s in stxkeys - we simply consider expressions to
be "after" all the simple columns.
3) build statistics
This should work too, for all three types of statistics we have (mcv,
dependencies and ndistinct). This should work too, although the code
changes are often very hackish "to make it work".
The main challenge here was how to represent the expressions in the
statistics - e.g. in ndistinct, which track ndistinct estimates for
combinations of parameters, and so far we used attnums for that. I
decided the easiest way it to keep doing that, but offset the
expressions by MaxHeapAttributeNumber. That seems to work, but maybe
there's a better way.
4) apply the statistics
This is the hard part, really, and the exact state of the support
depends on type of statistics.
For ndistinct coefficients, it generally works. I'm sure there may be
bugs in estimate_num_groups, etc. but in principle it works.
For MCV lists, it generally works too - you can define statistics on
the expressions and the estimates should improve. The main downside
here is that it requires at least two expressions, otherwise we can't
build/apply the extended statistics. So for example
SELECT * FROM t WHERE mod(a,100) = 10 AND mod(b,11) = 0
may be estimated "correctly", once you drop any of the conditions it
gets much worse as we don't have stats for individual expressions.
That's rather annoying - it does not break the extended MCV, but the
behavior will certainly cause confusion.
For functional dependencies, the estimation does not work yet. Also,
the missing per-column statistics have bigger impact than on MCV,
because while MCV can work fine without it, the dependencies heavily
rely on the per-column estimates. We only apply "corrections" based
on the dependency degree, so we still need (good) per-column
estimates, which does not quite work with the expressions.
Of course, the lack of per-expression statistics may be somewhat
fixed by adding indexes on expressions, but that's kinda expensive.
Now, a simple example demonstrating how this improves estimates - let's
create a table with 1M rows, and do queries with mod() expressions on
it. It might be date_trunc() or something similar, that'd work too.
table with 1M rows
==================
test=# create table t (a int);
test=# insert into t select i from generate_series(1,1000000) s(i);
test=# analyze t;
poorly estimated queries
========================
test=# explain (analyze, timing off) select * from t where mod(a,3) = 0
and mod(a,7) = 0;
QUERY PLAN
----------------------------------------------------------------------------------
Seq Scan on t (cost=0.00..24425.00 rows=25 width=4) (actual rows=47619
loops=1)
Filter: ((mod(a, 3) = 0) AND (mod(a, 7) = 0))
Rows Removed by Filter: 952381
Planning Time: 0.329 ms
Execution Time: 156.675 ms
(5 rows)
test=# explain (analyze, timing off) select mod(a,3), mod(a,7) from t
group by 1, 2;
QUERY PLAN
-----------------------------------------------------------------------------------------------
HashAggregate (cost=75675.00..98487.50 rows=1000000 width=8) (actual
rows=21 loops=1)
Group Key: mod(a, 3), mod(a, 7)
Planned Partitions: 32 Batches: 1 Memory Usage: 1561kB
-> Seq Scan on t (cost=0.00..19425.00 rows=1000000 width=8) (actual
rows=1000000 loops=1)
Planning Time: 0.277 ms
Execution Time: 502.803 ms
(6 rows)
improved estimates
==================
test=# create statistics s1 (ndistinct) on mod(a,3), mod(a,7) from t;
test=# analyze t;
test=# explain (analyze, timing off) select mod(a,3), mod(a,7) from t
group by 1, 2;
QUERY PLAN
-----------------------------------------------------------------------------------------------
HashAggregate (cost=24425.00..24425.31 rows=21 width=8) (actual
rows=21 loops=1)
Group Key: mod(a, 3), mod(a, 7)
Batches: 1 Memory Usage: 24kB
-> Seq Scan on t (cost=0.00..19425.00 rows=1000000 width=8) (actual
rows=1000000 loops=1)
Planning Time: 0.135 ms
Execution Time: 500.092 ms
(6 rows)
test=# create statistics s2 (mcv) on mod(a,3), mod(a,7) from t;
test=# analyze t;
test=# explain (analyze, timing off) select * from t where mod(a,3) = 0
and mod(a,7) = 0;
QUERY PLAN
-------------------------------------------------------------------------------------
Seq Scan on t (cost=0.00..24425.00 rows=46433 width=4) (actual
rows=47619 loops=1)
Filter: ((mod(a, 3) = 0) AND (mod(a, 7) = 0))
Rows Removed by Filter: 952381
Planning Time: 0.702 ms
Execution Time: 152.280 ms
(5 rows)
Clearly, estimates for both queries are significantly improved. Of
course, this example is kinda artificial/simplistic.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
@ 2020-11-16 15:27 ` Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
0 siblings, 1 reply; 974+ messages in thread
From: Tomas Vondra @ 2020-11-16 15:27 UTC (permalink / raw)
To: pgsql-hackers
On 11/16/20 2:49 PM, Tomas Vondra wrote:
> Hi,
>
> ...
>
> 4) apply the statistics
>
> This is the hard part, really, and the exact state of the support
> depends on type of statistics.
>
> For ndistinct coefficients, it generally works. I'm sure there may be
> bugs in estimate_num_groups, etc. but in principle it works.
>
> For MCV lists, it generally works too - you can define statistics on
> the expressions and the estimates should improve. The main downside
> here is that it requires at least two expressions, otherwise we can't
> build/apply the extended statistics. So for example
>
> SELECT * FROM t WHERE mod(a,100) = 10 AND mod(b,11) = 0
>
> may be estimated "correctly", once you drop any of the conditions it
> gets much worse as we don't have stats for individual expressions.
> That's rather annoying - it does not break the extended MCV, but the
> behavior will certainly cause confusion.
>
> For functional dependencies, the estimation does not work yet. Also,
> the missing per-column statistics have bigger impact than on MCV,
> because while MCV can work fine without it, the dependencies heavily
> rely on the per-column estimates. We only apply "corrections" based
> on the dependency degree, so we still need (good) per-column
> estimates, which does not quite work with the expressions.
>
>
> Of course, the lack of per-expression statistics may be somewhat
> fixed by adding indexes on expressions, but that's kinda expensive.
>
FWIW after re-reading [1], I think the plan to build pg_statistic rows
for expressions and stash them in pg_statistic_ext_data is the way to
go. I was thinking that maybe we'll need some new statistics type to
request this, e.g.
CREATE STATISTICS s (expressions) ON ...
but on second thought I think we should just build this whenever there
are expressions in the definition. It'll require some changes (e.g. we
require at least two items in the list, but we'll want to allow building
stats on a single expression too, I guess), but that's doable.
Of course, we don't have any catalogs with composite types yet, so it's
not 100% sure this will work, but it's worth a try.
regards
[1]
https://www.postgresql.org/message-id/flat/6331.1579041473%40sss.pgh.pa.us#5ec6af7583e84cef2ca6a9e8a...
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
@ 2020-11-22 19:03 ` Tomas Vondra <[email protected]>
2020-11-23 02:26 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
0 siblings, 1 reply; 974+ messages in thread
From: Tomas Vondra @ 2020-11-22 19:03 UTC (permalink / raw)
To: pgsql-hackers
Hi,
attached is a significantly improved version of the patch, allowing
defining extended statistics on expressions. This fixes most of the
problems in the previous WIP version and AFAICS it does pass all
regression tests (including under valgrind). There's a bunch of FIXMEs
and a couple loose ends, but overall I think it's ready for reviews.
Overall, the patch does two main things:
* it adds a new "expressions" statistics kind, building per-expression
statistics (i.e it's similar to having expression index)
* it allows using expressions in definition of extended statistics, and
properly handles that in all existing statistics kinds (dependencies,
mcv, ndistinct)
The expression handling mostly copies what we do for indexes, with
similar restrictions - no volatile functions, aggregates etc. The list
of expressions is stored in pg_statistic_ext catalog, but unlike for
indexes we don't need to worry about the exact order of elements, so
there are no "0" for expressions in stxkeys etc. We simply assume the
expressions come after simple columns, and that's it.
To reference expressions in the built statistics (e.g. in a dependency)
we use "special attnums" computed from the expression index by adding
MaxHeapAttributeNumber. So the first expression has attnum 1601 etc.
This mapping expressions to attnums is used both while building and
applying the statistics to clauses, as it makes the whole process much
simpler than dealing with attnums and expressions entirely separately.
The first part allows us to do something like this:
CREATE TABLE t (a int);
INSERT INTO t SELECT i FROM generate_series(1,1000000) s(i);
ANALYZE t;
EXPLAIN (ANALYZE, TIMING OFF)
SELECT * FROM t WHERE mod(a,10) = 0;
CREATE STATISTICS s (expressions) ON mod(a,10) FROM t;
ANALYZE t;
EXPLAIN (ANALYZE, TIMING OFF)
SELECT * FROM t WHERE mod(a,10) = 0;
Without the statistics we get this:
QUERY PLAN
--------------------------------------------------------
Seq Scan on t (cost=0.00..19425.00 rows=5000 width=4)
(actual rows=100000 loops=1)
Filter: (mod(a, 10) = 0)
Rows Removed by Filter: 900000
Planning Time: 0.216 ms
Execution Time: 157.552 ms
(5 rows)
while with the statistics we get this
QUERY PLAN
----------------------------------------------------------
Seq Scan on t (cost=0.00..19425.00 rows=100900 width=4)
(actual rows=100000 loops=1)
Filter: (mod(a, 10) = 0)
Rows Removed by Filter: 900000
Planning Time: 0.399 ms
Execution Time: 157.530 ms
(5 rows)
So that's pretty nice improvement. In practice you could get the same
effect by creating an expression index
CREATE INDEX ON t (mod(a,10));
but of course that's far from free - there's cost to maintain the index,
it blocks HOT, and it takes space on disk. The statistics have none of
these issues.
Implementation-wise, this simply builds per-column statistics for each
expression, and stashes them into a new column in pg_statistic_ext_data
catalog as an array of elements with pg_statistic composite type. And
then in selfuncs.c we look not just at indexes, but also at this when
looking for expression stats.
So that gives us the per-expression stats. This is enabled by default
when you don't specify the statistics type and the definition includes
any expression that is not a simple column reference. Otherwise you may
also request it explicitly by using "expressions" in the CREATE.
Now, the second part is really just a natural extension of the existing
stats to also work with expressions. The easiest thing is probably to
show some examples, so consider this:
CREATE TABLE t (a INT, b INT, c INT);
INSERT INTO t SELECT i, i, i FROM generate_series(1,1000000) s(i);
ANALYZE t;
which without any statistics gives us this:
EXPLAIN (ANALYZE, TIMING OFF)
SELECT 1 FROM t WHERE mod(a,10) = 0 AND mod(b,5) = 0;
QUERY PLAN
------------------------------------------------------
Seq Scan on t (cost=0.00..25406.00 rows=25 width=4)
(actual rows=100000 loops=1)
Filter: ((mod(a, 10) = 0) AND (mod(b, 5) = 0))
Rows Removed by Filter: 900000
Planning Time: 0.080 ms
Execution Time: 161.445 ms
(5 rows)
EXPLAIN (ANALYZE, TIMING OFF)
SELECT 1 FROM t GROUP BY mod(a,10), mod(b,5);
QUERY PLAN
------------------------------------------------------------------
HashAggregate (cost=76656.00..99468.50 rows=1000000 width=12)
(actual rows=10 loops=1)
Group Key: mod(a, 10), mod(b, 5)
Planned Partitions: 32 Batches: 1 Memory Usage: 1561kB
-> Seq Scan on t (cost=0.00..20406.00 rows=1000000 width=8)
(actual rows=1000000 loops=1)
Planning Time: 0.232 ms
Execution Time: 514.446 ms
(6 rows)
and now let's add statistics on the expressions:
CREATE STATISTICS s ON mod(a,10), mod(b,5) FROM t;
ANALYZE t;
which ends up with these spot-on estimates:
EXPLAIN (ANALYZE, TIMING OFF)
SELECT 1 FROM t WHERE mod(a,10) = 0 AND mod(b,5) = 0;
QUERY PLAN
---------------------------------------------------------
Seq Scan on t (cost=0.00..25406.00 rows=97400 width=4)
(actual rows=100000 loops=1)
Filter: ((mod(a, 10) = 0) AND (mod(b, 5) = 0))
Rows Removed by Filter: 900000
Planning Time: 0.366 ms
Execution Time: 159.207 ms
(5 rows)
EXPLAIN (ANALYZE, TIMING OFF)
SELECT 1 FROM t GROUP BY mod(a,10), mod(b,5);
QUERY PLAN
-----------------------------------------------------------------
HashAggregate (cost=25406.00..25406.15 rows=10 width=12)
(actual rows=10 loops=1)
Group Key: mod(a, 10), mod(b, 5)
Batches: 1 Memory Usage: 24kB
-> Seq Scan on t (cost=0.00..20406.00 rows=1000000 width=8)
(actual rows=1000000 loops=1)
Planning Time: 0.299 ms
Execution Time: 530.793 ms
(6 rows)
Of course, this is a very simple query, but hopefully you get the idea.
There's about two main areas where I think might be hidden issues:
1) We're kinda faking the pg_statistic entries, and I suppose there
might be some loose ends (e.g. with respect to ACLs etc.).
2) Memory management while evaluating the expressions during analyze is
kinda simplistic, we're probably keeping the memory around longer than
needed etc.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
@ 2020-11-23 02:26 ` Justin Pryzby <[email protected]>
2020-11-23 03:30 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
0 siblings, 1 reply; 974+ messages in thread
From: Justin Pryzby @ 2020-11-23 02:26 UTC (permalink / raw)
To: Tomas Vondra <[email protected]>; +Cc: pgsql-hackers
On Sun, Nov 22, 2020 at 08:03:51PM +0100, Tomas Vondra wrote:
> attached is a significantly improved version of the patch, allowing
> defining extended statistics on expressions. This fixes most of the
> problems in the previous WIP version and AFAICS it does pass all
> regression tests (including under valgrind). There's a bunch of FIXMEs
> and a couple loose ends, but overall I think it's ready for reviews.
I was looking at the previous patch, so now read this one instead, and attach
some proposed fixes.
+ * This matters especially for * expensive expressions, of course.
+ The expression can refer only to columns of the underlying table, but
+ it can use all columns, not just the ones the statistics is defined
+ on.
I don't know what these are trying to say?
+ errmsg("statistics expressions and predicates can refer only to the table being indexed")));
+ * partial-index predicates. Create it in the per-index context to be
I think these are copied and shouldn't mention "indexes" or "predicates". Or
should statistics support predicates, too ?
Idea: if a user specifies no stakinds, and there's no expression specified,
then you automatically build everything except for expressional stats. But if
they specify only one statistics "column", it gives an error. If that's a
non-simple column reference, should that instead build *only* expressional
stats (possibly with a NOTICE, since the user might be intending to make MV
stats).
I think pg_stats_ext should allow inspecting the pg_statistic data in
pg_statistic_ext_data.stxdexprs. I guess array_agg() should be ordered by
something, so maybe it should use ORDINALITY (?)
I hacked more on bootstrap.c so included that here.
--
Justin
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-23 02:26 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
@ 2020-11-23 03:30 ` Tomas Vondra <[email protected]>
2020-11-23 23:30 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-24 16:23 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
0 siblings, 2 replies; 974+ messages in thread
From: Tomas Vondra @ 2020-11-23 03:30 UTC (permalink / raw)
To: Justin Pryzby <[email protected]>; +Cc: pgsql-hackers
On 11/23/20 3:26 AM, Justin Pryzby wrote:
> On Sun, Nov 22, 2020 at 08:03:51PM +0100, Tomas Vondra wrote:
>> attached is a significantly improved version of the patch, allowing
>> defining extended statistics on expressions. This fixes most of the
>> problems in the previous WIP version and AFAICS it does pass all
>> regression tests (including under valgrind). There's a bunch of FIXMEs
>> and a couple loose ends, but overall I think it's ready for reviews.
>
> I was looking at the previous patch, so now read this one instead, and attach
> some proposed fixes.
>
> + * This matters especially for * expensive expressions, of course.
>
The point this was trying to make is that we evaluate the expressions
only once, and use the results to build all extended statistics. Instead
of leaving it up to every "build" to re-evaluate it.
> + The expression can refer only to columns of the underlying table, but
> + it can use all columns, not just the ones the statistics is defined
> + on.
>
> I don't know what these are trying to say?
>
D'oh. That's bogus para, copied from the CREATE INDEX docs (where it
talked about the index predicate, which is irrelevant here).
> + errmsg("statistics expressions and predicates can refer only to the table being indexed")));
> + * partial-index predicates. Create it in the per-index context to be
>
> I think these are copied and shouldn't mention "indexes" or "predicates". Or
> should statistics support predicates, too ?
>
Right. Stupid copy-pasto.
> Idea: if a user specifies no stakinds, and there's no expression specified,
> then you automatically build everything except for expressional stats. But if
> they specify only one statistics "column", it gives an error. If that's a
> non-simple column reference, should that instead build *only* expressional
> stats (possibly with a NOTICE, since the user might be intending to make MV
> stats).
>
Right, that was the intention - but I messed up and it works only if you
specify the "expressions" kind explicitly (and I also added the ERROR
message to expected output by mistake). I agree we should handle this
automatically, so that
CREATE STATISTICS s ON (a+b) FROM t
works and only creates statistics for the expression.
> I think pg_stats_ext should allow inspecting the pg_statistic data in
> pg_statistic_ext_data.stxdexprs. I guess array_agg() should be ordered by
> something, so maybe it should use ORDINALITY (?)
>
I agree we should expose the expression statistics, but I'm not
convinced we should do that in the pg_stats_ext view itself. The problem
is that it's a table bested in a table, essentially, with non-trivial
structure, so I was thinking about adding a separate view exposing just
this one part. Something like pg_stats_ext_expressions, with about the
same structure as pg_stats, or something.
> I hacked more on bootstrap.c so included that here.
Thanks. As for the 0004-0007 patches:
0004 - Seems fine. IMHO not really "silly errors" but OK.
0005 - Mostly OK. The docs wording mostly comes from CREATE INDEX docs,
though. The paragraph about "t1" is old, so if we want to reword it then
maybe we should backpatch too.
0006 - Not sure. I think CreateStatistics can be fixed with less code,
keeping it more like PG13 (good for backpatching). Not sure why rename
extended statistics to multi-variate statistics - we use "extended"
everywhere. Not sure what's the point of serialize_expr_stats changes,
that's code is mostly copy-paste from update_attstats.
0007 - I suspect this makes the pg_stats_ext too complex to work with,
IMHO we should move this to a separate view.
Thanks for the review! I'll try to look more closely at those patches
sometime next week, and merge most of it.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-23 02:26 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
2020-11-23 03:30 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
@ 2020-11-23 23:30 ` Tomas Vondra <[email protected]>
1 sibling, 0 replies; 974+ messages in thread
From: Tomas Vondra @ 2020-11-23 23:30 UTC (permalink / raw)
To: Justin Pryzby <[email protected]>; +Cc: pgsql-hackers
Hi,
Attached is an updated version of the patch series, merging some of the
changes proposed by Justin. I've kept the bootstrap patches separate, at
least for now.
As for the individual 0004-0007 patches:
1) 0004 - merged as is
2) 0005 - I've merged some of the docs changes, but some of the wording
was copied from CREATE INDEX docs in which case I've kept that. I've
also not merged changed to pre-existing docs, like the t1 example which
is unrelated to this patch.
OTOH I've corrected the t3 example description, which was somewhat bogus
and unrelated to what the example actually did. I've also removed the
irrelevant para which originally described index predicates and was
copied from CREATE INDEX docs by mistake.
3) 0006 - I've committed something similar / less invasive, achieving
the same goals (I think), and I've added a couple regression tests.
4) 0007 - I agreed we need a way to expose the stats, but including this
in pg_stats_ext seems rather inconvenient (table in a table is difficult
to work with). Instead I've added a new catalog pg_stats_ext_exprs with
structure similar to pg_stats. I've also added the expressions to the
pg_stats_ext catalog, which was only showing the attributes, and some
basic docs for the catalog changes.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-23 02:26 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
2020-11-23 03:30 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
@ 2020-11-24 16:23 ` Justin Pryzby <[email protected]>
2020-11-24 17:29 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
1 sibling, 1 reply; 974+ messages in thread
From: Justin Pryzby @ 2020-11-24 16:23 UTC (permalink / raw)
To: Tomas Vondra <[email protected]>; +Cc: pgsql-hackers
On Mon, Nov 23, 2020 at 04:30:26AM +0100, Tomas Vondra wrote:
> 0004 - Seems fine. IMHO not really "silly errors" but OK.
This is one of the same issues you pointed out - shadowing a variable.
Could be backpatched.
On Mon, Nov 23, 2020 at 04:30:26AM +0100, Tomas Vondra wrote:
> > + errmsg("statistics expressions and predicates can refer only to the table being indexed")));
> > + * partial-index predicates. Create it in the per-index context to be
> >
> > I think these are copied and shouldn't mention "indexes" or "predicates". Or
> > should statistics support predicates, too ?
> >
>
> Right. Stupid copy-pasto.
Right, but then I was wondering if CREATE STATS should actually support
predicates, since one use case is to do what indexes do without their overhead.
I haven't thought about it enough yet.
> 0006 - Not sure. I think CreateStatistics can be fixed with less code,
> keeping it more like PG13 (good for backpatching). Not sure why rename
> extended statistics to multi-variate statistics - we use "extended"
> everywhere.
- if (build_expressions && (list_length(stxexprs) == 0))
+ if (!build_expressions_only && (list_length(stmt->exprs) < 2))
ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
- errmsg("extended expression statistics require at least one expression")));
+ errmsg("multi-variate statistics require at least two columns")));
I think all of "CREATE STATISTICS" has been known as "extended stats", so I
think it may be confusing to say that it requires two columns for the general
facility.
> Not sure what's the point of serialize_expr_stats changes,
> that's code is mostly copy-paste from update_attstats.
Right. I think "i" is poor variable name when it isn't a loop variable and not
of limited scope.
> 0007 - I suspect this makes the pg_stats_ext too complex to work with,
> IMHO we should move this to a separate view.
Right - then unnest() the whole thing and return one row per expression rather
than array, as you've done. Maybe the docs should say that this returns one
row per expression.
Looking quickly at your new patch: I guess you know there's a bunch of
lingering references to "indexes" and "predicates":
I don't know if you want to go to the effort to prohibit this.
postgres=# CREATE STATISTICS asf ON (tableoid::int+1) FROM t;
CREATE STATISTICS
I think a lot of people will find this confusing:
postgres=# CREATE STATISTICS asf ON i FROM t;
ERROR: extended statistics require at least 2 columns
postgres=# CREATE STATISTICS asf ON (i) FROM t;
CREATE STATISTICS
postgres=# CREATE STATISTICS asf (expressions) ON i FROM t;
ERROR: extended expression statistics require at least one expression
postgres=# CREATE STATISTICS asf (expressions) ON (i) FROM t;
CREATE STATISTICS
I haven't looked, but is it possible to make it work without parens ?
--
Justin
^ permalink raw reply [nested|flat] 974+ messages in thread
* Re: PoC/WIP: Extended statistics on expressions
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-23 02:26 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
2020-11-23 03:30 ` Re: PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-24 16:23 ` Re: PoC/WIP: Extended statistics on expressions Justin Pryzby <[email protected]>
@ 2020-11-24 17:29 ` Tomas Vondra <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Tomas Vondra @ 2020-11-24 17:29 UTC (permalink / raw)
To: Justin Pryzby <[email protected]>; +Cc: pgsql-hackers
On 11/24/20 5:23 PM, Justin Pryzby wrote:
> On Mon, Nov 23, 2020 at 04:30:26AM +0100, Tomas Vondra wrote:
>> 0004 - Seems fine. IMHO not really "silly errors" but OK.
>
> This is one of the same issues you pointed out - shadowing a variable.
> Could be backpatched.
>
> On Mon, Nov 23, 2020 at 04:30:26AM +0100, Tomas Vondra wrote:
>>> + errmsg("statistics expressions and predicates can refer only to the table being indexed")));
>>> + * partial-index predicates. Create it in the per-index context to be
>>>
>>> I think these are copied and shouldn't mention "indexes" or "predicates". Or
>>> should statistics support predicates, too ?
>>>
>>
>> Right. Stupid copy-pasto.
>
> Right, but then I was wondering if CREATE STATS should actually support
> predicates, since one use case is to do what indexes do without their overhead.
> I haven't thought about it enough yet.
>
Well, it's not supported now, so the message is bogus. I'm not against
supporting "partial statistics" with predicates in the future, but it's
going to be non-trivial project on it's own. It's not something I can
bolt onto the current patch easily.
>> 0006 - Not sure. I think CreateStatistics can be fixed with less code,
>> keeping it more like PG13 (good for backpatching). Not sure why rename
>> extended statistics to multi-variate statistics - we use "extended"
>> everywhere.
>
> - if (build_expressions && (list_length(stxexprs) == 0))
> + if (!build_expressions_only && (list_length(stmt->exprs) < 2))
> ereport(ERROR,
> (errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
> - errmsg("extended expression statistics require at least one expression")));
> + errmsg("multi-variate statistics require at least two columns")));
>
> I think all of "CREATE STATISTICS" has been known as "extended stats", so I
> think it may be confusing to say that it requires two columns for the general
> facility.
>
>> Not sure what's the point of serialize_expr_stats changes,
>> that's code is mostly copy-paste from update_attstats.
>
> Right. I think "i" is poor variable name when it isn't a loop variable and not
> of limited scope.
>
OK, I understand. I'll consider tweaking that.
>> 0007 - I suspect this makes the pg_stats_ext too complex to work with,
>> IMHO we should move this to a separate view.
>
> Right - then unnest() the whole thing and return one row per expression rather
> than array, as you've done. Maybe the docs should say that this returns one
> row per expression.
>
> Looking quickly at your new patch: I guess you know there's a bunch of
> lingering references to "indexes" and "predicates":
>
> I don't know if you want to go to the effort to prohibit this.
> postgres=# CREATE STATISTICS asf ON (tableoid::int+1) FROM t;
> CREATE STATISTICS
>
Hmm, we're already rejecting system attributes, I suppose we should do
the same thing for expressions on system attributes.
> I think a lot of people will find this confusing:
>
> postgres=# CREATE STATISTICS asf ON i FROM t;
> ERROR: extended statistics require at least 2 columns
> postgres=# CREATE STATISTICS asf ON (i) FROM t;
> CREATE STATISTICS
>
> postgres=# CREATE STATISTICS asf (expressions) ON i FROM t;
> ERROR: extended expression statistics require at least one expression
> postgres=# CREATE STATISTICS asf (expressions) ON (i) FROM t;
> CREATE STATISTICS
>
> I haven't looked, but is it possible to make it work without parens ?
>
Hmm, you're right that may be surprising. I suppose we could walk the
expressions while creating the statistics, and replace such trivial
expressions with the nested variable, but I haven't tried. I wonder what
the CREATE INDEX behavior would be in these cases.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
* [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple?
@ 2026-03-12 15:14 Álvaro Herrera <[email protected]>
0 siblings, 0 replies; 974+ messages in thread
From: Álvaro Herrera @ 2026-03-12 15:14 UTC (permalink / raw)
---
src/backend/replication/pgoutput_repack/pgoutput_repack.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 73aa6f0589c..c77564c4024 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -200,9 +200,14 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
attrs = palloc_array(Datum, desc->natts);
isnull = palloc_array(bool, desc->natts);
+ /*
+ * XXX it might be better to use slot_deform_tuple here, for the case
+ * where atttributes near the end of the tuple don't need to undergo
+ * this procedure.
+ */
heap_deform_tuple(tuple, desc, attrs, isnull);
- /* First, gather and count the "external indirect" attributes. */
+ /* First, gather all the "external indirect" attributes. */
for (int i = 0; i < desc->natts; i++)
{
CompactAttribute *attr = TupleDescCompactAttr(desc, i);
--
2.47.3
--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
filename="0009-reuse-existing-variable-by-overwriting-it.nocfbot.txt"
^ permalink raw reply [nested|flat] 974+ messages in thread
end of thread, other threads:[~2026-03-12 15:14 UTC | newest]
Thread overview: 974+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2020-11-16 13:49 PoC/WIP: Extended statistics on expressions Tomas Vondra <[email protected]>
2020-11-16 15:27 ` Tomas Vondra <[email protected]>
2020-11-22 19:03 ` Tomas Vondra <[email protected]>
2020-11-23 02:26 ` Justin Pryzby <[email protected]>
2020-11-23 03:30 ` Tomas Vondra <[email protected]>
2020-11-23 23:30 ` Tomas Vondra <[email protected]>
2020-11-24 16:23 ` Justin Pryzby <[email protected]>
2020-11-24 17:29 ` Tomas Vondra <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
2026-03-12 15:14 [PATCH 8/9] XXX devel comment: heap_deform_tuple -> slot_deform_tuple? Álvaro Herrera <[email protected]>
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox