Релиз СУБД Ред База Данных 3.0.10

10 февраля 2023 г.

Новая версия СУБД Ред База Данных 3.0.10 доступна для загрузки.

Улучшения:

  • Сборка для ARM64.
  • UDF-библиотеки убраны из установщика по соображениям безопасности. RS-96232.
  • Библиотека zlib обновлена до версии 1.2.13. FB-7437.
  • Статическая линковка библиотек editline и ncurses в Linux-сборках. RS-92735.
  • Возможность инициализации реплики из логической копии. RS-60027.
  • Возможность чтения множественных атрибутов из LDAP. RS-90502.
  • Увеличение максимальной длины результата функции LDAP_ATTR до 4096. RS-90502.
  • Плагин коннектора CDC. RS-69574.
  • Инсталляторы больше не используют пароль SYSDBA по умолчанию. RS-89415.
  • Если новый пароль пользователя нарушает ограничения политики, соответствующая ошибка записывается в лог. RS-70126.
  • Улучшена диагностика ошибок репликации. RS-70819.
  • Поддержка возможности даунгрейда БД с версии 3.0 до 2.6. RS-87092.
  • Время изменения файла databases.conf в Linux определяется с точностью до наносекунд, чтобы он перезагружался сразу после изменения. RS-88073.
  • Возможность запускать интерактивные сессии аудита в двоичном формате. RS-8667.
  • Логгирование изменения статуса бекапа базы данных на слияние (merge). RS-87644.
  • Если проверка конфигурации через gfix нашла ошибки, он завершается с кодом возврата "1".
  • Время изменения файла databases.conf в Windows определяется с большей точностью чтобы он перезагружался сразу после изменения. RS-86671.
  • Аудит регистрирует события неудачных подключений. RS-52749.
  • Новая встроенная функция BLOB_APPEND, позволяющая добавлять данные в существующий BLOB. RS-86068.
  • Опция конфигурации TcpLoopbackFastPath отключена по умолчанию из-за рекомендаций Microsoft. FB-7259.
  • Предупреждения об отсутствующих атрибутах LDAP логгируются только при включенном параметре конфигурации "TraceAuthentication". RS-85492.
  • Возможность проверки конфигурации с помощью gfix и при запуске сервера. RS-44527.
  • Параметр конфигурации BlobTempSpace, позволяющий сохранять временные BLOB в базе или во временной памяти. RS-65761.
  • Из временного страничного пространства сбрасываются только те страницы, которые будут освобождены. RS-75696.
  • Возможность назначения политики пользователям из LDAP. RS-75522.
  • Увеличена максимальная длина входной строки в функции REGEXP_SUBSTR. RS-73363.
  • Теперь при включенном параметре BugcheckAbort ошибка при вызове функции операционной системы приведет к созданию дампа сервера. RS-75048.
  • Поддержка операции "CREATE USER" для пользователей LDAP. RS-60479.
  • Значение по умолчанию параметра LockHashSlots увеличено до 65521. RS-72035.
  • Реализован режим "ленивых" квантификаторов для системной функции REGEXP_SUBSTR. RS-46421.

