Проблема.
При добавлении в фильтр условия Установлен = Да на ссылочное поле, объекты (на которые ссылка) начинают выбираться по одному отдельными SQL запросами, если же в фильтре использовать другой оператор =/<>, то объекты выбираются с помощью JOIN. Причем эффект имеет место только если в fetchPlan для ссылочного поля используется fetch=“AUTO” (умолчание).
Причина, по-видимому, в методе calculateFetchGroup класса FetchGroupManager:
List<FetchGroupField> isNullFields = joinFields.stream()
.filter(f -> f.fetchMode == FetchMode.AUTO &&
(parser.hasIsNullCondition(f.path()) || parser.hasIsNotNullCondition(f.path())))
.collect(Collectors.toList());
где используется условие hasIsNotNullCondition