drill.git
3 years ago[maven-release-plugin] prepare release drill-1.16.0 1.16.0 1903/head drill-1.16.0
Sorabh Hamirwasia [Fri, 26 Apr 2019 05:24:03 +0000 (22:24 -0700)] 
[maven-release-plugin] prepare release drill-1.16.0

3 years agoDRILL-7188: Revert DRILL-6642: Update protocol-buffers version
Sorabh Hamirwasia [Tue, 9 Apr 2019 01:22:31 +0000 (18:22 -0700)] 
DRILL-7188: Revert DRILL-6642: Update protocol-buffers version

1. Updated protobuf to version 3.6.1
2. Added protobuf to the root pom dependency management
3. Added classes BoundedByteString and LiteralByteString for compatibility with HBase
4. Added ProtobufPatcher to provide compatibility with MapR-DB and HBase

3 years agoDRILL-7189: Revert DRILL-7105 Error while building the Drill native client
Sorabh Hamirwasia [Tue, 9 Apr 2019 01:14:15 +0000 (18:14 -0700)] 
DRILL-7189: Revert DRILL-7105 Error while building the Drill native client

This reverts commit a72f1700a8d260a2f92ba8955c77df6428feb919.

3 years agoDRILL-7201: Strange symbols in error window (Windows)
Kunal Khatua [Thu, 25 Apr 2019 20:53:51 +0000 (13:53 -0700)] 
DRILL-7201: Strange symbols in error window (Windows)

Looks like some unicode characters creeped in, causing the rendering to be messed up ONLY for Windows OS. This PR patches that issue and ensures that the Alert symbol also appears correctly.

3 years agoDRILL-7213: Use dependencySets tag for including artifacts in assembly to consider...
Volodymyr Vysotskyi [Thu, 25 Apr 2019 10:41:27 +0000 (13:41 +0300)] 
DRILL-7213: Use dependencySets tag for including artifacts in assembly to consider dependencies from the distribution module

3 years agoDRILL-7207: Update the copyright year in NOTICE.txt file
Sorabh Hamirwasia [Thu, 25 Apr 2019 22:16:54 +0000 (15:16 -0700)] 
DRILL-7207: Update the copyright year in NOTICE.txt file

3 years agoDRILL-7212: Add gpg key with apache.org email for sorabh
Sorabh Hamirwasia [Thu, 25 Apr 2019 22:19:55 +0000 (15:19 -0700)] 
DRILL-7212: Add gpg key with apache.org email for sorabh
Note: Revert "Add public gpg key for Sorabh"
This reverts commit 5a0155977daabe33422aafa96ba04f880d8e7b04.

3 years agoDRILL-7202: Failed query shows warning that fragments made no progress
Kunal Khatua [Wed, 24 Apr 2019 22:04:26 +0000 (15:04 -0700)] 
DRILL-7202: Failed query shows warning that fragments made no progress

This bug arises because of the `toggleWarning()` javascript function that shows the warning if the number of slow major fragments matches the number of major fragments.
For failed queries, the number of major fragments = 0; and that matches the number of tags (which is also zero for a non-running query). Hence the warning shows.

3 years agoDRILL-7190: Missing backward compatibility for REST API with DRILL-6562
Vitalii Diravka [Sat, 20 Apr 2019 01:47:15 +0000 (04:47 +0300)] 
DRILL-7190: Missing backward compatibility for REST API with DRILL-6562

3 years agoFixed Error for Long Packets
Charles Givre [Thu, 18 Apr 2019 17:03:48 +0000 (13:03 -0400)] 
Fixed Error for Long Packets

3 years agoDRILL-7186: Add back storage.json REST endpoint (regression after DRILL-6562)
Arina Ielchiieva [Fri, 19 Apr 2019 12:00:43 +0000 (15:00 +0300)] 
DRILL-7186: Add back storage.json REST endpoint (regression after DRILL-6562)

3 years agoDRILL-7183: TPCDS query 10, 35, 69 take longer with sf 1000 when Statistics are disabled.
HanumathRao [Wed, 17 Apr 2019 13:56:38 +0000 (06:56 -0700)] 
DRILL-7183: TPCDS query 10, 35, 69 take longer with sf 1000 when Statistics are disabled.
This commit reverts the changes done for DRILL-6997.

3 years agoDRILL-7182: Incorrect access specifier for Join DrillRelMdDistinctRowCount
Gautam Parai [Tue, 16 Apr 2019 21:46:21 +0000 (14:46 -0700)] 
DRILL-7182: Incorrect access specifier for Join DrillRelMdDistinctRowCount

3 years agoDRILL-7165: Redundant Checksum calculating for ASC files
Vitalii Diravka [Wed, 10 Apr 2019 21:06:55 +0000 (00:06 +0300)] 
DRILL-7165: Redundant Checksum calculating for ASC files

- change 'checksum-maven-plugin' 'goal' - 'artifacts' -> 'files'
- specify 'includes' in 'fileSet' for 'checksum-maven-plugin'

3 years agoDRILL-7166: Count query with wildcard should skip reading of metadata summary file
Venkata Jyothsna Donapati [Thu, 11 Apr 2019 00:15:32 +0000 (17:15 -0700)] 
DRILL-7166: Count query with wildcard should skip reading of metadata summary file

