[SERVER-41251] [FLE] Ban javascriptWithScope, double, decimal128, and bool with deterministic encryption Created: 20/May/19  Updated: 29/Oct/23  Resolved: 22/May/19

Status: Closed
Project: Core Server
Component/s: Querying
Affects Version/s: None
Fix Version/s: 4.1.12

Type: Task Priority: Major - P3
Reporter: David Storch Assignee: David Storch
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Documented
Backwards Compatibility: Fully Compatible
Sprint: Query 2019-06-03
Participants:

 Comments   
Comment by Githook User [ 22/May/19 ]

Author:

{'name': 'David Storch', 'email': 'david.storch@10gen.com', 'username': 'dstorch'}

Message: SERVER-41251 Ban double, decimal, bool, and javascriptWithScope with deterministic encryption.

Correct comparison of these types requires more than simple memcmp().
Further improvements will be required in order to correctly support
equality comparison to deterministically encrypted fields of these
types.
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/4ce9368830e775189e3ebd3405c1f9fe385262da

Comment by Nicholas Zolnierz [ 21/May/19 ]

Per offline discussion, this is the rationale for banning double/decimal:

Due to equality semantics for signed zeroes and NaN's, we cannot guarantee query correctness for doubles. The same applies for Decimal however there are many more representations which are not binary equal but semantically equivalent.

Generated at Thu Feb 08 04:57:13 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.