НАЧАЛО >> Оглавление >> Общее описание >> История изменений >> Что нового в проекте I128 >> Версия 2026.2.4 >> [I128-2684] DP_Irbis64Native может рассинхронизировать MST и XRF при записи📄 Скачать в DOCX
| Тип | Версия | Статус | Приоритет | Исполнитель |
|---|---|---|---|---|
| ⚙️ Исправление ошибок | 2026.2.4 | 🔘 Завершено |
Средний | Ilya Mikhaylenko |
Компоненты: ИРБИС 128. Модуль DP_Irbis64Native - Нативный провайдер данных к файлам СУБД ИРБИС 64/64+
Завершено: 14.07.2026 11:08
Проблема
При записи через DP_Irbis64Native может появиться повреждение связки MST/XRF: диагностика сообщает xrfoffsetmismatch, MST offset и XRF offset для одного MFN различаются.
Сценарий воспроизведения
Ожидаемый результат После записи XRF указывает на фактически записанный MST offset, лидер MST содержит тот же MFN, а диагностика MST/XRF не показывает рассинхронизацию по сохраненной записи.
Причина
В writepath MST и XRF есть участки, где обновления MST/XRF и сбросы флагов выполняются без единого безопасного helperблокирования и без проверки связки после записи. При ошибочном или устаревшем offset можно записать XRF, не соответствующий фактической MST-записи.
Решение Усилить write-path DP_Irbis64Native: брать парные MST/XRF locks, инвалидировать XRF cache перед записью, проверять append offset, проверять связь MST/XRF после записи и защищать XRF write от неверного MFN/seek.
Риски Изменение затрагивает низкоуровневую запись MST/XRF и диагностику. Нужны отдельные проверки записи, диагностики DiagMstXrf и отсутствия регрессии на актуализации.
-
I1282684: DPIrbis64Native может рассинхронизировать MST и XRF при записи. Scope: DPIrbis64Native; target 2684release/2026.2; branch `bugfix/I128dpnativemstxrfwritelocks`. Draft before branch/commit/push/readback; do not publish until the gates in the source notebook pass.
Куда смотреть:
DP*Irbis64Native. Effect: DP*Irbis64Native может рассинхронизировать MST и XRF при записи. Chrome: not confirmed yet: PR branch is not materialized and the stand is not switched to it.release/2026.2 and contain only merged/delivered dependencies before PR publication.Изменения по файлам:
modules/DP_Irbis64Native/include/MstSpace.php
DP_Irbis64Native; patch stats: +116/-13.DP_Irbis64Native может рассинхронизировать MST и XRF при записи task scope in this owner area.modules/DP_Irbis64Native/include/XrfFile.php
DP_Irbis64Native; patch stats: +7/-1.DP_Irbis64Native может рассинхронизировать MST и XRF при записи task scope in this owner area.-
There was a merge conflict automatically merging this branch