Обсуждение: 9.6 synchronous_standby_names: discrepancy between docs and functionality
9.6 synchronous_standby_names: discrepancy between docs and functionality
От
"Nicholson, Brad (Toronto, ON, CA)"
Дата:
Hi Folks, 9.6 dev installed from RPM. The version according to yum is: Release : git20160325_1PGDG.rhel7 The docs state the following as an example of synchronous_standby_names for= multiple sync standby's synchronous_standby_names =3D '2 (s1, s2, s3)' When you try and use this example, it fails: syncrep=3D# alter system set synchronous_standby_names=3D'2 (s1, s2, s3)'; ERROR: invalid value for parameter "synchronous_standby_names": "2 (s1, s2= , s3)" DETAIL: List syntax is invalid. If you remove the space from between the 2 & the ( it works: syncrep=3D# alter system set synchronous_standby_names=3D'2(s1, s2, s3)'; ALTER SYSTEM Thanks, Brad.
Re: 9.6 synchronous_standby_names: discrepancy between docs and functionality
От
Michael Paquier
Дата:
On Thu, Apr 14, 2016 at 9:51 PM, Nicholson, Brad (Toronto, ON, CA) <bnicholson@hpe.com> wrote: > When you try and use this example, it fails: > > syncrep=# alter system set synchronous_standby_names='2 (s1, s2, s3)'; > ERROR: invalid value for parameter "synchronous_standby_names": "2 (s1, s2, s3)" > DETAIL: List syntax is invalid. > > If you remove the space from between the 2 & the ( it works: > > syncrep=# alter system set synchronous_standby_names='2(s1, s2, s3)'; > ALTER SYSTEM Both of them work for me (HEAD at 92a30a7): =# alter system set synchronous_standby_names='2 (s1, s2, s3)'; ALTER SYSTEM =# alter system set synchronous_standby_names='2(s1, s2, s3)'; ALTER SYSTEM -- Michael
On Thu, Apr 14, 2016 at 11:22 PM, Michael Paquier <michael.paquier@gmail.com> wrote: > On Thu, Apr 14, 2016 at 9:51 PM, Nicholson, Brad (Toronto, ON, CA) > <bnicholson@hpe.com> wrote: >> When you try and use this example, it fails: >> >> syncrep=# alter system set synchronous_standby_names='2 (s1, s2, s3)'; >> ERROR: invalid value for parameter "synchronous_standby_names": "2 (s1, s2, s3)" >> DETAIL: List syntax is invalid. Maybe 9.6dev RPM that you installed was created before multiple sync standbys feature was committed. >> If you remove the space from between the 2 & the ( it works: >> >> syncrep=# alter system set synchronous_standby_names='2(s1, s2, s3)'; >> ALTER SYSTEM Before multiple sync standbys feature was added, only comma-separated list was valid in synchronous_standby_names. Since probably '2(s1, s2, s3)' was interpreted as a comma-separated list of three standby names "2(s1", "s2" and "s3)", it worked fine. Regards, -- Fujii Masao