Re: split tablecmds.c
| От | Chao Li |
|---|---|
| Тема | Re: split tablecmds.c |
| Дата | |
| Msg-id | E39DF820-696B-4A66-8AA7-2DC34A9C40DD@gmail.com обсуждение исходный текст |
| Ответ на | Re: split tablecmds.c (Nathan Bossart <nathandbossart@gmail.com>) |
| Список | pgsql-hackers |
> On Dec 2, 2025, at 06:43, Nathan Bossart <nathandbossart@gmail.com> wrote: > > 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 > <v1-0001-move-partition-code-in-tablecmds.c-to-new-file.patch> I am just thinking if tablecmds deserves a subfolder given the large code size. If we just split the file into multiple andstill place them under src/backend/commands, then it would be not easy to identify alter-table related code. Best regards, -- Chao Li (Evan) HighGo Software Co., Ltd. https://www.highgo.com/
В списке pgsql-hackers по дате отправления: