Patroni replication behaves the same regardless of the value set for synchronous_mode_strict

Percona Operator Version: 2.8.2

Postgres Version: 16

We have defined the below parameters related to Patroni replication. It is expected that writes will continue when the parameter synchronous_mode_strict set to false, is this expected?

[root@bastion-node pg-db]# cat values.yaml | grep sync
synchronous_mode: “on”
[root@bastion-node pg-db]# oc get pg pg-cluster-ha-pg-db -o yaml | grep sync
synchronous_mode: “on”
synchronous_mode_strict: false
synchronous_node_count: 2
syncPeriodSeconds: 10
[root@bastion-node pg-db]#

While we are testing sync and async replication between the primary and replica pods, the following is the insert status irrespective of the parameter value “synchronous_mode_strict”.

  • w/ synchronous_mode_strict:true

    • if replica pod is deleted gracefully (oc delete pod), patroni updates synchronous_standby_names to * allowing writes to continue on Primary

    • if replica pod is deleted with force option (oc delete pod <> --force to simulate real life failure), patroni does not update primary and writes are stalled

  • w/ synchronous_mode_strict:false

    • if replica pod is deleted gracefully (oc delete pod), patroni updates synchronous_standby_names to * allowing writes to continue on Primary

    • if replica pod is deleted with force option (oc delete pod <> --force to simulate real life failure), patroni does not update primary and writes are stalled.