HiveServer2で 「java.lang.OutOfMemoryError: unable to create new native thread」といわれた

CentOS6上のHiveServer2で 「java.lang.OutOfMemoryError: unable to create new native thread」といわれたのでメモっておく。

現象としては下記と同じに見える。リークしてるのか。。。

https://issues.apache.org/jira/browse/HIVE-6866

HDP使っているのですが、All Posts - Hortonworksと同じっぽいですね。

HiveServer2のheapは1GBで運用してました。

/proc/[hiveserver2のpid]/limitsのMax processesを見ると1024だったのでここにひっかかってスレッドを作れなくなったのかなと思ってこれを増やしてみた。

やり方は/etc/security/limits.d/90-nproc.confの下記をコメントアウト

#*          soft    nproc     1024

あといちおうhadoop-env.shのHADOOP_HEAPSIZEも2GBにして、要はHiveServer2のヒープを2GBにして様子を見る。

定期的に再起動した方がいいかなあ。。。

あとHiveServer2がどれぐらいスレッドを使っているかモニタリング出来るのかな。