Skip to content

nitrite v2.0.4

Choose a tag to compare

@anidotnet anidotnet released this 21 Jul 06:06
  • Fixed field.eq(x) / field.within(..) on an array (list) field silently matching nothing when the filter runs as a collection scan. Array membership is matched element-wise on the index path but was matched by whole-value equality (deepEquals) on the collection-scan path, so results depended on whether an index existed or was chosen by the planner. Combined with the 2.0.3 planner change (mirror of nitrite-java #1266) — which correctly relegates the non-winning-index filter to a collection scan — an AND of an indexed array eq and a bounded range on a second indexed field left the array eq running as a collection scan, where it matched no documents. EqualsFilter and _InFilter now match an array/Iterable field by element containment on the collection-scan path, mirroring applyOnIndex.