Apache Drill 1.19.0 Release Notes

Release date: June 10, 2021

Today, we’re happy to announce the availability of Drill 1.19.0. You can download it here.

New Feature

  • [DRILL-92] - Cassandra storage engine
  • [DRILL-3637] - Add Elasticsearch Storage Plugin
  • [DRILL-5940] - Avro with schema registry support for Kafka
  • [DRILL-7112] - Code Cleanup for HTTPD Format Plugin
  • [DRILL-7550] - Add Storage Plugin for Cassandra
  • [DRILL-7817] - Add direct Yauaa support for HTTPD Format Plugin.
  • [DRILL-7855] - Provide a secure mechanism for specifying storage plugin credentials
  • [DRILL-7921] - Support the Linux ARM64 based system

Improvement

  • [DRILL-5405] - Add missing operator types without dependency on protobuf enum
  • [DRILL-7135] - Upgrade to Jetty 9.4
  • [DRILL-7551] - Improve Error Reporting
  • [DRILL-7729] - Use java.time in column accessors. Please note that timestamps returned in the REST API have consequently changed from ISO 8601 to UNIX time in milliseconds.
  • [DRILL-7733] - Use streaming for REST JSON queries
  • [DRILL-7751] - Add Storage Plugin for Splunk
  • [DRILL-7763] - Add Limit Pushdown to File Based Storage Plugins
  • [DRILL-7795] - Add option to native Drill Client to set TLS SNI property
  • [DRILL-7800] - Add Limit Pushdown to HTTP REST Storage Plugin
  • [DRILL-7814] - Add Limit Pushdown to MongoDB Storage Plugin
  • [DRILL-7823] - Add XML Format Plugin
  • [DRILL-7826] - Merge Pcap and Pcapng format plugin based on EVF
  • [DRILL-7829] - Drill Parquet UUID logical type
  • [DRILL-7830] - Add XML as Supported Format for HTTP Plugin
  • [DRILL-7834] - Add Utility Functions for Compressed Files
  • [DRILL-7837] - IntelliJ IDEA and Eclipse formatter file download should be unified
  • [DRILL-7840] - Add OWASP Dependency Report to Pom.XML
  • [DRILL-7846] - uptake POI 5.0.0
  • [DRILL-7847] - Naming the maven modules
  • [DRILL-7852] - Handle PCAP/PCAPNG Better
  • [DRILL-7853] - java.lang.NoSuchMethodException: org.apache.drill.exec.physical.impl.scan.convert.ConvertStringToTimeStamp.<init>(org.apache.drill.exec.vector.accessor.ScalarWriter)
  • [DRILL-7859] - Junit test random failure when the numbers of splunk event was insufficient
  • [DRILL-7860] - Suppress the transfer progress when downloading in CI maven build
  • [DRILL-7861] - Add Function to Obtain Inner Map Schemata
  • [DRILL-7867] - Allow using required arguments for functions with nullable parameters
  • [DRILL-7874] - Drill Fails to Read File Types on S3
  • [DRILL-7875] - NPE in Splunk Queries
  • [DRILL-7903] - Bump mongo driver from 3.12 to 4.2
  • [DRILL-7904] - Update to 30-jre Guava version
  • [DRILL-7908] - Fix GitHub Actions CI
  • [DRILL-7912] - Add Sheet Names to Excel Reader
  • [DRILL-7913] - Improve the tips using the Tooltips
  • [DRILL-7928] - Add fourth parameter for split_part udf
  • [DRILL-7932] - Update Hadoop version to 3.2.2.
  • [DRILL-7933] - Update OkHTTP to Version 4.9.1
  • [DRILL-7946] - Bump HttpClient from 4.5.12 to 4.5.13 for CVE-2020-13956

