Перейти к содержимому
Последнее обновление

Операция TSO

SinceVersion dev

Описание​

Возвращает снимок состояния TSO без выделения метки времени и увеличения логического счётчика. Требуется аутентификация с действительными учётными данными пользователя Doris. По умолчанию FE, не являющийся ведущим, перенаправляет запрос на Master FE; local=true возвращает локальное состояние FE, принявшего запрос. Предварительные требования см. в разделе TSO.

Запрос​

GET /api/tso

Параметры​

ПараметрТипОбязателенПо умолчаниюОписание
localbooleanНетfalseПри значении true пропускает перенаправление на ведущий узел и запрашивает локальное состояние FE, принявшего запрос.

Параметры пути и тело запроса отсутствуют.

Пример​

Использование HTTP-порта по умолчанию с запросом пароля:

curl --user root http://127.0.0.1:8030/api/tso

Пример ответа (метки времени зависят от работающего кластера):

{
"code": 0,
"msg": "success",
"data": {
"window_end_physical_time": 1625097601000,
"current_tso": 426009585254400123,
"current_tso_physical_time": 1625097600000,
"current_tso_logical_counter": 123
}
}

Поля ответа​

ПолеТипОписание
window_end_physical_timelongЗарезервированная граница окна выделения меток времени в миллисекундах Unix.
current_tsolongТекущий составной 64-битный курсор выделения меток времени.
current_tso_physical_timelongФизический компонент current_tso в миллисекундах.
current_tso_logical_counterlongКомпонент логического счётчика current_tso.

Ошибки и особенности​

Ошибка аутентификации, неготовность FE или ошибка перенаправления могут помешать успешному выполнению запроса. Неинициализированная локальная служба может возвращать нулевые значения; снимок состояния не гарантирует успешного выделения меток времени в дальнейшем. Только активный ведущий узел выделяет TSO, но любой готовый FE может принимать запросы состояния. Граница окна обычно опережает текущий физический компонент, поскольку резервирует окно для будущего выделения меток времени.