gianm opened a new issue, #14154: URL: https://github.com/apache/druid/issues/14154
By default, today (Druid 25) we have these defaults: ``` druid.generic.useDefaultValueForNull = true druid.expressions.useStrictBooleans = false ``` This issue is about flipping them to: ``` druid.generic.useDefaultValueForNull = false druid.expressions.useStrictBooleans = true ``` This would enable SQL-compatible [null handling](https://druid.apache.org/docs/latest/querying/sql-data-types.html#null-values) and [strict booleans](https://druid.apache.org/docs/latest/querying/sql-data-types.html#boolean-logic) by default, meaning support for: - Nullable numeric columns - Null and empty string being differentiated in string columns - SQL-compatible JOIN behavior - Three-valued boolean logic for expressions This would all be great for any new users using SQL, and possibly even great for existing users on SQL, to the degree that they thought we already behaved this way by default 🙂 The main prerequisite I am aware of is that we need to ensure that it is possible for segments written in one null-handling mode to be readable by servers configured with the other mode. This is already true for segments written in default-value mode: they are read just fine by servers in SQL-compatible mode. But segments written in SQL-compatible mode aren't always read properly in default-value mode. This PR addresses it: #14142 I am not aware of any prerequisites for changing the default scrict-booleans mode. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
