Re: Add SPLIT PARTITION/MERGE PARTITIONS commands

From: Dmitry Koval <d(dot)koval(at)postgrespro(dot)ru>
To: Alexander Korotkov <aekorotkov(at)gmail(dot)com>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Add SPLIT PARTITION/MERGE PARTITIONS commands
Date: 2025-09-15 22:11:19
Message-ID: 2643645f-2a02-43de-9321-c995ab1b7ef8@postgrespro.ru
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Alexander.

Thanks for the notes and corrections!

1) src/backend/parser/parse_utilcmd.c includes are not alphabetically
ordered here
+#include "partitioning/partdesc.h"
+#include "partitioning/partbounds.h"

Fixed.

2) There is unicode dash in the comment of ATExecMergePartitions() here.
I suggest we should stick to ascii.

+ /*
+ * Check ownership of merged partitions — partitions with different
+ * owners cannot be merged. Also, collect the OIDs of these partitions
+ * during the check.
+ */

Fixed.

3) Regarding 17bcf4f545, I see btnamecmp() is collation-aware. Should
we also specify COLLATE "C" every time we do "ORDER BY relname"?

Queries changed.

4) This comment sounds misleading. Probably it should say "are contained".

+/*
+ * check_parent_values_in_new_partitions
+ *
+ * (function for BY LIST partitioning)
+ *
+ * Checks that all values of split partition (with Oid partOid)
contains in new
+ * partitions.
+ *

Changed.

5) Given what latter items say, I think the 1. should say "The DEFAULT
partition must be at most one."

/*
* check_partitions_for_split
*
* Checks new partitions for SPLIT PARTITIONS command:
* 1. DEFAULT partition should be one.

Corrected.

6) Regarding the isolation tests. I see we are exercising INSERTs and
intra-partition UPDATEs. Should we also try some cross-partition UPDATEs?

Added simple tests for cross-partition UPDATE.

7) Additionally, I've made a numerous and small fixes for grammar to the
docs directly to the patchset.

Thanks, applied.

--
With best regards,
Dmitry Koval

Postgres Professional: http://postgrespro.com

Attachment Content-Type Size
v56-0001-Implement-ALTER-TABLE-.-MERGE-PARTITIONS-.-comma.patch text/plain 170.4 KB
v56-0002-Implement-ALTER-TABLE-.-SPLIT-PARTITION-.-comman.patch text/plain 231.7 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Sami Imseih 2025-09-15 22:11:34 question about pending updates in pgstat_report_inj
Previous Message Sami Imseih 2025-09-15 21:47:27 Re: PgStat_HashKey padding issue when passed by reference