Различное количество попаданий от основного и повторного осколка - PullRequest
0 голосов
/ 21 апреля 2020

У нас есть базовый c экземпляр ES, и я рассматриваю индекс, который имеет только один основной сегмент и один фрагмент реплики.

Выполнение основного запроса c bool, hits.total поворотов зависеть от того, какой осколок мы ударили. Я получаю последовательно разные числа, указывающие ?preference=_primary или ?preference=_replica.

Осколки в некотором смысле различны, потому что с _cat я вижу:

index       shard prirep state   docs   store ip            node
admin_ch-v1 0     r      STARTED 3220 295.2mb x.x.x.x  JO8tqXw
admin_ch-v1 0     p      STARTED 3220   294mb x.x.x.x aCqEzYQ

Однако общий документ количество одинаковое Я также написал скрипт для получения всех документов конкретно от каждого шарда (используя preference=f"_only_nodes:xxx") и сравнения их, и, по модулю ошибки в моем скрипте, все идентично.

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

Я видел этот вопрос , но, похоже, применить к нашему делу.

Итак ... что происходит? Является ли подсчет документов по своей сути ненадежным? Любая ссылка на документацию, где это объясняется?

(также спрашивается здесь )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...