> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> Системная таблица со статусом загрузки и метаданными конфигурации пользовательских функций (UDF).

# system.user_defined_functions

<div id="description">
  ## Описание
</div>

Содержит статус загрузки, сведения об ошибках и метаданные конфигурации для [пользовательских функций (UDF)](/docs/ru/reference/functions/regular-functions/udf).

<div id="columns">
  ## Столбцы
</div>

* `name` ([String](/docs/ru/reference/data-types/string)) — Имя UDF.
* `load_status` ([Enum8('Success' = 0, 'Failed' = 1)](/docs/ru/reference/data-types/enum)) — Статус загрузки. Возможные значения: Success — UDF загружена и готова к использованию; Failed — UDF не удалось загрузить (подробности см. в поле 'loading\_error\_message').
* `loading_error_message` ([String](/docs/ru/reference/data-types/string)) — Подробное сообщение об ошибке загрузки. При успешной загрузке пустое.
* `last_successful_update_time` ([Nullable(DateTime)](/docs/ru/reference/data-types/nullable)) — Временная метка последнего успешного обновления. NULL, если успешного обновления не было.
* `loading_duration_ms` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Время загрузки UDF в миллисекундах.
* `type` ([Enum8('executable' = 0, 'executable\_pool' = 1)](/docs/ru/reference/data-types/enum)) — Тип UDF: 'executable' (один процесс) или 'executable\_pool' (пул процессов).
* `command` ([String](/docs/ru/reference/data-types/string)) — Скрипт или команда, выполняемые для этой UDF.
* `format` ([String](/docs/ru/reference/data-types/string)) — Формат данных для ввода-вывода (например, 'TabSeparated', 'JSONEachRow').
* `return_type` ([String](/docs/ru/reference/data-types/string)) — Тип возвращаемого функцией значения (например, 'String', 'UInt64').
* `return_name` ([String](/docs/ru/reference/data-types/string)) — Необязательный идентификатор возвращаемого значения. Если не задан, пустой.
* `argument_types` ([Array(String)](/docs/ru/reference/data-types/array)) — Массив типов аргументов (например, \['String', 'UInt64']).
* `argument_names` ([Array(String)](/docs/ru/reference/data-types/array)) — Массив имён аргументов. Для аргументов без имени — пустые строки.
* `max_command_execution_time` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Максимальное время обработки блока данных в секундах. Только для типа 'executable\_pool'.
* `command_termination_timeout` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Число секунд до отправки SIGTERM процессу команды.
* `command_read_timeout` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Число миллисекунд для чтения из stdout команды.
* `command_write_timeout` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Число миллисекунд для записи в stdin команды.
* `pool_size` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Количество экземпляров процесса команды. Только для типа 'executable\_pool'.
* `send_chunk_header` ([UInt8](/docs/ru/reference/data-types/int-uint)) — Отправлять ли количество строк перед каждым фрагментом данных (булево значение).
* `execute_direct` ([UInt8](/docs/ru/reference/data-types/int-uint)) — Выполнять ли команду напрямую (1) или через /bin/bash (0).
* `lifetime` ([UInt64](/docs/ru/reference/data-types/int-uint)) — Интервал перезагрузки в секундах. 0 означает, что перезагрузка отключена.
* `deterministic` ([UInt8](/docs/ru/reference/data-types/int-uint)) — Возвращает ли функция один и тот же результат для одних и тех же аргументов (булево значение).

<div id="example">
  ## Пример
</div>

Просмотрите все пользовательские функции (UDF) и их статус загрузки:

```sql theme={null}
SELECT
    name,
    load_status,
    type,
    command,
    return_type,
    argument_types
FROM system.user_defined_functions
FORMAT Vertical;
```

```response theme={null}
Row 1:
──────
name:           my_sum_udf
load_status:    Success
type:           executable
command:        /var/lib/clickhouse/user_scripts/sum.py
return_type:    UInt64
argument_types: ['UInt64','UInt64']
```

Найдите пользовательские функции (UDF), завершившиеся с ошибкой:

```sql theme={null}
SELECT
    name,
    loading_error_message
FROM system.user_defined_functions
WHERE load_status = 'Failed';
```

<div id="see-also">
  ## См. также
</div>

* [Пользовательские функции](/docs/ru/reference/functions/regular-functions/udf) — Как создавать и настраивать UDF.
