[Info-Ingres] Stack dump on auditdb - good host vs bad host
Karl & Betty Schendel
schendel at kbcomputer.com
Wed Sep 26 07:43:51 CDT 2007
At 11:20 AM +0100 9/26/07, Martin Bowes wrote:
>Hi Everyone,
>
>I have two hosts, both running: II 9.0.4 (a64.lnx/105)NPTL + patch 12343
> both running: Fedora Core release 5 (Bordeaux)
>
>If I create a brand new database(call it bowtest).
>Checkpoint it turning journaling on.
>Then execute: auditdb bowtest -b`date +%d-%b-%Y` (ie. Today it will
>give: auditdb bowtest -b26-Sep-2007)
>
>One host is perfectly OK with this command.
>
>The other generates the frontend error:
>Wed Sep 26 10:53:02 2007 E_DM904A_FATAL_EXCEPTION A fatal error
>has occurred in the DMF Facility.
>
>And in the errlog we see a STACK TRACE message:
>::[ , ac874200]: Wed Sep 26 10:53:02 2007 Segmentation
>Violation (SIGSEGV) @PC 00002aaaaadc5352
>RSP 00007fff37b6b120 RBP 00007fff37b6b2a8 RSI 00002aaaac6d70b0
>RDI 00000000005341c0 RAX 00000000005de000 RBX 0000000000000000
>RCX 0000000000548000 RDX 00007fff00000000
>
>-----------BEGIN STACK TRACE------------
>0: 00007fff37b6b2a8 libscf.1.so(sca_add_datatypes+0x312)
That's a bug in dmfinit (single-threaded DMF initialization) that
shows up on a64, it's passing 0 instead of NULL to sca_add_datatypes
(which it is illegally calling directly!). If you fix that, you
discover that NULL is improperly defined on a64_lnx as well.
(as (i4)0 instead of (void *)0, although it turns out that most
of Ingres manages to pick up a correct override definition from
stddef.h.
I sent over a fix for that, but I don't believe it's made it into the
regular code lines yet.
If you don't try to initialize any UDF's or UDT's, I think it
works fine.
Karl
PS I bet you can blow up infodb the same way, that's how I
found it. Any of the standalone DMF programs should barf.
More information about the Info-Ingres
mailing list