Clone Tools
  • last updated 24 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
DRILL-1709: Add desc alias for describe command

closes #1881

  1. … 2 more files in changeset.
DRILL-7168: Implement ALTER SCHEMA ADD / REMOVE commands

  1. … 16 more files in changeset.
DRILL-7273: Introduce operators for handling metadata

closes #1886

  1. … 156 more files in changeset.
DRILL-6974: SET option command modification

- ALTER ... RESET ... and ALTER ... SET ... sub-parsers separated to 2

different SqlCall classes with same parent SqlSetOption

- parserImpls modified to handle new syntax of ALTER... SET...

expresion:

a) ALTER ... SET option.name - option.value - setting option value

b) ALTER ... SET option.name - display option value

- Handler for SqlSetOption separated to SetOptionHandler and

ResetOptionhandler for better representation of handled statements

- Base abstract class AbstractSqlSetHandler created to not repeat

shared implementation of same functions

- SetOptionHandler covered with unit tests for each statement

form.

Fix issues stated in the review

closes #1763

  1. … 10 more files in changeset.
DRILL-7167: Implemented DESCRIBE TABLE statement

- altered parser implementation to honor DESCRIBE TABLE syntax

- extended test coverage to check the new statement

closes #1747

  1. … 1 more file in changeset.
DRILL-7138: Implement command to describe schema for table

closes #1719

  1. … 6 more files in changeset.
DRILL-6965: Implement schema table function parameter

1. Added common schema table function parameter with can be used as single unit or with format plugin table function parameters.

2. Allowed creating schema without columns, in case if user needs only to indicate table properties.

3. Added unit tests.

closes #1777

  1. … 30 more files in changeset.
DRILL-7063: Seperate metadata cache file into summary, file metadata

closes #1723

  1. … 18 more files in changeset.
DRILL-7058: Refresh command to support subset of columns closes #1666

  1. … 6 more files in changeset.
DRILL-6964: Implement CREATE / DROP SCHEMA commands

Note: this PR only adds support for CREATE / DROP SCHEMA commands which allow to store and delete schema. Schema usage during querying the data will be covered in other PRs.

1. Added parser methods / handles to parse CREATE / DROP schema commands.

2. Added SchemaProviders classes to separate ways of schema provision (file, table function).

3. Added schema parsing using ANTLR4 (lexer, parser, visitors).

4. Added appropriate unit tests.

close apache/drill#1615

  1. … 35 more files in changeset.
DRILL-1328: Support table statistics

  1. … 52 more files in changeset.
DRILL-6320: Fixed license headers.

closes #1207

  1. … 2066 more files in changeset.
DRILL-3993: Changes to support Calcite 1.15.

Fix AssertionError: type mismatch for tests with aggregate functions.

Fix VARIANCE agg function

Remove using deprecated Subtype enum

Fix 'Failure while loading table a in database hbase' error

Fix 'Field ordinal 1 is invalid for type '(DrillRecordRow[*])'' unit test failures

  1. … 17 more files in changeset.
DRILL-5952: Implement "CREATE TABLE IF NOT EXISTS and CREATE VIEW IF NOT EXISTS"

closes #1033

  1. … 9 more files in changeset.
DRILL-3993: Changes to support Calcite 1.13

- fixed all compiling errors (main changes were: Maven changes, chenges RelNode -> RelRoot, implementing some new methods from updated interfaces, chenges some literals, logger changes);

- fixed unexpected column errors, validation errors and assertion errors after Calcite update;

- fixed describe table/schema statement according to updated logic;

- added fixes with time-intervals;

- changed precision of BINARY to 65536 (was 1048576) according to updated logic (Calcite overrides bigger precision to own maxPrecision);

- ignored some incorrect tests with DRILL-3244;

- changed "Table not found" message to "Object not found within" according to new Calcite changes.

  1. … 70 more files in changeset.
DRILL-4956: Temporary tables support

close apache/drill#666

  1. … 41 more files in changeset.
DRILL-4726: Dynamic UDF Support

1) Configuration / parsing / options / protos

2) Zookeeper integration

3) Registration / unregistration / lazy-init

4) Unit tests

This closes #574

  1. … 71 more files in changeset.
DRILL-4673: Implement "DROP TABLE IF EXISTS" for drill to prevent FAILED status on command return - implement DROP TABLE IF EXISTS and DROP VIEW IF EXISTS; - added unit test for DROP TABLE IF EXISTS; - added unit test for DROP VIEW IF EXISTS; - added unit test for "IF" hive UDF.

