-
Type: Bug
-
Resolution: Works as Designed
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Queryable Encryption
-
None
-
ALL
-
Security 2022-11-14
If the contention max, M, for a QE encrypted field is greater than 0, the query rewrite currently performs M + 1 binary search iterations, whereas it should only be running M iterations. See https://github.com/10gen/mongo/blob/082a22c0addd26f8065693ba81d3507b26e02311/src/mongo/crypto/fle_tags.cpp#L215. For a field with contention max M, the valid contention factor values are 0 through M-1, inclusive. The extra binary search iteration will lookup ESC entries for contention value M, but will always end up with 0 entries.