Skip to content

Release notes for 0.20

Create Loader

Больше нельзя зарегистрировать загрузчик cегмента с типом segment, доступно только keys. Все загрузчики сегментов становятся загрузчиками ключей (сегментами без даты), поле с датой в них становится переменной датасета.

Transform %fat_compose

В dates больше нельзя указать список из нескольких дат (длина списка должна быть = 1).

System Endpoints

Изменена работа и формат ответа эндпоинта GET /health/readiness

Теперь в ответе возвращается информация о соответствии версий (приложения, ядра и движка) между backend'ом и всеми Celery-воркерами. В случае если нет воркеров с совпадающими версиями - возвращается ошибка ServiceUnavailableException.

Celery Executor

  1. В Celery больше не используется result backend
    • GET /admin/tasks/{task_id} - эндпоинт теперь возвращает только значение статуса в формате PlainText и рассчитывает его на основе информации, которую возвращают воркеры Celery. Если задача выполняется, то статус = STARTED, если зарезервирована, то PENDING, иначе UNKNOWN
    • POST /jobs/{job_rk}/stop - эндпоинт теперь останавливает джоб в синхронном режиме через terminate()
  2. В чарте приложения брокер сообщений по-умолчанию изменен с Redis на RabbitMQ

Изменение формата ответа эндпоинтов

Следующие эндпоинты теперь возвращают PlainText вместо строки в json

  • POST /jobs/{job_rk}/code
  • POST /admin/ref_init
  • POST /admin/sys_init
  • POST /admin/migrate_metastore
  • POST /admin/reset_metastore

Изменение работы с db_name

Параметр db_name перестает храниться в meta.v100_source и становится расчетным. В связи с этим:

  1. В эндпоинтах, где db_name передавался в схеме запроса, параметр становится readonly. Это означает, что включение db_name в тело запроса не приведет к ошибке, но не окажет никакого влияния.
  2. В эндпоинтах, где db_name возвращается в теле ответа, параметр теперь вычисляется на основе диалекта, указанного в параметре url.
  3. Из эндпоинта GET /sources убран фильтр по db_name.

Эндпоинты с изменениями в теле запроса и ответа:

  • POST /sources
  • PATCH /sources/{source_rk}

Эндпоинты с изменениями только в теле ответа:

  • GET /sources/{source_rk}
  • GET /sources

Обновление формата URL для /sources

Для эндпоинтов группы /sources, где передается URL в теле запроса, изменен формат использования переменных окружения: вместо $VAR теперь нужно использовать ${VAR}.

К примеру, если необходимо указать, что URL для source хранится в переменной окружения DB_URL, то в запросе POST /sources передается url = ${DB_URL}.

Кроме того, теперь можно использовать несколько переменных окружения в параметре url. Например, конструкция ${DB_DIALECT}://${DB_URL} будет успешно преобразована в URL, при условии наличия необходимых переменных окружения в системе.

Затронутые эндпоинты:

  • POST /sources
  • PATCH /sources/{source_rk}

Из эндпоинтов удаления V2 убрана поддержка параметра async_flg

В следующих эндпоинтах удален параметр async_flg:

  • DELETE /dataset
  • DELETE /loader
  • DELETE /entity_link

Теперь удаление всегда происходит асинхронно. Передача параметра async_flg в запросе не приведет к ошибке, но не окажет никакого влияния.

Изменение работы эндпоинта предпросмотра датасетов

GET /dataset/{dataset_rk}/preview теперь работает только с теми датасетами, схемы которых зарегистрированы в списке v100_source.schemas для source_rk = -1.

Удаление эндпоинта Reset Datastore

Эндпоинт POST /v100/admin/reset_datastore был удален.

ENVIRONMENT VARIABLES

NEW

  • APP__STAT_DISTINCT_LIMIT - максимальное количество возвращаемых значений в статистике DISTINCT
  • APP__LOCK_TIMEOUT - максимальное время блокировки (в секундах)
  • S3__HTTP_TIMEOUT - максимальное время ожидания ответа от S3 в секундах

DEPRECATED

  • EXECUTOR__BACKEND_URL
  • EXECUTOR__ABORT_PROBE_DELAY