Hi Jerry and Kevin, Thanks for your answers.
Jerry, I tried as you said with the parameter recovery_target_timeline = 'latest' and it works. I tried on a smaller test database (only 15MB) with PG9.1.1 and only 1 slave. My switchover procedure was : Step 1 : stop the old master /usr/local/pgsql/bin/pg_ctl stop -m immediate -D /usr/local/pgsql91/server1/data Step 2 : promote slave as master : touch /usr/local/pgsql91/server2/data/trigger_file Step 3 : declare the old master as a standby server Step 3.1 : vi /usr/local/pgsql91/server1/data/postgresql.conf Add hot_standby = on in the postgresql.conf Step 3.2 Set recovery.conf for old master server (including recovery_target_timeline = 'latest') cp /usr/local/pgsql91/server1/data/recovery.bkp /usr/local/pgsql91/server1/data/recovery.conf Step 4 : start old master /usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql91/server1/data & The old master is now a hot_standby of the new master. Replication works without rsyncing all data from new master to new slave. Tomorrow, I shall try with PG9.0.3, 3 slaves and a primary database with 100 GB. Thanks. Jal