format Description: This change allows encoding/decoding of data from/to 'double', 'float', 'bigint', 'int' and 'utf8' data types to/from OrderedBytes format. It also allows for OrderedByte encoded row-keys to be stored in ascending as well as descending order. The following JIRA added the OrderedBytes encoding to HBase: https://issues.apache.org/jira/browse/HBASE-8201 This encoding scheme will preserve the sort-order of the native data-type when it is stored as sorted byte arrays on disk. Thus, it will help the HBase storage plugin if the row-keys have been encoded in OrderedBytes format. This functionality allows us to prune the scan ranges, thus reading much lesser data from the server. Testing Done: Added a new unit-test class TestOrderedBytesConvertFunctions.java which derives from TestConvertFunctions.java class. Also add new test cases to TestHBaseFilterPushDown class that will test if we were able to push-down filters correctly and if the results are correct. DRILL-3492 - * Remove repeated allocations of byte arrays and PositionedByteRange objects on heap(as suggested by Jason). * Remove OrderedBytes encode/decode operations on UTF8 types. Reasons - 1. These operations are slow and incur a lot of heap allocations 2. UTF8 types maintain their natural sort order when stored as binary arrays. DRILL-3492 - Remove test code that creates test tables with UTF8 OrderedByte encoding.
- made the constructor for TopLevelAllocator package private to enforce this Delete a test that had been commented out for over a year, it no longer compiles due to interface changes and there is plenty of other testing for hash aggregate.
Also fixed two serialVersionUID literals.
…ternalSort cleanup This closes #130
This closes #141
… exporting of vectors
…ackquote. Added override of Avatica's default implementation returning SQL standard value. Added Javadoc. Added unit test. Also moved unit test for nullsAreSortedXxx methods. DRILL-3153: Update: Comment fixes and whitespace only. Close apache/drill#99
…JoinPushExpressionRule. The changes are result of CALCITE-732 and CALCITE-850.
… project operator's triviality. [CALCITE-577] removes a deprecated code where project operator's triviality depends both names and types. Drill has to add it back, since field name matters in Drill's execution engine.
Changes includes: - Parser configuration change - Rule name change. - Consistency checking in SqlOperator. - Exclude dependency inherited from Calcite, due to version conflicts.
…sion has non-nullable type.
…when original filter contains nested expressions closes #127
…h window functions spilling to disk
…dices are shifted properly
… throws a SQLException
This closes #108
…LUE window functions
This closes #117.
…th byte comparable encoding The change adds support to perform row-key range pruning when the row-key prefix is interpreted as UINT4_BE, TIMESTAMP_EPOCH_BE, TIME_EPOCH_BE, DATE_EPOCH_BE, UINT8_BE encoded. Testing Done: Added a unit-tests for the new feature, also ran all existing unit-tests to make sure there is no regression.
…" filter or in list filter Add unit test for row_key "or" filter and row_key in list filter. Modify expected results for couple of existing unit tests, by specifying more strict regex pattern. Add one row in Hbase test table, per review comment.
…t constructor that allows SINGLETON