futriix/What's new.md

42 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

> [!CAUTION]
> **Категорически не использовать в продакшене, так как это тестовая версия!!!**
# Изменения (по состоянию на 23.11.2025)
> [!TIP]
> * Сервер-приложений "falcot" был переименован в futriix, оболочка сервера приложений интегрирована в клиент субд futriix
> * Добавлена поддержка авторизации по протоколу "JWT" через хранимые процедуры
> * Добавлена поддержка выгрузка данных из субд в формате ".csv"
> * Операции с транзакциями были переименованы в лаконичный вид "begin", "commit", "rollaback"
> * Сокращено общее количество файлов с исходным кодом проекта с 19 до 14 за счёт объединения модулей имеющие сходный функционал
> * Добавлена поддержка WAL, timestamp
> * Добавлена поддержка протокола "Raft" в самом простом, базовом варианте (нет split-brain, нет кросс-датацентровых heartbeat)
# Изменения (по состоянию на 26.11.2025)
> [!TIP]
> * Удален режим "Standalone" - в mod.rs изменен вывод режима работы только на "cluster"
> * Добавлена проверка кластера в sharding.rs - команды шардинга теперь требуют наличия как минимум 2 узлов
> * Добавлена команда cluster.rebalance в lua_shell.rs для выполнения полной ребалансировки
> * Расширен функционал команды "cluster.rebalance" таким образом, чтобы при её выполнении происходит ребалансировка не только созданных ранее шардов, но и созданных узлов в кластере. Расширена ребалансировка в sharding.rs - добавлена функция rebalance_nodes() для ребалансировки узлов кластера
> * Обновлен конфигурационный файл - удалены упоминания standalone режима
# Изменения (по состоянию на 28.11.2025)
> [!TIP]
> * В Транзакциях - В методе "execute_command" для "CommitTransaction" отсутствует проверка на существование транзакции перед выполнением команд.
> * В Хранимых процедурах - В методе "CreateProcedure" процедуры сохраняются в общей хэш-таблице, но не в отдельной коллекции для лучшего управления.
> * В Индексах - В методе "create_document" проверка уникальности индексов выполняется после вставки документа, что может привести к нарушению уникальности.
> * В сервере приложений исправлена ошибка "соединение сброшено", при попытки открытия любого файла с поддерживаемым в сервере-приложений MIME-типом
> [!NOTE]
**Исправления:**
>* **В транзакциях добавлена проверка существования перед коммитом**
>* **Хранимые процедуры теперь сохраняются в коллекции _procedures**
>* **Логика проверки индексов исправлена для предотвращения нарушений уникальности**