Changes for page Runtime Overview Exit codes
Last modified by Carlijn Kokkeler on 2024/09/17 15:13
From version 11.1
edited by Tudor Neacsu
on 2024/06/21 09:31
on 2024/06/21 09:31
Change comment:
There is no comment for this version
To version 6.1
edited by Eva Torken
on 2024/03/26 16:12
on 2024/03/26 16:12
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - RuntimeOverviewExit codes1 +No Data Delivered to Backend System - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. TudorNeacsu1 +XWiki.etorken - Content
-
... ... @@ -1,34 +1,33 @@ 1 1 {{container}}{{container layoutStyle="columns"}}((( 2 -In this microlearning, we willgiveinsightsintowhatis anexit code,themain exitcodesreturnedbyacontainerwhenitstopsandhow canthat helpa SupportEngineertoconductan RCA.2 +In this document, we will use the information from the actual root cause analysis to make a generic view that can be used if you run into the same or a similar problem in the future. Finally, the document will describe the situation, the problem, the analysis, and the result. 3 3 4 4 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 5 5 6 -== 1. Key concepts==6 +== 1. Situation == 7 7 8 - In a previous[[microlearning>>https://docs.emagiz.com/bin/view/Main/eMagiz%20Academy/Microlearnings/Crash%20Course/Crash%20Course%20Platform/Runtime%20Overview||target="blank"]]weexplained that a container can havemultiple statuses. Among these, thereis the status Exit. This status comes together with a code.The exitcodeusuallypoints out the reason why thecontainer stopped. Inthe section below we go into moredetailsfor the most common exit codes thatyou couldsee in eMagiz.8 +No data is delivered to a backend system. 9 9 10 - [[image:Main.Images.RCA-Knowledgebase.WebHome@rca-knowledgebase-runtime-overview-exit-codes.png]]10 +== 2. Problem == 11 11 12 - ==2.Exit code values==12 +The problem in this case was that the backend system was not receiving any data. This was caused by an unstable H2 database. 13 13 14 - *Exitedwith code **0**: The applicationinside the container completed its work successfullywithout any errors.14 +== 3. Analysis == 15 15 16 - *Exited with code **1**:There was a general error in the application, which couldbe dueto a varietyof reasonslike incorrect arguments or a failed dependency.16 +=== 3.1 Reproduction === 17 17 18 - * Exited with code **125**: The docker run command was not executed successfully18 +N/A 19 19 20 - *Exited with code **126**:The command inside the container wasfound but cannot be executed. Thiscan be due to permission issues or if the command is not executable.20 +=== 3.2 Analysis === 21 21 22 - *Exitedwith code**127**:Thecommand was not found.Thisusually happensif a scriptmissingorthe pathisnotsetcorrectly.22 +The problem led us to investigate the queue statistics of the flow responsible for delivering the data. Here, it was seen that data was flowing throught the queue, but in a repetitive pattern. In the runtime statistics a very high CPU was observed. Consequently, the health of the H2 database was investigated. The H2 database was processing the messages repeatedly after the connector had undergone auto-healing. Therefore, it was not processing the new messages. 23 23 24 - *Exited with code **137**: The container was forcefully stopped.This happenswhen the container exceeds its memory resourcelimit(OOM)24 +== 4. Result == 25 25 26 -* Exited with code **139**: The application inside the container crashed due to a segmentation fault, which is usually caused by accessing memory that the process does not have permission to access. 27 - 28 -* Exited with code **255**: Container exited, returning an exit code outside the acceptable range, meaning the cause of the error is not known 26 +The removal and re-addition of the H2 database caused the H2 database to return to normal behavior. Afterwards, the problem did not reoccur. The resetting of the H2 database should also solve the problem. This can be done by moving to Deploy -> Architecture and pressing 'Reset H2'. Do remember that resetting the H2 database or removing and readding it will result in a loss of all the data on the database. 29 29 30 - 31 31 == 5. Suggested Additional Readings == 29 +For more information on resetting a H2 Database, please check out the following microlearning: 30 +* [[Reset H2 Database>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-runtime-management-reset-h2.WebHome||target="blank"]] 32 32 33 33 34 34 )))((({{toc/}}))){{/container}}{{/container}}