system.user_defined_functions
ユーザー定義関数 (UDF) の読み込みステータス、エラー情報、および設定メタデータを含みます。
カラム:
読み込みステータス
name(String) — UDF 名。load_status(Enum8) — 読み込みステータス:Success(UDF が読み込まれて準備完了)、Failed(UDF の読み込みに失敗)。loading_error_message(String) — 読み込みに失敗した場合の詳細なエラーメッセージ。正常に読み込まれた場合は空文字列。last_successful_update_time(Nullable(DateTime)) — 直近の正常な読み込みのタイムスタンプ。成功したことがない場合はNULL。loading_duration_ms(UInt64) — UDF の読み込みに要した時間 (ミリ秒)。
UDF 設定
type(Enum8) — UDF の種類:executable(ブロックごとに 1 プロセス) またはexecutable_pool(永続プロセスプール)。command(String) — 引数を含む実行対象のスクリプトまたはコマンド。format(String) — 入出力用のデータフォーマット (例:TabSeparated,JSONEachRow)。return_type(String) — 関数の戻り値の型 (例:String,UInt64)。return_name(String) — 任意の戻り値識別子。設定されていない場合は空。argument_types(Array(String)) — 引数の型の配列。argument_names(Array(String)) — 引数名の配列。名前なしの引数の場合は空文字列。
実行パラメータ
max_command_execution_time(UInt64) — データブロックを処理する最大秒数。executable_pool型でのみ使用。command_termination_timeout(UInt64) — コマンドプロセスに SIGTERM を送信するまでの秒数。command_read_timeout(UInt64) — コマンドの stdout から読み取る際のタイムアウト (ミリ秒)。command_write_timeout(UInt64) — コマンドの stdin へ書き込む際のタイムアウト (ミリ秒)。pool_size(UInt64) — プール内のプロセスインスタンス数。executable_pool型でのみ使用。send_chunk_header(UInt8) — 各データ chunk の先頭で行数を送信するかどうか (1 = true, 0 = false)。execute_direct(UInt8) — コマンドを直接実行するか (1)、/bin/bash経由で実行するか (0)。lifetime(UInt64) — 再読み込み間隔 (秒)。0 の場合は再読み込みが無効。deterministic(UInt8) — 同じ引数に対して常に同じ結果を返すかどうか (1 = true, 0 = false)。
例
すべての UDF とその読み込みステータスを表示:
失敗した UDF を見つける:
関連項目
- ユーザー定義関数 — UDF の作成と設定方法。