Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

nulljava.lang.RuntimeException:Child job returns 1. It doesn't terminate normally

Hi Team,

 

we have an scheduled job in production environment , sometimes we are seeing below errors with one of the job , could you please help us to resolve this error soon :

 

But while we re-ran job the job was successfull ,Attached the detailed log 

 

Error log :

INFO ]: data_management.j_loadmdm_a_003_product_1_4.j_LoadMDM_a_003_Product - tLogRow_1 - Content of row 128: 129|000000000000100856|89|CEPITA ERROR|A8KD054103|||||||||||||||||||

[INFO ]: data_management.j_loadmdm_a_003_product_1_4.j_LoadMDM_a_003_Product - tLogRow_6 - Content of row 128: 129|000000000000100856|89|CEPITA ERROR|A8KD054103|||||||||||||||||||

[INFO ]: data_management.j_loadmdm_a_003_product_1_4.j_LoadMDM_a_003_Product - tLogRow_8 - Content of row 128: 129|1|89-000000000000100856|CEPITA ERROR|A8KD054103||||||||||||||||||N|14475

FATAL]: data_management.j_lh_a_000_mdmlookup_1_3.j_LH_a_000_mdmlookup - tRunJob_1 Child job returns 1. It doesn't terminate normally.
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000795580000, 537395200, 0) failed; error='Cannot allocate memory' (errno=12)

[ERROR]: data_management.j_lh_a_000_mdmlookup_1_3.j_LH_a_000_mdmlookup - nulljava.lang.RuntimeException:Child job returns 1. It doesn't terminate normally.
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000795580000, 537395200, 0) failed; error='Cannot allocate memory' (err no=12) (jobInstanceID: 354334721)
[FATAL]: data_management.j_loaddata_a_001_master_1_4.j_LoadData_a_001_master - tRunJob_12 Child job returns 1. It doesn't terminate normally.
Exception in component tRunJob_1
java.lang.RuntimeException: Child job returns 1. It doesn't terminate normally.
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000795580000, 537395200, 0) failed; error='Cannot allocate memory' (errno=12)

 

 

 

Labels (2)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

See this https://stackoverflow.com/questions/31002612/java-hotspottm-64-bit-server-vm-warning

 

If you tweak the JVM Memory Arguments for your job either in Studio or TAC, and you set a higher value, then all childjobs that are "run as an independent process" will also use the same same JVM Memory arguments.  And basically you server does not have enough RAM to reserve the memory. Remember, Java reserves physical RAM, and does not reserve virtual memory.

 

For example:

JOB A  (JVM -Xmx Memory 4GB)

-- Calls Child Job B  (will inherit -Xmx from Job A and will initiate with 4 GB RAM)

-- Calls Child Job C (will inherit -Xmx from Job A and will initiate with 4 GB RAM)

 

If Child Job B & C are being executed in Parallel, then your system needs 12 GB RAM, else your child job cannot start.

 

Again this if for child job run as an independent process.  If you change that settings, then  all 3 jobs run with Job A memory space i.e. 4GB

 

If you have many other jobs also running on the same server, then you should check whether you have enough RAM on the server when this Job is being scheduled and run.

 

View solution in original post

2 Replies
Anonymous
Not applicable
Author

See this https://stackoverflow.com/questions/31002612/java-hotspottm-64-bit-server-vm-warning

 

If you tweak the JVM Memory Arguments for your job either in Studio or TAC, and you set a higher value, then all childjobs that are "run as an independent process" will also use the same same JVM Memory arguments.  And basically you server does not have enough RAM to reserve the memory. Remember, Java reserves physical RAM, and does not reserve virtual memory.

 

For example:

JOB A  (JVM -Xmx Memory 4GB)

-- Calls Child Job B  (will inherit -Xmx from Job A and will initiate with 4 GB RAM)

-- Calls Child Job C (will inherit -Xmx from Job A and will initiate with 4 GB RAM)

 

If Child Job B & C are being executed in Parallel, then your system needs 12 GB RAM, else your child job cannot start.

 

Again this if for child job run as an independent process.  If you change that settings, then  all 3 jobs run with Job A memory space i.e. 4GB

 

If you have many other jobs also running on the same server, then you should check whether you have enough RAM on the server when this Job is being scheduled and run.

 

Ravivarma_india
Contributor
Contributor

Tried but not worked my side.