-
Type:
New Feature
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Configuration
-
None
Add a new, required property with no default value. Throw if not defined
- com.mongodb.hibernate.semantics.nulls
- only supported value is MQL
This allows us to defer the decision on SQL vs MQL semantics for null comparisons, since we are not choosing a default and force the user to declare it. In a subsequent release we can add support for SQL and perhaps make it the default if the performance is acceptable.
Semantics
The semantics are intentionally vague, which is why the value is "MQL" and not explicitly "two-value". This allows us to document that the null-semantics of the extension is whatever the null semantics are of the MQL that the extension translates too, which is dependent on how we actually translate. And the specific translation is not part of the contract, which means that the actual results can change from release to release.