PG Bug reporting form <noreply(at)postgresql(dot)org> writes:
> [ $subject ]
I don't think this is a bug; you are just misunderstanding the guarantee
that synchronous replication offers. In syncrep mode, the primary server
commits and then waits for some number of standbys to acknowledge having
replicated that commit action before it tells the client the commit is
complete. Killing the primary during that wait does not, and cannot,
cause the commit not to have happened.
What I think you are looking for is two-phase commit, which is a whole
different animal that is far more complex and expensive than syncrep.
regards, tom lane