Re: Refactor xlog.c #1 - startup.c - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: Refactor xlog.c #1 - startup.c
Date
Msg-id CA+U5nMKpRpnJ3ESa957uDYZg+cSoq1z3LXYUh4NtjMMxZ0AhWw@mail.gmail.com
Whole thread Raw
In response to Re: Refactor xlog.c #1 - startup.c  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Refactor xlog.c #1 - startup.c
List pgsql-hackers
On Wed, Nov 2, 2011 at 1:14 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Wed, Nov 2, 2011 at 4:44 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
>> Patch removes stuff related to "startup process" and creates files
>> under src/$DIR/postmaster for this code.
>>
>> This makes startup process look more like bgwriter, walwriter etc..
>
> In general, +1.

Thanks for the review.

> But I don't think we want duplicate function prototypes for the same
> functions, so -1 for this hunk:
>
> + /* in xlog.c */
> + extern void WakeupRecovery(void);
> + extern void StartupXLOG(void);
>
> The existing prototypes in xlog.h seem like they should be just fine.

That was to avoid having startup.c include xlog.h, which it doesn't
really need to see.

Not worried either way, so I'll do as you suggest.

> IsPromoteTriggered could be simplified to just "return
> promote_triggered;"; you don't need to branch.

Happy to do that.

> I think one thing that would be worth considering in terms of future
> refactoring is to split up the gigantic StartupXLOG() function in some
> fashion.

There are a great many other long functions in Postgres, and few of
them as critical as that one.

I don't see a reason to touch it, and would do so last of all of any
code in xlog.c

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


pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."?
Next
From: Magnus Hagander
Date:
Subject: Re: Refactor xlog.c #1 - startup.c