Исправления:

  • Падение сервера из-за простого SQL-запроса "select cast(rdb$db_key as integer) from rdb$database". FB-7467.
  • Проблема редактирования процедуры во время её использования. FB-7428.
  • Учёт статистики текущего подключения перед отправкой глобальной статистики пользователю. RS-95371.
  • Ошибочное удаление пользовательской точки сохранения после исправления FB-7446. RS-95318.
  • Проблемы шифрования при перечитывании или повреждении/удалении ключа шифрования. FB-7415.
  • Каталог /tmp/firebird удаляется после установки и создаётся при запуске сервиса systemd. RS-94794.
  • Считывание политики пользователя из LDAP при аутентификации по сертификату, который не является доверенным. RS-87996.
  • Попытка использования данных в удаленном пуле транзакции. FB-7446.
  • Более корректная проверка ошибки завершения запроса на FAILD / UNAUTHORIZED. RS-50891.
  • Вызов REGEXP_SUBSTR с кодировкой UNICODE_FSS приводит к падению сервера. RS-90599.
  • При аутентификации по сертификату политика пользователя не читалась из LDAP. RS-87996.
  • При записи в файл освобождать блокировку движка, чтобы иметь возможность доставлять сообщения другим потокам. RS-91329.
  • "RESET USER" устанавливает PLG$LAST_ONLINE в текущее время, чтобы разрешить подключения от простаивающих пользователей.
  • Неправильное сообщение об ошибке при изменении несуществующего пользователя. RS-91562.
  • Если на сервере используется многофакторная аутентификация, то происходит зависание после завершения бекапа. RS-92512.
  • При проверке конфигурации сервера теперь игнорируются параметры с плагинами, чтобы разрешить использование сторонних библиотек. RS-92832.
  • Флаги запуска rdbserver не обрабатываются если в конфигурации найдена ошибка. RS-86719.
  • При изменении LDAP-пользователя с включенным параметром DefaultUserManagers не добавлять его в БД безопасности. RS-91213.
  • При использовании многобайтовой кодировки в SUBSTRING возможно падение сервера. RS-92433.
  • Неправильные значения полей при сортировке с использованием подсказки оптимизатору "optimize for". RS-82213.
  • Ошибка 'no current record for fetch operation' при превышении номера транзакции границы в 2^31
  • Незакоммиченные версии записей могли стать видимыми после SWEEP. RS-92275.
  • Падение при создании запроса в условиях исчерпания доступной памяти. FB-7370.
  • Функция setEngineReleaseDelay использует неправильный тип для переменной maxLinger. FB-7366.
  • Алиасы на стороне клиента не работают в databases.conf. FB-7365.
  • Падение сервера после двойной ошибки в attachDatabase(). FB-7393.
  • Устранение большого количества сообщений об остановке сервера в firebird.log, вызванных исправлением FB-7147.
  • Доверенная роль не работает в 3.0.10. FB-7406.
  • Падение сервера при ошибке запуска. FB-7402.
  • Ошибка при предоставлении и отзыве прав на обновление поля. FB-4729.
  • Исправлены ошибки регистрации плагинов с длинными именами. FB-7418.
  • Корректное сообщение об ошибке при бекапе таблицы с очень большим количеством полей. FB-7436.
  • Мог достигаться предел использования временных блобов в одной транзакции. RS-88869.
  • Память не обезличивалась в некоторых случаях. RS-72361.
  • Неоптимальный план при JOIN нескольких таблиц с использованием функции в условии. FB-3357.
  • Неоптимальный план при использовании JOIN .. USING. FB-7118.
  • Если при смене пароля пользователя в LDAP у его записи отсутствует нужный класс, игнорировать эту ошибку и менять остальные пароли. RS-87197.
  • Падение сервера при аутентификации когда создается пустой список плагинов.
  • Многопоточная активация индексов приводит к падению сервера. FB-7314.
  • Слишком ранняя остановка возможно работающих (не зависших) потоков.
  • Гонки и падения при параллельной сборке мусора. RS-86799.
  • Не пытаться выводить код ошибки из errno если при недействительном файловом дескрипторе не было попыток выполнять с ним операции ввода-вывода . RS-84347.
  • Падение сервера при параллельном удалении таблицы. RS-84097.
  • Попытка исправить зависания на блокировках транзакций после некоторых исключений или BUGCHECK. RS-84347.
  • При BUGCHECK сообщение об ошибке пишется в firebird.log до выполнения любых действий, которые могут привести к падению сервера. RS-84347.
  • При попытке ввода-вывода с недействительным файловым дескриптором печатать в ошибке имя функции для улучшения диагностики. RS-84347.
  • Неправильное сообщение об ошибке при криптографических исключениях. RS-87299.
  • Gfix зависает при отключении при активном аудите транзакций. FB-7299.
  • Фиктивные (всегда истинные) условия могут изменить порядок соединения. FB-6941.
  • При остановке сервера сообщение об этом может быть послано на неверный дескриптор. FB-7296.
  • Ошибка 'Error reading data from the connection' при закрытии rdbtracemgr через Ctrl-C. FB-7295.
  • Периодические падения при использовании Execute Statement on External. FB-7271.
  • Ошибка поиска групп пользователя в LDAP, если у него нет первичной группы. RS-84819.
  • Некорректное освобождение эксклюзивной блокировки на таблицу в процессе удаления этой таблицы. FB-7252.
  • Проверка на ошибку при открытии файла "/dev/urandom", которая возможна при достижении лимита открытых файлов.
  • Некорректная работа STARTING на индексированных полях VARCHAR. FB-7237.
  • Извлечение метаданных через ISQL может вызвать падение сервера из-за необработанного исключения. RS-84571.
  • Неправильное выделение памяти для строки из одного символа. RS-84455.
  • При отзыве несуществующей опции выводится предупреждение. RS-68485.
  • Неправильная работа gbak от версии 3.0 для создания бекапа баз от версии 2.6. RS-68810.
  • Теперь триггеры ON DISCONNECT выполняются в следующих случаях: 1. При остановке базы (gfix -shut full -force 0). 2. При удалении подключения из MON$ATTACHMENTS другим подключением.
  • Запрос к MON$ таблицам при запущенном потоке шифрования/дешифрования не возвращал данные. FB-6947.
  • Назначение роли по умолчанию для пользователя PUBLIC. FB-7178.
  • Изменение атрибутов, связанных с политикой в LDAP теперь не зависит от базы данных безопасности.
  • Неправильное значение "User name in DPB" в поле MON$AUTH_METHOD. RS-74062.
  • Некорректная обработка единичного символа "-" в регулярных выражениях. RS-75391.
  • Невозможность восстановления инкрементного бекапа через stdin. RS-71900.
  • Различные ошибки в движке регулярных выражений.
  • Не считать "^" спецсимволом, если он используется в функции REGEXP_SUBSTR без режима "M". RS-70492.
  • Некорректная работа режима "X" в функции REGEXP_SUBSTR. RS-71180.
  • Неправильная работа REGEXP_SUBSTR при возврате значения группы. RS-70267.
  • В движок регулярных выражений добавлена функция бектрекинга, что делает разбор выражений с переменными квантификаторами стабильнее и поддерживает более сложные конструкции. RS-69360.

FBJava обновлен до версии 1.2.2:

  • Сборка для ARM64.
  • Добавлена библиотека lucene-backward-codecs для поддержки индексов старых версий lucene. RS-92476.
  • Исправлено копирование скриптов FTS из FBJava. RS-82772.
  • Добавлена возможность параллельной индексации. Если переиндексация запущена, клиенту возвращается ошибка при повторном вызове переиндексации, также другим клиентам будет показана ошибка. RS-82772.
  • Исправлен вывод ошибки, если кодировка текста отличалась от UTF-8. RS-82772.
  • Исправлен вывод ошибки, если переиндексация прекратила работу из-за нехватки места во временном каталоге. RS-82772.
  • Добавлено экранирование XML-элементов для корректного отображения в HTML. RS-82772.
  • Увеличен максимальный размер документа для анализа совпадений. RS-82772.
  • Исправлено закрытие BLOB, что приводило к утечке памяти. RS-84807.
  • Добавлена возможность отключения OCR. Кроме того, можно указывать языки для распознавания. По умолчанию включены русский и английский языки. RS-82772.

Более подробно со списком изменений можно ознакомиться на странице загрузки.