[Update] MBC CQRS サーバーレス フレームワーク v1.2.2 をリリース
Technology
Apr 08, 2026
MBC CQRS サーバーレス フレームワーク v1.2.2 をリリースしました。今回のリリースでは、CSVバッチインポート処理における重要なバグ修正が含まれています。
主な変更点
バグ修正
- import:
CsvBatchProcessorに Smart Retry パターンを実装し、Head-of-Line Blocking(Poison Pill問題)を修正 - import:
ImportQueueEventHandlerがSingleImportProcessorに生のSQSペイロードを渡していた問題を修正
CsvBatchProcessor の修正詳細
以前のバージョンでは、SQSバッチの先頭行に永続的なバリデーションエラーがあると、ハンドラーが即座にクラッシュしていました。SQSはバッチ全体をリトライし、先頭行で繰り返し失敗することで、残りの有効な行がDLQに送られるまでブロックされ続ける問題(Head-of-Line Blocking / Poison Pill問題)が発生していました。
v1.2.2 では Smart Retry パターンを実装しました:
- 各行を独立した try/catch ブロックで処理
- エラーが発生しても後続行の処理を継続
- バッチ終了後に集約エラーをスローして SQS リトライをトリガー
- リトライ時、既に成功した行は DB の EQUAL 比較でスキップ(冪等性維持)
- 永続的に失敗する行は SQS の最大リトライ後に DLQ へルーティング
アップグレード方法
npm install @mbc-cqrs-serverless/core@1.2.2
npm install @mbc-cqrs-serverless/import@1.2.2
