Release 0.240

    There is a bug in LambdaDefinitionExpression canonicalization introduced since 0.238. For more details, go to #15424.

    • Add ability to spill window functions to local disk when a worker is out of memory.

    • Add support for inlining SQL functions at query planning time.

    • Add support for limit pushdown through union.

    Details

    • Fix compiler error due to incorrect LambdaDefinitionExpression canonicalization.

    • Fix compiler error in certain situations where sql functions with same lambda are used multiple times.

    • Add and IF NOT EXISTS syntax to ALTER TABLE.

    • Add query.max-scan-physical-bytes configuration and session properties to limit total number of bytes read from storage during table scan. The default limit is 1PB.

    • Add support for inlining SQL functions at query planning time. This feature is enabled by default, and can be disabled with the inline_sql_functions session property.

    • Add support for pushdown of dereference expressions for querying nested data. This can be enabled with the pushdown_dereference_enabled session property or the experimental.pushdown-dereference-enabled configuration property.

    • Use local private credentials (json key file) to refresh GCS access token. Usage : presto-cli –extra-credential hive.gcs.credentials.path=”${PRIVATE_KEY_JSON_PATH}”.

    • Add ability to spill window functions to local disk when a worker is out of memory.

    • Add support for limit pushdown through union.

    Thrift Connector Changes

    • Rename to presto-thrift-api and have separate packages for datatypes, valuesets and connector.

    Verifier Changes

    • Fix an issue where Verifier fails to start when failure resolver is disabled.

    • Add configuration property test_name, to be passed in to the client info blob.

    • Add support to implement customized way of launching Presto queries.

    • Add support to populate client info for the queries issued by Verifier.

    • Add support to run helper queries on a separate cluster other than the control cluster.

    • Add TLS security support.

    Druid Changes

    • Add support for union all operation with more than 1 druid source.

    • Add support for filter on top of Aggregation.

    • Fix unhandled HTTP response error for druid client.

    Elasticserarch Changes

    • Add support for IP data type.
    • Improve geometry_to_bing_tiles() performance. It is 50x faster on complex polygons, the limit on polygon complexity is removed, and some correctness bugs have been fixed.

    • Add geometry_to_dissolved_bing_tiles function, which dissolves complete sets of child tiles to their parent.

    • Introduce and bing_tile_parent() functions to get parents and children of a Bing tile.

    Hive Changes

    • Fix parquet statistics when min/max is not set.

    • Improve split generation performance.

    • Add support for Hudi realtime input format for hudi realtime queries.

    • Add support for splitting hive files when skip.header.line.count=1.

    Kafka Changes

    • Allow procedures to accept optional parameters.