| 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 |
| 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 |