Операция TSO
Описание
Возвращает снимок состояния TSO без выделения метки времени и увеличения логического счётчика. Требуется аутентификация с действительными учётными данными пользователя Doris. По умолчанию FE, не являющийся ведущим, перенаправляет запрос на Master FE; local=true возвращает локальное состояние FE, принявшего запрос. Предварительные требования см. в разделе TSO.
Запрос
GET /api/tso
Параметры
| Параметр | Тип | Обязателен | По умолчанию | Описание |
|---|---|---|---|---|
local | boolean | Нет | 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_time | long | Зарезервированная граница окна выделения меток времени в миллисекундах Unix. |
current_tso | long | Текущий составной 64-битный курсор выделения меток времени. |
current_tso_physical_time | long | Физический компонент current_tso в миллисекундах. |
current_tso_logical_counter | long | Компонент логического счётчика current_tso. |
Ошибки и особенности
Ошибка аутентификации, неготовность FE или ошибка перенаправления могут помешать успешному выполнению запроса. Неинициализированная локальная служба может возвращать нулевые значения; снимок состояния не гарантирует успешного выделения меток времени в дальнейшем. Только активный ведущий узел выделяет TSO, но любой готовый FE может принимать запросы состояния. Граница окна обычно опережает текущий физический компонент, поскольку резервирует окно для будущего выделения меток времени.