История выпусков
Эта страница кратко описывает пользовательские выпуски. Источниками release
identity являются Git tags и CHANGELOG.md; подробный контракт находится в
тематических главах.
1.2.25 - 2026-09-14
Заголовок раздела «1.2.25 - 2026-09-14»Руководство 1.2.25 соответствует выпущенному снимку исходников 1.2.25 и wire protocol 18. Согласованные crates workspace и бинарники сообщают Cargo package version 1.2.25. Связывайте бинарник с точной ревизией исходников и lockfile по полной build identity.
Этот технический выпуск сериализует автоматическое освобождение неизменяемых компонентов с владением physical restore и compaction. Поздний цикл очистки больше не может создать quarantine во время замены физического корня базы. Регрессионные проверки отмены, конкурентного изменения схемы и file-backed checkpoint получили детерминированные и ограниченные контракты выполнения.
SQL, wire protocol, storage format, конфигурация и публичные API не изменились относительно 1.2.21.
1.2.21 - 2026-09-14
Заголовок раздела «1.2.21 - 2026-09-14»Руководство 1.2.21 соответствует выпущенному снимку исходников 1.2.21 и wire protocol 18. Согласованные crates workspace и бинарники сообщают Cargo package version 1.2.21. Связывайте бинарник с точной ревизией исходников и lockfile по полной build identity.
Этот технический выпуск усиливает чувствительные к таймингам CI-проверки отмены TCP-запроса при разрыве соединения и финализации долговечного Job scheduler. По сравнению с 1.2.19 не изменились runtime-поведение, SQL, wire protocol, storage format, конфигурация и публичные API. Опубликованные crates получили отдельные тематические keywords для движка, хранилища, клиента, ORM, application SDK, procedural runtime и пакетов расширений.
1.2.19 - 2026-09-14
Заголовок раздела «1.2.19 - 2026-09-14»Руководство 1.2.19 соответствует выпущенному снимку исходников 1.2.19 и wire protocol 18. Согласованные crates workspace и бинарники сообщают Cargo package version 1.2.19. Связывайте бинарник с точной ревизией исходников и lockfile по полной build identity.
Безопасность сервера и управление доступом
Заголовок раздела «Безопасность сервера и управление доступом»Штатный сервер аутентифицирует долговечные субъекты базы, проверяет Argon2id
verifier пароля и право базы CONNECT до допуска session. Вместо plaintext TCP
можно включить прямой TLS с проверкой CA и имени сервера, строгими правами
private key и атомарной перезагрузкой сертификатов для новых подключений. Вход
root без пароля ограничен plaintext loopback и предназначен для восстановления,
если verifier root не настроен. Новая утилита radixdb-password создаёт
проверяемый Argon2id PHC verifier; после его настройки исходный пароль обязателен
для root на plaintext или TLS endpoints, а беспарольный вход отключён везде.
Субъекты и роли поддерживают enable, disable, rename и удаление с учётом
зависимостей. Права объектов и столбцов поддерживают WITH GRANT OPTION и
REVOKE GRANT OPTION FOR; делегирование роли хранит grantor, а schema USAGE
отделено от schema CREATE. При подключении и каждом запуске trigger проверяются
права schema и вызываемой функции.
Серверное программирование
Заголовок раздела «Серверное программирование»Functions, Procedures, Triggers и Jobs получили явные команды alter и drop.
RadixDB PL предоставляет typed context текущего и effective principal,
транзакции, запроса, времени оператора и Job. SQL_IDENTIFIER(TEXT) безопасно
формирует identifier для dynamic SQL, а :OLD.column и :NEW.column связывают
trigger records в static SQL.
Штатный сервер запускает долговечные scheduled Jobs с lease, запретом параллельного выполнения одной задачи, retry с ограниченным exponential backoff, coalescing пропущенных запусков, ограниченной историей и чистой остановкой. Ошибки попыток имеют устойчивый диагностический класс, поэтому приложениям не требуется разбирать текст ошибки.
Application SDK
Заголовок раздела «Application SDK»Предметно-независимый radixdb-app-sdk добавляет слой доверенного прикладного
сервиса над асинхронным клиентом и ORM. Он предоставляет ограниченные request и
session identity, deadlines, кооперативную отмену, лимиты типизированных
результатов, устойчивую классификацию повторов и исходов, fingerprints схемы,
сгенерированные контракты таблиц и процедур и versioned application events.
Аутентификация продукта, авторизация, маршруты и бизнес-правила остаются вне
репозитория базы. Сквозной пример приведён в главе
Application SDK.
Типы SQL и ограничения
Заголовок раздела «Типы SQL и ограничения»TEXT(n)ограничивает длину текста;VARCHAR(n)иCHAR(n)принимаются как варианты записи ограниченного текстового типа.DOUBLE PRECISIONсохраняет самостоятельную идентичность в SQL и каталоге, используя представление f64.TIMESTAMPпредставляет календарные дату и время без неявного преобразования через часовой пояс соединения.TIMEпредставляет время суток независимо от конкретного момента времени.TIMESTAMPTZпредставляет момент времени. Часовой пояс IANA или фиксированное смещение соединения используются при явных преобразованиях календарного времени и момента; неоднозначное и несуществующее время при переходах летнего времени отклоняется.- Производные сложение, вычитание и умножение
DECIMALсохраняют точность при разных масштабах, с проверками точности и переполнения.
SET TIME ZONE и SHOW TIME ZONE управляют часовым поясом соединения.
Скалярные и упорядоченные составные первичные ключи поддерживают нецелочисленные
значения и обеспечивают уникальность полного ключа; NULL запрещён в каждом
компоненте. Ограничения, добавляемые после загрузки данных, принимают
квалифицированные имена отношений и отклоняют конфликтующие определения.
Проверки уникальности в холодном хранилище выполняются пакетно при массовой
вставке и перепроверке commit, включая составные ключи. Группы строк переменного
размера разделяются по байтовому лимиту до публикации.
Привилегия DESCRIBE уровня базы управляет получением схемы приложениями.
Сгенерированные прикладные контракты сохраняют детерминированные fingerprints
и типизированные аргументы/результаты процедур; процедуры с табличным
результатом сохраняют число возвращаемых строк.
Trusted native extensions
Заголовок раздела «Trusted native extensions»Версия 1.2.19 добавляет stable C ABI 1.0, безопасный Rust authoring SDK и deterministic package tooling для operator-trusted in-process extensions. Package, допущенный при startup, может предоставить bounded external scalar types, native scalar и batch functions, binary operators, B-tree/hash/bitmap operator classes и bounded planner support. SQL транзакционно связывает exports с catalog 6.2, а protocol 18 сохраняет external type identity и codec revision на wire.
Host сохраняет владение storage, WAL, MVCC, catalog mutation, index pages, ACL
и recovery. Packages загружаются только из exact absolute allowlist entries;
network install, hot reload, version ranges и ALTER EXTENSION UPDATE
отсутствуют. Proving extension radixdb-spatial проходит через public SDK с
fixed и variable geometry types, native predicates, Morton-key B-tree index и
residual recheck.
Bundled CLI workflows backup и logical export пока не загружают plugin allowlist и потому не являются поддержанным recovery path для extension-bound database.
Поддерживаются целевые платформы пакетов x86_64-unknown-linux-gnu и
aarch64-unknown-linux-gnu. Target пакета и архитектура ELF должны совпадать
с сервером; пакет для другой архитектуры отклоняется.
Начните с установки extensions, затем
используйте руководство разработчика и
cargo radixdb-plugin.
Надёжность и эксплуатация
Заголовок раздела «Надёжность и эксплуатация»Внешний physical backup записывает покрытые checksum сведения о сборке, формате, базе и точном snapshot и восстанавливает только этот snapshot. Логический export использует нормализованный checksum содержимого; dump можно воспроизвести, импортировать в новый root, повторно открыть и экспортировать. Runtime status артефактов ограничен по объёму и сообщает о truncation.
CLI сохраняет уровень изоляции и savepoints в batch, откатывает ошибочный batch
и показывает effective durability configuration. Снятые настройки cache и
compression теперь отклоняются, а не игнорируются. Nullable indexed window
partitions сохраняют группу NULL после cold storage и повторного открытия.
Protocol 18 не совместим по wire с protocol 14. Обновляйте server и client как один проверенный комплект, а при пересечении неподдерживаемой границы физического формата используйте logical export/import.
1.1.0 - 2026-09-08
Заголовок раздела «1.1.0 - 2026-09-08»RadixDB 1.1.0 определяется аннотированным тегом v1.1.0 и использует wire
protocol 14. Этот выпуск заложил первую опубликованную процедурную и ACL-основу,
описанную ниже. Ограничения раздела относятся к 1.1, а не к выпускам 1.2.25 и
1.2.21 выше.
Процедурная основа базы
Заголовок раздела «Процедурная основа базы»Версия 1.1 добавляет долговечные catalog objects для principals, roles, ACL
entries, functions, procedures, triggers и jobs. Ограниченный procedural
runtime использует существующие SQL parser, executor, transaction owner и путь
MVCC/WAL. Реализованы typed calls, local variables, control flow, cursors,
exception regions, динамический EXECUTE, транзакционные DML triggers и
долговечные записи попыток jobs.
Контексты invoker/definer и права roles/objects проверяются в пути выполнения БД. Прикладная запись может атомарно публиковать audit и outbox rows, а ограниченное публичное чтение ORM использует ту же authority. См. PL/SQL, процедуры, триггеры, задания и контроль доступа.
Усиление хранения и совместимости
Заголовок раздела «Усиление хранения и совместимости»Normal rollback остаётся вне synchronous durability deadline, но ошибки записи rollback marker передаются вызывающему коду. Publisher ownership отзывается при закрытии, а same-process lock handoff усилен.
База с catalog 6.0 открывается без автоматической перезаписи. Первая procedural- или ACL-DDL атомарно переводит каталог в exact minor 6.1. Обратного writer path нет, а бинарник, знающий только 6.0, отклоняет 6.1 fail closed. Сетевым контрактом этого выпуска остаётся protocol 14.
Перед сменой бинарника изучите обновление, а поддержку SQL проверяйте по матрице, не предполагая совместимость синтаксиса или wire protocol PostgreSQL.
Принятое evidence и ограничения
Заголовок раздела «Принятое evidence и ограничения»Release gate сохранил checksum и access paths набора из 100 000 000 строк. Наибольшая указанная регрессия запроса равна 4,91%, что ниже фиксированного коридора 1,20 раза. Точная методика и привязка к исходникам находятся в тестах производительности.
Штатный сервер 1.1 остаётся loopback-only и не предоставляет principal login или транспортное шифрование. ACL применим через доверенный embedded-контекст или аутентифицированный gateway, но не является прямой аутентификацией недоверенного TCP-клиента. Штатный сервер также не запускает фоновый Job scheduler. Это явные границы продукта из глав аутентификации и заданий, а не возможности, подразумеваемые catalog model.
1.0.0 - 2026-09-07
Заголовок раздела «1.0.0 - 2026-09-07»Версия 1.0.0 зафиксировала production-архитектуру catalog-artifact V6 и приняла свидетельства 100M NVMe, 20k memory и шестичасового HDD run. Также появился transport-independent ORM v1 с versioned IR, canonical JSON, стабильными schema descriptors, typed parameters и расширениями выполнения embedded/TCP.
Существующие данные прежних unnamed-catalog layouts не переписываются на месте. Миграция выполняется явным logical export/import в отдельно проверенное место назначения. Перед ней изучите обновление и резервное копирование.
Чтение истории выпусков
Заголовок раздела «Чтение истории выпусков»Принадлежность выпуску не превращает распознанную parser форму в поддерживаемый SQL-контракт. Независимо проверяйте целевой выпуск, compatibility matrix и описанные ограничения.