This closes #541

  1. … 10 more files in changeset.
DRILL-4514: Add describe schema <schema_name> command

close apache/drill#436.

  1. … 5 more files in changeset.
DRILL-2743: Parquet file metadata caching

rebasing on top of master required conflict resolution in Parser.tdd and parserImpls.ftl

this closes #114

  1. … 11 more files in changeset.
DRILL-3535: Add support for Drop Table

this closes #140

  1. … 13 more files in changeset.
DRILL-3373: Raise parsing error when CTAS has partition by clause yet partitioning column list is empty.

  1. … 1 more file in changeset.
DRILL-3246 : Query planning support for partition by clause in CTAS statement.

Add partition comparator function into project under writer.

  1. … 21 more files in changeset.
DRILL-1328: Support table statistics - Part 2

Add support for avg row-width and major type statistics.

Parallelize the ANALYZE implementation and stats UDF implementation to improve stats collection performance.

Update/fix rowcount, selectivity and ndv computations to improve plan costing.

Add options for configuring collection/usage of statistics.

Add new APIs and implementation for stats writer (as a precursor to Drill Metastore APIs).

Fix several stats/costing related issues identified while running TPC-H nad TPC-DS queries.

Add support for CPU sampling and nested scalar columns.

Add more testcases for collection and usage of statistics and fix remaining unit/functional test failures.

Thanks to Venki Korukanti (@vkorukanti) for the description below (modified to account for new changes). He graciously agreed to rebase the patch to latest master, fixed few issues and added few tests.

FUNCS: Statistics functions as UDFs:

Separate

Currently using FieldReader to ensure consistent output type so that Unpivot doesn't get confused. All stats columns should be Nullable, so that stats functions can return NULL when N/A.

* custom versions of "count" that always return BigInt

* HyperLogLog based NDV that returns BigInt that works only on VarChars

* HyperLogLog with binary output that only works on VarChars

OPS: Updated protobufs for new ops

OPS: Implemented StatisticsMerge

OPS: Implemented StatisticsUnpivot

ANALYZE: AnalyzeTable functionality

* JavaCC syntax more-or-less copied from LucidDB.

* (Basic) AnalyzePrule: DrillAnalyzeRel -> UnpivotPrel StatsMergePrel FilterPrel(for sampling) StatsAggPrel ScanPrel

ANALYZE: Add getMetadataTable() to AbstractSchema

USAGE: Change field access in QueryWrapper

USAGE: Add getDrillTable() to DrillScanRelBase and ScanPrel

* since ScanPrel does not inherit from DrillScanRelBase, this requires adding a DrillTable to the constructor

* This is done so that a custom ReflectiveRelMetadataProvider can access the DrillTable associated with Logical/Physical scans.

USAGE: Attach DrillStatsTable to DrillTable.

* DrillStatsTable represents the data scanned from a corresponding ".stats.drill" table

* In order to avoid doing query execution right after the ".stats.drill" table is found, metadata is not actually collected until the MaterializationVisitor is used.

** Currently, the metadata source must be a string (so that a SQL query can be created). Doing this with a table is probably more complicated.

** Query is set up to extract only the most recent statistics results for each column.

closes #729

  1. … 143 more files in changeset.
DRILL-755: Show files without FROM clause should display files in default workspace

  1. … 1 more file in changeset.
DRILL-601: Support for 'Show files' command

  1. … 11 more files in changeset.
DRILL-679: Support create table as query (CTAS).

  1. … 47 more files in changeset.
DRILL-438: Add support for Views (CREATE, DROP and select)

  1. … 37 more files in changeset.
DRILL-399: Support USE SCHEMA. Also fixes bugs found in using default schema in queries.

  1. … 17 more files in changeset.
DRILL-392: Support SHOW TABLES/SCHEMAS and DESCRIBE TABLE.

Use Optiq parser template to generate Drill parser

a) exec/java-exec/pom.xml changes:

1. Write a plugin to move current existing codegen directory to target

(fmpp can't handle more than one directory as template input dir).

2. Change template directory path in fmpp plugin.

3. Extract CombinedParser.jj into target/codegen/templates directory.

4. Plugin to compile CombinedParser.jj using javacc.

b) Add parser.tdd to define values for freemarker variables in CombinedParser.jj template.

c) Define grammar and SqlCall types for new DDL statements.

d) Handlers to rewrite newly added SqlCall DDL statements as select queries from INFORMATION_SCHEMA.

    • -0
    • +102
    ./parserImpls.ftl
  1. … 15 more files in changeset.