gortiz commented on issue #10381:
URL: https://github.com/apache/pinot/issues/10381#issuecomment-1755446477

   > IMO this is not a good idea, see my table above. we dont want to couple 
ingestion time config with query time config
   
   I think that is where we see things differently. I think coupling these 
concepts simplify the problem a lot, making it easier to understand by devs but 
also Pinot users.
   
   In my proposal, `column level nullability` is the source of truth. This is a 
concept independent of the config that we define as: `schema.col.isNullField == 
null || schema.col.isNullField == null && 
tableConfig.tableIndexConfig.nullHandlingEnabled == true`
   
   I think we are saying more or less the same thing. The only differences are:
   - In my proposal:
     - There is not `table level nullability`, there is a `default column 
nullability for this table`.
       - Therefore in my proposal `column level nullability` is always defined. 
Either explicitly by the schema or implicitly by the tableConfig.
     - V1 always needs to have `enableNullhandling`.
   - In your proposal:
     - `column level nullability` is not defined if `schema.col.isNullField` is 
not explicitly added.
     - It is not defined what happens if `column level nullability` and `table 
level nullability` are both used in an incompatible way (ie a table has 
`nullHandlingEnabled` = true and column level `isNullField` is false).


-- 
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]

Reply via email to