caicancai commented on PR #3689: URL: https://github.com/apache/calcite/pull/3689#issuecomment-1959459650
I thought about it for a long time, maybe I think I already understand the doubts in my heart. As @mihaibudiu said, java syntax has its own type rules, and sql has its own type rules. What calcite is currently doing is to use java syntax to adapt to the sql rules of each database and complete execution optimization. The SQL rules of each database are inconsistent in some extreme scenarios. Calcite needs to ensure that these extreme scenarios are all adapted. However, if on a certain day, for example, mysql returns the result of log10(0) as an error instead of null, then does calcite need to adapt to the new version of mysql? If it adapts to the new version of mysql, then does the old version of mysql need to adapt to the new version of mysql? Need to adapt. This may be a paradox in my opinion. Can you please help me explain it? -- 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]
