aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-01DRILL-7018: Fixed Parquet buffer overflow when reading timestamp columnSalim Achouche
close apache/drill#1630
2019-02-01DRILL-7008: Drillbits: clear stale shutdown hooksVladimir Sitnikov
ShutdownThread is no longer required when Drillbit#close() is called. mvn install for Drill project consumed 600MiB (there were 160 shutdown hooks) close apache/drill#1625
2019-02-01DRILL-7002: whatever exec.hashjoin.num_partitions is set, output right resultsweijie.tong
close apache/drill#1622
2019-02-01DRILL-6997: Semijoin is changing the join ordering for some tpcds queries.Hanumath Maduri
close apache/drill#1620
2019-01-30DRILL-7006: Add type conversion to row writersPaul Rogers
Modifies the column metadata and writer abstractions to allow a type conversion "shim" to be specified as part of the schema, then inserted as part of the row set writer. Allows, say, setting an Int or Date from a string, parsing the string to obtain the proper data type to store in the vector. Type conversion not yet supported in the result set loader: some additional complexity needs to be resolved. Adds unit tests for this functionality. Refactors some existing tests to remove rough edges. closes #1623
2019-01-30DRILL-7007: Use verify method in row set testsPaul Rogers
Many of the early RowSet-based tests used the pattern: new RowSetComparison(expected) .verifyAndClearAll(result); Revise this to use the simplified form: RowSetUtilities.verify(expected, result); The original form is retained when tests use additional functionality, such as the ability to perform multiple verifications on the same expected batch. closes #1624
2019-01-25DRILL-7000: Queries failing with 'Failed to aggregate or route the RFW' do ↵Sorabh Hamirwasia
not complete closes #1621
2019-01-25DRILL-6985: Fix sqlline.bat issues on Windows and add drill-embedded.batVolodymyr Vysotskyi
closes #1616
2019-01-25DRILL-6977: Improve Hive tests configurationIgor Guzenko
1. HiveTestBase data initialization moved to static block to be initialized once for all derivatives. 2. Extracted Hive driver and storage plugin management from HiveTestDataGenerator to HiveTestFixture class. This increased cohesion of generator and added loose coupling between hive test configuration and data generation tasks. 3. Replaced usage of Guava ImmutableLists with TestBaseViewSupport helper methods by using standard JDK collections. closes #1613
2019-01-25DRILL-6962: Function coalesce returns an Error when none of the columns in ↵Bohdan Kazydub
coalesce exist in a parquet file - Updated UntypedNullVector to hold value count when vector is allocated and transfered to another one; - Updated RecordBatchLoader and DrillCursor to handle case when only UntypedNull values are present in RecordBatch (special case when data buffer is null but actual values are present); - Added functions to cast UntypedNull value to other types for use in UDFs; - Moved UntypedReader, UntypedHolderReaderImpl and UntypedReaderImpl from org.apache.drill.exec.vector.complex.impl to org.apache.drill.exec.vector package. closes #1614
2019-01-25DRILL-6999: Fix the case that there's more than one join conditionsweijie.tong
closes #1600
2019-01-25DRILL-6947: Fix RuntimeFilter memory leakweijie.tong
2019-01-25DRILL-6910: Allow applying DrillPushProjectIntoScanRule at physical phaseVolodymyr Vysotskyi
closes #1619
2019-01-25DRILL-6533: Allow using literal values in functions which expect FieldReader ↵Volodymyr Vysotskyi
instead of ValueHolder closes #1617
2019-01-18Update Javadocs.mdBoaz Ben-Zvi
2019-01-18DRILL-6967: Fix TIMESTAMPDIFF function for QUARTER qualifierVolodymyr Vysotskyi
closes #1609
2019-01-18DRILL-6942: Provide ability to sort list of profiles on Drill Web UIKunal Khatua
This provides an option to order the list of query profiles based on any of the displayed fields, including total duration. This way, a user can easily identify long running queries. In addition, the number of profiles listed per page for both, completed and running list of queries, has been made configurable with the parameter: `drill.exec.http.profiles_per_page` (default is 10,25,50,100) closes #1594
2019-01-18DRILL-6944: UnsupportedOperationException thrown for view over MapR-DB ↵Igor Guzenko
binary table 1. Added persistence of MAP key and value types in Drill views (affects .view.drill file) for avoiding cast problems in future. 2. Preserved backward compatibility of older view files by treating untyped maps as ANY. closes #1602
2019-01-18DRILL-6969: Fix inconsistency of reading MaprDB JSON tables using hive ↵Volodymyr Vysotskyi
plugin when native reader is enabled closes #1610
2019-01-18DRILL-6971: Labelled Query State with color codingKunal Khatua
closes #1611
2019-01-18DRILL-6971: Display query state in query result pageSorabh Hamirwasia
2019-01-14DRILL-6903: SchemaBuilder code improvementsArina Ielchiieva
1. ColumnBuilder: setPrecisionAndScale method 2. SchemaContainer: addColumn method parameter AbstractColumnMetadata was changed to ColumnMetadata 3. MapBuilder / RepeatedListBuilder / UnionBuilder: added constructors without parent, made buildColumn method public 4. TupleMetadata: added toMetadataList method 5. Other refactoring
2019-01-11DRILL-6959: Fix loss of precision when casting time and timestamp literals ↵Volodymyr Vysotskyi
in filter condition closes #1607
2019-01-10DRILL-6954: Move commons libs used in UDFs module to the dependency managementArina Ielchiieva
closes #1604
2019-01-10DRILL-6955: storage-jdbc tests improvementsVolodymyr Vysotskyi
- Remove plugins usage for instantiating test databases and tables - Replace derby with h2 database closes #1603
2019-01-10DRILL-6928: Update description for exec.query.return_result_set_for_ddl ↵Bohdan Kazydub
option to reflect it affects JDBC connections only closes #1601
2019-01-10DRILL-6918: Skip ensureAtLeastOneField when there are no recordsAbhishek Ravi
If none of the project / filter columns, exist in the vector, ensureAtLeastOneField (or the Scan operator) adds at least one field as nullable integer (or nullable varchar if `allTextmode` is enabled). The downstream Filter operator would then go on to fail with `NumberFormatException` because it tries to convert empty fields to integers. Since ensureAtLeastOneField is called after reading all the messages in a batch, it can be skipped if the batch is empty. closes #1595
2019-01-08Changes following second code reviewBen-Zvi
2019-01-08Changes following code review comments for DRILL-6880Ben-Zvi
2019-01-08DRILL-6880: For Hash-Join hash-table build - treat null keys as an equal matchBen-Zvi
2019-01-07DRILL-6941: Incorrect EARLY_LIMIT0_OPT_KEY descriptionKunal Khatua
Description was accidentally duplicated from `planner.parser.quoting_identifiers` closes #1597
2019-01-07DRILL-6050: Provide a limit to number of rows fetched for a query in UIKunal Khatua
Currently, the WebServer side needs to process the entire set of results and stream it back to the WebClient. Since the WebUI does paginate results, we can load a larger set for pagination on the browser client and relieve pressure off the WebServer to host all the data (most of which will never be streamed to the browser). e.g. Fetching all rows from a 1Billion records table is impractical and can be capped at (say) 1K. Currently, the user has to explicitly specify LIMIT in the submitted query. An option is provided in the field to allow for this entry, and can be set to selected by default for the Web UI. The submitted query indicates that an auto-limiting wrapper was applied. [Update #1] Updated as per comments 1. Limit Wrapping Unchecked by default 2. Full List configuration of results [Update #2] Minor update [Update #3] Followup closes #1593
2019-01-07DRILL-6939: Indicate when a query is submitted and is in progressKunal Khatua
On query submission, a modal popup blocks further interaction until the result of the query are available. Since the Query ID is not available at this point, the only way to cancel a running query is to navigate to it via the `/profiles` tab. For this, the modal allows a button to pop out to this tab without closing the current window which is waiting for the result-set. [Update] Shared running query modal introduced closes #1592
2019-01-07DRILL-6933: Fix ctrl+enter when Impersonation is disabledKunal Khatua
Without impersonation, the key combination did not work because a conditional block of the FTLs skipped the Javascript functions required for submitting with the key combination. This commit fixes that by unifying the functions that are common to both approaches of submitting a query (with and without impersoination) [Update] Changes made to isOnlyImpersonationEnabled method and onlyImpersonationEnabled variable [Update] userName is a global var in the script closes #1591
2019-01-07DRILL-6946: Implement java.sql.Connection setSchema and getSchema methods in ↵Arina Ielchiieva
DrillConnectionImpl closes #1596
2019-01-03DRILL-540: Allow querying hive views in DrillIgor Guzenko
1. Added DrillHiveViewTable which allows construction of DrillViewTable based on Hive metadata 2. Added initialization of DrillHiveViewTable in HiveSchemaFactory 3. Extracted conversion of Hive data types from DrillHiveTable to HiveToRelDataTypeConverter 4. Removed throwing of UnsupportedOperationException from HiveStoragePlugin 5. Added TestHiveViewsSupport and authorization tests 6. Added closeSilently() method to AutoCloseables closes #1559
2019-01-03DRILL-6879: Show warnings for potential performance issuesKunal Khatua
1. Introduced warning for non-progressive fragments. Based on a threshold (`drill.exec.http.profile.warning.progress.threshold`), if all fragments have not made progress within that time, a warning is issued. The default is 5 minutes (300 sec) 2. Introduced a warning if any of the buffered operators spill to disk. 3. Introduced a warning for operators where the longest running fragment runs beyond a minimum threshold (drill.exec.http.profile.warning.time.skew.min), and runs atleast 2 times longer than the average (drill.exec.http.profile.warning.time.skew.ratio.process). The clock symbol with a tooltip indicates the extent of the skew. For wait times, the ratio is defined by `drill.exec.http.profile.warning.time.skew.ratio.wait` 3. Introduced a warning for operators where the average wait time of a scan operator exceeds its processing time, for a minimum threshold (drill.exec.http.profile.warning.scan.wait.min). The turtle symbol with a tooltip indicates which scan operator spent more time waiting than processing. 4. TableBuilder Refactored a. Using attribute map instead of String arguments, eg. for 'title' b. Removed APIs that pass a hyperlink since that is never used. closes #1572
2019-01-03DRILL-6888: Move nested classes outside HashAggTemplate to allow for plain ↵Ben-Zvi
java compile option closes #1569
2019-01-03DRILL-6894: CTAS and CTTAS are not working on S3 storage when cache is disabledBohdan Kazydub
- provided JsonRecordWriter, ParquetRecordWriter and DrillTextRecordWriter with file system configuration closes #1576
2019-01-03DRILL-6907: Fix hive-exec-shaded classes recognition in IntelliJ IDEAVolodymyr Vysotskyi
closes #1575
2019-01-03DRILL-6921: Add Clear button for /options filterKunal Khatua
This commit adds the following search enhancements: 1. Addition of a clear ('x') button in the search field 2. If a filter term has been entered in the search box, on clicking the Update or Reset-to-Default button of any option, the reloaded page will re-apply the last entered filter term in the search box. 3. If the search box is empty, on clicking the Update or Reset-to-Default button of any option, the reloaded page will automatically filter out everything except the updated/reset option to show the changed value. 4. Customization of the quick search terms. (using defaults in drill-module.conf) closes #1588
2019-01-03DRILL-6929: Exclude maprfs jar for default profileVolodymyr Vysotskyi
closes #1586
2019-01-03DRILL-6931: File listing: fix issue for S3 directory objects and improve ↵Arina Ielchiieva
performance for recursive listing closes #1590
2019-01-03DRILL-6934: Update the option documentation for planner.enable_unnest_lateralSorabh Hamirwasia
closes #1587
2019-01-03DRILL-6936: ↵Igor Guzenko
TestGracefulShutdown.gracefulShutdownThreadShouldBeInitializedBeforeClosingDrillbit fails if loopback address is set in hosts closes #1589
2019-01-03DRILL-6901: Move schema builder to src/mainPaul Rogers
Moves the SchemaBuilder class out of the src/test name space into the src/main namespace. Specifically, into the existing record.metadata package. Many files changed in this move. Corrected two minor issues: import of the wrong Arrays class and unnecessary annotations.
2018-12-24[maven-release-plugin] prepare for next development iterationVitalii Diravka
2018-12-24[maven-release-plugin] prepare release drill-1.15.0Vitalii Diravka
2018-12-24DRILL-6920: Fix TestClient.testBasics() yarn test failureVolodymyr Vysotskyi
closes #1582
2018-12-24DRILL-6922: Do not set return result set option on query level if it is the ↵Arina Ielchiieva
same as current value 1. Rename return result option name to `exec.query.return_result_set_for_ddl`. 2. Add check if option value is the same as current value in DrillSqlWorker before setting result set option on query level. 3. Separate Session and Query options on Web UI. closes #1584