Apache Drill 1.7.0 Release Notes

Release date: June 28, 2016

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

This release provides Monitoring via JMX, Hive CHAR data type support, HBase 1.x support, and the following bug fixes and improvements:

Sub-task

  • [DRILL-4372] - Drill Operators and Functions should correctly expose their types within Calcite
  • [DRILL-4487] - add unit test for DRILL-4449
  • [DRILL-4725] - Improvements to InfoSchema RecordGenerator needed for DRILL-4714

Bug

  • [DRILL-2100] - Drill not deleting spooling files
  • [DRILL-2385] - count on complex objects failed with missing function implementation
  • [DRILL-2593] - 500 error when crc for a query profile is out of sync
  • [DRILL-3705] - Query runs out of memory, reported as FAILED and leaves thread running
  • [DRILL-3714] - Query runs out of memory and remains in CANCELLATION_REQUESTED state until drillbit is restarted
  • [DRILL-3743] - query hangs on sqlline once Drillbit on foreman node is killed
  • [DRILL-3745] - Hive CHAR not supported
  • [DRILL-3763] - Cancel (Ctrl-C) one of concurrent queries results in ChannelClosedException
  • [DRILL-3826] - Concurrent Query Submission leads to Channel Closed Exception
  • [DRILL-3833] - Concurrent Queries Failed Unexpectedly
  • [DRILL-4143] - REFRESH TABLE METADATA - Permission Issues with metadata files
  • [DRILL-4237] - Skew in hash distribution
  • [DRILL-4298] - SYSTEM ERROR: ChannelClosedException
  • [DRILL-4317] - Exceptions on SELECT and CTAS with large CSV files
  • [DRILL-4376] - Wrong results when doing a count(*) on part of directories with metadata cache
  • [DRILL-4459] - SchemaChangeException while querying hive json table
  • [DRILL-4472] - Pushing Filter past Union All fails: DRILL-3257 regressed DRILL-2746 but unit test update break test goal
  • [DRILL-4476] - Enhance Union-All operator for dealing with empty left input or empty both inputs
  • [DRILL-4478] - binary_string cannot convert buffer that were not start from 0 correctly
  • [DRILL-4479] - JsonReader should pick a less restrictive type when creating the default column
  • [DRILL-4484] - NPE when querying empty directory
  • [DRILL-4490] - Count(*) function returns as optional instead of required
  • [DRILL-4494] - Window sum over integer column returns incorrect results.
  • [DRILL-4529] - SUM() with windows function result in mismatch nullability
  • [DRILL-4531] - Query with filter and aggregate hangs in planning phase
  • [DRILL-4589] - Reduce planning time for file system partition pruning by reducing filter evaluation overhead
  • [DRILL-4592] - Explain plan statement should show plan in WebUi
  • [DRILL-4593] - Remove OldAssignmentCreator in FileSystemPlugin
  • [DRILL-4614] - Drill must appoint one data type per one column for self-describing data while querying directories
  • [DRILL-4657] - Rank() will return wrong results if a frame of data is too big (more than 2 batches)
  • [DRILL-4676] - Foreman.moveToState can block forever if called by the foreman thread while the query is still being setup
  • [DRILL-4679] - CONVERT_FROM() json format fails if 0 rows are received from upstream operator
  • [DRILL-4688] - String functions may produce incorrect result when input has multi-byte character
  • [DRILL-4701] - Fix log name and missing lines in logs on Web UI
  • [DRILL-4716] - status.json doesn't work in drill ui
  • [DRILL-4727] - Exclude netty from HBase Client's transitive dependencies
  • [DRILL-4733] - max(dir0) reading more columns than necessary

Improvement

  • [DRILL-3559] - Make filename available to sql statments just like dirN
  • [DRILL-3894] - Directory functions (MaxDir, MinDir ..) should have optional filename parameter
  • [DRILL-4501] - Complete MapOrListWriter for all supported data types
  • [DRILL-4523] - Disallow using loopback address in distributed mode
  • [DRILL-4544] - Improve error messages for REFRESH TABLE METADATA command
  • [DRILL-4549] - Add support for more truncation units in date_trunc function
  • [DRILL-4571] - Add link to local Drill logs from the web UI
  • [DRILL-4573] - Zero copy LIKE, REGEXP_MATCHES, SUBSTR
  • [DRILL-4577] - Improve performance for query on INFORMATION_SCHEMA when HIVE is plugged in
  • [DRILL-4584] - JDBC/ODBC Client IP in Drill audit logs
  • [DRILL-4654] - Expose New System Metrics

New Feature

  • [DRILL-3474] - Add implicit file columns support
  • [DRILL-4132] - Ability to submit simple type of physical plan directly to EndPoint DrillBit for execution
  • [DRILL-4199] - Add Support for HBase 1.X
  • [DRILL-4446] - Improve current fragment parallelization module
  • [DRILL-4607] - Add a split function that allows to separate string by a delimiter

Task

  • [DRILL-4050] - Add zip archives to the list of artifacts in verify_release.sh

Test

  • [DRILL-4170] - how many concurrent users can be supported
  • [DRILL-4437] - Implement framework for testing operators in isolation