Release 0.220
Improve scan performance for queries that read map columns but do not access individual keys.
Raptor Changes
Add support for writing files with
ZSTD
compression. Add configuration propertystorage.orc.compression-kind
to switch betweenSNAPPY
andZSTD
. This is only applied when optimized ORC writer is turned on.Improve performance of the ORC writer in Raptor. Add configuration property
storage.orc.optimized-writer-stage
to enable the performance enhancement. The optimized ORC writer is backward compatible with the Hadoop ORC writer, but the Hadoop ORC writer is not forward compatible with it. Turning on the optimized ORC writer should work on an existing Raptor server. However, switching back to the Hadoop ORC writer may fail Raptor background job.
Add experimental support for partial merge pushdown, which optimizes plans for queries joining over two tables with mismatched but compatible bucket counts. This feature can be enabled by session property
experimental.optimizer.partial-merge-pushdown-strategy
, and is aiming to supersedehive.optimize-mismatched-bucket-count
. See .Improve query performance when writing bucketed tables.
MongoDB Connector Changes
- Add
mongodb.read-preference-tags
configuration property to configure mongodb read preference tags. Tag sets are separated by an ampersand, and each tag set is specified as a comma-separated list of colon-separated key-value pairs. For example,mongodb.read-preference-tags=dc:east,use:reporting&use:reporting
.
- Fix incorrect precision and column display size in
ResultSetMetaData
forCHAR
andVARCHAR
columns.
Verifier Changes
Fix error messages for floating point column mismatches.
Add control and test checksum query IDs to Verifier output event.
Improve Presto query retries by allowing Verifier to recognize
JdbcErrorCode
and , and by markingABANDONED_TASK
,HIVE_WRITER_OPEN_ERROR
,JDBC_ERROR
, andTHRIFT_SERVICE_CONNECTION_ERROR
as retryable errors.
Move
FunctionMetadata
to SPI.Add
FunctionMetadataManager
andStandardFunctionResolution
inConnectorContext
. The two interfaces allow connectors to obtain the metadata of a Presto system function as well as to resolve standard functions, such as add, minus, and, or, etc.Remove redundant offset parameter in
Block#getByte
, , andBlock#getInt
.