Bug

  • [DRILL-6547] - IllegalStateException: Tried to remove unmanaged buffer.
  • [DRILL-7094] - UnSupported Bson type: DECIMAL128 Mongodb 3.6 onwards
  • [DRILL-7162] - <SECURITY ISSUE> Apache Drill uses 3rd Party with Highest CVEs
  • [DRILL-7325] - Many operators do not set container record count
  • [DRILL-7712] - Fix issues after ZK upgrade
  • [DRILL-7771] - Order by and limit transactions in RDBMS cannot be pushdown
  • [DRILL-7785] - Some hive tables fail with UndeclaredThrowableException
  • [DRILL-7787] - Apache drill failed to start
  • [DRILL-7790] - Build Drill with Netty version 4.1.50.Final
  • [DRILL-7796] - Excel Reader Throws NPE with Blank Col in Middle
  • [DRILL-7799] - REST Queries Fail If Caching is enabled
  • [DRILL-7812] - Broken equals/hashcode contract
  • [DRILL-7813] - Excel Reader Crashes on Formulae Which Return Strings
  • [DRILL-7816] - bootstrap-storage-plugins.json is an outdated example
  • [DRILL-7818] - SplitPart (SPLIT_PART) UDF work correct only with one-row data
  • [DRILL-7820] - Not Supporting Mongo DB Name Capital Letters
  • [DRILL-7821] - Treat Empty String as NULL in JSON Reader
  • [DRILL-7825] - Error: SYSTEM ERROR: RuntimeException: Unknown logical type <LogicalType UUID:UUIDType()>
  • [DRILL-7831] - Drill Fails To Read XML File with Self Closing Tags
  • [DRILL-7832] - XML Attributes with Underscores Not Being Parsed Correctly
  • [DRILL-7835] - XML Reader Not Reading XML Nested Attributes Correctly
  • [DRILL-7836] - Format Plugins Hang with Compressed Files
  • [DRILL-7841] - Need to exclude or shade netty lib to avoid [WARNING]
  • [DRILL-7848] - Github Actions fails due to outdated package repository cache
  • [DRILL-7850] - Drill class fails reflection resulting in ClassNotFoundException
  • [DRILL-7851] - Restore original and untruncated license text
  • [DRILL-7854] - When writing to S3 “WriteOperationHelper.newUploadPartRequest” throws “NoSuchMethodError”
  • [DRILL-7857] - Fix misc GitHub Actions failures
  • [DRILL-7858] - Drill Crashes with Certain HDF5 Files
  • [DRILL-7865] - Unable to apply DrillPushLimitToScanRule due to NPE
  • [DRILL-7868] - Restore correct master branch state
  • [DRILL-7872] - Heap memory within docker container does not get recycled
  • [DRILL-7877] - Streaming REST API Fails to Send Multiple Batches
  • [DRILL-7885] - HDF5 Plugin not resolving links
  • [DRILL-7887] - JDBC plugin returns incorrect precision for SUM(DECIMAL) queries
  • [DRILL-7888] - query.json returns an incorrect error message when the query fails
  • [DRILL-7890] - mongodb java driver should be updated to latest (4.2) since connect to mongodb >4.0 is not possible
  • [DRILL-7893] - Column alias is not working for a parquet file
  • [DRILL-7894] - Large Attributes Crash HDF5 Reader
  • [DRILL-7899] - Bump checkstyle from 8.16 to 8.29
  • [DRILL-7900] - Bump libthrift from 0.13.0 to 0.14.0
  • [DRILL-7901] - Bump junit from 4.12 to 4.13.1
  • [DRILL-7910] - Bumps commons-io from 2.4 to 2.7
  • [DRILL-7919] - NullReferenceException when reading optional Decimal(29,6) column from parquet
  • [DRILL-7934] - NullPointerException error when reading parquet files
  • [DRILL-7936] - Remove Guava Files#createTempDir usage
  • [DRILL-7937] - INTERNAL_ERROR when querying Parquet File with decimals
  • [DRILL-7940] - Kafka key with avro schema can not displayed correctly
  • [DRILL-7945] - Unable to patch Guava classes

Test

  • [DRILL-7842] - Fix BaseTestInheritance test case

Task

  • [DRILL-7270] - Fix non-https dependency urls and add checksum checks
  • [DRILL-7914] - Apache Drill 1.19.0 Release Activities
  • [DRILL-7917] - Update Kafka to the latest version
  • [DRILL-7918] - Dependency Updates for CVE
  • [DRILL-7920] - Documentation missing for “defaultSchema” in REST Api
  • [DRILL-7929] - Update Kafka unit tests to use ClusterTest

Sub-task

  • [DRILL-6953] - Merge row set-based JSON reader
  • [DRILL-7525] - Convert SequenceFiles to EVF
  • [DRILL-7532] - Convert SysLog to EVF
  • [DRILL-7533] - Convert Pcapng to EVF
  • [DRILL-7534] - Convert HTTPD Format Plugin to EVF
  • [DRILL-7536] - Convert Image format to EVF
  • [DRILL-7552] - Add Helpful Error Message on Storage Plugin Creation/Update
  • [DRILL-7827] - Move the Pcapng format plugin to contrib folder
  • [DRILL-7828] - Refactor Pcap and Pcapng format plugin
  • [DRILL-7838] - Upload the IDEA and Eclipse formatter file to dev branch
  • [DRILL-7839] - Update the doc and remove the formatter file on gh-pages branch
  • [DRILL-7849] - Display error message when cannot enable storage plugin
  • [DRILL-7866] - Provide a helpful message when failure to decode plugin json
  • [DRILL-7911] - Build faillure on Linux ARM64
  • [DRILL-7923] - Use TravisCI for testing Apache Drill on Linux ARM64