Azure Functions の Http Trigger でモデルバインディングに失敗するとレスポンスが返ってこない問題
Azure Functions Isolted Worker で、ASP.NET Core Integration を設定していると、コード内で例外が発生した場合にレスポンスが返ってこないことがあったので、備忘録を残します。
何が起きるのか
- コード内で未処理の例外が発生すると、レスポンスが返ってこず、クライアントがタイムアウトするまで待たされ続ける動きをする
内部的には、ASP.NET パイプラインがハングアップすることで、にっちもさっちもいかなくなるのが原因でした。
条件
- .NET の Function App
- ASP.NET Core Integration を設定している
- Funcrions.Worker.Extensions.Http.AspNetCore が 1.3.1 以下
修正方法
Funcrions.Worker.Extensions.Http.AspNetCore を 1.3.2 以上にアップデートします。
対応する Pull Request
まとめ
結構致命的なので、お悩みの方は早いところアップデートしましょう。