エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

tsifyでout of memoryが発生した時に対応したこと

きっかけ

金曜日の夜に、現場のGitリポジトリに修正内容をプッシュしたら、ビルドエラー通知が飛んできて、ビルド時にメモリ不足が指摘された。
一応対処はしたけど、原因究明はまだできてないが、忘れそうなので、記録に残しておく

余談

問題発生タイミングが最悪。
なんで、よりによって金曜の定時後に発生するん?
起こしたのは俺だけどさぁ。。。

メンバーが残り少ない状態で発生して、かなり焦ったわ。

詳細

対応

gulpのタスクに、--max-old-space-size=4096 を追加した。
なぜ発生したのかは分からない。
月曜、調査しないといけない。。。

たぶん、クラス情報をコンパイル時にメモリ保持していると思うのだが、たぶん、大量にクラスを作ってたから起きたんだろうと勝手に予測。
月曜に本格的に調べる。

悩んだこと・詰まったこと

node のコマンドに --max-old-space-size=4096 って付けたんだけど、効果がなくてかなり迷った。
gulpは別プロセスで起動するのだろうか?とりあえず解決したからあまり調べなかったけど、後々になって気になった。

ついでに覚えたこと

--max-old-space-size で指定するサイズは、MB。

反省

手元ではメモリ不足になることは分かってなかったですわ。。。
そもそもマージしただけで、マージ元でエラーなかったし、先でもエラーなかったから大丈夫だろうって思ってたら、コレですわ。。。
ちゃんとプッシュ前にビルド通るかきちんと確認しておけば良かった。。。

参考サイト

Node.js の out of memory エラー回避方法 : まだプログラマーですが何か?

Gulp で process out of memory が出た時の解決方法 | フロントエンドの道標