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
walsender_process_v1.tgz
Description: GNU Zip compressed data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers