- changed status to resolved
Segmentation fault in fetchAll()
Issue #8
resolved
Some optimization options in gcc -O2 lead to memory segmentation fault in fetchAll().
const db = require('/QOpenSys/QIBM/ProdData/OPS/Node6/os400/db2i/lib/db2a');
let dbConn = new db.dbconn();
dbConn.debug(true);
dbConn.conn('*LOCAL');
for(let i=0; i<1000; i++) {
let stmt = new db.dbstmt(dbConn);
stmt.prepare('SELECT * FROM QIWS.QCUSTCDT WHERE CDTLMT > ?', err => {
let id = Math.floor(Math.random() * 1000);
// console.log('Random ID:', id);
let params = [
[id, db.SQL_PARAM_INPUT, 2]
];
stmt.bindParam(params, err => {
stmt.execute(err => {
stmt.fetchAll(results => {
// console.log('Iteration', i, id, results.length);
// stmt.close();
});
});
});
});
}
SQLExecute(0):
FetchAllAsync().
Can not allocate rowData[9]
Segmentation fault (core dumped)
02:42:28: Segmentation fault in . at 0xf014
0x0000f014 (dbx) where
.() at 0xf014
unnamed block in eh_alloc._GLOBAL__I_65535_0_.._.._.._.._.._gcc_4.8.2_libstdc___v3_libsupc___eh_alloc.cc_34457AA0_0(??), line 223 in "eh_alloc.cc"
unnamed block in eh_alloc._GLOBAL__I_65535_0_.._.._.._.._.._gcc_4.8.2_libstdc___v3_libsupc___eh_alloc.cc_34457AA0_0(??), line 223 in "eh_alloc.cc"
unnamed block in eh_alloc._GLOBAL__I_65535_0_.._.._.._.._.._gcc_4.8.2_libstdc___v3_libsupc___eh_alloc.cc_34457AA0_0(??), line 223 in "eh_alloc.cc"
eh_alloc._GLOBAL__I_65535_0_.._.._.._.._.._gcc_4.8.2_libstdc___v3_libsupc___eh_alloc.cc_34457AA0_0(??), line 223 in "eh_alloc.cc"
uv__queue_work(w = ??), line 244 in "threadpool.c"
worker(arg = ??), line 95 in "threadpool.c"
(dbx) 0xD39D2188 /10 i
0xd39d2188 ($b43280) 60000000 ori r0,r0,0x0
0xd39d218c ($b43279+0x4) a93b0a70 lha r9,0xa70(r27)
0xd39d2190 ($b43279+0x8) 7f89e000 cmp cr7,0x0,r9,r28
0xd39d2194 ($b43279+0xc) 419dff98 bgt cr7,0xd39d212c (_ZN6DbStmt16FetchAllAsyncRunEP9uv_work_s+0xa0)
0xd39d2198 ($b43279+0x10) 813b0a80 lwz r9,0xa80(r27)
0xd39d219c ($b43279+0x14) 815b0a84 lwz r10,0xa84(r27)
0xd39d21a0 ($b43279+0x18) 7f895000 cmp cr7,0x0,r9,r10
0xd39d21a4 ($b43279+0x1c) 419e00d8 beq cr7,0xd39d227c ($b43279+0xf4)
0xd39d21a8 ($b43279+0x20) 2f890000 cmpi cr7,0x0,r9,0x0
0xd39d21ac ($b43279+0x24) 815f0038 lwz r10,0x38(r31)
Comments (2)
-
Account Deactivated reporter -
Account Deactivated reporter - edited description
- Log in to comment
Commit c9e7c99 disables -O2 optimization for now.