On 15.08.2007 21:30, Medi Montaseri wrote:
I am looking for some suggestions to optimize the following
problem/solution.
Given two nodes A and B (two computers) in a active-passive mode where A is
running PG engine, and B is simply standing by, and a common storage
(twin tailed) ( or from pg_ctl point of view -D /common/data ), I am looking
for a faster solution during the takeover where A has crashed and B is to
start PG engine and run with it.
My current solution is to start PG engine which should take little time to
study the configuration files and /common/data and fork a few childrens. But
I am still interested in optimizing this start-up cost.
For example, would I gain anything by starting PG engine on both A and B,
but on B I point it to /common/dummy and during the takeover, I somehow tell
it to now read from /common/data, for example have two postmaster.conf or
PGDATA and then use pg_ctl reload.
Starting up PostgreSQL should be very fast, given no recovery to be done
and decent hardware.
PostgreSQL does not fork a lot unless it is accepting new connections
and if reading a config file is slow on your system, something else is
broken.
In a active/passive setup your should be able to switch over in under 3
seconds. If there was a lot of load on the failed node the recovery
times on the new active node increase. The only thing you can do about
that is getting faster disks..
--
Regards,
Hannes Dorbath
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster