書込みの例外

ストアへの書込み操作を行う場合、対処する必要のある例外が多数あります。ここでは一般的な例外をいくつか説明します。デフォルト・ポリシーを使用する場合やセキュア・ストアを使用していない場合など単純なケースでは、これらを明示的に処理する必要がないこともあります。ただし、コードの複雑度が増すと、これらの例外を明示的に管理する必要性も増します。

1つ目は、DurabilityExceptionです。この例外は、永続性ポリシーが満たされないため、操作を完了できないことを表します。詳細は、「永続性保証」を参照してください。

2つ目はRequestTimeoutExceptionです。これは、ストアのタイムアウト・プロパティで指定された時間内に操作を完了できなかったことを単に示しています。これは、システムに負荷がかかりすぎていることを示している可能性があります。ネットワーク速度の低下や、短時間で多くの操作(特に書込み操作)が行われてストアのノードに負荷がかかっていることが考えられます。

RequestTimeoutExceptionに対処するには、単にエラーを記録して続行するか、少しの間待ってから操作を再試行します。タイムアウト値を大きくして操作を再試行することもできます。

IllegalArgumentExceptionを受け取ることもできます。これは、ストアに書き込んでいるRowに主キーがない、または行が無効な場合にスローされます。

また、永続性の問題やリクエスト・タイムアウトの問題以外でなんらかの例外が発生したことを表す一般的なFaultExceptionを受け取ることもあります。この対処法は、エラーを記録して続行するか、操作を再試行することのみです。