Re: fail to run postgresql16 after update from postgresql13 - Mailing list pgsql-novice

From Ianseeks
Subject Re: fail to run postgresql16 after update from postgresql13
Date
Msg-id 5997577.lOV4Wx5bFT@lian-li
Whole thread Raw
In response to Re: fail to run postgresql16 after update from postgresql13  (Laurenz Albe <laurenz.albe@cybertec.at>)
Responses Re: fail to run postgresql16 after update from postgresql13
List pgsql-novice
On Thursday, 2 November 2023 10:16:33 GMT Laurenz Albe wrote:
> On Thu, 2023-11-02 at 08:14 +0000, Ianseeks wrote:
> > i hope i've got the correct mailing list for this question/problem.  I'm a
> > novice.
> 
> If you upgraded all the way from 9.6 to v16, you are not a novice.
> But that's fine.  I find that - for whatever reason - people who write
> to the pgsql-novice rarely are.  Perhaps modesty.

Thanks for responding
I am a novice with postgresql - i just copied someone elses work and just 
editted it to work on my system. :)

> Anyway.
> 
> > A little history.
> > I use opensuse tumbleweed and the Kmail/Kontact PIM software which is
> > contrlled by software called Akondai and this requires a DB.  The default
> > was Mysql but it caused a lot of reliability issues for me so i migrated
> > to Postgresql 9.6 (yes, it was a few years ago)
> > 
> > I've since then update the DB to 10, 11, 12 until ver 13 which i
> > have been using until now.  I  did try updating to ver 14 but it failed
> > with locale issues during the update and i couldn't get a resolution.
> > 
> > I just recently managed to get the database converted from postgresql13 to
> > postgresql16 and the data was transferred to the new DB with no issues.
> > 
> > I can't get Akonadi to load as it fails to start postgresql16, its failing
> > with a message saying it needs postgesql9.6 as the DB was originally
> > created using 9.6. I can't see why it insists on ver 9.6 being there as
> > i've updated to ver 16 and that process means i create an empty DB.  I
> > can't even install Ver 9.6 to see if that cures the problem as its no
> > longer in the opensuse repos.
> > 
> > Here are the error messages from akonadi and the journal.
> > 
> > --------------
> > 
> > This is from "systemctl status postgresql.service"
> > 
> > Oct 31 16:24:13 Lian-Li systemd[1]: Starting PostgreSQL database server...
> > Oct 31 16:24:13 Lian-Li postgresql-script[5916]:  Your database files were
> > created by PostgreSQL version 9.6. Oct 31 16:24:13 Lian-Li
> > postgresql-script[5916]:  Could not find executables for this version.
> > Oct 31 16:24:13 Lian-Li postgresql-script[5916]:  Please install the
> > PostgreSQL server package for version 9.6. Oct 31 16:24:13 Lian-Li
> > systemd[1]: postgresql.service: Control process exited, code=exited,
> > status=1/FAILURE Oct 31 16:24:13 Lian-Li systemd[1]: postgresql.service:
> > Failed with result 'exit-code'. Oct 31 16:24:13 Lian-Li systemd[1]:
> > Failed to start PostgreSQL database server.
> These error messages are not from PostgreSQL, but they seem to be from
> the script "postgresql-script".  That script is not part of PostgreSQL.
> 
> Look into that script and try to figure out how it arrives at that
> conclusion. If you cannot figure it out yourself, please share the relevant
> parts.

Is it acceptable to attach text files to email in this mailing list?  I know 
some don't like it.
I've found the script file (/usr/share/postgresql/postgresql-script) and that 
message is in there but the coding in it is beyond my expertise as i can only 
do basic stuff.
Here is a cut and paste of part of it.

----- /usr/share/postgresql/postgresql-script ----

PG_SYSCONFIG=/etc/sysconfig/postgresql
test -f $PG_SYSCONFIG && . $PG_SYSCONFIG

eval DATADIR=${POSTGRES_DATADIR:-~postgres/data}
OPTIONS=${POSTGRES_OPTIONS}
INITDB_OPTS=${POSTGRES_INITDB_OPTS}
PIDFILE=$DATADIR/postmaster.pid

# 
if test -r $DATADIR/PG_VERSION ; then
    DATA_VERSION=$(cat $DATADIR/PG_VERSION)
    POSTGRES=/usr/lib/postgresql$(echo -n $DATA_VERSION | tr -d .)/bin/
postgres
fi
if test -x /usr/bin/postgres; then
    ACTIVE=$(readlink -q -f /usr/bin/postgres)
    test -z "$POSTGRES" && POSTGRES="$ACTIVE"
fi
if test -n "$DATA_VERSION"; then
    if test -z "$ACTIVE" -o "$ACTIVE" != "$POSTGRES"; then
    echo " Your database files were created by PostgreSQL version 
$DATA_VERSION."
    if test -x "$POSTGRES"; then
        echo " Using the executables in $(dirname $POSTGRES)."
    else
        echo " Could not find executables for this version."
        echo " Please install the PostgreSQL server package for version 
$DATA_VERSION."
    fi
    fi
elif test -z "$ACTIVE"; then
    echo " Cannot find an active PostgreSQL server binary. Please install one 
of the PostgreSQL"
    echo " server packages or activate an already installed version using 
update-alternatives."
fi
if test ! -x "$POSTGRES"; then
    exit 1
fi

> Yours,
> Laurenz Albe


opensuse:tumbleweed:20231031
Qt: 5.15.11 KDE Frameworks: 5.111.0 - KDE Plasma:  5.27.9 - kwin 5.27.9
kmail2 5.24.2 (23.08.2) - akonadiserver 5.24.2 (23.08.2) - Kernel:  6.5.9-1-
default  - kernel-firmware-radeon  20231019






pgsql-novice by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: fail to run postgresql16 after update from postgresql13
Next
From: Laurenz Albe
Date:
Subject: Re: fail to run postgresql16 after update from postgresql13