[I128-2460] DP_Irbis64Direct возвращает пустые элементы в результатах RecSearch


НАЧАЛО >> Оглавление >> Общее описание >> История изменений >> Что нового в проекте I128 >> Версия 2026.2.3 >> [I128-2460] DP_Irbis64Direct возвращает пустые элементы в результатах RecSearch📄 Скачать в DOCX


Тип Версия Статус Приоритет Исполнитель
⚙️ Исправление ошибок 2026.2.3 🔘 Завершено Средний Ilya Mikhaylenko

Компоненты: ИРБИС 128. Модуль DP_Irbis64Direct - Провайдер данных к файлам данных ИРБИС 64/64+

Завершено: 29.06.2026 13:38

Проблема При поиске через DP_Irbis64Direct результат RecSearch мог содержать пустой элемент вместо объекта записи. Это проявлялось, когда SearchSrv возвращал найденный MFN, но соответствующую запись не удавалось прочитать.

Причина RecSearch формировал итоговый массив через array_column($Result, 'rec') и не проверял, что поле rec действительно существует и содержит объект записи.

Исправление Формирование результата заменяется на явную фильтрацию строк SearchSrv: в ответ добавляются только элементы, где rec существует и является объектом записи. Контракт RecSearch остаётся стабильным для потребителей, ожидающих массив объектов записей.

Документация Изменение исправляет внутреннюю обработку неконсистентного ответа провайдера и не меняет пользовательский сценарий или публичную документацию.