3 years agoDRILL-7160: e.q.max_rows QUERY-level option shown even if not set
Kunal Khatua [Wed, 10 Apr 2019 19:33:02 +0000 (12:33 -0700)] 
DRILL-7160: e.q.max_rows QUERY-level option shown even if not set

The fix is to force setting to zero IFF autoLimit was intended to be set originally but is inapplicable; such as 'SHOW DATABASES'. If autolimit was not intended to be applied, setting the value to zero is not required.
WebUI is also patched to not show the zero value set in such scenarios.

3 years agoDRILL-7089: Implement caching for TableMetadataProvider at query level and adapt...
Volodymyr Vysotskyi [Tue, 19 Mar 2019 15:15:43 +0000 (17:15 +0200)] 
DRILL-7089: Implement caching for TableMetadataProvider at query level and adapt statistics to use Drill metastore API

closes #1728

3 years agoDRILL-7064: Leverage the summary metadata for plain COUNT aggregates.
Aman Sinha [Tue, 26 Mar 2019 18:45:02 +0000 (11:45 -0700)] 
DRILL-7064: Leverage the summary metadata for plain COUNT aggregates.

Add unit test

Modify MetadataDirectGroupScan to track summary file information and use in unit test.

Conflicts:
exec/java-exec/src/main/java/org/apache/drill/exec/store/parquet/metadata/Metadata.java
exec/java-exec/src/main/java/org/apache/drill/exec/store/parquet/metadata/Metadata_V4.java

Fix NPE for DrillTable to account for non-eligible tables.

Fix bug with direct scan after directory pruning.  Add unit test.

Address review comments.

closes #1736

3 years agoDRILL-7063: Seperate metadata cache file into summary, file metadata
Venkata Jyothsna Donapati [Fri, 1 Mar 2019 00:56:02 +0000 (16:56 -0800)] 
DRILL-7063: Seperate metadata cache file into summary, file metadata

closes #1723

3 years agoDRILL-7154: TPCH query 4, 17 and 18 take longer with sf 1000 when Statistics are...
HanumathRao [Fri, 5 Apr 2019 19:08:25 +0000 (12:08 -0700)] 
DRILL-7154: TPCH query 4, 17 and 18 take longer with sf 1000 when Statistics are disabled.

closes #1737

3 years agoDRILL-7159: Fix typeString method to return correct name for MAP (aka STRUCT)
Arina Ielchiieva [Mon, 8 Apr 2019 16:06:08 +0000 (19:06 +0300)] 
DRILL-7159: Fix typeString method to return correct name for MAP (aka STRUCT)
closes #1741

3 years agoDRILL-7119: Compute range predicate selectivity using histograms. 1733/head
Aman Sinha [Mon, 25 Mar 2019 13:55:57 +0000 (06:55 -0700)] 
DRILL-7119: Compute range predicate selectivity using histograms.

Address code review comments.  Add unit test for histogram usage.

close apache/drill#1733

3 years agoDRILL-7045: Updates to address review comments
Sorabh Hamirwasia [Tue, 2 Apr 2019 20:24:59 +0000 (13:24 -0700)] 
DRILL-7045: Updates to address review comments

closes #7134

3 years agoDRILL-7045 UDF string_binary java.lang.IndexOutOfBoundsException
Jean-Claude [Thu, 21 Feb 2019 04:52:16 +0000 (23:52 -0500)] 
DRILL-7045 UDF string_binary java.lang.IndexOutOfBoundsException

UDF string_binary was not reallocating the drillbuffer so it would fill
up and throw and out of bounds exception

3 years agoDRILL-7049: REST API returns the toString of byte arrays (VARBINARY types)
Vitalii Diravka [Sun, 7 Apr 2019 23:19:59 +0000 (02:19 +0300)] 
DRILL-7049: REST API returns the toString of byte arrays (VARBINARY types)

closes #1739

3 years agoDRILL-7049 return VARBINARY as a string with escaped non printable bytes
Jean-Claude [Thu, 21 Feb 2019 21:55:15 +0000 (16:55 -0500)] 
DRILL-7049 return VARBINARY as a string with escaped non printable bytes

3 years agoDRILL-7157: Wrap SchemaParsingException into UserException when creating schema
Arina Ielchiieva [Mon, 8 Apr 2019 07:32:11 +0000 (10:32 +0300)] 
DRILL-7157: Wrap SchemaParsingException into UserException when creating schema

closes #1740

3 years agoDRILL-7143: Support default value for empty columns
Paul Rogers [Mon, 1 Apr 2019 07:10:14 +0000 (00:10 -0700)] 
DRILL-7143: Support default value for empty columns

Modifies the prior work to add default values for columns. The prior work added defaults
when the entire column is missing from a reader (the old Nullable Int column). The Row
Set mechanism now will also "fill empty" slots with the default value.

Added default support for the column writers. The writers automatically obtain the
default value from the column schema. The default can also be set explicitly on
the column writer.

Updated the null column mechanism to use this feature rather than the ad-hoc
implemention in the prior commit.

Semantics changed a bit. Only Required columns take a default. The default value
is ignored or nullable columns since nullable columns already have a file default: NULL.

Other changes:

