Выпущена версия Vitastor 0.6.12

23.01.2022

Стабилизация соединений с etcd, поддержка clang и заодно Эльбрусов.

  • Исправлена сборка компиляторами CLang и LCC от Эльбруса, так что теперь Vitastor совместим с процессорами Эльбрус :)
  • Исправлена ошибка, при которой OSD не соединялись с вторичными OSD и некорректно считали PG неполными (incomplete)
  • Добавлено ограничение глубины очереди удалений так же, как и для мелких записей. Исправляет падения OSD с ошибкой “Assertion failed: sqe != NULL” во время удаления образов.
  • Исправлен редкий баг журналирования (от https://github.com/mirrorll)
  • Исправлен сброс модифицированных объектов в журнал, из-за которого OSD иногда зависали после переключения в EC-кластерах (баг внесён в 0.6.7)
  • Исправлено несколько проблем, ломавших нормальную обработку переключения при отказе etcd:
    • OSD могли случайно падать из-за слишком строгой обработки ошибок
    • Новые клиенты, OSD и vitastor-cli могли не запускаться из-за отсутствия повторных попыток соединения с etcd
    • Мониторы могли перестать получать обновления состояния, т.к. не проверяли активность websocket-соединений
  • Исправлена неспособность монитора перегенерировать PG после снижения числа реплик пула (pg_size)
  • Добавлен ошибочный код выхода в vitastor-nbd при попытке подключить несуществующий образ
  • Добавлено использование HTTP keep-alive для соединений с etcd
  • Добавлены настройки таймаутов и числа попыток повтора запросов к etcd
  • Добавлены настройки таймаута NBD и максимального числа NBD-устройств и разделов, и значение по умолчанию установлено в 64 устройства по 3 раздела каждое

Ссылки