Possible bug in conversion_create.sql

Started by Nonameover 22 years ago4 messagesbugs
Jump to latest
#1Noname
silvio@relato.com.br

Hello,

I had a problem with PostgreSQL 7.3.4, the pg_conversion table was empty after
initdb, so, no conversion could be made. I did exactly this:
# tar xvzf postgres-7.3.4.tar.gz
# cd postgres-7.3.4
# ./configure --prefix=/var/lib/pgsql --with-java --with-openssl
--without-readline
# make
# make install
Created the postgres user and group and did chown postgres:postgres
/var/lib/pgsql -R
# su - postgres
postgres$ initdb --pgdata /var/lib/pgsql/data
postgres$ exit
Runned /etc/init.d/postgres start, that have the following command:
# su - $PG_USER -c "$PG_BASE/bin/pg_ctl start -D '$PG_DATA' -s -l '$PG_LOGFILE'
-o '-N 1024 -B 2048 -i'"
Where: PG_USER=postgres, PG_BASE=/var/lib/pgsql, PG_DATA=/var/lib/pgsql/data
and PG_LOGFILE=/var/lib/pgsql/data/postgres.log

Until here everything looked fine, but then JDBC tried on a database created
with LATIN1 encoding:
set client_encoding='UNICODE';
And got back: Conversion between LATIN1 and UNICODE is not supported

With the help of two people from #postgresql at irc.freenode.org, I did a
initdb -d --pgdata data 2>debug.log and founded out that the problem was that
conversion_create.sql wasn't changing $libdir to the actual name
(/var/lib/pgsql/lib in my case). I did a sed on it and runned initdb, this time
everything runned fine.

I hope this help this great database,

Thanks,

Silvio Fonseca
Linux Consultant

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#1)
Re: Possible bug in conversion_create.sql

"" <silvio@relato.com.br> writes:

With the help of two people from #postgresql at irc.freenode.org, I did a
initdb -d --pgdata data 2>debug.log and founded out that the problem was that
conversion_create.sql wasn't changing $libdir to the actual name

It's not supposed to. I don't know what problem you had, but this is
the wrong fix.

regards, tom lane

#3Noname
silvio@relato.com.br
In reply to: Tom Lane (#2)
Re: Possible bug in conversion_create.sql

With the help of two people from #postgresql at irc.freenode.org, I did a
initdb -d --pgdata data 2>debug.log and founded out that the problem was
that conversion_create.sql wasn't changing $libdir to the actual name

It's not supposed to. I don't know what problem you had, but this is
the wrong fix.

I'm sure that sed isn't the correct procedure :-) Somewhere in the way (in the
instalation or in runtime), postgres should change libdir to the actual dir
name, since the error was "no such file or directory"...

But the problem was solved with the change. I'm not a postgres master at all,
so, how postgres knows what to use on the libdir variable? Where the variable
is defined? How I know if this is set?

Thanks for any anwer :-)

Silvio Fonseca
Linux Consultant

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#3)
Re: Possible bug in conversion_create.sql

"" <silvio@relato.com.br> writes:

It's not supposed to. I don't know what problem you had, but this is
the wrong fix.

But the problem was solved with the change. I'm not a postgres master
at all, so, how postgres knows what to use on the libdir variable?
Where the variable is defined? How I know if this is set?

$libdir is expanded on-the-fly when the dynamic function loader needs to
find the file. The value that is used for it can be found from
pg_config --pkglibdir

regards, tom lane