SQLRM segfaults under Linux (RH 5.2)
Posted in 1999
Topics: Installation, Setup & Upgrades, Connectivity: ESQL/C, 4GL & Embedded SQL, Networking & sqlhosts Configuration, Platform-Specific Issues
We're trying out the Linux SE engine on a Redhat-5.2 box in the hopes
that we'll be able to move some of our legacy apps to newer hardware.
I've been able to install the server and create and manipulate local
databases using DB-Access, but when I try to use sqlrm to provide
database connectivity for the 4gl-4.0 tools it segfaults. It does this
even when run directly from the command line, which I assume is not
expected behavior...
My sqlhosts is configured using sesoctcp to localhost, and DB-Access
works properly.
Environment:
[jhardin@ammon dbtest]$ env|egrep "(INF|SQL)"
INFORMIXDIR=/home/informix
INFORMIXSERVER=local_seSQLEXEC=/home/informix/lib/sqlrm
And here's what gdb has to say about it:
[jhardin@ammon dbtest]$ $INFORMIXDIR/lib/sqlrm
Segmentation fault (core dumped)
[jhardin@ammon dbtest]$ gdb $INFORMIXDIR/lib/sqlrm core
GNU gdb 4.17.0.4 with Linux/x86 hardware watchpoint and FPU support
{snip}
This GDB was configured as "i386-redhat-linux"...(no debugging symbols
found)...
Core was generated by `/home/informix/lib/sqlrm'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libm.so.6...done.
Reading symbols from /lib/libcrypt.so.1...done.
Reading symbols from /lib/libc.so.6...done.
Reading symbols from /lib/ld-linux.so.2...done.
Reading symbols from /lib/libnss_files.so.1...done.
#0 0x8054f35 in flushpipe ()
(gdb) bt
#0 0x8054f35 in flushpipe ()
#1 0x8053ac0 in puterr ()
#2 0x804b3b7 in rm_err_exit ()
#3 0x804b5fb in initsqlrm ()
#4 0x804aa8e in main ()
(gdb)
Can anybody suggest what the problem may be?
Thanks.
--
John Hardin
Systems Manager
Sizzling Platter, Inc.
John Hardin wrote: > > We're trying out the Linux SE engine on a Redhat-5.2 box in the hopes > that we'll be able to move some of our legacy apps to newer hardware. > > I've been able to install the server and create and manipulate local > databases using DB-Access, but when I try to use sqlrm to provide > database connectivity for the 4gl-4.0 tools it segfaults. It does this > even when run directly from the command line, which I assume is not > expected behavior... The program sqlrm is the relay module which is ONLY needed to run older Informix applications which used Online 4 & 5.xx connectivity conventions to communicate over shared memory connections. Since SE does not support shared memory connections anyway I do not think you need sqlrm. At any rate you cannot execute sqlrm yourself from the command line. It is started by the application as a pipe using the contents of the SQLEXEC envieonment variable. If all else fails use a network connection and run the sqlexecd to initiate communications. Sqlexecd understands 4.x, 5.0[1-4], 5.05-5.10, and 7.xx communications protocols. Art S. Kagel