The following bug has been logged on the website:
Bug reference: 11517
Logged by: the pg_stat_replication.sync_stat show sync when synchronous_commit is set
to be off
Email address: amutu@amutu.com
PostgreSQL version: 9.2.4
Operating system: suse linux 10 x86_64
Description:
from the doc,when synchronous_commit set to off or local,the commit will not
wait the remote slave reveive data,so it is not asynchronous replication.but
I find the pg_stat_replication wrongly report the sync_stat to sync.This can
be confused for people.
postgres=# select * from pg_stat_replication ;
-[ RECORD 1 ]----+------------------------------
pid | 3213
usesysid | 16387
usename | rep
application_name | sync_slave
client_addr | 172.25.38.154
client_hostname |
client_port | 54333
backend_start | 2014-09-29 15:17:19.927457+08
state | streaming
sent_location | 21/A0F01C0
write_location | 21/A0F01C0
flush_location | 21/A0F01C0
replay_location | 21/A0EFC88
sync_priority | 1
sync_state | sync
postgres=# show synchronous_standby_names ;
-[ RECORD 1 ]-------------+-----------------------
synchronous_standby_names | sync_slave,walreceiver
postgres=# show synchronous_commit ;
-[ RECORD 1 ]------+----
synchronous_commit | off