IBM Support

Redirect restore failed with SQL2043N on DB2 9.X

Troubleshooting


Problem

Redirect restore is failing with 'SQL2043N: unable to start a child process or thread' on DB2 Version 9.X

Symptom

Redirected restore on Linux environment is failing with 'SQL2043N: unable to start a child process or thread'. Restore will abend after that.

Environment

Linux environment using DB2 Version 9.x

Diagnosing The Problem

The db2diag.log file will contain:


2010-03-22-09.46.35.285208-300 I25097155E515 LEVEL: Error
PID : 21104 TID : 10 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : mydb
APPHDL : 0-10858 APPID: *LOCAL.db2inst1.100322144636
AUTHID : DB2INST1
EDUID : 483 EDUNAME: db2agent (mydb) 0
FUNCTION: DB2 UDB, base sys utilities, sqeBsuEdu::StartEDU, probe:96
RETCODE : ZRC=0x870F00F2=-2029059854=SQLO_NORES
"no resources to create process or thread"

2010-03-22-09.46.35.298050-300 I25097671E615 LEVEL: Severe
PID : 21104 TID : 10 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : mydb
APPHDL : 0-10858 APPID: *LOCAL.db2inst1.100322144636
AUTHID : DB2INST1
EDUID : 483 EDUNAME: db2agent (mydb) 0
FUNCTION: DB2 UDB, base sys utilities, sqeDbEduServices::CreateDBEdu,
probe:193
MESSAGE : ZRC=0x870F00F2=-2029059854=SQLO_NORES
"no resources to create process or thread"


2010-03-22-09.46.35.344381-300 E25102643E893 LEVEL: Severe
PID : 21104 TID : 10 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : mydb
APPHDL : 0-10858 APPID: *LOCAL.db2inst1.100322144636
AUTHID : DB2INST1
EDUID : 483 EDUNAME: db2agent (mydb) 0
FUNCTION: DB2 UDB, database utilities, sqludCreateEDU, probe:900
MESSAGE : SQL2043N Unable to start a child process or thread.
DATA #1 : SQLCA, PD_DB2_TYPE_SQLCA, 136 bytes
sqlcaid : SQLCA sqlcabc: 136 sqlcode: -2043 sqlerrml: 0
sqlerrmc:
sqlerrp : sqludCre
sqlerrd : (1) 0x00000000 (2) 0x00000000 (3) 0x00000000
(4) 0x00000000 (5) 0x00000000 (6) 0x00000000
sqlwarn : (1) (2) (3) (4) (5) (6)
(7) (8) (9) (10) (11)
sqlstate:
 

Resolving The Problem

First thing to make sure that system has enough physical memory. If we have enough memory on the system then check if the Linux kernel parameter has been set properly.

'ipcs -l' will provide all kernel settings on Linux environment.

Among other kernel settings , there are couple of kernel settings that are important to check.

a. SHMMAX : max seg size

b. SHMALL : max total shared memory

c. SEMOPM : max ops per semop call

Please follow the recommended value as provided by DB2 Version 9.X Information Center to set up proper kernel parameter settings. See links below.

If the updated settings does not resolve the SQL2043N issue then it could be related to the Address Space Layout Randomization ( ASLR ) on Linux environment. Please follow the steps described on link below for resolving the 'SQL2043N Unable to start a child process or thread' problem.

[{"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"Recovery - Restore","Platform":[{"code":"PF016","label":"Linux"}],"Version":"9.7;9.5;9.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
07 December 2022

UID

swg21425464