setResumeCheckpoint() と EventBus.RetryableException の比較
プラットフォームイベントトリガの再開に最も適したメソッドを決定します。setResumeCheckpoint() は、トリガがイベントメッセージを正常に処理した後に、制限の例外などの未処理の例外が発生した場合に使用します。例外が発生すると、トリガは最後のチェックポイントが付けられたイベントメッセージの後から再開されます。EventBus.RetryableException をスローすることで、外部条件が変化することや、一時的なエラーがなくなることを期待している場合に、イベントを再���理できます。
| setResumeCheckpoint() メソッド | EventBus.RetryableException |
|---|---|
| setResumeCheckpoint() の後もトリガ実行を続行します。 | EventBus.RetryableException が発生した後にトリガ実行を停止します。 |
| 実行された DML 操作がコミットされます。 | 例外が発生する前に実行された DML 操作がロールバックされ、コミットされません。 |
| トリガが再度起動された場合、新しいイベントメッセージの他に、指定された再実行 ID のイベントメッセージの後のイベントメッセージのみが再送信されます。 | トリガが再度起動された場合、新しいイベントメッセージの他に、前のバッチのすべてのイベントメッセージが新しいバッチで再送信されます。 |
| 次の TriggerContext プロパティは適用されず、入力されません: retries および lastError。 | 次の TriggerContext プロパティが入力されます: retries および lastError。 |