Записи до 18.07.2023

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

  • Улучшена производительность драйвера QEMU путём интеграции в него io_uring (у меня на локалхосте iops-ы выросли примерно с 50000 до 90000)
  • Поправлено подвисание qemu-img, начавшее иногда возникать после фикса iothread в 0.9.3
  • Пакеты QEMU с исправлениями пересобраны под все версии Debian и RHEL и под Proxmox 8.0, 7.4, 7.3 и 6.4
  • Пара мелких исправлений в клиенте (vitastor-cli ls падал на неизвестных пулах, vitastor-cli status мог показывать больше etcd, чем задано в конфиге)
  • Монитор теперь удаляет статистику удалённых пулов из /pool/stats/
  • Изменены настройки etcd по умолчанию в make-etcd для снижения потребления памяти
  • OSD научились не падать, когда etcd при перезапуске обрубал подписки через “revisions were compacted”
  • И пара мелких исправлений в дисковом слое (одно подвисание и одно падение), воспроизводившиеся на HDD с мелким журналом и большими (512 кб, 900 кб) случайными записями
  • В документацию добавлены заметки про HDD. Судя по данным тестов, Vitastor теперь официально разрешено юзать с HDD-only, особенно если HDD нормальные (HGST, Toshiba MG, EXOS)

18.07.2023 Читать далее →

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

  • Добавлен патч для libvirt 9.0.
  • Добавлена поддержка Proxmox VE 8.0.
  • Исправлена давняя несовместимость QEMU-драйвера с отдельным iothread (пакеты QEMU будут обновлены постепенно).
  • Разрешено удаление образов в грязном кластере (при остановленных OSD) - пока что ценой возможного появления мусора после поднятия лежавших OSD и необходимости подчищать этот мусор через vitastor-cli rm-data (мусор будет видно в выводе vitastor-cli ls).
  • Исправлена кучка багов слияния снапшотов, ну и добавлены тесты, чтобы оные баги к нам уже не вернулись.
  • Исправлено одно иногда воспроизводившееся use-after-free… точнее, sendmsg()-after-free :), приводившее к потенциально некорректным чтениям битмапов выделенных блоков. В общем-то, это тоже влияло на слияние снапшотов.
  • Удалён путь /usr/local/bin из make-etcd.
  • Исправления документации.

01.07.2023 Читать далее →

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

  • Исправлен не всегда работающий автозапуск скрабов и добавлен сбор и вывод статистики I/O скраба (сколько сейчас МБ/с скрабится).
  • Улучшена агрегация статистики, до этого vitastor-cli status мог один раз писать 10 МБ/с, а потом 800 МБ/с, хотя среднее было, скажем, 400 МБ/с. То есть, агрегация стала более равномерной. Суть исправления - считать производную, а потом суммировать, а не суммировать, а потом считать производную.
  • Исправлен один ОЧЕНЬ ВАЖНЫЙ баг - редко воспроизводящийся, зато могущий приводить к повреждению журнала, при этом, по-видимому, наличествовавший в коде с начала начал. Обязательно обновитесь, и если считаете, что наступили на этот баг - воспользуйтесь scrub-ом для поиска повреждённых блоков.
  • Теперь EC PG не активируются без как минимум <число частей данных> живых OSD в каждом из предыдущих наборов OSD (что предотвращает временно происходящие ошибки EIO с EC при перезапусках PG).
  • Исправлена ошибка assert(!scrub_list_op) при перезапуске OSD и наличии скрабов в очереди.
  • Добавлены пакеты для Debian 12 Bookworm.

18.06.2023 Читать далее →

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

  • Исправлены ошибки “Client XX command out of sync”, иногда происходившие при переподключениях OSD.
  • Исправлена ошибка, при которой чтения EC объектов, параллельные с записями в тот же объект, могли валиться с ошибкой ERANGE.
  • Немного уменьшен объём записей метаданных при сбросе журнала.
  • Исправлено отмонтирование NBD-томов, когда Proxmox принудительно использует map_volume (с SWTPM и, возможно, в других похожих случаях).

10.06.2023 Читать далее →

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

