質問編集履歴
3
情報の追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -103,6 +103,10 @@
|
|
|
103
103
|
|
|
104
104
|
uWSGIのプロセスをリロードを行うコマンドを設定ファイルに入れたが、設定ファイルで指定しているプロセス数が20であるため、連続で通信を行うと止まってしまった。
|
|
105
105
|
|
|
106
|
+
process=10,max-requests=1にして行うと、3回目以降からworkerがkillされrespawnした。
|
|
107
|
+
max-requests=2にすると、10回動いた後に11回目で上記のエラーが出て、その後workerがkillされrespawnした。
|
|
108
|
+
|
|
109
|
+
|
|
106
110
|
### 補足情報(FW/ツールのバージョンなど)
|
|
107
111
|
OS:CentOS7
|
|
108
112
|
python 3.7.6
|
2
情報の追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -1,14 +1,84 @@
|
|
|
1
1
|
### 前提・実現したいこと
|
|
2
2
|
|
|
3
3
|
Flask+uWSGI+NGINXでアプリを動かしたい。
|
|
4
|
+
外部からjsonを送り、jsonで返す仕組みにしたい。
|
|
5
|
+
タイムアウトの際にタイムアウトのメッセージを表示するためにtimeout()を使用している。
|
|
4
6
|
|
|
7
|
+
|
|
5
8
|
### 発生している問題・エラーメッセージ
|
|
6
9
|
|
|
7
10
|
```
|
|
8
11
|
uWSGI process 26132 got Segmentation Fault !!
|
|
12
|
+
*** backtrace of 19621 ***
|
|
13
|
+
uwsgi(uwsgi_backtrace+0x2e) [0x5f4c0e]
|
|
14
|
+
uwsgi(uwsgi_segfault+0x21) [0x5f4fa1]
|
|
15
|
+
/lib64/libc.so.6(+0x36400) [0x7f9112482400]
|
|
16
|
+
/usr/lib64/libtcmalloc_minimal.so.4(__libc_malloc+0x4a) [0x7f911359968a]
|
|
17
|
+
uwsgi(PyObject_Malloc+0x15f) [0x50d10f]
|
|
18
|
+
uwsgi(PyBytes_FromStringAndSize+0x40) [0x4dd7f0]
|
|
19
|
+
uwsgi() [0x55ae76]
|
|
20
|
+
uwsgi() [0x4e20ec]
|
|
21
|
+
uwsgi(_PyObject_CallFunction_SizeT+0x99) [0x4e3099]
|
|
22
|
+
uwsgi(PyUnicodeDecodeError_Create+0x2d) [0x6268ed]
|
|
23
|
+
uwsgi() [0x63507c]
|
|
24
|
+
uwsgi(PyUnicode_DecodeUTF32Stateful+0x383) [0x4716b5]
|
|
25
|
+
uwsgi() [0x658127]
|
|
26
|
+
uwsgi(_PyMethodDef_RawFastCallKeywords+0xed) [0x4e0a7d]
|
|
27
|
+
uwsgi(_PyCFunction_FastCallKeywords+0x21) [0x4e0971]
|
|
28
|
+
uwsgi(_PyEval_EvalFrameDefault+0x4f97) [0x53dfe7]
|
|
29
|
+
uwsgi(_PyEval_EvalCodeWithName+0x2d2) [0x538482]
|
|
30
|
+
uwsgi(_PyFunction_FastCallDict+0x1cf) [0x4e247f]
|
|
31
|
+
uwsgi() [0x63b750]
|
|
32
|
+
uwsgi() [0x45e53a]
|
|
33
|
+
uwsgi(PyUnicode_FromEncodedObject+0x56) [0x6348e6]
|
|
34
|
+
uwsgi() [0x4df145]
|
|
35
|
+
uwsgi(_PyMethodDef_RawFastCallKeywords+0x214) [0x4e0ba4]
|
|
36
|
+
uwsgi(_PyMethodDescr_FastCallKeywords+0x4f) [0x58fbdf]
|
|
37
|
+
uwsgi(_PyEval_EvalFrameDefault+0x4d5a) [0x53ddaa]
|
|
38
|
+
uwsgi(_PyEval_EvalCodeWithName+0x5ba) [0x53876a]
|
|
39
|
+
uwsgi(_PyFunction_FastCallKeywords+0x220) [0x4e1d50]
|
|
40
|
+
uwsgi(_PyEval_EvalFrameDefault+0x4c03) [0x53dc53]
|
|
41
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
42
|
+
uwsgi(_PyEval_EvalFrameDefault+0x4c03) [0x53dc53]
|
|
43
|
+
uwsgi(_PyFunction_FastCallDict+0x10b) [0x4e23bb]
|
|
44
|
+
uwsgi(_PyEval_EvalFrameDefault+0x1d00) [0x53ad50]
|
|
45
|
+
uwsgi(_PyEval_EvalCodeWithName+0x2d2) [0x538482]
|
|
46
|
+
uwsgi(_PyFunction_FastCallDict+0x1cf) [0x4e247f]
|
|
47
|
+
uwsgi(_PyEval_EvalFrameDefault+0x1d00) [0x53ad50]
|
|
48
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
49
|
+
uwsgi(_PyEval_EvalFrameDefault+0x685) [0x5396d5]
|
|
50
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
51
|
+
uwsgi(_PyEval_EvalFrameDefault+0x685) [0x5396d5]
|
|
52
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
53
|
+
uwsgi(_PyEval_EvalFrameDefault+0x685) [0x5396d5]
|
|
54
|
+
uwsgi(_PyFunction_FastCallDict+0x10b) [0x4e23bb]
|
|
55
|
+
uwsgi(_PyObject_Call_Prepend+0x63) [0x4e28d3]
|
|
56
|
+
uwsgi() [0x51d6da]
|
|
57
|
+
uwsgi() [0x51a6c4]
|
|
58
|
+
uwsgi(_PyObject_FastCallKeywords+0x98) [0x4e15a8]
|
|
59
|
+
uwsgi(_PyEval_EvalFrameDefault+0x4b66) [0x53dbb6]
|
|
60
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
61
|
+
uwsgi(_PyEval_EvalFrameDefault+0x4c03) [0x53dc53]
|
|
62
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
63
|
+
uwsgi(_PyEval_EvalFrameDefault+0x685) [0x5396d5]
|
|
64
|
+
uwsgi(_PyFunction_FastCallKeywords+0xfb) [0x4e1c2b]
|
|
65
|
+
uwsgi(_PyEval_EvalFrameDefault+0x685) [0x5396d5]
|
|
66
|
+
uwsgi(_PyEval_EvalCodeWithName+0x2d2) [0x538482]
|
|
67
|
+
uwsgi(_PyFunction_FastCallDict+0x3c0) [0x4e2670]
|
|
68
|
+
uwsgi(_PyObject_Call_Prepend+0x63) [0x4e28d3]
|
|
69
|
+
uwsgi() [0x51d6da]
|
|
70
|
+
uwsgi() [0x51a6c4]
|
|
71
|
+
uwsgi(_PyObject_FastCallKeywords+0x180) [0x4e1690]
|
|
72
|
+
uwsgi(_PyEval_EvalFrameDefault+0x596e) [0x53e9be]
|
|
73
|
+
uwsgi(_PyEval_EvalCodeWithName+0x2d2) [0x538482]
|
|
74
|
+
uwsgi(_PyFunction_FastCallKeywords+0x259) [0x4e1d89]
|
|
75
|
+
uwsgi(_PyEval_EvalFrameDefault+0x14cb) [0x53a51b]
|
|
76
|
+
uwsgi(_PyFunction_FastCallDict+0x10b) [0x4e23bb]
|
|
77
|
+
*** end of backtrace ***
|
|
9
78
|
```
|
|
10
79
|
追記:
|
|
11
80
|
workerがkillされていないためプロセスが残り続けてエラーを起こしているように感じる。
|
|
81
|
+
一度使用したworkerが常に残り続けてるのかもしれない。
|
|
12
82
|
|
|
13
83
|
### 該当のソースコード
|
|
14
84
|
マルチプロセスのタイムアウト処理を入れ、free():invalid pointerを直すために、libtcmalloc_minimal.so.4を設定した結果出るようになった。
|
1
情報の追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
```
|
|
8
8
|
uWSGI process 26132 got Segmentation Fault !!
|
|
9
9
|
```
|
|
10
|
+
追記:
|
|
11
|
+
workerがkillされていないためプロセスが残り続けてエラーを起こしているように感じる。
|
|
10
12
|
|
|
11
13
|
### 該当のソースコード
|
|
12
14
|
マルチプロセスのタイムアウト処理を入れ、free():invalid pointerを直すために、libtcmalloc_minimal.so.4を設定した結果出るようになった。
|