---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.6
alternate:
  - https://ydb.tech/docs/en/reference/ydb-sdk/grpc-status-codes.md?version=main
  - https://ydb.tech/docs/ru/reference/ydb-sdk/grpc-status-codes.md?version=main
sourcePath: ru/core/reference/ydb-sdk/grpc-status-codes.md
---
> **Documentation Index:** Fetch the complete configuration index at https://ydb.tech/docs/ru/llms.txt

# Статусы завершения gRPC

YDB предоставляет gRPC API, с помощью которого вы можете управлять ресурсами и данными БД. В следующей таблице описаны статусы завершения запросов gRPC:

#|
||
Код
|
Статус
|
Возможность повтора
|
Стратегия задержек
|
Пересоздать сессию
||

||
[0](#ok)
|
[OK](#ok)
|
–
|
–
|
–
||

||
[1](#cancelled)
|
[CANCELLED](#cancelled)
|
[условно повторяемый](*condretryable)
|
[короткая](*fastbackoff)
|
да
||

||
[2](#unknown)
|
[UNKNOWN](#unknown)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[3](#invalid-argument)
|
[INVALID_ARGUMENT](#invalid-argument)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[4](#deadline-exceeded)
|
[DEADLINE_EXCEEDED](#deadline-exceeded)
|
[условно повторяемый](*condretryable)
|
[короткая](*fastbackoff)
|
да
||

||
[5](#not-found)
|
[NOT_FOUND](#not-found)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[6](#already-exists)
|
[ALREADY_EXISTS](#already-exists)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[7](#permission-denied)
|
[PERMISSION_DENIED](#permission-denied)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[8](#resource-exhausted)
|
[RESOURCE_EXHAUSTED](#resource-exhausted)
|
[повторяемый](*retryable)
|
[большая](*slowbackoff)
|
нет
||

||
[9](#failed-precondition)
|
[FAILED_PRECONDITION](#failed-precondition)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[10](#aborted)
|
[ABORTED](#aborted)
|
[повторяемый](*retryable)
|
[моментально](*instant)
|
да
||

||
[11](#out-of-range)
|
[OUT_OF_RANGE](#out-of-range)
|
[неповторяемый](*nonretryable)
|
–
|
нет
||

||
[12](#unimplemented)
|
[UNIMPLEMENTED](#unimplemented)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[13](#internal)
|
[INTERNAL](#internal)
|
[условно повторяемый](*condretryable)
|
[короткая](*fastbackoff)
|
да
||

||
[14](#unavailable)
|
[UNAVAILABLE](#unavailable)
|
[условно повторяемый](*condretryable)
|
[короткая](*fastbackoff)
|
да
||

||
[15](#data-loss)
|
[DATA_LOSS](#data-loss)
|
[неповторяемый](*nonretryable)
|
–
|
да
||

||
[16](#unauthenticated)
|
[UNAUTHENTICATED](#unauthenticated)
|
[неповторяемый](*nonretryable)
|
–
|
да
||
|#

## 0: OK {#ok}

Не является ошибкой. Возвращается при успешном выполнении.

<div class="tags_list">

## 1: CANCELLED {#cancelled}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "use_cases-tag tags-shape tags-color-text"> [Условно повторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) | Короткая задержка </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Операция была отменена, как правило, вызывающей стороной.

<div class="tags_list">

## 2: UNKNOWN {#unknown}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Неизвестная ошибка. Например, эта ошибка может возникнуть, когда значение `Status`, полученное из другого адресного пространства, относится к неизвестному пространству ошибок. Также эта ошибка может быть преобразована из ошибок, вызванных API, которые не предоставляют достаточно информации об ошибке.

<div class="tags_list">

## 3: INVALID_ARGUMENT {#invalid-argument}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Клиент указал недопустимый аргумент. В отличие от `FAILED_PRECONDITION`, `INVALID_ARGUMENT` указывает на аргументы, которые являются проблемными независимо от состояния системы (например, неправильное имя файла).

<div class="tags_list">

## 4: DEADLINE_EXCEEDED {#deadline-exceeded}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "use_cases-tag tags-shape tags-color-text"> [Условно повторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) | Короткая задержка </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Запрос не был обработан за заданный клиентский таймаут или произошла иная сетевая проблема.

Проверьте корректность заданного таймаута, наличие сетевого доступа, правильность endpoint'а и других сетевых настроек. Также рекомендуется снизить интенсивность потока запросов и оптимизировать их.

<div class="tags_list">

## 5: NOT_FOUND {#not-found}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Запрашиваемый схемный объект (например, таблица или папка) не найден.

<div class="tags_list">

## 6: ALREADY_EXISTS {#already-exists}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Схемный объект, который пытается создать клиент (например, таблица или папка), уже существует.

<div class="tags_list">

## 7: PERMISSION_DENIED {#permission-denied}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

У вызывающего нет разрешения на выполнение указанной операции.

<div class="tags_list">

## 8: RESOURCE_EXHAUSTED {#resource-exhausted}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "practice-tag tags-shape tags-color-text"> [Повторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) | Большая задержка </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Недостаточно свободных ресурсов для обслуживания запроса.

Снизьте интенсивность потока запросов, проверьте клиентскую балансировку.

<div class="tags_list">

## 9: FAILED_PRECONDITION {#failed-precondition}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Запрос не может быть выполнен в текущем состоянии (например, вставка в таблицу с существующим ключом).

Исправьте состояние или запрос и повторите попытку.

<div class="tags_list">

## 10: ABORTED {#aborted}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "practice-tag tags-shape tags-color-text"> [Повторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) | Моментально </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Операция не выполнена (например, из-за инвалидации локов, `TRANSACTION_LOCKS_INVALIDATE` в подробных сообщениях об ошибке).

Повторите всю транзакцию.

<div class="tags_list">

## 11: OUT_OF_RANGE {#out-of-range}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Была предпринята попытка выполнить операцию за пределами допустимого диапазона. В отличие от `INVALID_ARGUMENT`, эта ошибка указывает на проблему, которая может быть исправлена при изменении состояния системы.

<div class="tags_list">

## 12: UNIMPLEMENTED {#unimplemented}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Операция не реализована или не поддерживается (не активирована) в YDB.

<div class="tags_list">

## 13: INTERNAL {#internal}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "use_cases-tag tags-shape tags-color-text"> [Условно повторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) | Короткая задержка </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Внутренние ошибки. Это означает, что некоторые инварианты, ожидаемые базовой системой, были нарушены. Данный код ошибки предназначен для серьёзных ошибок.

<div class="tags_list">

## 14: UNAVAILABLE {#unavailable}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "use_cases-tag tags-shape tags-color-text"> [Условно повторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) | Короткая задержка </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Сервис в данный момент недоступен. Скорее всего, это временное состояние, которое можно обойти, повторив запрос после некоторой задержки. Обратите внимание, что повторение неидемпотентных операций не всегда безопасно.

<div class="tags_list">

## 15: DATA_LOSS {#data-loss}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Неустранимая потеря или повреждение данных.

<div class="tags_list">

## 16: UNAUTHENTICATED {#unauthenticated}

<!-- source: ru/reference/ydb-sdk/_includes/tags.md -->
 <span class = "overview-tag tags-shape tags-color-text"> [Неповторяемый](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main) </span>
<!-- endsource: ru/reference/ydb-sdk/_includes/tags.md -->

</div>

Запрос не содержит действительных учётных данных для аутентификации.

Повторите запрос с актуальными данными для аутентификации.

[*instant]: **Немедленный повтор** – одна из стратегий задержек, применяемых в SDK при повторе запросов, завершившихся ошибкой.<br/>
Повторные попытки при такой стратегии совершаются немедленно.<br/>
См. подробнее в статье [Обработка временных сбоев (retryable errors)](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main#handling-retryable-errors).

[*fastbackoff]: **Короткая экспоненциальная задержка** – одна из стратегий задержек, применяемых в SDK при повторе запросов, завершившихся ошибкой.<br/>
Первоначальный интервал при такой задержке составляет несколько **миллисекунд**. Для каждой последующей попытки интервал увеличивается экспоненциально.<br/>
См. подробнее в статье [Обработка временных сбоев (retryable errors)](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main#handling-retryable-errors).

[*slowbackoff]: **Большая экспоненциальная задержка** – одна из стратегий задержек, применяемых в SDK при повторе запросов, завершившихся ошибкой.<br/>
Первоначальный интервал при такой задержке составляет несколько **секунд**. Для каждой последующей попытки интервал увеличивается по экспоненциальному закону.<br/>
См. подробнее в статье [Обработка временных сбоев (retryable errors)](https://ydb.tech/docs/ru/reference/ydb-sdk/error_handling.md?version=main#handling-retryable-errors).

[*retryable]: **Временные сбои** (retryable). Включают кратковременную потерю сетевого соединения, временную недоступность или перегруженность одной из подсистем YDB, а также неспособность YDB ответить на запрос в течение установленного времени ожидания. В случае возникновения таких ошибок повторный запрос через некоторый промежуток времени с высокой вероятностью будет выполнен успешно.

[*nonretryable]: **Ошибки, которые не могут быть исправлены с помощью повтора** (non-retryable). Включают некорректно сформированные запросы, внутренние ошибки YDB, а также запросы, не соответствующие схеме данных. В такой ситуации нет необходимости повторять запрос, требуется дополнительное вмешательство разработчика.

[*condretryable]: **Ошибки, которые, предположительно, могут быть исправлены с помощью повтора после реакции клиентского приложения** (conditionally retryable). Возникают при идемпотентных операциях, таких как отсутствие ответа в течение отведённого времени или запрос аутентификации.