Новые функции

  • Вот наконец и СКРАБЫ!)) по умолчанию пока отключены, задокументированы в параметрах: auto_scrub
  • Добавлена документация по возможности онлайн-обновления параметров.

21.05.2023 Читать далее →

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

  • Тесты стабилизированы и включены в CI на базе Gitea CI для автоматического запуска
  • Добавлена отсутствующая реализация восстановления битмапов в EC-пулах из деградированного состояния в ISA-L версиях
  • Исправлен сломанный экспорт снимков в EC-пулах
  • Исправлены баги, воспроизводящиеся только под нагрузкой:
    • Исправлено применение некорректной истории PG монитором при ретраях
    • Исправлено некорректное изменение числа PG монитором, когда last_clean_pgs содержал меньше PG, чем новое число
    • Запросы записи теперь снова ожидают освобождения места, но теперь делают это корректно (прошлый способ был отключён в 0.8.2)
    • Исправлено редкое падение клиентской библиотеки (при отключении соединения во время обработки потока от клиента)
    • Добавлена корректная обработка ошибок соединений с etcd в мониторе - монитор мог упасть вместо соединения с другим etcd
    • Исправлена редкая неспособность OSD отправить состояния PG в etcd после того, как одна из PG переключалась на другой OSD
  • Исправлен код ошибки для чтений из неполных объектов в EC (теперь это EIO) и добавлен повтор этой ошибки в клиентскую библиотеку
  • Внесены другие мелкие изменения для тестов: таймауты, приоритеты для etcd, условия ожидания, проверки устройств NBD и т.п.

14.05.2023 Читать далее →

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

  • Исправлены rm/rm-data, сломанные в 0.8.6 (отсутствие инициализации messenger-а)
  • Обработка операций чтения подготовлена к реализации скрабов - теперь вторичным чтениям разрешено возвращать ошибки
  • Исправлен бесконечный пиринг PG в OSD при большом числе PG (воспроизведено в тесте test_add_osd)
  • Исправлена другая вариация зависания сброса журнала на ожидании fsync (воспроизведено в тесте test_write)
  • Исправлены интеграционные тесты (скоро будут добавлены в Gitea CI)
  • Добавлены патчи для QEMU 6.2-8.0
  • Исправлена совместимость драйвера QEMU с QEMU 8.0
  • Добавлены пакеты для клонов RHEL 9 (например, AlmaLinux 9)

28.04.2023 Читать далее →

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

Релиз включает одну новую функцию:

  • Онлайн-обновление некоторых настроек.

А также важные исправлений для EC с отключённым immediate_commit. После этих исправлений, тест с убийствами OSD “test_heal” проходит корректно с EC.

11.04.2023 Читать далее →

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

  • Важно: исправлено потенциально некорректное обновление чанка чётности EC в конфигурациях EC n+k при k >= 2 и при отсутствии первого чанка чётности.
  • Исправлена некорректная статистика свободного места EC в выводе vitastor-cli df.
  • Ускорен запуск vitastor-cli в кластерах с RDMA.
  • Удалено неиспользуемое состояние PG “peered” (ранее использовалось для обновления эпохи PG).
  • Удалена лишняя опция sfdisk --dump (достаточно просто --json).
  • Разрешена финальная запятая в выводе sfdisk (исправляет совместимость с sfdisk 2.36).
  • Немного улучшен код RDMA отправки/приёма.
  • Уменьшено потребление памяти RDMA путём изменения настроек по умолчанию (rdma_max_recv/send = 16/8).
  • CSI-драйвер переведён на использование vitastor-cli вместо прямой работы с etcd.

28.02.2023 Читать далее →

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

  • Исправлена возможная ошибка типа “double free” в клиентской библиотеке при перезапуске OSD.
  • Исправлено возможное зависание записи при обновлении истории PG и изменении только эпохи.
  • Исправлено некорректное имя сервиса systemd “local.target” в скрипте make-etcd.
  • В драйвер Proxmox добавлена опция “content”, чтобы разрешить его использование с контейнерами.
  • tcmalloc убран из сборки клиентской библиотеки, что исправляет ошибки “attempt to free invalid pointer” при одновременном использовании драйверов QEMU Vitastor и Ceph.

25.01.2023 Читать далее →

← Более новые записи Более старые записи →