* Updated the CSV-with-schema tests to illustrate the new behavior.
* Made multiple fixes for Boolean and Decimal columns and added unit tests.
* Upgraded Fremarker to version 2.3.28 to allow use of the continue statement.
* Reimplemented the Bit column reader and writer to use the BitVector directly since this vector is rather special.
* Added get/set Boolean methods for column accessors
* Moved the BooleanType class to the common package
* Added more CSV unit tests to explore decimal types, booleans, and defaults
* Add special handling for blank fields in from-string conversions
* Added options to the conversion factory to specify blank-handling behavior.
  CSV uses a mapping of blanks to null (nullable) or default value (non-nullable)

closes #1726

3 years agoDRILL-7048: Implement JDBC Statement.setMaxRows() with System Option
Kunal Khatua [Thu, 4 Apr 2019 17:41:28 +0000 (10:41 -0700)] 
DRILL-7048: Implement JDBC Statement.setMaxRows() with System Option

This introduces support for JDBC's Statement.setMaxRows(int) API, which can help Drill execute a query much faster if it knows that not ALL the records in the resultset will be consumed upfront.
This Commit introduces the core changes to support the feature within Drill's execution engine
Protobuf Changes

1. RunQuery: Added "autolimit_rowcount"
2. QueryProfile: Added "autoLimit"
3. Regenerated Java and C++ client files
REST API support

1. Support for REST server to interpret a submitted query and also for rendering this information for an executed query
2. Updates to the Freemarker templates (for WebUI)
3. Safety check within Javascript (for WebUI)
JDBC API support

1. Introduces backend execution of 'ALTER SESSION' to apply the auto-limiting of resultset size
2. Added Unit Tests for PreparedStatement and Statement objects
3. Added getter setter methods to be skipped in testing for org.apache.drill.jdbc.test.Drill2489CallsAfterCloseThrowExceptionsTest.testclosedPreparedStmtOfOpenConnMethodsThrowRight()
Updates based on review comments

Additional Updates

Test Cleanup

1. Revert Drill2489 hack
2. Formatting in *StatementTest
3. Removal f redundant `statement.close()`
4. Manage new Exception thrown when setting invalid maxRow values

Final updates

1. Test changes
2. Trim trailing spaces in auto-limit value (Javascript)
3. Before & After annotations to synchronize changes to system values for MaxRows(auto-limit)

Reorganized tests due to synchronized locking

Removed conflicting JsonCreator in QueryWrapper

Additional test cleanup

closes #1714

3 years agoDRILL-7115: Improve Hive schema show tables performance
Igor Guzenko [Tue, 19 Mar 2019 19:11:41 +0000 (21:11 +0200)] 
DRILL-7115: Improve Hive schema show tables performance

1. To make SHOW TABLES for Hive schema work much faster, additional Drill
   feature of showing only accesible tables when Storage-Based authorization
   is enabled was sacrificed. Now the behaviour matches to Hive/Beeline, all
   tables will be shown despite of accessibility. For details about previous
   show tables results, check description of DRILL-540.
2. In HiveDatabaseSchema implemented faster getTableNamesAndTypes() method
   and removed bulk related code.
3. Deprecated bulk related options and removed bulk code from AbstractSchema,
   DrillHiveMetastoreClient.
4. For 8000 Hive tables query returned in 1.8 seconds, for combination of
   4000 tables and 8000 views query returned in 2.3 seconds. Note, that
   after first query table names will be cached and next queries will perform
   in less than 1 sec.
5. Refactored WorkspaceSchemaFactory's getTableNamesAndTypes()
   method to reuse existing getViews() method.
6. DrillHiveMetastoreClient was refactored. Classes were unnested and enclosed
   within client package with restricted visibility. Also was updated cache
   values type to avoid unnecessarry List to Set back and forth conversions.
   Client creation methods moved to separate class. So the new package
   exposes only factory and client class.

closes #1706

3 years agoDRILL-7150: Fix timezone conversion for timestamp from MaprDB after the transition...
Volodymyr Vysotskyi [Tue, 2 Apr 2019 14:42:52 +0000 (17:42 +0300)] 
DRILL-7150: Fix timezone conversion for timestamp from MaprDB after the transition from PDT to PST
closes #1729

3 years agoDRILL-7107 Unable to connect to Drill 1.15 through ZK
karthik [Thu, 14 Mar 2019 23:37:16 +0000 (16:37 -0700)] 
DRILL-7107 Unable to connect to Drill 1.15 through ZK
closes #1702

3 years agoDRILL-7145: Exceptions happened during retrieving values from ValueVector are not...
Anton Gozhiy [Mon, 1 Apr 2019 17:11:22 +0000 (20:11 +0300)] 
DRILL-7145: Exceptions happened during retrieving values from ValueVector are not being displayed at the Drill Web UI
closes #1727

3 years agoDRILL-7153: Drill Fails to Build using JDK 1.8.0_65
Charles S. Givre [Wed, 3 Apr 2019 20:37:01 +0000 (16:37 -0400)] 
DRILL-7153: Drill Fails to Build using JDK 1.8.0_65
closes #1731

