13.72. Release 0.190

    • Fix correctness issue for and when arrays contain NaN.
    • Fix planning failure for queries involving GROUPING that require implicit coercions in expressions containing aggregate functions.
    • Fix potential workload imbalance when using topology-aware scheduling.
    • Fix a memory leak that occurs on workers.
    • Improve error handling when a HAVING clause contains window functions.
    • Avoid unnecessary data redistribution when writing when the target table has the same partition property as the data being written.
    • Ignore case when sorting the output of SHOW FUNCTIONS.
    • Improve rendering of the BingTile type.
    • The function now supports a standard error in the range of [0.0040625, 0.26000].
    • Add support for ORDER BY in aggregation functions.
    • Add dictionary processing for joins which can improve join performance up to 50%. This optimization can be disabled using the dictionary-processing-joins-enabled config property or the dictionary_processing_join session property.
    • Add support for casting to INTERVAL types.
    • Add geospatial function.
    • Allow treating decimal literals as values of the DECIMAL type rather than . This behavior can be enabled by setting the parse-decimal-literals-as-double config property or the parse_decimal_literals_as_double session property to false.

    Resource Groups Changes

    • Add priority column to the DB resource group selectors.
    • Add exact match source selector to the DB resource group selectors.
    • Add support for setting client tags.

    JDBC Driver Changes

    • Add getPeakMemoryBytes() to QueryStats.
    • Improve table scan parallelism.

    Hive Changes

    • Fix query failures for the file-based metastore implementation when partition column values contain a colon.
    • Improve performance for writing to bucketed tables when the data being written is already partitioned appropriately (e.g., the output is from a bucketed join).
    • Add config property hive.max-outstanding-splits-size for the maximum amount of memory used to buffer splits for a single table scan. Additionally, the default value is substantially higher than the previous hard-coded limit, which can prevent certain queries from failing.
    • Make Thrift retry configurable.
    • Add JMX counters for Thrift requests.

    SPI Changes

    • Remove the RecordSink interface, which was difficult to use correctly and had no advantages over the interface.

    This is a backwards incompatible change with the previous connector SPI. If you have written a connector that uses the RecordSink interface, you will need to update your code before deploying this release.