Apache Drill 1.21.0 Release Notes
Release date: Feb 21, 2023
Today, we’re happy to announce the availability of Drill 1.21.0. You can download it here.
Sub-task
- [DRILL-8198] - XML EVF2 reader provideSchema usage
- [DRILL-8199] - Convert Excel EVF1 to EVF2
- [DRILL-8208] - Create builder for SqlSelect
- [DRILL-8209] - Introduce rule for converting join with distinct input to semi-join
- [DRILL-8210] - Add substring convertlet
- [DRILL-8211] - Replace deprecated RelNode.getChildExps with Project.getProjects
- [DRILL-8212] - Join queries fail with StackOverflowError
- [DRILL-8213] - Replace deprecated RelNode.getRows with RelNode.estimateRowCount
- [DRILL-8214] - Replace EnumerableTableScan usage with LogicalTableScan
- [DRILL-8216] - Use EVF-based JSON reader for Values operator
- [DRILL-8242] - Fix output for HttpHelperFunctions
- [DRILL-8303] - Add support for inserts into JDBC storage
Bug
- [DRILL-8086] - Convert the CSV (AKA “compliant text”) reader to EVF V2
- [DRILL-8181] - Accept nullable args in HTTP plugin UDFs, fix HikariCP default parm names
- [DRILL-8183] - Respect the ExecConstant.SSL_HANDSHAKE_TIMEOUT option
- [DRILL-8244] - HTTP_Request Not Passing Down Config Variable
- [DRILL-8299] - HashMap key type mismatch in MetadataContext
- [DRILL-8320] - Prevent Infinite Pagination for Index Paginator
- [DRILL-8327] - GoogleSheets not Reporting Schemata to Info_Schema
- [DRILL-8349] - GoogleSheets Not Registering Schemas with Non Default Name
- [DRILL-8351] - UserRemoteException : SYSTEM ERROR: NullPointerException: Schema is currently null. You must call buildSchema(SelectionVectorMode) before this container can return a schema.
- [DRILL-8372] - Unfreed buffers when running a LIMIT 0 query over delimited text
- [DRILL-8392] - Empty Tables Causes Index Out of Bounds Exception on PDF Reader
- [DRILL-8394] - ANALYZE TABLE … COMPUTE STATISTICS fails with a trailing slash
- [DRILL-8398] - Fix GitHub Actions to use proper JDK version
- [DRILL-8399] - MS Access Reader Misinterprets Data Types
- [DRILL-8400] - Fix pruning partitions with pushed transitive predicates
- [DRILL-8401] - Skip nested MAP column without children when creating parquet tables
New Feature
- [DRILL-8287] - Add Support for Keyset Based Pagination
- [DRILL-8289] - Add Threat Hunting Functions
Improvement
- [DRILL-8117] - Upgrade unit tests to the cluster fixture framework
- [DRILL-8132] - Improvement of RPC
- [DRILL-8136] - Overhaul implict type casting logic
- [DRILL-8140] - Add JSON Post Body to HTTP Rest Storage Plugin
- [DRILL-8149] - format-excel plugin needs to support POI IOUtils byte array overrides to support big files
- [DRILL-8153] - Convert OAuth REST APIs to JSON
- [DRILL-8155] - Introduce new plugin authentication modes
- [DRILL-8161] - Add Global Credentials to HTTP Storage Plugin
- [DRILL-8162] - Add OpenAPI Specification documentation for Drill’s REST API
- [DRILL-8167] - Add JSON Config Options to Format Config
- [DRILL-8169] - Add UDFs to HTTP Plugin to Facilitate Joins
- [DRILL-8171] - Convert SequenceFile to EVF2
- [DRILL-8174] - Convert Avro format to EVF2
- [DRILL-8177] - Bump default TLS version to 1.3
- [DRILL-8179] - Convert LTSV Format Plugin to EVF2
- [DRILL-8186] - Convert XML format to EVF2
- [DRILL-8202] - Add Options to Skip Malformed JSON Records to HTTP Plugin
- [DRILL-8204] - Allow Provided Schema for HTTP Plugin in JSON Mode
- [DRILL-8220] - Add User Translation Support for OAuth Enabled Plugins
- [DRILL-8223] - Refactor auth modes dropping DRILL_PROCESS and allowing credential providers everywhere
- [DRILL-8225] - Update LogParser and Yauaa dependencies
- [DRILL-8229] - Add Parameter to Skip Malformed Records to HTTP UDF
- [DRILL-8232] - Add support for user credentials to VaultCredentialsProvider
- [DRILL-8235] - Add Storage Plugin for Google Sheets
- [DRILL-8236] - Move HttpHelperFunctions to use JSON2 reader
- [DRILL-8243] - Move JSON Config Options Out of HTTP Plugin
- [DRILL-8261] - Make the XML format plugin’s attributes MAP an implicit column
- [DRILL-8269] - Classified metrics for easier maintenance
- [DRILL-8277] - Publish SNAPSHOT artifacts to the Apache snapshots repo from CI
- [DRILL-8290] - Early exit from recursive file listing for LIMIT 0 queries
- [DRILL-8301] - Standardise on UTF-8 encoding for char to byte (and vice versa) conversions
- [DRILL-8302] - tidy up some char conversions
- [DRILL-8305] - Add Implicit Fields to Google Sheets Reader
- [DRILL-8309] - Upgrade slf4j to 2.0.x
- [DRILL-8310] - Convert Syslog Format to EVF V2
- [DRILL-8311] - Convert SPSS Format Plugin to EVF V2
- [DRILL-8314] - Add support for automatically retrying and disabling broken storage plugins
- [DRILL-8315] - Convert SAS Format Plugin to EVF V2
- [DRILL-8322] - Add a list of scanned plugin names to the query profile
- [DRILL-8335] - Add Ability to Query GoogleSheets Tabs by Index
- [DRILL-8340] - Add Additional Date Manipulation Functions (Part 1)
- [DRILL-8341] - Add Scanned Plugin List to Sys Profiles Table
- [DRILL-8342] - Add Automatic Retry for Rate Limited APIs
- [DRILL-8354] - Add IS_EMPTY Function.
- [DRILL-8356] - Add File Name to GoogleSheets Plugin
- [DRILL-8357] - Add new config options to the Splunk storage plugin
- [DRILL-8358] - Storage plugin for querying other Apache Drill clusters
- [DRILL-8359] - Add mount and unmount command support to the filesystem plugin
- [DRILL-8360] - Add Provided Schema for XML Reader
- [DRILL-8364] - Add Support for OAuth Enabled File Systems
- [DRILL-8368] - Update Yauaa to 7.9.0
- [DRILL-8370] - Upgrade splunk-sdk-java to 1.9.3
- [DRILL-8371] - Add Write/Append Capability to Splunk Plugin
- [DRILL-8376] - Add Distribution UDFs
- [DRILL-8378] - Support doing Maven releases using modern JDKs
- [DRILL-8381] - Add support for filtered aggregate calls
- [DRILL-8384] - Add Format Plugin for Microsoft Access
- [DRILL-8386] - Add Support for User Translation for Cassandra
- [DRILL-8387] - Add Support for User Translation to ElasticSearch Plugin
- [DRILL-8390] - Minor Improvements to PDF Reader
- [DRILL-8391] - Set autocomplete=”off” on the password field of web UI login forms
- [DRILL-8395] - Add Support for INSERT and Drop Table to GoogleSheets Plugin
Wish
- [DRILL-8035] - Update Janino to 3.1.7 version
- [DRILL-8163] - Increment the Drill version number to 2.0.0-SNAPSHOT
Task
- [DRILL-6076] - Reduce the default memory from a total of 13GB to 5GB
- [DRILL-8270] - Delete obsolete zookeeper patch (tech debt)
- [DRILL-8271] - Make Storage and Format Config Case Insensitive
- [DRILL-8276] - Add Support for User Translation for Splunk
- [DRILL-8304] - Update Calcite to 1.32
- [DRILL-8317] - Convert LogRegex Format Plugin to EVF V2
- [DRILL-8325] - Convert PDF Format Plugin to EVF V2
- [DRILL-8330] - Convert ESRI Shape File Reader to EVF2
- [DRILL-8350] - Convert PCAP Format Plugin to EVF2
- [DRILL-8362] - upgrade excel-streaming-reader v4.0.5
- [DRILL-8363] - upgrade postgresql to 42.4.3 due to security issue
- [DRILL-8379] - Update Calcite to 1.33.0
- [DRILL-8396] - Update checkstyle version