Thread: QNX6/RTP port -- Regression Test crash

QNX6/RTP port -- Regression Test crash

From
"Tucker.Aaron.T"
Date:
Hello all.
I have attempted to port PostgreSQL to QNX6/RTP.
Below shows my compiler warnings, and a couple of
log files dealing with running the regression tests .
Any suggestions/ideas/pointers would be greatly
appreciated.
thanks,
aaron.


Using a combination of the linux and qnx4 ports for
PostgreSQL I have been able to get a (nearly) clean
compile and link on QNX6.0c (aka neutrino 2, aka Real
Time Platform (RTP)).
gcc -v yeilds 2.95.2
make -v yields GNU Make version 3.77, ...
sed -V yeilds GNU sed version 3.02

--- Regression Test Crash:
I cannot however run the regression tests, getting the
below in /Postgresql-7.1.3/src/test/regress/log/initdb.log
(begin initdb.log)
Running with noclean mode on. Mistakes will not be cleaned up.
This database system will be initialized with username "dba".
This user will own all the data files and must also own the server process.

Creating directory /postgresql-7.1.3/src/test/regress/./tmp_check/data
Creating directory /postgresql-7.1.3/src/test/regress/./tmp_check/data/base
Creating directory
/postgresql-7.1.3/src/test/regress/./tmp_check/data/global
Creating directory
/postgresql-7.1.3/src/test/regress/./tmp_check/data/pg_xlog
Creating template1 database in
/postgresql-7.1.3/src/test/regress/./tmp_check/data/base/1

Process 68522027 (postgres) terminated SIGBUS code=3 fltno=11 ip=b031c742
ref=40100004
sed: couldn't write 86 items to {standard output}: Broken pipe
Bus error (core dumped)

initdb failed.
Data directory /postgresql-7.1.3/src/test/regress/./tmp_check/data will not
be removed at user's request.
(end initdb.log)

Note that the shell I used is QNX's default.  I know the faq for the QNX4
port said to
avoid it at all means, so I also used bash.  I got the exact same log file,
excepting the line
concerning 'sed' which was absent.

*NEWBIE ALERT*
I am new to unix/linux/qnx having spent most of my time in firmware.

For any interested, below are the few compiler warnings I still have, plus a
log of 'make check'
which shows a 'sed' command which may be one of my problems.

Compiler Warnings:
pqcomm.c:168: warning: `StreamDoUnlink' defined but not used
s_lock.c:134: warning: passing arg 1 of `sem_trywait' discards qualifiers
from pointer
 target type
/usr/ntox86/bin/ld: Warning: size of symbol `_res' changed from 512 to 442
in /x86/lib
/libsocket.so
pgc.c:1244: warning: label `find_rule' defined but not used
pgc.c:3091: warning: `yy_flex_realloc' defined but not used
lex.plpgsql_yy.c:987: warning: label `find_rule' defined but not used
lex.plpgsql_yy.c:2263: warning: `plpgsql_yy_flex_realloc' defined but not
used
(some redundant warnings deleted)

Here's a partial log of make check:
bash-2.04$ make check
make -C doc all
make[1]: Entering directory `/postgresql-7.1.3/doc'
make[1]: Nothing to be done for `all'.
[... etc ...]
All of PostgreSQL successfully made. Ready to install.
make -C src/test check
make[1]: Entering directory `/postgresql-7.1.3/src/test'
make -C regress check
make[2]: Entering directory `/postgresql-7.1.3/src/test/regress'
sed -e 's,@bindir@,/usr/local/pgsql/bin,g' \
    -e 's,@libdir@,/usr/local/pgsql/lib,g' \
    -e 's,@datadir@,/usr/local/pgsql/share,g' \
    -e 's/@VERSION@/7.1.3/g' \
    -e 's/@host_tuple@/x86-pc-nto-qnx/g' \
    -e 's,@GMAKE@,make,g' \
    -e 's/@enable_shared@/yes/g' \
    -e 's/@GCC@/yes/g' \
  pg_regress.sh >pg_regress
chmod a+x pg_regress
gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations -fpic
-I../../../src/interfa
ces/libpq -I../../../src/include   -c regress.c -o regress.o
gcc -shared -o regress.so regress.o
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g' input/copy.source
>sql/copy.
sql
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g'
input/create_function_1.sour
ce >sql/create_function_1.sql
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g'
input/create_function_2.sour
ce >sql/create_function_2.sql
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g' input/misc.source
>sql/misc.
sql
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g'
input/constraints.source >sq
l/constraints.sql
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g' output/copy.source
>expected
/copy.out
sed -e 's,@abs_srcdir@,/postgresql-7.1.3/src/test/regress,g' -e
's,@abs_builddir@,/pos
tgresql-7.1.3/src/test/regress,g' -e 's/@DLSUFFIX@/.so/g'
output/create_function_1.sou
rce >expected/create_function_1.out


Re: QNX6/RTP port -- Regression Test crash

From
Tom Lane
Date:
"Tucker.Aaron.T" <Aaron.Tucker@IGT.com> writes:
> [ coredump during initdb ]

Hmm, can you provide a gdb backtrace from the core dump?

It would probably be more useful for you to try this with 7.2beta1,
actually, than with 7.1.3.  Please configure with --enable-debug to
ensure that the backtrace yields maximum information.


> /usr/ntox86/bin/ld: Warning: size of symbol `_res' changed from 512 to 442
> in /x86/lib/libsocket.so

This seems fishy, but I'm not sure how to track it down.  The other
build warnings you show are pretty standard/harmless.

            regards, tom lane