Re: Large C files

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Large C files
Date: 2011-09-06 19:56:02
Message-ID: CA+U5nMK9PEU5vwvAb0vYLdmKVNcq27LTOem6mdeOxaq3WFoikQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Sep 6, 2011 at 3:05 PM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> Peter Eisentraut wrote:
>> On l?r, 2011-09-03 at 19:18 -0400, Bruce Momjian wrote:
>> > FYI, here are all the C files with over 6k lines:
>> >
>> > -  45133 ./interfaces/ecpg/preproc/preproc.c
>> > -  33651 ./backend/parser/gram.c
>> > -  17551 ./backend/parser/scan.c
>> >    14209 ./bin/pg_dump/pg_dump.c
>> >    10590 ./backend/access/transam/xlog.c
>> >     9764 ./backend/commands/tablecmds.c
>> >     8681 ./backend/utils/misc/guc.c
>> > -   7667 ./bin/psql/psqlscan.c
>> >     7213 ./backend/utils/adt/ruleutils.c
>> >     6814 ./backend/utils/adt/selfuncs.c
>> >     6176 ./backend/utils/adt/numeric.c
>> >     6030 ./pl/plpgsql/src/pl_exec.c
>> >
>> > I have dash-marked the files that are computer-generated.  It seems
>> > pg_dump.c and xlog.c should be split into smaller C files.
>>
>> I was thinking about splitting up plpython.c, but it's not even on that
>> list. ;-)
>
> For me, the test is when I feel, "Yuck, I am in that massive file
> again".

There are many things to do yet in xlog.c, but splitting it into
pieces is pretty low on the list.

I did look at doing it years ago before we started the heavy lifting
for SR/HS but it was too much work and dangerous too.

The only way I would entertain thoughts of major refactoring would be
if comprehensive tests were contributed, so we could verify everything
still works afterwards.

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2011-09-06 20:07:55 Re: Large C files
Previous Message Tom Lane 2011-09-06 19:31:13 Re: timezone GUC