AWS StepFunctionsでsize exceeding the maximum number of characters service limitエラー
先日、stepfunctionsで社内ツールを作成していたところ、
下記のエラーに遭遇しました。
エラー内容
The state/task ‘arn:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’
returned a result with a size exceeding the maximum number of characters service limit.
処理概要
処理は下記のようなシンプルなものです。
原因
エラーログからStepfunctionsの制限と考えられるので
調べてみたところ下記が原因のようでした
タスク、状態、実行の最大の入力または結果データサイズ:32,768 文字.
調べると、引き渡そうとした文字列が12万文字を超えていたため、タスクの受け渡しができなかった模様・・・・
ベストプラクティスでは、このような事態を回避するために、
S3とかに生データを格納して
次のタスクにメタデータのみを渡すことを推奨しています。
また、S3の結果整合性を気にして、数秒間にwaitを挟み、
下記のようにしたところ正常に実行させることができました。
同じエラーでつまづいた方の参考になれば幸いです。