On Sat, Sep 8, 2012 at 1:26 PM, Sergey Konoplev <gray.ru@gmail.com> wrote:
> On Fri, Sep 7, 2012 at 3:20 AM, Bruce Momjian <bruce@momjian.us> wrote:
>> On Thu, Sep 6, 2012 at 05:55:05PM -0500, Antoine Guidi wrote:
>>> Is it possible to do a pg_upgrade from 9.1.2 to 9.1.5 just using pg_upgrade?
>>> For what I could read, the only exception would be if I was using a
>>> citext column (which I am not).
>>
>> You cannot use pg_upgrade for this. You just need to stop the server,
>> install the binaries, and restart the server.
>
> AFAIU it is not necessary to stop the server when updating binaries if
> one is not going to create extensions, PLs or anything else that will
> be dynamically linked after the binaries update and before the server
> restart.
>
> So with the process
>
> 1. update binaries
> 2. postgres restart
>
> the downtime will be shorter.
I'm just guessing, but this is probably a bad idea. This could happen...
1. Postgres master and a bunch of clients are running
2. You start updating binaries
3. In the middle of your update, an new client connects and a new
backend process starts.
4. The 9.1.2 executable links to the 9.1.5 binaries. Or a 9.1.5
executable links to the 9.1.2 libraries. Or a 9.1.5 executable starts
with the right binaries, but is talking to a 9.1.2 postmaster process,
which might not have the same shared-memory map. Or ...
... and so forth.