Почему Milvus query_iterator дает сбой или возвращает неполные результаты со значениями границ первичного ключа INT64? ⇐ Python

Программы на Python
Anonymous
Почему Milvus query_iterator дает сбой или возвращает неполные результаты со значениями границ первичного ключа INT64?

Сообщение Anonymous »

Я сталкиваюсь с неожиданным поведением при использовании query_iterator в Milvus 2.5.8 (автономный режим) с первичным ключом INT64 в его граничных значениях.
Моя схема коллекции проста:
  • Первичный ключ: INT64
  • Векторное поле: FLOAT_VECTOR(2)
  • SDK: pymilvus 2.6.2
  • Развертывание: автономное
  • ОС: CentOS
Проблема возникает только в том случае, если первичный ключ использует граничные значения INT64:
  • При вставке записи с минимальным значением INT64 (

    Код: Выделить всё

    -9223372036854775808
    )[/b]

    Вставка прошла успешно
  • Но вызов query_iterator приводит к ошибке
  • Эта ошибка указывает на невозможность создания плана запроса из-за синтаксического анализа выражений
[*]Когда и минимальное, и максимальное значения INT64 (

Код: Выделить всё

9223372036854775807
) существуют в одной коллекции[/b]
  • Использование query_iterator для получения всех записей
  • Возвращается только запись с минимальным значением
  • Запись с максимальным значением отсутствует в результатах

Эти проблемы возникают только при использовании query_iterator; обычные запросы ведут себя не так.
Мой главный вопрос:

Поддерживает ли query_iterator граничные значения первичного ключа INT64 в Milvus или существуют ли известные ограничения или ошибки при использовании минимальных и максимальных значений INT64?


Подробнее здесь: https://stackoverflow.com/questions/798 ... int64-prim

Вернуться в «Python»