[groonga-dev,01457] Re: データDELETE,INSERT時のmmap Cannot allocate memoryについて

Zurück zum Archiv-Index

Naoya Murakami visio****@gmail*****
2013年 6月 4日 (火) 09:31:34 JST


お世話になっております。村上です。

本件につきまして、以下のように2回ほど、追試しました。
事象発生時のテーブル、クエリは前回の事象発生時と異なっていました。
特定のテーブルに問題があるわけではないようです。
だいたい10分ぐらいで毎回、mmap cannot alocateが発生します。

当方の環境では、ほぼ100%再現するようですが、どのようにすれば、
再現環境を構築できるかは特定できかねています。

あとは、spider経由なしで、変わるか等をテストしたいと思いますが、
登録プログラムを修正しないとできないので、時間がかかりそうです。

(1) 試験1
1回目は、まず、メモリ量等を監視しつつ、事象を再現させました。
vmstatであやしいうごきはみられませんでしたが、事象発生時にmysql -p で接続しにいくと、
Can't create a new thread (errno 11); if you are not out of available
memory, you can consult the manual for a possible OS-dependent bug
のメッセージが発生し、接続できませんでした。

そこで、OS(CentOS6)のスレッド数制限関連の問題なのかなと考えました。
・参考にしたURL
http://blog.engineer.adways.net/archives/24844023.html

(2)試験2
mysqldのスレッド数を監視しつつ、システム全体のスレッド数制限をあげ、
また、ユーザごとのスレッド数制限をunlimitedにして追試しました。

cat /proc/sys/kernel/threads-max
515016→2060064(4倍に)
ulimit -u unlimited

しかしながら、試験2でも同様にmmap cannot alocateが発生しました。このときは、mysql -pで通常に接続できました。
mpstat、vmstat、mysqldのスレッド数にあやしいうごきはありませんでした。

<試験1>
・groonga.log
2013-06-04 04:28:41.222563|n|0cbb3700|split (5955) encsize=393922
2013-06-04 04:28:42.062654|A|0cbb3700|mmap(4194304,735,838860800)=Cannot
allocate memory <13047246848>
2013-06-04 04:28:42.066369|A|0cbb3700|/usr/lib64/libgroonga.so.0()
[0x35dc72e5fb]

・vmstat
2013/06/04 04:28:34  1  0    164 226788  72532 29599988    0    0 38644
138036 8132 1316 11  2 86  1  0
2013/06/04 04:28:36  2  0    164 224568  72528 29593844    0    0  6628
0 3131 3560 13  1 86  0  0
2013/06/04 04:28:38  1  0    164 232808  72560 29572364    0    0 33360
1140 3853 3352 12  1 86  1  0
2013/06/04 04:28:40  1  0    164 227704  72576 29568144    0    0  5240
12 3455 2890 13  0 86  0  0
2013/06/04 04:28:42  1  0    164 229988  72576 29559820    0    0  6048
0 2749 2444 13  1 86  0  0
2013/06/04 04:28:44  1  0    164 234100  72612 29554636    0    0  9668
99120 4911 2466 13  1 86  1  0
2013/06/04 04:28:46  1  0    164 224052  72660 29564580    0    0  3856
0 2565 2054 13  0 87  0  0
2013/06/04 04:28:48  1  0    164 227460  72660 29572512    0    0  3628
0 2555 2022 12  1 87  1  0

・mpstat -P ALL
04時28分38秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal
%guest   %idle
04時28分41秒  all   12.01    0.00    0.83    0.75    0.00    0.08    0.00
0.00   86.32
04時28分41秒    0   76.25    0.00    4.01    5.69    0.00    0.33    0.00
0.00   13.71
04時28分41秒    1    1.66    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.01
04時28分41秒    2    1.33    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.33
04時28分41秒    3    1.67    0.00    0.00    0.33    0.00    0.00    0.00
0.00   98.00
04時28分41秒    4   12.71    0.00    0.67    0.00    0.00    0.33    0.00
0.00   86.29
04時28分41秒    5    1.33    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.33
04時28分41秒    6    1.00    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.66
04時28分41秒    7    0.67    0.00    0.67    0.00    0.00    0.00    0.00
0.00   98.67