3 years agoDRILL-7155: Create a standard logging message for batch sizes generated by individual...
Robert Hou [Tue, 19 Mar 2019 18:03:25 +0000 (11:03 -0700)] 
DRILL-7155: Create a standard logging message for batch sizes generated by individual operators.
This is needed for QA verification of the Batch Size feature DRILL-6238.
closes #1716

3 years agoDRILL-7076: Fix NPE in StatsMaterializationVisitor
Gautam Parai [Tue, 26 Mar 2019 00:12:06 +0000 (17:12 -0700)] 
DRILL-7076: Fix NPE in StatsMaterializationVisitor

closes #1722

3 years agoDRILL-7146: Query failing with NPE when ZK queue is enabled.
HanumathRao [Mon, 1 Apr 2019 21:23:27 +0000 (14:23 -0700)] 
DRILL-7146: Query failing with NPE when ZK queue is enabled.

3 years agoDRILL-7152: During histogram creation handle the case when all values of a column... 1730/head
Aman Sinha [Tue, 2 Apr 2019 21:30:26 +0000 (14:30 -0700)] 
DRILL-7152: During histogram creation handle the case when all values of a column are NULLs.

close apache/drill#1730

3 years agoDRILL-7117: Support creation of equi-depth histogram for selected data types. 1715/head
Aman Sinha [Wed, 13 Feb 2019 23:29:04 +0000 (15:29 -0800)] 
DRILL-7117: Support creation of equi-depth histogram for selected data types.

Support int/bigint/float4/float8, time/timestamp/date and boolean.

Build the histogram from the t-digest byte array and serialize as JSON string.

More changes for serialization/deserialization.

Add code-gen stubs (empty) for VarChar/VarBinary types.

Address review comments (part 1).  Add unit test.

Address review comments (part 2) for sampling.

close apache/drill#1715

3 years agoDRILL-7140: RM: Drillbits fail with "No enum constant org.apache.drill.exec.resourcem...
Sorabh Hamirwasia [Fri, 29 Mar 2019 05:10:09 +0000 (22:10 -0700)] 
DRILL-7140: RM: Drillbits fail with "No enum constant org.apache.drill.exec.resourcemgr.config.selectionpolicy.QueueSelectionPolicy.SelectionPolicy.bestfit"

closes #1720

3 years agoDRILL-6970 Fix issue with logregex format plugin where drillbuf was
Jean-Claude [Sat, 12 Jan 2019 14:15:44 +0000 (09:15 -0500)] 
DRILL-6970 Fix issue with logregex format plugin where drillbuf was
overflowing

closes #1673

3 years agoDRILL-7142: Add space after > in SqlLine prompt
Arina Ielchiieva [Fri, 29 Mar 2019 17:57:07 +0000 (19:57 +0200)] 
DRILL-7142: Add space after > in SqlLine prompt

closes #1721

3 years agoDRILL-7077: Add Function to Facilitate Time Series Analysis
Charles S. Givre [Mon, 25 Mar 2019 17:45:01 +0000 (13:45 -0400)] 
DRILL-7077: Add Function to Facilitate Time Series Analysis

closes #1680

3 years agoDRILL-7051: Upgrade jetty
Vitalii Diravka [Sun, 3 Mar 2019 22:05:14 +0000 (00:05 +0200)] 
DRILL-7051: Upgrade jetty
- upgrade Jetty dependencies to 9.3 version
- adaptation to the new Jetty API (SessionHandler, LoginService, AbstractLoginService)
- add JavaDocs and code refactoring

closes #1681

3 years agoDRILL-7032: Ignore corrupt rows in a PCAP file
Charles S. Givre [Mon, 25 Mar 2019 15:40:29 +0000 (11:40 -0400)] 
DRILL-7032: Ignore corrupt rows in a PCAP file

closes #1637

3 years agoDRILL-6989: Upgrade to SqlLine 1.7
Arina Ielchiieva [Tue, 5 Feb 2019 11:51:13 +0000 (13:51 +0200)] 
DRILL-6989: Upgrade to SqlLine 1.7

closes #1717

3 years agoDRILL-7011: Support schema in scan framework
Paul Rogers [Sun, 17 Mar 2019 20:57:54 +0000 (13:57 -0700)] 
DRILL-7011: Support schema in scan framework

* Adds schema support to the row set-based scan framework and to the "V3" text reader based on that framework.
* Adding the schema made clear that passing options as a long list of constructor arguments was not sustainable. Refactored code to use a builder pattern instead.
* Added support for default values in the "null column loader", which required adding a "setValue" method to the column accessors.
* Added unit tests for all new or changed functionality. See TestCsvWithSchema for the overall test of the entire integrated mechanism.
* Added tests for explicit projection with schema
* Better handling of date/time in column accessors
* Converted recent column metadata work from Java 8 date/time to Joda.
* Added more CSV-with-schema unit tests
* Removed the ID fields from "resolved columns", used "instanceof" instead.
* Added wildcard projection with an output schema. Handles both "lenient" and "strict" schemas.
* Tagged projection columns with their output schema, when available.
* Scan projection added modes for wildcard with an output schema. The reader projection added support for merging reader and output schemas.
* Includes refactoring of scan operator tests (the test file grew too large.)
* Renamed some classes to avoid confusing reader schemas with output schemas.
* Added unit tests for the new functionality.
* Added "lenient" wildcard with schema test for CSV
* Added more type conversions: string-to-bit, many-to-string
* Fixed bug in column writer for VarDecimal
* Added missing unit tests, and fixed bugs, in Bit column reader/writer
* Cleaned up a number of unneded "SuppressWarnings"

