バッチの状態の解釈
ここでは、バッチのさまざまな状態 (または状況) について解説します。バッチの状態に基づいて、結果を取得する、待機する、要求に関連したエラーを修正するなど、後続の作業を判断できます。
- Queued
- バッチ処理はまだ開始されていません。このバッチに関連付けられているジョブが中止された場合は、バッチは処理されず、状態は NotProcessed に設定されます。
- InProgress
- バッチは処理中です。バッチに関連付けられているジョブが中止された場合でも、バッチは完了するまで処理されます。バッチで処理を完了できるようにするため、バッチに関連付けられているジョブを閉じる必要があります。
- Completed
- バッチ処理は完了済みで、結果のリソースを使用できます。一部のレコードの処理に失敗した場合は、結果のリソースに示されます。バッチは、一部のレコードまたはすべてのレコードの処理に失敗した場合でも完了します。レコードのサブセットの処理に失敗した場合、正常に処理されたレコードはロールバックされません。
- Failed
- 要求がサポートされない形式に圧縮されている、内部のサーバーエラーが発生したなどの予期しないエラーにより、このバッチは要求全体の処理に失敗しました。バッチの状態が Failed であっても、一部のレコードは正常に処理されている可能性があります。レスポンスボディの numberRecordsProcessed 項目に 0 以外の数値が表示されている場合は、結果を取得して、処理されたレコードと、その処理結果を確認する必要があります。
- NotProcessed
- バッチはこれ以降処理されることはありません。この状態は、バッチがキューに入っている間にジョブが中止された場合に適用されます。一括クエリのジョブで PK Chunking が有効になっている場合、後続のバッチが作成されるときに、クエリを含む元のバッチにこの状態が割り当てられます。元のバッチがこの状態に変更された後に、後続のバッチを監視し、各バッチの完了時にその結果を取得できます。