Re: -Wformat-zero-length

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: -Wformat-zero-length
Date: 2012-08-14 21:56:39
Message-ID: 14182.1344981399@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> On 8/10/12 7:48 PM, Dimitri Fontaine wrote:
>> What about having single user mode talk fe/be protocol, and talk to it via a UNIX pipe, with pg_upgrade starting the single user backend as a subprocess?

> I think that's essentially equivalent to starting the server on a
> Unix-domain socket in a private directory. But that has been rejected
> because it doesn't work on Windows.

> The question in my mind is, is there some other usable way on Windows
> for two unrelated processes to communicate over file descriptors in a
> private and secure way?

You're making this unnecessarily hard, because there is no need for the
two processes to be unrelated.

The implementation I'm visualizing is that a would-be client (think psql
or pg_dump, though the code would actually be in libpq) forks off a
process that becomes a standalone backend, and then they communicate
over a pair of pipes that were created before forking. This is
implementable on any platform that supports Postgres, because initdb
already relies on equivalent capabilities.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2012-08-14 22:43:32 Re: -Wformat-zero-length
Previous Message Peter Eisentraut 2012-08-14 21:55:55 Re: macports and brew postgresql --universal builds