On Thu, Jun 14, 2012 at 12:18 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Peter Eisentraut <peter_e@gmx.net> writes:
>> On mån, 2012-06-11 at 18:07 -0400, Tom Lane wrote:
>>> Peter Eisentraut <peter_e@gmx.net> writes:
>>>> So you do need to create M*N sockets.
>>>> I don't really see a problem with that.
>
>>> I do: first, it's a lotta sockets, and second, it's not real hard to
>>> foresee cases where somebody actively doesn't want that cross-product.
>
>> Well, it's fine if we provide ways not to have the cross-product, but
>> there should also be an easy way to get it. I can easily see cases in
>> systems I have administered where I would have liked to use two unix
>> sockets, two IP sockets, and two ports. Maybe I actually would have
>> needed only 7 out of those 8 sockets, but it's far easier to configure,
>> document, and explain if I just set up all 8 of them.
>
> Allow me to doubt that people are going to need cross-product socket
> sets that are so large that it's painful to enumerate all the cases.
> I can believe your 4x2 example, but not ones that are much bigger than
> that.
Same here. I can't really understand why someone would want to have,
say, six socket directories with four completely interchangeable
sockets in each one. At any rate I have no problem with allowing it,
but I think it's marginal enough that we can sanely require that a
system admin who needs that has to list out all 24 sockets explicitly.Maybe:
listen_addresses = { host | host:port | * | *:port } [, ...]
unix_socket_directory = { directory | directory:port ] [,...]
...except that colon is a valid character in a directory name. Not
sure what to do about that.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company