Merge branch 'PHOENIX-3534' into system-catalog
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/f7d87ce2 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/f7d87ce2 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/f7d87ce2 Branch: refs/heads/system-catalog Commit: f7d87ce2fec91bf5eb7d4d06f8f1d35579669440 Parents: 15d4dac 7420ae3 Author: Thomas D'Silva <tdsi...@apache.org> Authored: Wed May 2 20:32:53 2018 -0700 Committer: Thomas D'Silva <tdsi...@apache.org> Committed: Wed May 2 20:32:53 2018 -0700 ---------------------------------------------------------------------- bin/performance.py | 4 +- bin/phoenix_utils.py | 2 +- dev/make_rc.sh | 15 +- phoenix-assembly/pom.xml | 2 +- .../src/build/components/all-common-files.xml | 5 + phoenix-assembly/src/build/src.xml | 7 +- phoenix-client/pom.xml | 2 +- phoenix-core/pom.xml | 16 +- ...ReplayWithIndexWritesAndCompressedWALIT.java | 2 +- .../org/apache/phoenix/end2end/AggregateIT.java | 130 +- .../apache/phoenix/end2end/AlterTableIT.java | 14 +- .../phoenix/end2end/AlterTableWithViewsIT.java | 28 +- .../phoenix/end2end/AppendOnlySchemaIT.java | 2 +- .../phoenix/end2end/ArrayAppendFunctionIT.java | 43 +- .../phoenix/end2end/ArrayRemoveFunctionIT.java | 383 ++++ .../phoenix/end2end/BasePermissionsIT.java | 4 + .../phoenix/end2end/ChangePermissionsIT.java | 34 +- .../phoenix/end2end/CollationKeyFunctionIT.java | 37 +- .../end2end/ColumnProjectionOptimizationIT.java | 14 +- .../ConnectionQueryServicesTestImpl.java | 34 +- .../phoenix/end2end/CostBasedDecisionIT.java | 420 +++-- .../apache/phoenix/end2end/CreateTableIT.java | 5 +- .../org/apache/phoenix/end2end/DeleteIT.java | 101 ++ .../org/apache/phoenix/end2end/DropTableIT.java | 43 + .../apache/phoenix/end2end/DynamicColumnIT.java | 14 +- .../apache/phoenix/end2end/DynamicFamilyIT.java | 26 +- .../end2end/ExplainPlanWithStatsEnabledIT.java | 383 ++-- .../apache/phoenix/end2end/IndexExtendedIT.java | 6 +- .../org/apache/phoenix/end2end/IndexToolIT.java | 6 +- .../phoenix/end2end/LocalIndexSplitMergeIT.java | 59 + .../org/apache/phoenix/end2end/MapReduceIT.java | 69 +- .../phoenix/end2end/MappingTableDataTypeIT.java | 6 +- .../MigrateSystemTablesToSystemNamespaceIT.java | 49 +- .../phoenix/end2end/MultiCfQueryExecIT.java | 47 + .../end2end/NamespaceSchemaMappingIT.java | 19 +- .../phoenix/end2end/NativeHBaseTypesIT.java | 30 +- .../org/apache/phoenix/end2end/OrderByIT.java | 129 +- .../phoenix/end2end/ParallelStatsEnabledIT.java | 1 + .../PartialScannerResultsDisabledIT.java | 2 +- .../apache/phoenix/end2end/PhoenixDriverIT.java | 99 +- .../end2end/QueryDatabaseMetaDataIT.java | 39 +- .../apache/phoenix/end2end/QueryLoggerIT.java | 358 ++++ .../apache/phoenix/end2end/ReverseScanIT.java | 88 +- .../phoenix/end2end/SortMergeJoinMoreIT.java | 116 +- .../phoenix/end2end/SpillableGroupByIT.java | 74 +- .../SystemCatalogCreationOnConnectionIT.java | 638 +++++++ .../end2end/SystemTablePermissionsIT.java | 2 +- .../end2end/TenantSpecificTablesDDLIT.java | 2 + .../UngroupedAggregateRegionObserverIT.java | 171 -- .../org/apache/phoenix/end2end/UpgradeIT.java | 14 +- .../end2end/UpsertSelectAutoCommitIT.java | 28 + .../phoenix/end2end/UserDefinedFunctionsIT.java | 165 +- .../phoenix/end2end/index/BaseIndexIT.java | 22 + .../index/ChildViewsUseParentViewIndexIT.java | 10 +- .../phoenix/end2end/index/ImmutableIndexIT.java | 3 + .../end2end/index/MutableIndexFailureIT.java | 27 +- .../phoenix/end2end/index/MutableIndexIT.java | 95 + .../end2end/index/MutableIndexRebuilderIT.java | 143 ++ .../end2end/index/PartialIndexRebuilderIT.java | 130 +- .../phoenix/end2end/index/ViewIndexIT.java | 45 +- .../end2end/index/txn/TxWriteFailureIT.java | 6 +- .../apache/phoenix/end2end/join/BaseJoinIT.java | 2 + .../phoenix/end2end/join/HashJoinMoreIT.java | 4 +- .../apache/phoenix/end2end/join/SubqueryIT.java | 49 +- .../join/SubqueryUsingSortMergeJoinIT.java | 12 +- .../phoenix/monitoring/PhoenixMetricsIT.java | 24 +- .../phoenix/tx/FlappingTransactionIT.java | 11 +- .../phoenix/tx/ParameterizedTransactionIT.java | 55 +- .../org/apache/phoenix/tx/TransactionIT.java | 12 + .../org/apache/phoenix/tx/TxCheckpointIT.java | 5 +- .../hadoop/hbase/ipc/PhoenixRpcScheduler.java | 30 + .../controller/ClientRpcControllerFactory.java | 18 +- .../ipc/controller/IndexRpcController.java | 8 +- ...erRegionServerIndexRpcControllerFactory.java | 18 +- ...egionServerMetadataRpcControllerFactory.java | 17 +- .../ipc/controller/MetadataRpcController.java | 8 +- .../IndexHalfStoreFileReaderGenerator.java | 30 +- .../LocalIndexStoreFileScanner.java | 4 +- .../hadoop/hbase/regionserver/ScanInfoUtil.java | 12 + .../org/apache/phoenix/cache/GlobalCache.java | 6 +- .../org/apache/phoenix/cache/HashCache.java | 1 + .../phoenix/cache/IndexMetaDataCache.java | 7 + .../apache/phoenix/cache/ServerCacheClient.java | 7 +- .../org/apache/phoenix/cache/TenantCache.java | 2 +- .../apache/phoenix/cache/TenantCacheImpl.java | 4 +- .../apache/phoenix/compile/DeleteCompiler.java | 124 +- .../org/apache/phoenix/compile/ExplainPlan.java | 10 + .../apache/phoenix/compile/FromCompiler.java | 2 +- .../apache/phoenix/compile/GroupByCompiler.java | 19 +- .../apache/phoenix/compile/JoinCompiler.java | 324 ++-- .../phoenix/compile/ListJarsQueryPlan.java | 8 +- .../apache/phoenix/compile/OrderByCompiler.java | 11 +- .../phoenix/compile/OrderPreservingTracker.java | 13 + .../apache/phoenix/compile/PostDDLCompiler.java | 2 +- .../apache/phoenix/compile/QueryCompiler.java | 498 +++--- .../org/apache/phoenix/compile/QueryPlan.java | 2 + .../org/apache/phoenix/compile/ScanRanges.java | 17 +- .../apache/phoenix/compile/SequenceManager.java | 2 +- .../phoenix/compile/StatementContext.java | 10 + .../phoenix/compile/SubselectRewriter.java | 5 + .../apache/phoenix/compile/TraceQueryPlan.java | 6 + .../compile/TupleProjectionCompiler.java | 44 +- .../apache/phoenix/compile/UnionCompiler.java | 6 +- .../apache/phoenix/compile/UpsertCompiler.java | 47 +- .../apache/phoenix/compile/WhereOptimizer.java | 23 +- .../coprocessor/BaseScannerRegionObserver.java | 15 +- .../DelegateRegionCoprocessorEnvironment.java | 15 +- .../coprocessor/DelegateRegionObserver.java | 32 +- .../GroupedAggregateRegionObserver.java | 4 + .../coprocessor/MetaDataEndpointImpl.java | 188 +- .../phoenix/coprocessor/MetaDataProtocol.java | 15 +- .../coprocessor/MetaDataRegionObserver.java | 21 +- .../coprocessor/PhoenixAccessController.java | 102 +- .../PhoenixMetaDataCoprocessorHost.java | 6 + .../PhoenixTransactionalProcessor.java | 28 - .../phoenix/coprocessor/ScanRegionObserver.java | 4 +- .../coprocessor/ServerCachingEndpointImpl.java | 4 +- .../coprocessor/ServerCachingProtocol.java | 2 +- .../TephraTransactionalProcessor.java | 29 + .../UngroupedAggregateRegionObserver.java | 311 ++-- .../coprocessor/generated/MetaDataProtos.java | 183 +- .../coprocessor/generated/PTableProtos.java | 110 +- .../generated/ServerCachingProtos.java | 117 +- .../phoenix/exception/SQLExceptionCode.java | 17 +- .../exception/UpgradeRequiredException.java | 13 +- .../apache/phoenix/execute/AggregatePlan.java | 53 +- .../apache/phoenix/execute/BaseQueryPlan.java | 21 +- .../phoenix/execute/ClientAggregatePlan.java | 46 +- .../phoenix/execute/ClientProcessingPlan.java | 4 + .../apache/phoenix/execute/ClientScanPlan.java | 22 +- .../apache/phoenix/execute/CorrelatePlan.java | 26 +- .../apache/phoenix/execute/CursorFetchPlan.java | 6 + .../apache/phoenix/execute/DelegateHTable.java | 20 + .../apache/phoenix/execute/HashJoinPlan.java | 128 +- .../execute/LiteralResultIterationPlan.java | 8 +- .../apache/phoenix/execute/MutationState.java | 219 ++- .../PhoenixTxIndexMutationGenerator.java | 443 +++++ .../org/apache/phoenix/execute/ScanPlan.java | 36 +- .../phoenix/execute/SortMergeJoinPlan.java | 20 +- .../phoenix/execute/TupleProjectionPlan.java | 6 + .../org/apache/phoenix/execute/UnionPlan.java | 12 +- .../apache/phoenix/execute/UnnestArrayPlan.java | 6 + .../execute/visitor/AvgRowWidthVisitor.java | 205 +++ .../execute/visitor/ByteCountVisitor.java | 125 ++ .../execute/visitor/QueryPlanVisitor.java | 46 + .../execute/visitor/RowCountVisitor.java | 335 ++++ .../expression/BaseSingleExpression.java | 5 + .../phoenix/expression/ExpressionType.java | 119 +- .../expression/aggregator/Aggregators.java | 3 +- .../aggregator/ClientAggregators.java | 3 +- .../DistinctValueWithCountServerAggregator.java | 20 +- .../aggregator/ServerAggregators.java | 6 +- .../function/ArrayAppendFunction.java | 11 +- .../function/ArrayConcatFunction.java | 3 +- .../function/ArrayModifierFunction.java | 55 +- .../function/ArrayPrependFunction.java | 9 +- .../function/ArrayRemoveFunction.java | 88 + .../function/CollationKeyFunction.java | 24 +- .../expression/function/LowerFunction.java | 28 +- .../expression/function/ScalarFunction.java | 15 +- .../TransactionProviderNameFunction.java | 81 + .../expression/function/UDFExpression.java | 39 +- .../expression/function/UpperFunction.java | 29 +- .../org/apache/phoenix/hbase/index/Indexer.java | 25 +- .../hbase/index/builder/BaseIndexBuilder.java | 4 +- .../hbase/index/builder/BaseIndexCodec.java | 7 - .../hbase/index/builder/IndexBuildManager.java | 4 + .../phoenix/hbase/index/covered/IndexCodec.java | 14 +- .../hbase/index/covered/IndexMetaData.java | 12 +- .../hbase/index/covered/LocalTableState.java | 16 +- .../hbase/index/covered/NonTxIndexBuilder.java | 2 +- .../phoenix/hbase/index/covered/TableState.java | 15 - .../index/exception/IndexWriteException.java | 52 +- .../MultiIndexWriteFailureException.java | 39 +- .../SingleIndexWriteFailureException.java | 32 +- .../hbase/index/scanner/ScannerBuilder.java | 16 + .../hbase/index/write/IndexCommitter.java | 2 +- .../phoenix/hbase/index/write/IndexWriter.java | 21 +- .../hbase/index/write/IndexWriterUtils.java | 87 +- .../write/ParallelWriterIndexCommitter.java | 19 +- .../hbase/index/write/RecoveryIndexWriter.java | 4 +- .../TrackingParallelWriterIndexCommitter.java | 20 +- .../apache/phoenix/index/IndexMaintainer.java | 39 +- .../index/IndexMetaDataCacheFactory.java | 9 +- .../phoenix/index/PhoenixIndexBuilder.java | 21 +- .../apache/phoenix/index/PhoenixIndexCodec.java | 36 +- .../index/PhoenixIndexFailurePolicy.java | 207 ++- .../phoenix/index/PhoenixIndexMetaData.java | 74 +- .../index/PhoenixIndexMetaDataBuilder.java | 107 ++ .../index/PhoenixTransactionalIndexer.java | 469 +---- .../phoenix/iterate/BaseResultIterators.java | 480 ++++- .../apache/phoenix/iterate/ExplainTable.java | 3 +- .../NonAggregateRegionScannerFactory.java | 61 +- .../phoenix/iterate/ParallelIterators.java | 16 +- .../phoenix/iterate/RegionScannerFactory.java | 4 +- .../phoenix/iterate/ScanningResultIterator.java | 26 +- .../apache/phoenix/iterate/SerialIterators.java | 17 +- .../apache/phoenix/iterate/SnapshotScanner.java | 12 +- .../phoenix/iterate/TableResultIterator.java | 7 +- .../apache/phoenix/jdbc/PhoenixConnection.java | 19 +- .../phoenix/jdbc/PhoenixDatabaseMetaData.java | 36 +- .../phoenix/jdbc/PhoenixPreparedStatement.java | 11 +- .../apache/phoenix/jdbc/PhoenixResultSet.java | 38 + .../apache/phoenix/jdbc/PhoenixStatement.java | 85 +- .../apache/phoenix/join/HashCacheFactory.java | 34 +- .../java/org/apache/phoenix/log/LogLevel.java | 22 + .../java/org/apache/phoenix/log/LogWriter.java | 51 + .../log/QueryLogDetailsEventHandler.java | 63 + .../org/apache/phoenix/log/QueryLogInfo.java | 87 + .../org/apache/phoenix/log/QueryLogState.java | 22 + .../org/apache/phoenix/log/QueryLogger.java | 145 ++ .../log/QueryLoggerDefaultExceptionHandler.java | 51 + .../phoenix/log/QueryLoggerDisruptor.java | 117 ++ .../org/apache/phoenix/log/QueryLoggerUtil.java | 62 + .../org/apache/phoenix/log/RingBufferEvent.java | 93 + .../phoenix/log/RingBufferEventTranslator.java | 53 + .../org/apache/phoenix/log/TableLogWriter.java | 125 ++ .../phoenix/mapreduce/PhoenixInputFormat.java | 51 +- .../index/PhoenixIndexPartialBuildMapper.java | 5 + .../util/PhoenixConfigurationUtil.java | 63 +- .../mapreduce/util/PhoenixMapReduceUtil.java | 5 +- .../phoenix/memory/ChildMemoryManager.java | 7 +- .../phoenix/memory/GlobalMemoryManager.java | 19 +- .../phoenix/monitoring/GlobalClientMetrics.java | 27 +- .../phoenix/monitoring/ReadMetricQueue.java | 44 +- .../phoenix/monitoring/ScanMetricsHolder.java | 48 +- .../GenSubqueryParamValuesRewriter.java | 153 ++ .../apache/phoenix/optimize/QueryOptimizer.java | 212 ++- .../phoenix/parse/ArrayModifierParseNode.java | 36 + .../apache/phoenix/parse/FunctionParseNode.java | 12 +- .../java/org/apache/phoenix/parse/HintNode.java | 4 + .../org/apache/phoenix/parse/ParseNode.java | 26 +- .../phoenix/query/ConnectionQueryServices.java | 12 +- .../query/ConnectionQueryServicesImpl.java | 1016 ++++++----- .../query/ConnectionlessQueryServicesImpl.java | 76 +- .../query/DelegateConnectionQueryServices.java | 23 +- .../apache/phoenix/query/QueryConstants.java | 429 ++--- .../org/apache/phoenix/query/QueryServices.java | 16 +- .../phoenix/query/QueryServicesOptions.java | 29 +- .../apache/phoenix/schema/DelegateTable.java | 8 +- .../apache/phoenix/schema/MetaDataClient.java | 357 ++-- .../org/apache/phoenix/schema/PColumnImpl.java | 6 +- .../org/apache/phoenix/schema/PIndexState.java | 7 +- .../apache/phoenix/schema/PMetaDataImpl.java | 2 +- .../java/org/apache/phoenix/schema/PTable.java | 2 + .../org/apache/phoenix/schema/PTableImpl.java | 96 +- .../phoenix/schema/RowKeyValueAccessor.java | 2 +- .../SplitOnLeadingVarCharColumnsPolicy.java | 43 + .../schema/SystemFunctionSplitPolicy.java | 27 + .../phoenix/schema/SystemStatsSplitPolicy.java | 27 + .../apache/phoenix/schema/TableProperty.java | 288 +-- .../schema/TablesNotInSyncException.java | 17 + .../phoenix/schema/stats/StatisticsUtil.java | 6 + .../phoenix/schema/stats/StatisticsWriter.java | 9 +- .../transaction/OmidTransactionContext.java | 57 +- .../transaction/OmidTransactionProvider.java | 84 + .../transaction/OmidTransactionTable.java | 364 ---- .../transaction/PhoenixTransactionClient.java | 23 + .../transaction/PhoenixTransactionContext.java | 169 +- .../transaction/PhoenixTransactionProvider.java | 51 + .../transaction/PhoenixTransactionService.java | 24 + .../transaction/PhoenixTransactionalTable.java | 149 -- .../transaction/TephraTransactionContext.java | 205 +-- .../transaction/TephraTransactionProvider.java | 197 +++ .../transaction/TephraTransactionTable.java | 350 ---- .../phoenix/transaction/TransactionFactory.java | 139 +- .../java/org/apache/phoenix/util/CostUtil.java | 61 +- .../org/apache/phoenix/util/ExpressionUtil.java | 2 +- .../java/org/apache/phoenix/util/IndexUtil.java | 6 +- .../org/apache/phoenix/util/KeyValueUtil.java | 12 + .../org/apache/phoenix/util/PhoenixRuntime.java | 27 +- .../java/org/apache/phoenix/util/QueryUtil.java | 14 +- .../java/org/apache/phoenix/util/ScanUtil.java | 29 +- .../org/apache/phoenix/util/SchemaUtil.java | 6 + .../org/apache/phoenix/util/ServerUtil.java | 95 +- .../java/org/apache/phoenix/util/SizedUtil.java | 2 +- .../apache/phoenix/util/TransactionUtil.java | 93 +- .../org/apache/phoenix/util/UpgradeUtil.java | 47 +- .../wal/ReadWriteKeyValuesWithCodecTest.java | 6 +- .../apache/phoenix/cache/TenantCacheTest.java | 14 +- .../phoenix/compile/QueryCompilerTest.java | 815 ++++++++- .../phoenix/compile/QueryOptimizerTest.java | 41 + .../phoenix/compile/WhereOptimizerTest.java | 235 +++ .../phoenix/execute/CorrelatePlanTest.java | 4 +- .../execute/LiteralResultIteratorPlanTest.java | 4 +- .../expression/ArrayRemoveFunctionTest.java | 285 +++ .../function/CollationKeyFunctionTest.java | 14 +- .../expression/function/LowerFunctionTest.java | 93 + .../expression/function/UpperFunctionTest.java | 92 + .../index/covered/CoveredColumnIndexCodec.java | 8 +- .../covered/CoveredIndexCodecForTesting.java | 5 +- .../index/covered/LocalTableStateTest.java | 38 +- .../index/covered/NonTxIndexBuilderTest.java | 3 + .../covered/TestCoveredColumnIndexCodec.java | 12 +- .../hbase/index/write/TestIndexWriter.java | 25 +- .../index/write/TestParalleIndexWriter.java | 12 +- .../write/TestParalleWriterIndexCommitter.java | 11 +- .../index/write/TestWALRecoveryCaching.java | 7 +- .../recovery/TestPerRegionIndexWriteCache.java | 4 +- .../phoenix/memory/MemoryManagerTest.java | 15 + .../java/org/apache/phoenix/query/BaseTest.java | 26 +- .../query/ConnectionQueryServicesImplTest.java | 11 +- .../apache/phoenix/query/KeyRangeClipTest.java | 155 ++ .../query/ParallelIteratorsSplitTest.java | 8 +- .../phoenix/query/QueryServicesTestImpl.java | 15 +- .../phoenix/schema/PMetaDataImplTest.java | 21 +- .../phoenix/schema/SystemSplitPolicyTest.java | 97 + .../java/org/apache/phoenix/util/TestUtil.java | 54 +- phoenix-flume/pom.xml | 8 +- phoenix-hive/pom.xml | 2 +- .../apache/phoenix/hive/HivePhoenixStoreIT.java | 27 + .../PhoenixStorageHandlerConstants.java | 8 +- .../hive/mapreduce/PhoenixInputFormat.java | 3 +- .../phoenix/hive/query/PhoenixQueryBuilder.java | 4 +- phoenix-kafka/pom.xml | 12 +- phoenix-load-balancer/pom.xml | 2 +- phoenix-pherf/pom.xml | 6 +- .../phoenix/pherf/configuration/Column.java | 23 +- .../pherf/configuration/DataTypeMapping.java | 6 +- .../phoenix/pherf/configuration/Query.java | 25 + .../phoenix/pherf/configuration/Scenario.java | 3 +- .../pherf/configuration/XMLConfigParser.java | 2 +- .../phoenix/pherf/result/QueryResult.java | 10 +- .../phoenix/pherf/result/ResultManager.java | 18 +- .../apache/phoenix/pherf/result/ResultUtil.java | 9 +- .../pherf/result/impl/XMLResultHandler.java | 18 +- .../phoenix/pherf/rules/RulesApplier.java | 142 +- .../phoenix/pherf/schema/SchemaReader.java | 2 +- .../apache/phoenix/pherf/util/PhoenixUtil.java | 44 +- .../pherf/workload/MultiThreadedRunner.java | 35 +- .../phoenix/pherf/workload/QueryExecutor.java | 36 +- .../phoenix/pherf/workload/WriteWorkload.java | 54 +- .../scenario/prod_test_unsalted_scenario.xml | 14 +- .../org/apache/phoenix/pherf/ColumnTest.java | 3 + .../phoenix/pherf/ConfigurationParserTest.java | 4 +- .../apache/phoenix/pherf/RuleGeneratorTest.java | 107 +- .../test/resources/datamodel/test_schema.sql | 4 + .../test/resources/scenario/test_scenario.xml | 48 +- phoenix-pig/pom.xml | 6 +- phoenix-protocol/src/main/MetaDataService.proto | 1 + phoenix-protocol/src/main/PTable.proto | 1 + .../src/main/ServerCachingService.proto | 1 + phoenix-queryserver-client/pom.xml | 6 +- phoenix-queryserver/pom.xml | 6 +- .../HttpParamImpersonationQueryServerIT.java | 16 +- .../phoenix/end2end/SecureQueryServerIT.java | 15 +- .../phoenix/queryserver/server/QueryServer.java | 21 +- phoenix-server/pom.xml | 2 +- phoenix-spark/pom.xml | 2 +- .../phoenix/spark/DataFrameFunctions.scala | 6 +- .../phoenix/spark/ProductRDDFunctions.scala | 6 +- phoenix-tracing-webapp/pom.xml | 2 +- pom.xml | 35 +- python/.gitignore | 8 + python/.gitlab-ci.yml | 149 ++ python/NEWS.rst | 44 + python/README.rst | 136 ++ python/RELEASING.rst | 12 + python/ci/build-env/Dockerfile | 7 + python/ci/phoenix/Dockerfile | 33 + python/ci/phoenix/docker-entrypoint.sh | 24 + python/ci/phoenix/hbase-site.xml | 12 + python/doc/Makefile | 192 ++ python/doc/api.rst | 30 + python/doc/conf.py | 287 +++ python/doc/index.rst | 27 + python/doc/versions.rst | 3 + python/docker-compose.yml | 21 + python/examples/basic.py | 27 + python/examples/shell.py | 33 + python/gen-protobuf.sh | 38 + python/phoenixdb/__init__.py | 68 + python/phoenixdb/avatica/__init__.py | 16 + python/phoenixdb/avatica/client.py | 510 ++++++ python/phoenixdb/avatica/proto/__init__.py | 0 python/phoenixdb/avatica/proto/common_pb2.py | 1667 ++++++++++++++++++ python/phoenixdb/avatica/proto/requests_pb2.py | 1206 +++++++++++++ python/phoenixdb/avatica/proto/responses_pb2.py | 917 ++++++++++ python/phoenixdb/connection.py | 187 ++ python/phoenixdb/cursor.py | 347 ++++ python/phoenixdb/errors.py | 93 + python/phoenixdb/tests/__init__.py | 44 + python/phoenixdb/tests/dbapi20.py | 857 +++++++++ python/phoenixdb/tests/test_avatica.py | 25 + python/phoenixdb/tests/test_connection.py | 42 + python/phoenixdb/tests/test_db.py | 99 ++ python/phoenixdb/tests/test_dbapi20.py | 122 ++ python/phoenixdb/tests/test_errors.py | 60 + python/phoenixdb/tests/test_types.py | 327 ++++ python/phoenixdb/types.py | 202 +++ python/requirements.txt | 20 + python/setup.cfg | 34 + python/setup.py | 64 + python/tox.ini | 24 + 394 files changed, 23299 insertions(+), 5687 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/phoenix/blob/f7d87ce2/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java ----------------------------------------------------------------------