- Исправлена задержка доставки MUC с растущим архивом: после каждого
сообщения больше не выполняется полный scan/rewrite архива для expiry. Очистка остаётся в maintenance и перед MAM-запросами; append и crash checkpoint до fanout сохранены. - Неизменённые native config/persistent index не перезаписываются при каждом сообщении. Удалённые файлы восстанавливаются, ошибки экспорта повторяются. - CSI больше не сохраняет SM snapshot при отсутствии изменения durable очереди. Изменённая очередь сохраняется до отправки; при ошибке записи очередь откатывается. - Личные сообщения, IQ и входящая федерация к аккаунтам больше не захватывают общий MUC mutex, ожидая несвязанную работу с комнатными архивами. - Добавлены регрессии native exports/archive scanning/CSI rollback и реальный TLS latency check в verify-local.sh, автоматически включённый и в CI. Измерения и границы подтверждения: [docs/MESSAGE-LATENCY.md](docs/MESSAGE-LATENCY.md). Результаты итогового прогона: [docs/VALIDATION-0.8.1.md](docs/VALIDATION-0.8.1.md). - Личные сообщения и SM ACK больше не ждут сетевую отправку push. Уведомления отправляются через очередь1024 с максимум8параллельных маршрутов; worker и его задачи отменяются при завершении serve. Ошибки очереди/маршрута логируются. - Offline сообщение сохраняется до публикации push, чтобы проснувшийся клиент мог сразу получить его. Подтверждена очередь при первом TLS stream push gateway. - По умолчанию CSI считает важными bodyless OMEMO legacy/2, delivery receipts и chat markers. Явный список `csi_important_payloads` заменяет расширенные defaults. Низкоприоритетный headline по-прежнему буферизуется. Policy обновляется и при SM resume. - Выбор адресатов и carbons фильтрует владельцев до захвата session mutex; зависшая сессия чужого аккаунта не задерживает этот путь. Duplicate SM ACK без изменения durable counters/queue не переписывает snapshot. - Bind2 и MAM metadata IQ читают только первый/последний native record вместо сканирования всей истории. Индекс не требуется; recovery/лимиты записи сохранены. - Добавлен `message-processing-slow`: обработка message дольше250мс, поля duration_ms/route, без payload/токенов. Это время обработки сервером, не peer receipt. - Новые сетевые регрессии включены в verify-local.sh/GitHub CI. Причины, изменение CSI policy, измерения и ограничения: [docs/PERSONAL-MESSAGE-LATENCY.md](docs/PERSONAL-MESSAGE-LATENCY.md).
This commit is contained in:
1 parent
b798b3f9b7
commit
e9329ccbb2
48 files changed
+11073
-235
No files matched your search
@@ -1,4 +1,4 @@
|
||||
# Rust XMPP 0.8.0
|
||||
# Rust XMPP 0.8.2
|
||||
|
||||
Сервер на Rust, разрабатываемый для замены **Prosody 13.0 nightly 100,
|
||||
cafd74b9c5ea** с предоставленными модулями. Читает существующий Lua-конфиг,
|
||||
@@ -238,3 +238,16 @@ recovery Rust служит собственный журнал. Перед от
|
||||
Полные тесты, Linux binary artifact и Docker push после проверок:
|
||||
[настройка workflow](docs/GITHUB-ACTIONS.md). Registry и credentials задаются
|
||||
через GitHub Actions variables/secrets.
|
||||
|
||||
## Задержка сообщений в0.8.1
|
||||
|
||||
Устранены полный проход по MUC-архиву на каждом сообщении, повторные записи
|
||||
неизменённых native-файлов и no-op CSI checkpoints. Проверенный сценарий
|
||||
с100000 MAM-записей: median MUC delivery2.5с→4.7мс на loopback.
|
||||
[Причины, измерения и границы](docs/MESSAGE-LATENCY.md).
|
||||
|
||||
## Личные сообщения в0.8.2
|
||||
|
||||
Push routing больше не блокирует отправителя/SM ACK; CSI defaults немедленно
|
||||
передают bodyless OMEMO и receipts. Bind2/MAM metadata не сканируют всю историю.
|
||||
[Причины, тесты и конфигурация](docs/PERSONAL-MESSAGE-LATENCY.md).
|
||||
Reference in new issue
Block a user