Re: split tablecmds.c

From: Nathan Bossart <nathandbossart(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Álvaro Herrera <alvherre(at)kurilemu(dot)de>, pgsql-hackers(at)postgresql(dot)org, euler(at)eulerto(dot)com, andres(at)anarazel(dot)de
Subject: Re: split tablecmds.c
Date: 2025-12-01 22:43:37
Message-ID: aS4aGQp3WXzFoCVz@nathan
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Dec 01, 2025 at 01:59:01PM -0500, Tom Lane wrote:
> I didn't do any math about it, but that's got to be a far faster rate
> of expansion than the overall PG code base. Maybe partitioning is
> largely to blame? Perhaps analyzing what functionality got added
> here in the past dozen or so years would yield some ideas for how to
> split it.
>
> +1 for a split, if we can figure out a good plan.

I tried to move the partitioning-related code to a new file, and it wasn't
too bad. Note that there are a couple of internal-to-tablecmds.c things
that need to be exported. Besides that, the attached patch is still pretty
rough, and I'm not sure I correctly placed the line in the sand when
determining what stays and what goes, but this at least shows the general
shape of what's needed. (BTW git was generating an atrocious diff for
tablecmds.c. You might need to set the diff algorithm to "minimal" if you
are similarly affected.)

src/backend/commands/Makefile | 1 +
src/backend/commands/meson.build | 1 +
src/backend/commands/partcmds.c | 3377 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/backend/commands/tablecmds.c | 3456 +--------------------------------------------------------------------------------------------
src/backend/partitioning/partbounds.c | 1 +
src/include/commands/partcmds.h | 53 ++
src/include/commands/tablecmds.h | 134 +++-
7 files changed, 3575 insertions(+), 3448 deletions(-)

--
nathan

Attachment Content-Type Size
v1-0001-move-partition-code-in-tablecmds.c-to-new-file.patch text/plain 243.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Myles Lewis 2025-12-01 23:04:17 Re: [PATCH] Add native PIVOT syntax for SQL Server/Oracle compatibility
Previous Message Andres Freund 2025-12-01 22:41:01 freespace buffer locking