flingblue 发表于 2008-04-08 11:10

帮忙看个出core原因

出core是在打开游标时,甚至是申明游标的时候产生的(EXEC SQL declare mycursor cursor for mystmt;),
但不是每次执行该操作都会出core


(gdb) where
#00xc019ccd8 in real_malloc+0xbb0 () from /usr/lib/libc.2
#10xc019a024 in _malloc+0x54c () from /usr/lib/libc.2
#20xc01a0074 in malloc+0x18c () from /usr/lib/libc.2
#30xc4f19a14 in _sqcopycmdtxt+0x98 () from /home/informix/lib/esql/libixsql.sl
#40xc4f1a190 in sqli_curs_decl_stat+0x124 () from /home/informix/lib/esql/libixsql.sl
#50xc4f1a5dc in sqli_curs_decl_dynm+0xac () from /home/informix/lib/esql/libixsql.sl
#60x2568f4 in _ecCursorOpen (stmt=0x7f7f26f8 "select top1Index , top2Index , top3Index , top4Index , top5Index from IP_TOPSTAT where toptype = 4 ")
    at sdf/ecfuncs.ec:562

[ 本帖最后由 flingblue 于 2008-4-8 11:13 编辑 ]

wenlq 发表于 2008-04-09 08:03

需要有源程序才能debug跟踪出来

flingblue 发表于 2008-04-16 15:06

近日观察应该是因为内存分配失败而出core的,而非只是在数据库操作内存分配失败而出core,
因为也有非数据操作分配内存失败的情况
但具体为什么出core就不知道了,
怀疑跟操作系统有关,目前的操作系统版本是
HP-UX test3 B.11.23 U 9000/800,该系统在该版本以下的版本运行都没出现过这种情况
所以内核参数也按标准的核查了一遍,没什么异常
只有如下三个参数没有配置(在网上搜了据说是该操作系统版本已不需要配置)
Maxswapchunks
Bufpages

请高人指点,你说的一切都是有价值的。

ivhb 发表于 2008-04-16 16:32

注意编译的时候打开所有的警告开关。看看有没有原型不符的函数。
然后把相应的头文件全部包括进来
页: [1]
查看完整版本: 帮忙看个出core原因