nizarhejazi opened a new pull request, #8468:
URL: https://github.com/apache/pinot/pull/8468
## Description
Add support for single-valued `BigDecimal` data type (`BIG_DECIMAL`) across
different SQL statements and Pinot functions. The underlying stored data type
is `byte[]`.
- Conversion between different Pinot data types and BigDecimal.
- Document the reason for choosing specific BigDecimal methods (constructor
vs. valueOf, equals vs. compareTo, etc.) and accompanying data structures
(TreeSet vs. HashSet, ObjectMapper with ExactBigDecimals etc.)
- Extend DataFetcher to fetch BigDecimal values.
- Support BIG_DECIMAL in:
- SELECT statement.
- DISTINCT statement.
- ORDER BY statement.
- GROUP BY statement.
- HAVING statement.
- CASE statement.
- CAST transform.
- Groovy transform.
- Identifier transform.
- Literal transform.
- Lookup transform.
- JsonPathEvaluator (w/ custom ObjectMapper and JsonNodeFactory).
- JsonExtractScalar transform.
- Addition, Subtraction, Multiplication, and Division.
- abs(), ceil(), and floor() math functions.
- Greatest, and Least transforms.
- EQUAL, NOT_EQUAL, IN, NOT_IN, RANGE predicates.
- NoDictionary based EQUAL, NOT_EQUAL and IN predicates.
- Binary operators (=, !=, >=, >, <=, <).
- BigDecimalDictionary
- BaseDataTable.
- FieldSpec.
- ~27 unit tests.
## Release Notes
**<code>release-notes</code>**
--
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]