Я не уверен, является ли это проблемой MongoDB, проблемой с драйвером mongo-java или я делаю что-то неправильное.
Проблема в том, что MongoDB может вести себя по-разному в случае наличия оператора $eq или синтаксиса {fieldName: value. См. пример здесь: https://mongoplayground.net/p/sXKR2FvE5eg
Я хочу группировать по полю groupBy и хочу, чтобы объекты типа "A" находились в поле typeA и наоборот для B.
Я использовал драйвер mongo-java, который не создает оператор $eq в случае Filter.eq используется, см. документацию.
Для typeA я использовал $eq в примере, а для typeB я использовал синтаксис, отличный от $eq. Как показывает пример, оператор $eq на самом деле фильтрует правильно, а синтаксис, отличный от $eq, нет.
Итак, вопрос в том, является ли это реальной проблемой MongoDB или Filters.eq всегда должен создавать $eq в драйвере mongo-java?
Подробнее здесь: https://stackoverflow.com/questions/798 ... ses-issues