Criteria API возвращает слишком маленький набор результатов
Как это возможно, я должен по следующим критериям
Criteria criteria = getSession().createCriteria(c);
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
criteria.add(Restrictions.eq("active",true));
List list = criteria.list();
Размер списка теперь 20. Если я добавлю максимальные результаты в критерии,
Criteria criteria = getSession().createCriteria(c);
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
criteria.setMaxResults(90);
criteria.add(Restrictions.eq("active",true));
List list = criteria.list();
.. теперь размер списка 18!
Я не понимаю, как размер наборов результатов может быть меньше после определения максимального результата, так как количество строк меньше, чем определенный максимум. Это похоже на ошибку или есть какие-то странные аспекты гибернации, о которых я не знаю?
Если вы ищете ответ на этот вопрос, обязательно прочитайте принятый ответ и его комментарии.