Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Walsender process patch v1 for Synch Rep - Mailing list pgsql-hackers

From Fujii Masao
Subject Walsender process patch v1 for Synch Rep
Date
Msg-id 3f0b79eb0811050617o3237130awb4aec1d3a2daacab@mail.gmail.com
Whole thread Raw
Responses Re: Walsender process patch v1 for Synch Rep
List pgsql-hackers
Hi,

> To be reviewed easily, I'm splitting Synch Rep patch into some pieces.

Attached is a patch only to start and manage walsender process. This patch
don't include replication itself, walreceiver and signal handling patch, etc.

The outline of this patch is as follow:

Authentication
-----------------------
As pointed out at another thread, for authentication, I defined the database
only for replication (named "walsender" tentatively). walsender database is
not pseudo but created by initdb like postgres database, because the user
can re-create it easily even if it is lost accidentally.

If the startup packet specifies walsender database, a backend declares
postmaster working as walsender. Then, the backend is removed from
BackendList and managed as background process by postmaster.

Replication message
---------------------------------
I defined new message type 'R', which means the start of replication. If the
message is received, walsender will perform the main routine. Of course,
a backend who is not walsender cannot perform the routine.

Shutdown
----------------
I arranged the shutdown timing of walsender. For example, in smart
shutdown case, walsender should exit after bgwriter at least in order to
replicate a shutdown checkpoint xlog.

Initialization
--------------------
In the main routine, walsender sets up signal handlers, etc again.

And some bug fixes.

Regards,

--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center

Attachment

pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: array_length()
Next
From: "Pavel Stehule"
Date:
Subject: Re: array_length()