closes #1711

3 years agoDRILL-7138: Implement command to describe schema for table
Arina Ielchiieva [Thu, 28 Mar 2019 16:04:31 +0000 (18:04 +0200)] 
DRILL-7138: Implement command to describe schema for table

closes #1719

3 years agoDRILL-7121: Use the NDV guess (same as before) when statistics is disabled
Gautam Parai [Mon, 25 Mar 2019 19:08:31 +0000 (12:08 -0700)] 
DRILL-7121: Use the NDV guess (same as before) when statistics is disabled

closes #1718

3 years agoDRILL-6562: Plugin Management improvements
Vitalii Diravka [Mon, 23 Jul 2018 10:03:50 +0000 (13:03 +0300)] 
DRILL-6562: Plugin Management improvements

- allow export plugin configs to json or hocon file formt
- allow export plugins configs for all/enabled/disabled groups
- add modals for export plugins and create new plugin
- storage UI improvements,responsive Storage page
- StorageResources refactoring. Remove redundant deletePlugin() DELETE request
- fix broken message for deletePlugin

closes #1692

3 years agoDRILL-7079: Drill can't query views from the S3 storage when plain authentication...
Bohdan Kazydub [Thu, 21 Mar 2019 08:52:14 +0000 (10:52 +0200)] 
DRILL-7079: Drill can't query views from the S3 storage when plain authentication is enabled

closes #1712

3 years agoDRILL-7103: Incorrect conversion to integer in BsonRecordReader#writeTimeStamp
Oleg Zinoviev [Thu, 14 Mar 2019 13:56:45 +0000 (16:56 +0300)] 
DRILL-7103: Incorrect conversion to integer in BsonRecordReader#writeTimeStamp

closes #1695

3 years agoDRILL-7118: Filter not getting pushed down on MapR-DB tables.
HanumathRao [Wed, 20 Mar 2019 19:01:11 +0000 (12:01 -0700)] 
DRILL-7118: Filter not getting pushed down on MapR-DB tables.

closes #1708

3 years agoDRILL-7124: Fix logger for ShowFilesHandler
Arina Ielchiieva [Wed, 20 Mar 2019 11:03:07 +0000 (13:03 +0200)] 
DRILL-7124: Fix logger for ShowFilesHandler

closes #1705

