12.30. Release 300
General Changes
- Fix
array_intersect()
andarray_distinct()
skipping zeros when input also contains nulls. - Fix
count(*)
aggregation returning null on empty relation whenoptimize_mixed_distinct_aggregation
is enabled. - Improve table scan performance for structured types.
- Improve performance for
array_intersect()
. - Improve performance of window functions by filtering partitions early.
- Add
reduce_agg()
aggregate function. - Add
millisecond()
function. - Remove
ON
keyword from SHOW STATS (useFOR
instead). - Restrict
WHERE
clause in SHOW STATS to filters that can be pushed down to connectors. - Return final results to clients immediately for failed queries.
JMX MBean Naming Changes
- The base domain name for server MBeans is now
presto
. The old names can be used by setting the configuration propertyjmx.base-name
tocom.facebook.presto
. - The base domain name for the Hive, Raptor, and Thrift connectors is
presto.plugin
. The old names can be used by setting the catalog configuration propertyjmx.base-name
tocom.facebook.presto.hive
,com.facebook.presto.raptor
, orcom.facebook.presto.thrift
, respectively.
Web UI
- Fix rendering of live plan view for queries involving index joins.
JDBC Driver Changes
- Change driver class name to
io.prestosql.jdbc.PrestoDriver
.
System Connector Changes
- Remove
node_id
column fromsystem.runtime.queries
table.
Hive Connector Changes
- Fix accounting of time spent reading Parquet data.
- Fix corner case where the ORC writer fails with integer overflow when writing highly compressible data using dictionary encoding (#11930).
- Fail queries reading Parquet files if statistics in those files are corrupt
(e.g., min > max). To disable this behavior, set the configuration
property
hive.parquet.fail-on-corrupted-statistics
or session propertyparquet_fail_with_corrupted_statistics
to false. - Add support for S3 Select Pushdown, which enables pushing down column selection and range filters into S3 for text files.
Kudu Connector Changes
- Add
number_of_replicas
table property toSHOW CREATE TABLE
output.
Cassandra Connector Changes
- Add
cassandra.splits-per-node
andcassandra.protocol-version
configuration properties to allow connecting to Cassandra servers older than 2.1.5.
MySQL Connector Changes
- Add support for predicate pushdown for columns of
char(x)
type.
PostgreSQL Connector Changes
- Add support for predicate pushdown for columns of
char(x)
type.
Redshift Connector Changes
- Add support for predicate pushdown for columns of
char(x)
type.
SQL Server Connector Changes
- Add support for predicate pushdown for columns of
char(x)
type.
Raptor Legacy Connector Changes
- Change name of connector to
raptor-legacy
.
Verifier Changes
- Add
run-teardown-on-result-mismatch
configuration property to facilitate debugging. When set to false, temporary tables will not be dropped after checksum failures.
SPI Changes
- Change base package to
io.prestosql.spi
. - Move connector related classes to package
io.prestosql.spi.connector
. - Make
ConnectorBucketNodeMap
a top level class. - Use list instead of map for bucket-to-node mapping.
Note
These are backwards incompatible changes with the previous SPI. If you have written a plugin, you will need to update your code before deploying this release.