Jul 5, 2018

Hi, YARN-6640

YARN上で動いている、とあるアプリがYARNのバグを踏み抜きました。
AM heartbeat stuck when responseId overflows MAX_INT

これは典型的なオーバーフローのバグで、Application ManagerとResource Manager間のやりとりをint型の変数で応答のIDを管理し毎回インクリメントしているのですが、その値が2147483647に達すると、次回のIDが-2147483648になり、前回のレスポンスとの整合性が取れていないとうことで例外を投げます。YARNの2.8.2で修正されていますが、それ以前のバージョンを使っており、ハートビートの間隔が短いアプリをロングランしているような場合には一度確認してみると良いかもしれません。
なお、AM-RM間だけでなくName Manager-Resource Manger間でも同様のロジックは含まれていました。こちらは2.8.4で修正されています。
NM heartbeat stuck when responseId overflows MAX_INT