walterddr opened a new issue, #8605: URL: https://github.com/apache/pinot/issues/8605
Background === Currently Pinot already implements some of the type hoisting - for example: * the datatable builder automatically converts int/float/long/double numeric type content to the corresponding data schema required data type. However sometime this doesn't work quite well. for example * sum(long, long) will result in double Propose === - Create a type inference system to automatically hoist types to when searching for a matching `@ScalarFunction`. for example `sum(int, long)` should match `sum(long, long)` with an implicit type cast from `int` to `long` for the first argument. - implementing a type casting scheme using a bitmap approach: - for example using numeric values, `double, float, long, int, short, byte` corresponding to a single bit in a byte value (`1<<6` ~ `1<<0`) and make all function arguments to mask into the byte and uses the highest non-zero bit corresponding type as the numeric type to cast to. - for other type we can have different rules to match types - implicit type cast methods can also be unified and reused in other part of the query logic and ingestion. -- 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.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