From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
Cc: | PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: Standbys using commas in application_name cannot become sync nodes |
Date: | 2016-02-14 15:51:01 |
Message-ID: | 17378.1455465061@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Michael Paquier <michael(dot)paquier(at)gmail(dot)com> writes:
> Commas are authorized characters in application_name for a node in
> recovery, however this overlaps with the fact that
> synchronous_standby_names uses commas as a separator for each node
> name. So, if a standby node uses a comma in its name, even if its name
> is set in s_s_names it can never become a synchronous node because
> SplitIdentifierString() splits this parameter with only a comma.
> Even if I have never seen an standby using a comma in its
> application_name, this is a bug, and here are a couple of things that
> we could do regarding it:
> 1) Do not care, who is actually going to use a comma in application_name?!
> 2) Forbid the use of commas in application_name
> 3) Enhaunce a bit s_s_names splitting so as it can consider
> backslash+comma as part of a standby name. In short by setting
> s_s_names = 'foo\,bar', a standby with name 'foo,bar' would be a sync
> node.
> 4) Document the limitation and discourage the use of commas in application_name
(3) seems like a mess with likely side-effects on other uses of
SplitIdentifierString. I'd vote for (2) or (4).
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2016-02-14 15:57:08 | Re: Standbys using commas in application_name cannot become sync nodes |
Previous Message | Michael Paquier | 2016-02-14 12:36:04 | Standbys using commas in application_name cannot become sync nodes |