20.163. Release 0.70
This release contained a packaging error that resulted in an unusable server tarball. Do not use this release.
We have added support for creating views within Presto. Views are defined using Presto syntax but are stored (as blobs) by connectors. Currently, views are supported by the Raptor and Hive connectors. For the Hive connector, views are stored within the Hive metastore as Hive views, but they cannot be queried by Hive, nor can Hive views be queried by Presto.
DUAL table is no longer supported. As an alternative, please
write your queries without a
FROM clause or use the
There is a new project, Presto Verifier, which can be used to verify a set of queries against two different clusters.
- Connectors can now add hidden columns to a table. Hidden columns are not
information_schema, and are not considered for
SELECT *. As an example, we have added a hidden
row_numbercolumn to the
- Presto contains an extensive test suite to verify the correctness. This test
suite has been extracted into the
presto-testmodule for use during connector development. For an example, see
Machine Learning Functions
We have added two new machine learning functions, which can be used
by advanced users familiar with LIBSVM. The functions are
learn_libsvm_regressor. Both take a
parameters string which has the form
- New comparison functions:
- New window functions:
- We have added a config option to disable falling back to the interpreter when
expressions fail to be compiled to bytecode. To set this option, add
etc/config.properties. This will force certain queries to fail rather than running slowly.
DATEvalues are now implicitly coerced to
TIMESTAMP WITH TIME ZONEby setting the hour/minute/seconds to
0with respect to the session timezone.
- Minor performance optimization when planning queries over tables with tens of thousands of partitions or more.
- Fixed a bug when planning
ORDER BY ... LIMITqueries which could result in duplicate and un-ordered results under rare conditions.
- Reduce the size of stats collected from tasks, which dramatically reduces garbage generation and improves coordinator stability.
- Fix compiler cache for expressions.
- Fix processing of empty or commented out statements in the CLI.
- There are two new configuration options for the Hive connector,
hive.max-initial-split-size, which configures the size of the initial splits, and
hive.max-initial-splits, which configures the number of initial splits. This can be useful for speeding up small queries, which would otherwise have low parallelism.
- The Hive connector will now consider all tables with a non-empty value
for the table property
presto_offlineto be offline. The value of the property will be used in the error message.
- We have added support for for
DROP TABLEin the hive connector. By default, this feature is not enabled. To enable it, set
hive.allow-drop-table=truein your Hive catalog properties file.
- Ignore subdirectories when generating splits (this now matches the non-recursive behavior of Hive).
- Fix handling of maps with null keys.