Erik Riedel wrote:
>
> I'd like to re-ask on this thread of a few days ago because I suspect
> there is a deeper problem here that changing compilers simply "hides" in
> some way.
>
> I have a similar problem on Digital UNIX 4.0d with postgresql 6.4.2
> compiled with vendor CC (V5.6 using "cc -std1" in compile).
>
> % mv ${PGDATA} ${PGDATA}.foo
> % mkdir $PGDATA
> % initdb
> % createdb test
> % psql test
> test=> create table val (v_num decimal);
> test=> \d val
> ERROR: typeidTypeRelid: Invalid type - oid = 0
>
> I have the same problem in an existing database that actually has data
> in it - queries (seem to) work ok, but using psql to examine tables and
> such is impossible.
>
> The last discussion of this was on AIX 4.3.2 compiled with gcc, and the
> fix (if I read the resolution of that thread properly) was to use the
> vendor xlC on AIX instead.
This is correct. I changed two items.
1) switched from gcc to xlc
2) changed -qchars=unsigned (was -qchars=signed)
Most of the regression tests failed with -qchars=signed and all passed without
so much as a whimper when -qchars=unsigned. Don't know why this happened, or if
it makes any difference on your platform, but that's what AIX needs to work.