04時28分41秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal
%guest   %idle
04時28分44秒  all   12.43    0.00    0.50    0.75    0.00    0.13    0.00
0.00   86.19
04時28分44秒    0   82.09    0.00    1.69    5.07    0.00    1.01    0.00
0.00   10.14
04時28分44秒    1    1.00    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.67
04時28分44秒    2    1.33    0.00    0.00    0.00    0.00    0.00    0.00
0.00   98.67
04時28分44秒    3    4.68    0.00    0.00    0.00    0.00    0.00    0.00
0.00   95.32
04時28分44秒    4    7.95    0.00    1.66    0.99    0.00    0.33    0.00
0.00   89.07
04時28分44秒    5    1.00    0.00    0.00    0.00    0.00    0.00    0.00
0.00   99.00
04時28分44秒    6    1.00    0.00    0.00    0.00    0.00    0.00    0.00
0.00   99.00
04時28分44秒    7    0.67    0.00    0.00    0.00    0.00    0.00    0.00
0.00   99.33


<試験2>
・groonga.log
2013-06-04 08:19:12.249306|n|4e86e700|split (1997) encsize=396740
2013-06-04 08:19:34.835218|A|4e86e700|mmap(4194304,551,432017408)=Cannot
allocate memory <13036498944>
2013-06-04 08:19:34.838731|A|4e86e700|/usr/lib64/libgroonga.so.0()
[0x35dc72e5fb]

・vmstat.log
2013/06/04 08:19:26  0  1    256 528500  74532 29249884    0    0 45752
0 2793 1529 11  1 87  1  0
2013/06/04 08:19:28  1  0    256 458012  74544 29313972    0    0 38296
488 3018 2483  9  3 87  1  0
2013/06/04 08:19:30  1  0    256 425560  74544 29343440    0    0 13912
0 4017 4528 12  1 86  1  0
2013/06/04 08:19:32  1  0    256 342504  74544 29395016    0    0 35316
0 4188 4685 12  1 86  1  0
2013/06/04 08:19:34  1  0    256 333636  74552 29419520    0    0  4672
0 2532 1100  9  0 88  3  0
2013/06/04 08:19:36  1  0    256 295404  74552 29454484    0    0 14724
0 2865 2615 12  1 87  1  0
2013/06/04 08:19:38  3  0    256 275844  74560 29473376    0    0 10456
424 3026 1476 12  0 87  1  0
2013/06/04 08:19:40  1  0    256 248436  74560 29500976    0    0 12584
0 3123 2901 13  1 86  1  0
2013/06/04 08:19:42  1  0    256 220436  74560 29526152    0    0 18296
0 3392 2698 11  1 87  1  0

・mysqld スレッド数

2013/06/04 08:19:32
Variable_name   Value
Threads_cached  1
Threads_connected       2
Threads_created 3
Threads_running 1
mysqld pid num 7 ( ps -efL | grep -e mysqld -e PID | grep -v grep | wc
-lの結果)
2013/06/04 08:19:35
Variable_name   Value
Threads_cached  1
Threads_connected       2
Threads_created 3
Threads_running 1
mysqld pid num 7


・mpstat

08時19分30秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal
%guest   %idle
08時19分33秒  all   11.54    0.00    0.96    1.04    0.00    0.12    0.00
0.00   86.33
08時19分33秒    0   73.33    0.00    5.67    8.33    0.00    0.67    0.00
0.00   12.00
08時19分33秒    1    8.64    0.00    0.33    0.00    0.00    0.00    0.00
0.00   91.03
08時19分33秒    2    1.00    0.00    0.00    0.00    0.00    0.00    0.00
0.00   99.00
08時19分33秒    3    1.00    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.66
08時19分33秒    4    4.35    0.00    1.00    0.00    0.00    0.00    0.00
0.00   94.65
08時19分33秒    5    1.34    0.00    0.00    0.00    0.00    0.00    0.00
0.00   98.66
08時19分33秒    6    1.00    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.67
08時19分33秒    7    1.00    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.67

08時19分33秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal
%guest   %idle
08時19分36秒  all   10.52    0.00    1.13    1.63    0.00    0.08    0.00
0.00   86.64
08時19分36秒    0   75.00    0.00    4.05   12.84    0.00    0.34    0.00
0.00    7.77
08時19分36秒    1    1.33    0.00    1.00    0.00    0.00    0.00    0.00
0.00   97.67
08時19分36秒    2    1.00    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.67
08時19分36秒    3    1.33    0.00    0.33    0.00    0.00    0.00    0.00
0.00   98.34
08時19分36秒    4    3.33    0.00    0.67    0.00    0.00    0.33    0.00
0.00   95.67
08時19分36秒    5    1.00    0.00    2.99    0.00    0.00    0.00    0.00
0.00   96.01
08時19分36秒    6    1.34    0.00    0.00    0.00    0.00    0.00    0.00
0.00   98.66
08時19分36秒    7    1.00    0.00    0.00    0.00    0.00    0.00    0.00
0.00   99.00


以上、よろしくお願いします。



groonga-dev メーリングリストの案内
Zurück zum Archiv-Index