prestodb / presto

The official home of the Presto distributed SQL query engine for big data
http://prestodb.io
Apache License 2.0
16.02k stars 5.36k forks source link

0.198 release notes #10292

Closed martint closed 6 years ago

martint commented 6 years ago

Dain Sundstrom

rschlussel commented 6 years ago

General

nezihyigitbasi commented 6 years ago

General

mbasmanova commented 6 years ago

General

wenleix commented 6 years ago

General

dain commented 6 years ago

General
-------
* Improve performance of dynamic writer scaling.

SPI
---
* Add performance statistics to plan in ``QueryCompletedEvent``.
* Remove ``Page.getBlocks()``.  This call was rarely used and is performs an expensive copy.  Instead use ``Page.getBlock(channel)`` or the new helper ``Page.appendColumn()``.
* Improve validation ``MapBlock``, ``RowBlock`` and ``ArrayBlock`` during construction.
haozhun commented 6 years ago

General
-------

* Allow omission of step parameter in ``DATE`` variant of :func:`sequence` function
  when the desired step is 1/-1 day.
kokosing commented 6 years ago
General
 * Optimize empty table scan to empty `VALUES`.

JMX Connector
---------------
 * Add wildcard character * which allows to query several MBeans data with single query.
highker commented 6 years ago

Hive

findepi commented 6 years ago
General
-------
* Parse decimal literals (e.g. ``42.0``) as ``DECIMAL``. Previously they were parsed as ``DOUBLE``.
* Fix ``current_date`` failure when session time zone had a "gap" at 1970-01-01 00:00:00, e.g. ``America/Bahia_Banderas``.
* Support ``ESCAPE`` for ``LIKE`` predicate in ``SHOW SCHEMAS`` and ``SHOW TABLES`` queries.
* Enable simplification and pushdown of operators on ``DECIMAL``s.

However I think current_date and fixing DECIMAL operators are so small a thing that they don't deserve release note's space. @martint ?

martint commented 6 years ago

The current_date change makes sense to document. What's the "simplification and pushdown of operators" for DECIMAL?

electrum commented 6 years ago

Resource Groups Changes
-----------------------

* Query Queues have been removed. Resource Groups are always enabled. The
  config property ``experimental.resource-groups-enabled`` has been removed.

CLI Changes
-----------

* The ``--enable-authentication`` option has been removed. Kerberos authentication
  is automatically enabled when ``--krb5-remote-service-name`` is specified.
* Kerberos authentication now requires HTTPS.

Hive Changes
------------

* Add support for using `AWS Glue <https://aws.amazon.com/glue/>`_ as the metastore.
  Enable it by setting the ``hive.metastore`` config property to ``glue``.
findepi commented 6 years ago

What's the "simplification and pushdown of operators" for DECIMAL?

@martint certain operations on decimal were registered as nondeterministic (https://github.com/prestodb/presto/commit/7713581f712f0ae3e50a3de7715f2f4f4f06cb51 + https://github.com/prestodb/presto/commit/250aa04e4906ffa8560a9ea0d7a735bf27c43c00). I observed this prevented them from being simplified by ExpressionOptimizer (https://github.com/prestodb/presto/blob/aad321268dcee7228748652ff276d479124e8aba/presto-main/src/main/java/com/facebook/presto/sql/relational/optimizer/ExpressionOptimizer.java#L173), but i thought we consider determinism in other places too.

However, this bullet may be actually wrong, since https://github.com/prestodb/presto/blob/aad321268dcee7228748652ff276d479124e8aba/presto-main/src/main/java/com/facebook/presto/sql/planner/ExpressionInterpreter.java#L771 and https://github.com/prestodb/presto/blob/aad321268dcee7228748652ff276d479124e8aba/presto-main/src/main/java/com/facebook/presto/sql/planner/ExpressionInterpreter.java#L1120 do not check determinism and DeterminismEvaluator checks determinism of function calls only. If indeed so, the bullet should be removed. ExpressionOptimizer misbehavior was actually a regression after Construct proper literal for DECIMAL in LiteralInterpreter.toExpression commit, which is also part of this release.

sopel39 commented 6 years ago
General
-------
* Add configuration property ``task.max-local-exchange-buffer-size`` for setting local exchange buffer size
* Improve parallelism of queries with empty grouping set