Last modified by Carlijn Kokkeler on 2024/09/17 15:13

From version 16.1
edited by Erik Bakker
on 2024/06/21 14:53
Change comment: There is no comment for this version
To version 2.1
edited by Eva Torken
on 2024/03/22 15:33
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Runtime Overview Exit codes
1 +No data delivered to backend system
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ebakker
1 +XWiki.etorken
Content
... ... @@ -1,50 +1,32 @@
1 1  {{container}}{{container layoutStyle="columns"}}(((
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. The focus will be on providing insights into what is an exit code, the main exit codes returned by a container when it stops and how can that help you to resolve your problem.
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>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.Runtime Overview||target="blank"]] we explained that a container can have multiple statuses. Among these, there is the status Exit which is returned by the container uppon stopping and comes together with a code. The exit code usually points out the reason why the container stopped. In the section below we describe the most common exit codes that you can encounter 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 -* Exited with code **0**
15 -** The application inside the container completed its work successfully without any errors.
14 +== 3. Analysis ==
16 16  
17 -* Exited with code **1**
18 -** There was a general error in the application, which could be due to a variety of reasons like incorrect arguments or a failed dependency.
19 -** For example when you are missing a property value.
16 +=== 3.1 Reproduction ===
20 20  
21 -* Exited with code **125**
22 -** The docker run command was not executed successfully.
23 -** This usually occurs when eMagiz fails to execute a certain command on that container, e.g. Start, Stop.
18 +N/A
24 24  
25 -* Exited with code **126**
26 -** The command inside the container was found but cannot be executed. This can be due to permission issues or if the command is not executable.
27 -** For example, when eMagiz is running on premises and the permissions are incorrectly configured.
20 +=== 3.2 Analysis ===
28 28  
29 -* Exited with code **127**
30 -** The command was not found. This usually happens if a script is missing or the path is not set correctly.
22 +The problem led us to investigate the health of the H2 database. The database had a very high CPU and had high CPU after the connector underwent auto-healing. After further investigation it seemed that the H2 was reprocessing messages and therefore not taking on new ones.
31 31  
32 -* Exited with code **137**
33 -** The container was forcefully stopped
34 -** This happens when the container exceeds its memory resource limit (OOM).
24 +== 4. Result ==
35 35  
36 -* Exited with code **139**
37 -** 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.
38 -
39 -* Exited with code **143**
40 -** The container stopped gracefully terminated after receiving the operating system's SIGTERM signal, which instructs the container to do so.
41 -** For example, when you command the container to stop via Deploy Architecture or when eMagiz stops the container, e.g. Stop Machine deployment step.
42 -
43 -* Exited with code **255**
44 -** 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.
45 45  
46 -
47 47  == 5. Suggested Additional Readings ==
29 +N/A
48 48  
49 49  
50 50  )))((({{toc/}}))){{/container}}{{/container}}