This is an automated email from the ASF dual-hosted git repository. shahrs87 pushed a change to branch PHOENIX-6883-feature in repository https://gitbox.apache.org/repos/asf/phoenix.git
from 4499c2965a PHOENIX-7026 : Validate LAST_DDL_TIMESTAMP for write requests (#1726) add 5d5aaca213 PHOENIX-7038 : Implement Connection Query Service Metrics (#1682) add 2feb70fc2e PHOENIX-7032 Partial Global Secondary Indexes (#1701) add 20529a62b8 PHOENIX-7102 phoenix-connectors doesn't compile with core HEAD add 62ccb3b815 PHOENIX-7067 View indexes should be created only on non overlapping updatable views (#1709) add b64a9736b7 PHOENIX-7095 Implement Statement.closeOnCompletion() and fix related close() bugs add 5128ad0e7d PHOENIX-7076 : MetaDataRegionObserver#postOpen hook improvements (#1735) add 1a2f09ced1 PHOENIX-7109 Incorrect query results when using OFFSET add da53e659f9 PHOENIX-7121 Do not exclude commons-beanutils from Omid dependencies add b241252307 PHOENIX-7101 Explain plan to output local index name if it is used (#1737) new 7e6fe7ffc2 Merge branch 'master' into PHOENIX-6883-feature The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/phoenix/end2end/AlterTableIT.java | 75 +- .../end2end/BaseTenantSpecificViewIndexIT.java | 8 +- .../phoenix/end2end/ClientHashAggregateIT.java | 38 +- .../phoenix/end2end/CostBasedDecisionIT.java | 57 +- .../java/org/apache/phoenix/end2end/DeleteIT.java | 2 +- .../phoenix/end2end/FlappingLocalIndexIT.java | 16 +- .../java/org/apache/phoenix/end2end/InListIT.java | 7 +- .../phoenix/end2end/IndexBuildTimestampIT.java | 6 +- .../apache/phoenix/end2end/IndexExtendedIT.java | 4 +- .../org/apache/phoenix/end2end/IndexToolIT.java | 8 +- .../phoenix/end2end/LocalIndexSplitMergeIT.java | 16 +- .../phoenix/end2end/MetaDataEndpointImplIT.java | 26 +- .../phoenix/end2end/QueryDatabaseMetaDataIT.java | 50 + .../end2end/RebuildIndexConnectionPropsIT.java | 4 +- .../phoenix/end2end/TenantSpecificViewIndexIT.java | 13 +- .../phoenix/end2end/UserDefinedFunctionsIT.java | 2 +- .../end2end/ViewExtendsPkRestrictionsIT.java | 1169 ++++++++++++++++++++ .../it/java/org/apache/phoenix/end2end/ViewIT.java | 10 +- .../java/org/apache/phoenix/end2end/ViewTTLIT.java | 65 +- .../apache/phoenix/end2end/index/BaseIndexIT.java | 23 +- .../end2end/index/GlobalIndexOptimizationIT.java | 3 +- .../phoenix/end2end/index/IndexMaintenanceIT.java | 8 +- .../apache/phoenix/end2end/index/IndexUsageIT.java | 26 +- .../apache/phoenix/end2end/index/LocalIndexIT.java | 40 +- .../end2end/index/MutableIndexFailureIT.java | 5 +- .../phoenix/end2end/index/MutableIndexIT.java | 25 +- .../phoenix/end2end/index/PartialIndexIT.java | 767 +++++++++++++ .../index/UncoveredGlobalIndexRegionScannerIT.java | 9 +- .../apache/phoenix/end2end/index/ViewIndexIT.java | 5 +- .../end2end/index/txn/TxWriteFailureIT.java | 3 +- .../apache/phoenix/end2end/join/BaseJoinIT.java | 10 + .../phoenix/end2end/join/HashJoinLocalIndexIT.java | 111 +- .../end2end/join/SortMergeJoinLocalIndexIT.java | 22 +- .../apache/phoenix/end2end/join/SubqueryIT.java | 40 +- .../end2end/join/SubqueryUsingSortMergeJoinIT.java | 30 +- .../ConnectionQueryServicesMetricsIT.java | 366 ++++++ phoenix-core/src/main/antlr3/PhoenixSQL.g | 9 +- .../phoenix/compile/CreateIndexCompiler.java | 186 +++- .../phoenix/compile/CreateTableCompiler.java | 61 + .../phoenix/compile/ServerBuildIndexCompiler.java | 20 +- .../apache/phoenix/compile/StatementContext.java | 25 +- .../org/apache/phoenix/compile/WhereCompiler.java | 613 +++++++++- .../coprocessor/GlobalIndexRegionScanner.java | 69 +- .../phoenix/coprocessor/MetaDataEndpointImpl.java | 15 +- .../phoenix/coprocessor/MetaDataProtocol.java | 2 +- .../coprocessor/MetaDataRegionObserver.java | 21 +- .../coprocessor/UncoveredIndexRegionScanner.java | 15 +- .../UngroupedAggregateRegionObserver.java | 2 +- .../apache/phoenix/exception/SQLExceptionCode.java | 9 +- .../execute/PhoenixTxIndexMutationGenerator.java | 5 +- .../phoenix/expression/ComparisonExpression.java | 138 ++- .../org/apache/phoenix/expression/Expression.java | 10 + .../phoenix/expression/IsNullExpression.java | 16 +- .../phoenix/hbase/index/IndexRegionObserver.java | 60 +- .../org/apache/phoenix/index/IndexMaintainer.java | 123 +- .../org/apache/phoenix/iterate/ExplainTable.java | 20 +- .../phoenix/iterate/OffsetResultIterator.java | 2 +- .../phoenix/iterate/RegionScannerFactory.java | 15 +- .../phoenix/iterate/TableResultIterator.java | 23 + .../org/apache/phoenix/jdbc/PhoenixConnection.java | 98 +- .../phoenix/jdbc/PhoenixDatabaseMetaData.java | 507 +++++---- .../org/apache/phoenix/jdbc/PhoenixResultSet.java | 7 +- .../org/apache/phoenix/jdbc/PhoenixStatement.java | 76 +- .../apache/phoenix/log/BaseConnectionLimiter.java | 15 +- .../org/apache/phoenix/log/ConnectionLimiter.java | 4 + .../apache/phoenix/monitoring/AtomicMetric.java | 10 + .../phoenix/monitoring/CombinableMetric.java | 8 + .../phoenix/monitoring/CombinableMetricImpl.java | 10 + ...ric.java => ConnectionQueryServicesMetric.java} | 16 +- ...java => ConnectionQueryServicesMetricImpl.java} | 25 +- .../phoenix/monitoring/GlobalMetricImpl.java | 10 + .../java/org/apache/phoenix/monitoring/Metric.java | 4 + .../phoenix/monitoring/NoOpGlobalMetricImpl.java | 10 + .../apache/phoenix/monitoring/NonAtomicMetric.java | 10 + .../phoenix/monitoring/PhoenixTableMetricImpl.java | 10 + .../ConnectionQueryServicesHistogram.java} | 34 +- .../ConnectionQueryServicesMetrics.java | 120 ++ .../ConnectionQueryServicesMetricsHistograms.java | 71 ++ .../ConnectionQueryServicesMetricsManager.java | 343 ++++++ .../NoOpConnectionQueryServicesMetricsManager.java | 62 ++ .../apache/phoenix/optimize/QueryOptimizer.java | 72 +- .../apache/phoenix/parse/CreateIndexStatement.java | 12 +- .../org/apache/phoenix/parse/ParseNodeFactory.java | 9 +- .../phoenix/query/ConnectionQueryServices.java | 1 + .../phoenix/query/ConnectionQueryServicesImpl.java | 26 +- .../query/ConnectionlessQueryServicesImpl.java | 5 + .../query/DelegateConnectionQueryServices.java | 7 +- .../phoenix/query/DelegateQueryServices.java | 4 +- .../org/apache/phoenix/query/QueryConstants.java | 4 +- .../org/apache/phoenix/query/QueryServices.java | 24 + .../apache/phoenix/query/QueryServicesOptions.java | 44 + .../org/apache/phoenix/schema/DelegateTable.java | 26 +- .../org/apache/phoenix/schema/MetaDataClient.java | 125 ++- .../java/org/apache/phoenix/schema/PTable.java | 32 +- .../java/org/apache/phoenix/schema/PTableImpl.java | 95 +- .../java/org/apache/phoenix/util/IndexUtil.java | 31 + .../org/apache/phoenix/util/PhoenixRuntime.java | 18 + phoenix-core/src/main/protobuf/PTable.proto | 1 + .../src/main/protobuf/ServerCachingService.proto | 2 + .../apache/phoenix/compile/WhereCompilerTest.java | 88 ++ .../phoenix/index/VerifySingleIndexRowTest.java | 2 +- .../apache/phoenix/jdbc/PhoenixStatementTest.java | 38 + .../ConnectionQueryServicesHistogramTest.java | 73 ++ ...nnectionQueryServicesMetricsHistogramsTest.java | 37 + .../ConnectionQueryServicesMetricsManagerTest.java | 112 ++ .../ConnectionQueryServicesMetricsTest.java | 106 ++ .../ConnectionQueryServicesNameMetricsTest.java | 87 ++ pom.xml | 18 +- 108 files changed, 6259 insertions(+), 818 deletions(-) create mode 100644 phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewExtendsPkRestrictionsIT.java create mode 100644 phoenix-core/src/it/java/org/apache/phoenix/end2end/index/PartialIndexIT.java create mode 100644 phoenix-core/src/it/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetricsIT.java copy phoenix-core/src/main/java/org/apache/phoenix/monitoring/{PhoenixTableMetric.java => ConnectionQueryServicesMetric.java} (71%) copy phoenix-core/src/main/java/org/apache/phoenix/monitoring/{PhoenixTableMetricImpl.java => ConnectionQueryServicesMetricImpl.java} (78%) copy phoenix-core/src/main/java/org/apache/phoenix/monitoring/{SizeHistogram.java => connectionqueryservice/ConnectionQueryServicesHistogram.java} (59%) create mode 100644 phoenix-core/src/main/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetrics.java create mode 100644 phoenix-core/src/main/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetricsHistograms.java create mode 100644 phoenix-core/src/main/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetricsManager.java create mode 100644 phoenix-core/src/main/java/org/apache/phoenix/monitoring/connectionqueryservice/NoOpConnectionQueryServicesMetricsManager.java create mode 100644 phoenix-core/src/test/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesHistogramTest.java create mode 100644 phoenix-core/src/test/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetricsHistogramsTest.java create mode 100644 phoenix-core/src/test/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetricsManagerTest.java create mode 100644 phoenix-core/src/test/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesMetricsTest.java create mode 100644 phoenix-core/src/test/java/org/apache/phoenix/monitoring/connectionqueryservice/ConnectionQueryServicesNameMetricsTest.java