背景描述:接上回,自定义函数报错SQLC-1042 sqlstate:58004 .此情况,在用户多时出现,另外重启数据库就又可以运行函数。
由于此类问题发生已有3次之多,所以,可以直接肯定是数据库问题。
虽然昨个增大查询堆的参数值,但是仍然未能解决。
上DB2日志内容;
2014-07-18-10.23.13.869864+480 I8838102E311 LEVEL: Warning
PID : 30934 TID : 139650904241952PROC : db2fmp (
INSTANCE: db2inst1 NODE : 000
FUNCTION: DB2 UDB, routine_infrastructure, sqlerMasterThreadListener, probe:300
MESSAGE : Java heap is nearly full; no thread created
由于此类问题发生已有3次之多,所以,可以直接肯定是数据库问题。
虽然昨个增大查询堆的参数值,但是仍然未能解决。
上DB2日志内容;
2014-07-18-10.23.13.869864+480 I8838102E311 LEVEL: Warning
PID : 30934 TID : 139650904241952PROC : db2fmp (
INSTANCE: db2inst1 NODE : 000
FUNCTION: DB2 UDB, routine_infrastructure, sqlerMasterThreadListener, probe:300
MESSAGE : Java heap is nearly full; no thread created
2014-07-18-10.23.13.871438+480 I8838414E570 LEVEL: Warning
PID : 29888 TID : 140615278913280PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : DSP
APPHDL : 0-26 APPID: 66.185.64.125.16788.14071705004
AUTHID : DSP
EDUID : 44 EDUNAME: db2agent (DSP) 0
FUNCTION: DB2 UDB, routine_infrastructure, sqlerMasterThreadReq, probe:89
MESSAGE : FMP reported it could not create a new thread
DATA #1 : Hexdump, 4 bytes
0x0000000200E2F480 : D678 0000 .x..
PID : 29888 TID : 140615278913280PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : DSP
APPHDL : 0-26 APPID: 66.185.64.125.16788.14071705004
AUTHID : DSP
EDUID : 44 EDUNAME: db2agent (DSP) 0
FUNCTION: DB2 UDB, routine_infrastructure, sqlerMasterThreadReq, probe:89
MESSAGE : FMP reported it could not create a new thread
DATA #1 : Hexdump, 4 bytes
0x0000000200E2F480 : D678 0000 .x..

本文详细记录了在遇到DB2数据库中SQL1042错误时的排查过程,包括查看DB2日志、分析Java堆栈问题、调整DB2_FMP_COMM_HEAPSZ等参数,以及探讨并发运行对内存的需求。通过设置DB2环境变量和数据库配置,成功解决了函数执行失败的问题。
最低0.47元/天 解锁文章
560

被折叠的 条评论
为什么被折叠?



