Release 0.101#
General#
- Add support for CREATE TABLE (in addition to CREATE TABLE AS). 
- Add - IF EXISTSsupport to DROP TABLE and DROP VIEW.
- Add - array_agg()function.
- Add - array_intersect()function.
- Add - array_position()function.
- Add - regexp_split()function.
- Add support for - millisecondto- date_diff()and- date_add().
- Fix excessive memory usage in - map_agg().
- Fix excessive memory usage in queries that perform partitioned top-N operations with - row_number().
- Optimize ARRAY comparison operators. 
- Fix analysis of - UNIONqueries for tables with hidden columns.
- Fix - JOINassociativity to be left-associative instead of right-associative.
- Add - sourcecolumn to- runtime.queriestable in System connector.
- Add - coordinatorcolumn to- runtime.nodestable in System connector.
- Add - errorCode,- errorNameand- errorTypeto- errorobject in REST API (- errorCodepreviously existed but was always zero).
- Fix - DatabaseMetaData.getIdentifierQuoteString()in JDBC driver.
- Handle thread interruption in JDBC driver - ResultSet.
- Add - historycommand and support for running previous commands via- !nto the CLI.
- Change Driver to make as much progress as possible before blocking. This improves responsiveness of some limit queries. 
- Add predicate push down support to JMX connector. 
- Add support for unary - PLUSoperator.
- Improve scheduling speed by reducing lock contention. 
- Extend optimizer to understand physical properties such as local grouping and sorting. 
- Add support for streaming execution of window functions. 
- Make - UNIONrun partitioned, if underlying plan is partitioned.
- Add - hash_partition_countsession property to control hash partitions.
Web UI#
The main page of the web UI has been completely rewritten to use ReactJS. It also has a number of new features, such as the ability to pause auto-refresh via the āZā key and also with a toggle in the UI.
Hive#
- Add support for connecting to S3 using EC2 instance credentials. This feature is enabled by default. To disable it, set - hive.s3.use-instance-credentials=falsein your Hive catalog properties file.
- Treat ORC files as splittable. 
- Change PrestoS3FileSystem to use lazy seeks, which improves ORC performance. 
- Fix ORC - DOUBLEstatistic for columns containing- NaN.
- Lower the Hive metadata refresh interval from two minutes to one second. 
- Invalidate Hive metadata cache for failed operations. 
- Support - s3afile system scheme.
- Fix discovery of splits to correctly backoff when the queue is full. 
- Add support for non-canonical Parquet structs. 
- Add support for accessing Parquet columns by name. By default, columns in Parquet files are accessed by their ordinal position in the Hive table definition. To access columns based on the names recorded in the Parquet file, set - hive.parquet.use-column-names=truein your Hive catalog properties file.
- Add JMX stats to PrestoS3FileSystem. 
- Add - hive.recursive-directoriesconfig option to recursively scan partition directories for data.
SPI#
- Add connector callback for rollback of - INSERTand- CREATE TABLE AS.
- Introduce an abstraction for representing physical organizations of a table and describing properties such as partitioning, grouping, predicate and columns. - ConnectorPartitionand related interfaces are deprecated and will be removed in a future version.
- Rename - ConnectorColumnHandleto- ColumnHandle.
Note
This is a backwards incompatible change with the previous connector SPI. If you have written a connector, you will need to update your code before deploying this release.