3 years agoDRILL-7110: Skip writing profile when an ALTER SESSION is executed (#1703)
Kunal Khatua [Sat, 23 Mar 2019 15:32:34 +0000 (08:32 -0700)] 
DRILL-7110: Skip writing profile when an ALTER SESSION is executed (#1703)

Allows (by default) for `ALTER SESSION SET <option>=<value>` queries to NOT be writen to the profile store. This would avoid the risk of potentially adding up to a lot of profiles being written unnecessarily, since those changes are also reflected on the queries that follow.

3 years agoDRILL-7109: Apply selectivity calculations to single column filter predicates
Gautam Parai [Mon, 18 Mar 2019 19:55:07 +0000 (12:55 -0700)] 
DRILL-7109: Apply selectivity calculations to single column filter predicates

closes #1701

3 years agoAdd public gpg key for Sorabh
Sorabh Hamirwasia [Fri, 22 Mar 2019 22:16:38 +0000 (15:16 -0700)] 
Add public gpg key for Sorabh

3 years agoFixed IllegalStateException while reading Parquet data
Salim Achouche [Fri, 22 Mar 2019 15:49:08 +0000 (08:49 -0700)] 
Fixed IllegalStateException while reading Parquet data

3 years agoDRILL-7126: Contrib format-ltsv is not being included in distribution (#1709)
Abhishek Girish [Thu, 21 Mar 2019 20:54:39 +0000 (13:54 -0700)] 
DRILL-7126: Contrib format-ltsv is not being included in distribution (#1709)

3 years agoDRILL-7125: REFRESH TABLE METADATA fails after upgrade from Drill 1.13.0 to Drill...
Sorabh Hamirwasia [Wed, 20 Mar 2019 20:29:40 +0000 (13:29 -0700)] 
DRILL-7125: REFRESH TABLE METADATA fails after upgrade from Drill 1.13.0 to Drill 1.15.0

3 years agoDRILL-6852: Adapt current Parquet Metadata cache implementation to use Drill Metastor...
Volodymyr Vysotskyi [Fri, 8 Mar 2019 12:18:31 +0000 (14:18 +0200)] 
DRILL-6852: Adapt current Parquet Metadata cache implementation to use Drill Metastore API

Co-authored-by: Volodymyr Vysotskyi <vvovyk@gmail.com>
Co-authored-by: Vitalii Diravka <vitalii@apache.org>
close apache/drill#1646

3 years agoDRILL-7113: Fix creation of filter conditions for IS NULL and IS NOT NULL for MapR...
Aman Sinha [Tue, 19 Mar 2019 21:38:47 +0000 (14:38 -0700)] 
DRILL-7113: Fix creation of filter conditions for IS NULL and IS NOT NULL for MapR-DB format plugin

close apache/drill#1704

3 years agoDRILL-7108: Improve selectivity estimates for (NOT)LIKE, NOT_EQUALS, IS NOT NULL...
Gautam Parai [Wed, 13 Mar 2019 01:29:16 +0000 (18:29 -0700)] 
DRILL-7108: Improve selectivity estimates for (NOT)LIKE, NOT_EQUALS, IS NOT NULL predicates

closes #1699

3 years agoDRILL-7086: Output schema for row set mechanism
Paul Rogers [Sun, 10 Mar 2019 03:33:04 +0000 (19:33 -0800)] 
DRILL-7086: Output schema for row set mechanism

Enhances the row set mechanism to take an "output schema" that describes the vectors to
create. The "input schema" describes the type that the reader would like to write. A
conversion mechanism inserts a conversion shim to convert from the input to output type.

Provides a set of implicit type conversions, including string-to-date/time conversions
which use the new format property stored in column metadata. Includes unit tests for
the new functionality.

closes #1690

3 years agoDRILL-7106: Fix Intellij warning for FieldSchemaNegotiator
Arina Ielchiieva [Fri, 15 Mar 2019 16:00:23 +0000 (18:00 +0200)] 
DRILL-7106: Fix Intellij warning for FieldSchemaNegotiator

closes #1698

3 years agoDRILL-7111: Fix table function execution for directories
Arina Ielchiieva [Mon, 18 Mar 2019 16:19:39 +0000 (18:19 +0200)] 
DRILL-7111: Fix table function execution for directories

closes #1700

3 years agoDRILL-7095: Expose table schema (TupleMetadata) to physical operator (EasySubScan)
Arina Ielchiieva [Thu, 14 Mar 2019 16:46:37 +0000 (18:46 +0200)] 
DRILL-7095: Expose table schema (TupleMetadata) to physical operator (EasySubScan)

1. Add system / session option store.table.use_schema_file to control if file schema can be used during query execution. False by default.
2. Added methods in StoragePlugin interface which allow to create Group Scan with provided table schema.
3. EasyGroupScan and EasySubScan now contain table schema, also they are able to serialize / deserialize it along with other scan properties.
4. DrillTable which is the main entry point for schema provisioning, has method to store schema and later uses it to create physical scan.
5. WorkspaceSchema when returning Drill table instance will get table schema from table root if available and if store.table.use_schema_file is set to true.

This PR is the next step for Schema Provisioning project which currently exposes schema only for text reader.

closes #1696

3 years agoDRILL-7021: HTTPD Throws NPE and Doesn't Recognize Timeformat
Charles S. Givre [Tue, 12 Mar 2019 12:57:20 +0000 (08:57 -0400)] 
DRILL-7021: HTTPD Throws NPE and Doesn't Recognize Timeformat

3 years agoDRILL-7014: Format plugin for LTSV files
shimamoto [Fri, 8 Mar 2019 02:04:16 +0000 (11:04 +0900)] 
DRILL-7014: Format plugin for LTSV files
closes #1627

3 years agoDRILL-7105: Error while building the Drill native client
Anton Gozhiy [Fri, 15 Mar 2019 11:02:23 +0000 (13:02 +0200)] 
DRILL-7105: Error while building the Drill native client

Added a compiler option in CMakeLists.txt to support the ISO C++ 2011 standard.
Also, changed the CMake min version to 3.1.3 to match the min version specified in protobuf.
closes #1697

3 years agoDRILL-6707: Removed changes for setOutputRowCount.
Sorabh Hamirwasia [Tue, 12 Mar 2019 21:25:39 +0000 (14:25 -0700)] 
DRILL-6707: Removed changes for setOutputRowCount.
Modified LateralJoin to use new setCurrentOutgoingMaxRowCount api
Limit CurrentOutgoingMaxRowCount to MAX_NUM_ROWS
Fix HashJoin to fix failing tests

closes #1650

3 years agoDRILL-6707: Update target outgoing batch row count between current position and alloc...
Ben-Zvi [Tue, 5 Mar 2019 05:05:32 +0000 (21:05 -0800)] 
DRILL-6707: Update target outgoing batch row count between current position and allocated size

3 years agoDRILL-7068: Support memory adjustment framework for resource management with Queues.
HanumathRao [Thu, 28 Feb 2019 08:12:05 +0000 (00:12 -0800)] 
DRILL-7068: Support memory adjustment framework for resource management with Queues.
closes #1677

3 years agoDRILL-2326: Fix scalar replacement for the case when static method which does not...
Volodymyr Vysotskyi [Sun, 10 Mar 2019 11:57:03 +0000 (13:57 +0200)] 
DRILL-2326: Fix scalar replacement for the case when static method which does not return values is called

- Fix check for return function value to handle the case when created object is returned without assigning it to the local variable
closes #1687

3 years agoDRILL-6524: Assign holder fields instead of assigning object references in generated...
Volodymyr Vysotskyi [Sat, 9 Mar 2019 21:57:33 +0000 (23:57 +0200)] 
DRILL-6524: Assign holder fields instead of assigning object references in generated code to allow scalar replacement for more cases
closes #1686

3 years agoDRILL-6524: Prevent incorrect scalar replacement for the case of assigning references...
Volodymyr Vysotskyi [Sat, 9 Mar 2019 21:54:06 +0000 (23:54 +0200)] 
DRILL-6524: Prevent incorrect scalar replacement for the case of assigning references inside if block

3 years agoDRILL-7038: Queries on partitioned columns scan the entire datasets
Bohdan Kazydub [Tue, 12 Feb 2019 23:14:14 +0000 (01:14 +0200)] 
DRILL-7038: Queries on partitioned columns scan the entire datasets

- Added new optimizer rule which checks if query references directory columns only and has DISTINCT or GROUP BY operation. If the condition holds, instead of scanning full file set the following will be performed:
1) if there is cache metadata file, these directories will be read from it,
2) otherwise directories will be gathered from selection object (PartitionLocation).

In the end Scan node will be transformed to DrillValuesRel (containing constant literals) with gathered values so no scan will be performed.
closes #1640

3 years agoDRILL-7058: Refresh command to support subset of columns
Venkata Jyothsna Donapati [Wed, 13 Feb 2019 01:39:08 +0000 (17:39 -0800)] 
DRILL-7058: Refresh command to support subset of columns
closes #1666

3 years agoDRILL-7061: Disable LIMIT Rows Option
Kunal Khatua [Wed, 13 Mar 2019 17:52:53 +0000 (10:52 -0700)] 
DRILL-7061: Disable LIMIT Rows Option

Freemarker by default introduces a comma in numeric values greater than 999. This corrects that by removing the ',' in the default limit size.

However, since a Server-side implementation is in progress (DRILL-6960 and DRILL-7048), it is best to disable this for now. The latest commit in this will hide those capabilities in the WebUI until the server-side feature goes in.
X
closes #1689

3 years agoDRILL-7075: Fix debian package issue with control files
Naresh Bhat [Tue, 5 Mar 2019 07:28:27 +0000 (15:28 +0800)] 
DRILL-7075: Fix debian package issue with control files

Add control file to generate debian package where we have deleted in #1669 PR. We need control file either in static form or dynamic form. The control file gives details about the package and conffiles used when a new version is installed then dpkg knows to ask what do you want to do with differences instead of just replacing file. According to debian packaging rules the control files are must and conffile is optional. Hence to add control file.  We also need to add "<exclude>**/control</exclude>" in distribution/pom.xml file.  Because without this line "mvn clean install -DskipTests -Drat.skip=false -Dlicense.skip=false" will fail.
Reference link for debian packaging: https://wiki.debian.org/Packaging/Intro?action=show&redirect=IntroDebianPackaging

Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
closes #1679

3 years agoDRILL-7081: Upgrade GlassFish Jersey and Javax Servlet dependecies versions
Vitalii Diravka [Wed, 6 Mar 2019 18:16:27 +0000 (20:16 +0200)] 
DRILL-7081: Upgrade GlassFish Jersey and Javax Servlet dependecies versions
- Update dependencies versions
- Exclude dependency from jdbc-all
- Removal redundant "bcpkix-jdk15on" exclusion
- Proper exclusion of "jackson-dataformat-hocon" dependency
- Removal redundant "excludeSubprojects" config property for Maven Rat Plugin

closes #1682

3 years agoDRILL-7092: Rename map to struct in schema definition
Arina Ielchiieva [Mon, 11 Mar 2019 16:20:15 +0000 (18:20 +0200)] 
DRILL-7092: Rename map to struct in schema definition
1. Renamed map to struct in schema parser.
2. Updated sqlTypeOf function to return STRUCT instead of MAP, drillTypeOf function will return MAP as before until internal renaming is done.
3. Add is_struct alias to already existing is_map function. Function should be revisited once Drill supports true maps.
4. Updated unit tests.

closes #1688

3 years agoDRILL-7100: Fixed IllegalArgumentException when reading Parquet data
Salim Achouche [Wed, 13 Mar 2019 01:06:43 +0000 (18:06 -0700)] 
DRILL-7100: Fixed IllegalArgumentException when reading Parquet data

3 years agoDRILL-7085: Fix table-path check in AnalyzeTableHandler
Gautam Parai [Fri, 8 Mar 2019 21:40:22 +0000 (13:40 -0800)] 
DRILL-7085: Fix table-path check in AnalyzeTableHandler

closes #1685

3 years agoDRILL-7073: CREATE SCHEMA command / TupleSchema / ColumnMetadata improvements
Arina Ielchiieva [Tue, 5 Mar 2019 17:29:18 +0000 (19:29 +0200)] 
DRILL-7073: CREATE SCHEMA command / TupleSchema / ColumnMetadata improvements

1. Add format, default, column properties logic.
2. Changed schema JSON after serialization.
3. Added appropriate unit tests.

closes #1684

3 years agoDRILL-6952: Host compliant text reader on the row set framework
Paul Rogers [Sun, 24 Feb 2019 01:48:21 +0000 (17:48 -0800)] 
DRILL-6952: Host compliant text reader on the row set framework

The result set loader allows controlling batch sizes. The new scan framework
built on top of that framework handles projection, implicit columns, null
columns and more. This commit converts the "new" ("compliant") text reader
to use the new framework. Options select the use of the V2 ("new") or V3
(row-set based) versions. Unit tests demonstrate V3 functionality.

closes #1683

3 years agoDRILL-6846: Add CircleCI Test Summary
Vitalii Diravka [Sun, 3 Mar 2019 20:55:25 +0000 (22:55 +0200)] 
DRILL-6846: Add CircleCI Test Summary
closes #1678
- added CircleCI Test Summary
- maven-surefire-plugin version udpate
- license checkstyle goal is added to the TravisCI protobuf phase

3 years agoDRILL-7035: Drill C++ Client crashes on multiple SaslAuthenticatorImpl destruction...
Debraj Ray [Tue, 26 Feb 2019 21:19:55 +0000 (02:49 +0530)] 
DRILL-7035: Drill C++ Client crashes on multiple SaslAuthenticatorImpl destruction due to communication error
closes #1660

3 years agoDRILL-7046: Support for loading and parsing new RM config file
Sorabh Hamirwasia [Thu, 7 Feb 2019 21:54:14 +0000 (13:54 -0800)] 
DRILL-7046: Support for loading and parsing new RM config file
closes #1652

3 years agoDRILL-7054: timestamp in milliseconds
Giovanni Conte [Mon, 4 Mar 2019 14:53:41 +0000 (15:53 +0100)] 
DRILL-7054: timestamp in milliseconds
closes #1665

3 years agoDRILL-7056: Drill fails with NPE when starting in distributed mode & 31010 port is...
Kunal Khatua [Mon, 25 Feb 2019 17:13:08 +0000 (09:13 -0800)] 
DRILL-7056: Drill fails with NPE when starting in distributed mode & 31010 port is used
closes #1656

3 years agoDRILL-7069: Moved version checks outside loops in transformBinaryInMetadataCache
Ben-Zvi [Fri, 1 Mar 2019 02:06:02 +0000 (18:06 -0800)] 
DRILL-7069: Moved version checks outside loops in transformBinaryInMetadataCache
closes #1667

3 years agoDRILL-7072: Query with semi join fails for JDBC storage plugin
Volodymyr Vysotskyi [Sun, 3 Mar 2019 12:52:27 +0000 (14:52 +0200)] 
DRILL-7072: Query with semi join fails for JDBC storage plugin
closes #1674

3 years agoDRILL-6979: Added autofocus attribute to username on login page, and to query textbox...
Khurram [Tue, 15 Jan 2019 19:56:52 +0000 (19:56 +0000)] 
DRILL-6979: Added autofocus attribute to username on login page, and to query textbox on Query tab

3 years agoDRILL-5603: Replace String file paths to Hadoop Path
Vitalii Diravka [Mon, 18 Feb 2019 20:30:36 +0000 (22:30 +0200)] 
DRILL-5603: Replace String file paths to Hadoop Path
 - replaced all String path representation with org.apache.hadoop.fs.Path
 - added PathSerDe.Se JSON serializer
 - refactoring of DFSPartitionLocation code by leveraging existing listPartitionValues() functionality

closes #1657

3 years agoDRILL-7074: Scan framework fixes and enhancements
Paul Rogers [Mon, 4 Mar 2019 01:55:22 +0000 (17:55 -0800)] 
DRILL-7074: Scan framework fixes and enhancements

Roll-up of fixes an enhancements that emerged from the effort to host the CSV reader on the new framework.

closes #1676

3 years agoDRILL-6642: Update protocol-buffers version
Anton Gozhiy [Wed, 31 Oct 2018 11:23:51 +0000 (13:23 +0200)] 
DRILL-6642: Update protocol-buffers version

1. Updated protobuf to version 3.6.1
2. Added protobuf to the root pom dependency management
3. Added classes BoundedByteString and LiteralByteString for compatibility with HBase
4. Added ProtobufPatcher to provide compatibility with MapR-DB and HBase
closes #1639

3 years agoDRILL-7060: Support JsonParser Feature 'ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER' ...
Abhishek Girish [Mon, 4 Mar 2019 08:18:52 +0000 (00:18 -0800)] 
DRILL-7060: Support JsonParser Feature 'ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER' (#1663)

3 years agoDRILL-7070: Fix deb and rpm issues on apache drill master branch
Naresh Bhat [Tue, 19 Feb 2019 08:43:43 +0000 (08:43 +0000)] 
DRILL-7070: Fix deb and rpm issues on apache drill master branch

The Apache Drill failed to generate debian and rpm packages. The issues fixed as below,
-Add apache as prefix
-Remove lib folder while packaging, because lib folder does not exist.
-Add git.properties, KEYS, LICENSE, NOTICE, README.md and sample-data dir into the /opt/drill/.
-Update plugin version to 2.2.0
-Update Maven org.vafer:jdeb plugin version to 1.7
-Change the rpm name tobe generated by editing version, and name.
-Remove two files under distribution/src/deb/control/ i.e. conffiles and control.
-The `<copyright>` tag isn't supported anymore for this plugin. Hence use `<license>` and project variables content instead of `2013 ASF`.

Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
3 years agoDRILL-6927: Avoid double conversion from impala timestamp when hive native parquet...
Volodymyr Vysotskyi [Sun, 24 Feb 2019 21:04:46 +0000 (23:04 +0200)] 
DRILL-6927: Avoid double conversion from impala timestamp when hive native parquet reader is used
closes #1655