リソースを無効にする

リソースの無効化は、指定されたリソースのデータの取り込みを停止するために使用されます。 PUBLIC.DISABLE_RESOURCE プロシージャは、 UI またはワークシートからリソースを無効化するためのエントリポイントです。

このプロシージャを呼び出すには、ユーザーに ADMIN アプリケーションロールが割り当てられている必要があります。

リソースの無効化プロセスはいくつかの段階からなります。そのうちのいくつかはカスタマイズ可能だが、妥当なデフォルト値が含まれています。フェーズは以下の通りです。

  1. 初期検証

  2. リソースが無効になる前のカスタムロジック

  3. アクティブな取り込みプロセスを終了し、リソース取り込み定義を無効とする

  4. リソース作成後のカスタム・ロジック

初期検証

初期検証は、リソースの無効化プロセスの一番最初に実行され、チェックされる:

  • 与えられたidを持つリソースが存在するかどうか

  • 指定されたid を持つリソースがすでに無効になっているかどうか

リソースが以前に無効化されていた場合、何も行われず、成功応答が返されます。

リソースが無効になる前のカスタムロジック

このステップは、リソースが無効になる前にカスタムロジックを実装するために使用できます。

デフォルトでは、 PUBLIC.PRE_DISABLE_RESOURCE(resource_ingestion_definition_id VARCHAR) を呼び出し、 'response_code': 'OK' を返します。SQL スクリプトを通じて上書きすることも、 DisableResourceHandlerBuilder を使用して PreDisableResourceCallback インターフェイスのカスタム実装を提供することもできます。

カスタムロジックがエラーを返した場合、次のステップは実行されず、 DISABLE_RESOURCE プロシージャから所定のエラー応答が返されます。

アクティブな取り込みプロセスを終了し、リソース取り込み定義を無効とする

このステップでは、状態 SCHEDULED または IN_PROGRESS を持つすべてのインジェスト処理が完了し、与えられたリソースに対して次の反復インジェストは実行されません。その後、リソース取り込み定義の enabled フラグが false に変更されます。

注釈

リソースプロセスを無効にする実装は、現在実行中のインジェストを停止しません。次のインジェストの繰り返しを実行しないようにするだけです。進行中の取 り 込みの停止が必要な場合は、 リ ソ ース が無効化 さ れた後に Custom ロジッ クを実装する必要があります

リソース無効化後のカスタムロジック

これは、リソースが無効になった後にカスタムロジックを実装するために使用できます。例えば、与えられたリソースに対して進行中の取り込みを停止するために使用することができます。

デフォルトでは、 PUBLIC.POST_DISABLE_RESOURCE(resource_ingestion_definition_id VARCHAR) を呼び出し、 'response_code': 'OK' を返します。SQL スクリプトを通じて上書きすることも、 DisableResourceHandlerBuilder を使用して PostDisableResourceCallback インターフェイスのカスタム実装を提供することもできます。

カスタムロジックがエラーを返した場合、以下のステップは実行されず、 DISABLE_RESOURCE プロシージャから指定されたエラーレスポンスが返されます。

応答

正常な応答

プロシージャが成功すると、以下のような応答が返されます:

{
  "response_code": "OK"
}
Copy

エラーの応答

プロシージャーエラーでは、以下のような応答が返されます:

{
  "response_code": "<ERROR_CODE>",
  "message": "<error message>"
}
Copy

考えられるエラーコードは次のとおりです。

  • INVALID_INPUT - 指定されたリソース取り込み定義IDを持つリソースが存在しません。

  • DISABLE_RESOURCE_ERROR - リソース取り込み定義の更新時、または取り込み処理の終了時に予期せぬことが発生しました。すべての変更はロールバックされます。