Next steps in refactoring are bigger steps, but not huge ones.

I propose this

* everything to do with XLOG rmgr into a file called xlogrmgr.c
Thats xlog_redo() and most everything to do with checkpoints

* everything to do with reading WAL files into a file called xlogread.c
That will allow us to put pg_xlogdump into core

* possibly some more stuff into xlogboot.c

The above actions will reduce xlog.c to about 7000 lines, about 4000
lines smaller than when I started. That sounds like it could go
further, but it moves out most of the areas of recent growth by
focusing on the purpose of that code.

An obvious split would seem to be move all recovery-side code into its
own file. That seems quite likely to take a lot of time, break
something, as well as requiring us to share XLogCtl, all of which
personally I would rather avoid.

Fujii's work is likely to remove another few hundred lines as well.

That seems enough to me.... OK?

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

Search Discussions

  • Fujii Masao at Nov 4, 2011 at 5:16 am

    On Fri, Nov 4, 2011 at 3:14 AM, Simon Riggs wrote:
    Next steps in refactoring are bigger steps, but not huge ones.

    I propose this

    * everything to do with XLOG rmgr into a file called xlogrmgr.c
    Thats xlog_redo() and most everything to do with checkpoints

    * everything to do with reading WAL files into a file called xlogread.c
    That will allow us to put pg_xlogdump into core

    * possibly some more stuff into xlogboot.c

    The above actions will reduce xlog.c to about 7000 lines, about 4000
    lines smaller than when I started. That sounds like it could go
    further, but it moves out most of the areas of recent growth by
    focusing on the purpose of that code.

    An obvious split would seem to be move all recovery-side code into its
    own file. That seems quite likely to take a lot of time, break
    something, as well as requiring us to share XLogCtl, all of which
    personally I would rather avoid.

    Fujii's work is likely to remove another few hundred lines as well.

    That seems enough to me.... OK?
    Additionally what about moving all built-in functions defined in xlog.c
    to xlogfuncs.c?

    Regards,

    --
    Fujii Masao
    NIPPON TELEGRAPH AND TELEPHONE CORPORATION
    NTT Open Source Software Center
  • Fujii Masao at Nov 4, 2011 at 9:06 am

    On Fri, Nov 4, 2011 at 2:16 PM, Fujii Masao wrote:
    On Fri, Nov 4, 2011 at 3:14 AM, Simon Riggs wrote:
    Next steps in refactoring are bigger steps, but not huge ones.

    I propose this

    * everything to do with XLOG rmgr into a file called xlogrmgr.c
    Thats xlog_redo() and most everything to do with checkpoints

    * everything to do with reading WAL files into a file called xlogread.c
    That will allow us to put pg_xlogdump into core

    * possibly some more stuff into xlogboot.c

    The above actions will reduce xlog.c to about 7000 lines, about 4000
    lines smaller than when I started. That sounds like it could go
    further, but it moves out most of the areas of recent growth by
    focusing on the purpose of that code.

    An obvious split would seem to be move all recovery-side code into its
    own file. That seems quite likely to take a lot of time, break
    something, as well as requiring us to share XLogCtl, all of which
    personally I would rather avoid.

    Fujii's work is likely to remove another few hundred lines as well.

    That seems enough to me.... OK?
    Additionally what about moving all built-in functions defined in xlog.c
    to xlogfuncs.c?
    Oh, you've already posted the patch which does that.
    http://archives.postgresql.org/message-id/CA+U5nMK=yBzczKdvj8kOjfSz+d9LFmXvw+928nhU4x1hByhp7g@mail.gmail.com

    Regards,

    --
    Fujii Masao
    NIPPON TELEGRAPH AND TELEPHONE CORPORATION
    NTT Open Source Software Center
  • Simon Riggs at Nov 4, 2011 at 9:54 am

    On Fri, Nov 4, 2011 at 5:26 AM, Fujii Masao wrote:

    Additionally what about moving all built-in functions defined in xlog.c
    to xlogfuncs.c?
    Oh, you've already posted the patch which does that.
    http://archives.postgresql.org/message-id/CA+U5nMK=yBzczKdvj8kOjfSz+d9LFmXvw+928nhU4x1hByhp7g@mail.gmail.com
    Committed

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

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppgsql-hackers @
categoriespostgresql
postedNov 3, '11 at 6:20p
activeNov 4, '11 at 9:54a
posts4
users2
websitepostgresql.org...
irc#postgresql

2 users in discussion

Fujii Masao: 2 posts Simon Riggs: 2 posts

People

Translate

site design / logo © 2022 Grokbase