yashmayya opened a new pull request, #15679:
URL: https://github.com/apache/pinot/pull/15679

   - These type coercions / implicit casts are added to improve the user 
experience for new users to the multi-stage engine since the single-stage 
engine already treats `TIMESTAMP` / `LONG` types as interchangeable. Since the 
execution type of `TIMESTAMP` is `LONG` in Pinot, these operations should 
always work.
   - We're always adding the implicit cast on the `TIMESTAMP` side (for binary 
comparison operators and binary arithmetic operators), but users can choose to 
add explicit casts instead, for performance reasons (adding cast on literal 
side instead of column side) and index applicability.
   - This isn't strictly speaking conforming to the SQL standard, where 
TIMESTAMP types are typically not coercible to NUMERIC types, but we're making 
an exception here due to the prevalence of such user query patterns in the 
single-stage engine that would break if moved to the multi-stage engine. There 
shouldn't be any gotchas from this mechanism to new users either.


-- 
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: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to