Re: BUG #15376: Postgres sql 9.4.19 pg_upgrade stops with error The source cluster was not shut down cleanly.

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: kalyani kaniganti <kalyanithumati(at)gmail(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #15376: Postgres sql 9.4.19 pg_upgrade stops with error The source cluster was not shut down cleanly.
Date: 2018-09-10 16:14:06
Message-ID: 20180910161406.GB20064@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Mon, Sep 10, 2018 at 03:45:15PM +0530, kalyani kaniganti wrote:
> HI Bruce,
>
> We are using below command for an upgrade and after executing the below command
> the status is returning with the cluster error.
>  /opt/postgres/9.4/bin/pg_upgrade -b /usr/bin -B /opt/postgres/9.4/bin -d <old
> data path> -D <new data path>
>  rc=$?
> Rc returns the mentioned error.
>
> When we check with pg_ctl status command output is showing as server not
> running.
>
> How can we check the database cluster is shut down using which command.Can you
> share us the details other than the pg_ctl.bR 

Sure. A running server shows this:

$ pg_controldata /u/pg/data
pg_control version number: 1100
Catalog version number: 201809052
Database system identifier: 6598932306319366658
--> Database cluster state: in production
pg_control last modified: Sat 08 Sep 2018 03:12:38 PM EDT

A shut down server looks like this:

$ pg_controldata /u/pg/data
pg_control version number: 1100
Catalog version number: 201809052
Database system identifier: 6598932306319366658
--> Database cluster state: shut down
pg_control last modified: Mon 10 Sep 2018 12:09:29 PM EDT

If is says "shut down in recovery" then it is in standby mode and cannot
be used by pg_upgrade directly, only via rsync.

---------------------------------------------------------------------------

> kalyani
>
>
>
>
> On Mon, Sep 10, 2018 at 9:40 AM Bruce Momjian <bruce(at)momjian(dot)us> wrote:
>
> On Mon, Sep 10, 2018 at 09:30:28AM +0530, kalyani kaniganti wrote:
> > Hi Bruce,
> > Thanks for the immediate reply.
> > We are using pg_ctl command to shutdown the old server with no option.In
> this
> > case the pg_ctl will consider as smart shutdown if no option is specified
> as
> > per documentation .
> > please find bellow command.
> > <new path for data dir>/bin/pg_ctl -D <olddata dir path> stop 
>
> Yes, this should be fine.
>
> > We are using the same script for multiple releases in Postgres sql to
> upgrade
> > the database from 9.1 to 9.4 .
> > Same script is working fine in 9.4.17 version, while upgrading DB from
> 9.1 to
> > 9.4.17.
>
> OK.
>
> > From the release notes of 9.4.19 version we did not find any changes done
> on
> > pg_upgrade except one bug fix related to pg_upgrade has been fixed.
> > Do we have to add in our code to check for graceful shutdown or we have
> to wait
> > for the next release?
> > Please let us know if you have any workaround till the next minor patch
> is
> > released.
>
> Well, there is nothing pending in the next beta except a better error
> message text.  Can you show me the commands and the error you are
> getting.  The system is looking at the output from:
>
>         $ pg_controldata $PGDATA
>
> The "Database cluster state:" must be "shut down" before running
> pg_upgrade.
>
> --
>   Bruce Momjian  <bruce(at)momjian(dot)us>        http://momjian.us
>   EnterpriseDB                             http://enterprisedb.com
>
> + As you are, so once was I.  As I am, so you will be. +
> +                      Ancient Roman grave inscription +
>

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Bruce Momjian 2018-09-10 16:14:43 Re: BUG #15376: Postgres sql 9.4.19 pg_upgrade stops with error The source cluster was not shut down cleanly.
Previous Message Tom Lane 2018-09-10 14:52:46 Re: BUG #15367: Crash in pg_fe_scram_free when using foreign tables