LINUX.ORG.RU

ReOpenLDAP 1.1.6

 , , , ,


1

2

12 августа вышла новая версия ReOpenLDAP — форка общеизвестного OpenLDAP, с устранением массы ошибок и ряда доработок для стабильной работы репликации.

Эта версия, в некотором смысле, является юбилейной — 3 года с момента инициации проекта (публичный форк появился чуть позже). Всё это время ReOpenLDAP работает 24x7 в инфраструктуре ПАО МегаФон, обеспечивая высоконагруженную обработку запросов в multi-master кластере с full-mesh репликацией.

Версия 1.1.6 аккумулирует работу 8 месяцев этого года и включает:

  • более сотни коммитов, в том числе более 50 исправлений ошибок;
  • поддержку musl-libc, а также ряд доработок для совместимости и упрощения сборки;
  • Continuous Integration на инфраструктуре Travis-CI и Circle-CI.

С этим релизом ветка 1.1 получает статус архивно-стабильной. В ней будут исправляться ошибки, но какая-либо разработка будет прекращена.

В свою очередь, работы в ветке 1.2 начнутся с переработки API в сопутствующих ldap-библиотеках с утратой совместимости с предыдущим версиями. Это позволит, с одной стороны, получить более прозрачное и удобное API, которое будет провоцировать меньше ошибок. С другой стороны, переработка API необходима для устранения неоднозначностей и адекватной работы статических анализаторов кода (Coverity, PVS-Studio и др.).

Вторым изменением в ветке 1.2 будет переход на актуальную версию движка хранения libmdbx. Которая, среди прочего, поддерживает управление геометрией и бесплатную авто-компактификацию с освобождением места на диске. С точки зрения пользователя, это позволит автоматически и безболезненно как увеличивать, так и уменьшать размер БД, в том числе без остановки сервера или деградации услуг.

К сожалению, новые возможности не даются бесплатно. Для возможности их реализации в libmdbx был существенно переработан (и ещё не зафиксирован) внутренний формат БД, с потерей совместимости с предыдущими версиями.

Пользуюсь случаем, отвечу на частый вопрос «Почему нет пакетов?»:

  • ReOpenLDAP ориентирован на достаточно специализированные сценарии применения, для которых не представляется возможным создать универсальную конфигурацию и собрать соответствующий пакет. Во всех известных (авторам) случаях используются кастомизированные конфигурации (опции configure, включая возможность подключения модулей и оверлеев), в частности используются монолитные сборки с LTO.
  • После анализа кода посредством Coverity (постепенно) стало очевидно, что требуется существенный рефакторинг API с нарушением совместимости. Далее, планируемые (и большей частью уже реализованные) доработки libmdbx также приведут к утрате совместимости по формату БД. Всё это вместе давало повод не формировать пакеты, так как последующие обновления нарушили бы совместимость и только огорчили пользователей.
  • Авторы не владеют информацией (не имеют полноценного видения) о том, в какой именно конфигурации должен быть собран ReOpenLDAP для пакетирования. Поэтому мы (прежде всего) ждем встречной активности от тех, кто уже использует проект или планирует это сделать (состав компонентов и библиотек принципиально не изменится, поэтому всячески приветствуются pull-request-ы с пакетированием).

>>> Релиз на github



Проверено: Aceler ()
Последнее исправление: Psych218 (всего исправлений: 8)
Ответ на: комментарий от ly

При работе с исходниками OpenLDAP год считается за 10, примерно так )

сидит такой ошалевший мужик, и вдруг внезапно спрашивает *а какой сейчас год?*

и тут из толпы таких же ошалевших мужиков вдруг голос *юбилейный*

buratino ★★★★★
()
Ответ на: комментарий от buratino

отмечали юбилей
много наших полегло

полегло в корпоративе
полегло в моей квартире
на асфальте, за мостом
где-то там за блок-постом
тихо спит Серёга, Настя
позабыв про все несчастья
в луже дрыхнет Бегельман
что совал вчера в карман
незатейливу бумажку
как просил о ней Степан
и Степан лежал в лужайке
возле грязной тарантайки
так прошёл наш славный вечер
так прошёл наш ю б и л е й :D

Dron ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.