Clone Tools
  • last updated 15 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
DRILL-1811: select A, * from ... crashes JVM

  1. … 1 more file in changeset.
DRILL-1781: Fast Complex Schema

  1. … 44 more files in changeset.
DRILL-1828: In ProjectRecordBatch, add a case for expression classification

  1. … 1 more file in changeset.
DRILL-1382: Fast schema return

  1. … 75 more files in changeset.
Patch for DRILL-705

Currently only supports partitioning/ordering, not yet preceding or

after offsets

  1. … 77 more files in changeset.
DRILL-1402: Add check-style rules for trailing space, TABs and blocks without braces

  1. … 440 more files in changeset.
DRILL-634: Cleanup/organize Java imports and trailing whitespaces from Drill code

  1. … 769 more files in changeset.
Fix issue introduced by DRILL-1202 where allocators are being closed after reporting success. Update ScreenRoot to cleanup before returning success. Update ScanBatch to cleanup reader in case of limit query to avoid memory leak in ParquetReader. Update allocators so that we don't have memory leak when using debug options. Update project record batch so that it doesn't try to return a released remainder.

  1. … 6 more files in changeset.
DRILL-1329: External sort memory fixes

  1. … 38 more files in changeset.
DRILL-1310: Fix assertion in ProjectRecordBatch for certain types of star queries.

DRILL-1324: Add mechanism to detect schema changes when adding a new primitive vector in a Map, RepeatedMap, RepeatedList vector

  1. … 13 more files in changeset.
DRILL-1278: Fix selecting scalar field from a map with join clause.

DRILL-1293: Fix assertion when selecting star column from view that also has star column.

  1. … 1 more file in changeset.
DRILL-1220: Process the star columns in ProjectRecordBatch by classifying the expressions appropriately based on the annotated expressions created by planner.

  1. … 3 more files in changeset.
DRILL-1060: Support ComplexToJson for Array Data Type

  1. … 9 more files in changeset.
DRILL-836: [addendum] Drill needs to return complex types (e.g., map and array) as a JSON string

* This contains additional changes to the original patch which was merged.

+ Renamed "flatten" to "complex-to-json"

+ With the new patch, we return VARCHAR instead of VARBINARY.

+ Added test case.

+ Minor code re-factoring.

    • -0
    • +42
    ./ComplexToJsonBatchCreator.java
  1. … 35 more files in changeset.
DRILL-836: Drill needs to return complex types (e.g., map and array) as a JSON string

    • -0
    • +42
    ./FlattenBatchCreator.java
  1. … 16 more files in changeset.
DRILL-935: Run-time code generation support for function which decodes string/varbinary into complex JSON object.

  1. … 23 more files in changeset.
DRILL-884: Always return a schema, even when there are no records

  1. … 28 more files in changeset.
Bug fixes in Project operator. Use allocateNewSafe() to allocate space for outgoing batch in Project.

Reenable testcase.

  1. … 1 more file in changeset.
DRILL-865: Interface changes to AbstractRecordBatch to enable easy collection of stats. Add BaseRootExec as a wrapper to collect stats for senders.

  1. … 17 more files in changeset.
DRILL-789: Left outer join returns "null" values for columns from the right table

The problem is that the "lastSet" field is not set on the Nullable mutator when the vector is loaded off the wire. The fix here is to make sure this gets set.

At the same time, this wouldn't be a problem, except for the fact that we fill in empty values when setValueCount is called, and if "lastSet" is not correct, we end up clobbering the existing data. We shouldn't need to call setValueCount on a transferred vector, so I am making this change in project record batch.

  1. … 2 more files in changeset.
Fix for project column ordering is wrong.

  1. … 44 more files in changeset.
Enable sv2 support for project operator.

Currently, this will do copies for all vectors if their is incoming sv2.

  1. … 1 more file in changeset.
Add support for RepeatedMapVector, MapVector and RepeatedListVector.

  1. … 134 more files in changeset.
Move to Optiq 0.6 Also includes: -improve exception catching -move schema path parsing to Antlr -close zookeeper connection on if client created -enhance BaseTestQuery and have other query tests utilize it -Various test fixes for better memory release. still needs client allocator to be closed. -refactor DrillSqlWorker and create multiple SqlHandlers -Add PojoRecordReader and DirectPlan capabilities -Update Antlr to use same quoting rules as SQL: single quote for quoted strings, back ticks for identifiers -Move back to old Sorts until bugs are fixed -Refector SelectionVector management within Prels -Add support for NO_EXCHANGES option -Extract SchemaFactories to use Optiq's new Schema handling capabilities -Add basic handling of cancel in UserServer -Remove output requirement from Project -Add start of usercredentials to User communication

  1. … 181 more files in changeset.
DRILL-620: Memory consumption fixes

accounting fixes

trim buffers

switch to using setSafe and copySafe methods only

adaptive allocation

operator based allocator wip

handle OOM

Operator Context

  1. … 156 more files in changeset.
handle double project by copying

DRILL-335: Implement Hash Aggregation

1. Implementation of the hash aggregation execution operator - this has two main parts: the HashAggTemplate and the HashAggBatch.

2. Implementation of a hash table which is used by the hash aggregation. The hash table hash two main parts: the HashTableTemplate and the ChainedHashTable. The hash table internally uses the notion of 'BatchHolder' to keep track of all keys that can fit within one batch of 64K values. New BatchHolder objects are created as needed. Each BatchHolder has its own vector container. The HashAggregate also has a similar structure and it keeps track of the workspace variables.

(NOTE: An initial design document for the hash aggregation and hash table was already attached with Drill-335. The document has not yet been updated with the latest implementation ... will try to do that in the near future).

3. Jinfeng's changes to use workspace vectors in the generated code for aggregate functions (previously, for streaming aggregate we only needed to maintain workspace variable for 1 running group; however for hash aggregate we need to maintain it for all groups).

4. Fix for Drill-318: because of #3 above, the previous fix for Drill-318 is not valid anymore. I modified the template generation code for the aggregate functions such that they conform to the new infrastructure.

5. The original AggTemplate, AggBatch and Aggregator classes have been moved to corresponding StreamingAggTemplate, StreamingAggBatch and StreamingAggregator in order to differentiate it from hash aggregation. These appear as new files but the code there has not changed.

I have run several tests manually as part of TestHashAggr...these tests use TPC-H data and in particular a relatively large 'Orders' table. However, I have not yet packaged the tests to run as part of JUnit since the location and size of the parquet files needs to be figured out. I will continue to work on that.

  1. … 48 more files in changeset.
Join rel > logical conversion fixes

  1. … 8 more files in changeset.