# Presto 316 Documentation

## 12.11. Release 306

## General Changes

- Fix planning failure for queries containing a `LIMIT` after a global aggregation. (#437)
- Fix missing column types in `EXPLAIN` output. (#328)
- Fix accounting of peak revocable memory reservation. (#413)
- Fix double memory accounting for aggregations when spilling is active. (#413)
- Fix excessive CPU usage that can occur when spilling for window functions. (#468)
- Fix incorrect view name displayed by `SHOW CREATE VIEW`. (#433)
- Allow specifying `NOT NULL` when creating tables or adding columns. (#418)
- Add a config option (`query.stage-count-warning-threshold`) to specify a per-query threshold for the number of stages. When this threshold is exceeded, a `TOO_MANY_STAGES` warning is raised. (#330)
- Support session property values with special characters (e.g., comma or equals sign). (#407)
- Remove the `deprecated.legacy-unnest-array-rows` configuration option. The legacy behavior for `UNNEST` of arrays containing `ROW` values is no longer supported. (#430)
- Remove the `deprecated.legacy-row-field-ordinal-access` configuration option. The legacy mechanism for accessing fields of anonymous `ROW` types is no longer supported. (#428)
- Remove the `deprecated.group-by-uses-equal` configuration option. The legacy equality semantics for `GROUP BY` are not longer supported. (#432)
- Remove the `deprecated.legacy-map-subscript`. The legacy behavior for the map subscript operator on missing keys is no longer supported. (#429)
- Remove the `deprecated.legacy-char-to-varchar-coercion` configuration option. The legacy coercion rules between `CHAR` and `VARCHAR` types are no longer supported. (#431)
- Remove deprecated `distributed_join` system property. Use `join_distribution_type` instead. (#452)

## Hive Connector Changes

- Fix calling procedures immediately after startup, before any other queries are run. Previously, the procedure call would fail and also cause all subsequent Hive queries to fail. (#414)
- Improve ORC reader performance for decoding `REAL` and `DOUBLE` types. (#465)

## MySQL Connector Changes

- Allow creating or renaming tables, and adding, renaming, or dropping columns. (#418)

## PostgreSQL Connector Changes

- Fix predicate pushdown for PostgreSQL `ENUM` type. (#408)
- Allow creating or renaming tables, and adding, renaming, or dropping columns. (#418)

## Redshift Connector Changes

- Allow creating or renaming tables, and adding, renaming, or dropping columns. (#418)

## SQL Server Connector Changes

- Allow creating or renaming tables, and adding, renaming, or dropping columns. (#418)

## Base-JDBC Connector Library Changes

- Allow mapping column type to Presto type based on `Block`. (#454)

## SPI Changes

- Deprecate Table Layout APIs. Connectors can opt out of the legacy behavior by implementing `ConnectorMetadata.usesLegacyTableLayouts()`. (#420)
- Add support for limit pushdown into connectors via the `ConnectorMetadata.applyLimit()` method. (#421)
- Add time spent waiting for resources to `QueryCompletedEvent`. (#461)