20.23. Release 0.177
Query may incorrectly produce
NULL when no row qualifies for the aggregation
optimize_mixed_distinct_aggregations session property or
optimizer.optimize-mixed-distinct-aggregations config option is enabled.
This optimization was introduced in Presto version 0.156.
- Fix correctness issue when performing range comparisons over columns of type
- Fix correctness issue due to mishandling of nulls and non-deterministic expressions in
inequality joins unless
- Fix excessive GC overhead caused by lambda expressions. There are still known GC issues with captured lambda expressions. This will be fixed in a future release.
- Check for duplicate columns in
CREATE TABLEbefore asking the connector to create the table. This improves the error message for most connectors and will prevent errors for connectors that do not perform validation internally.
- Add support for null values on the left-hand side of a semijoin (i.e.,
INpredicate with subqueries).
SHOW STATSto display table and query statistics.
- Improve implicit coercion support for functions involving lambda. Specifically, this makes
it easier to use the
- Improve plans for queries involving
LIMITby avoiding unnecessary data exchanges.
- Improve performance of queries containing window functions with identical
- Improve performance of certain queries involving
OUTER JOINand aggregations, or containing certain forms of correlated subqueries. This optimization is experimental and can be turned on via the
push_aggregation_through_joinsession property or the
- Improve performance of certain queries involving joins and aggregations. This optimization
is experimental and can be turned on via the
- Improve error message when a lambda expression has a different number of arguments than expected.
- Improve error message when certain invalid
GROUP BYexpressions containing lambda expressions.
- Fix handling of trailing spaces for the
CHARtype when reading RCFile.
- Allow inserts into tables that have more partitions than the partitions-per-scan limit.
- Add support for exposing Hive table statistics to the engine. This option is experimental and
can be turned on via the
- Ensure file name is always present for error messages about corrupt ORC files.
- Remove caching of metadata in the Cassandra connector. Metadata caching makes Presto violate
the consistency defined by the Cassandra cluster. It’s also unnecessary because the Cassandra
driver internally caches metadata. The
cassandra.schema-refresh-intervalconfig options have been removed.
- Fix intermittent issue in the connection retry mechanism.
Web UI Changes
- Change cluster HUD realtime statistics to be aggregated across all running queries.
- Change parallelism statistic on cluster HUD to be averaged per-worker.
- Fix bug that always showed indeterminate progress bar in query list view.
- Change running drivers statistic to exclude blocked drivers.
- Change unit of CPU and scheduled time rate sparklines to seconds on query details page.
- Change query details page refresh interval to three seconds.
- Add uptime and connected status indicators to every page.
- Add support for preprocessing commands. When the
PRESTO_PREPROCESSORenvironment variable is set, all commands are piped through the specified program before being sent to the Presto server.