[phoenix] branch 4.x updated: PHOENIX-5728 : ExplainPlan with plan as attributes object
This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch 4.x in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/4.x by this push: new e281ec6 PHOENIX-5728 : ExplainPlan with plan as attributes object e281ec6 is described below commit e281ec67e49b1dc8b924a7faa5f6fc8529bce1b3 Author: Viraj Jasani AuthorDate: Mon Nov 30 23:02:12 2020 +0530 PHOENIX-5728 : ExplainPlan with plan as attributes object --- .../apache/phoenix/iterate/MockResultIterator.java | 7 + .../phoenix/schema/stats/BaseStatsCollectorIT.java | 129 +++-- .../org/apache/phoenix/compile/DeleteCompiler.java | 25 +- .../org/apache/phoenix/compile/ExplainPlan.java| 19 +- .../phoenix/compile/ExplainPlanAttributes.java | 598 + .../apache/phoenix/compile/GroupByCompiler.java| 51 +- .../apache/phoenix/compile/ListJarsQueryPlan.java | 7 + .../compile/MutatingParallelIteratorFactory.java | 7 + .../org/apache/phoenix/compile/TraceQueryPlan.java | 7 + .../org/apache/phoenix/compile/UpsertCompiler.java | 28 +- .../org/apache/phoenix/execute/BaseQueryPlan.java | 18 +- .../phoenix/execute/ClientAggregatePlan.java | 34 +- .../org/apache/phoenix/execute/ClientScanPlan.java | 23 +- .../org/apache/phoenix/execute/CorrelatePlan.java | 37 +- .../org/apache/phoenix/execute/HashJoinPlan.java | 1 + .../execute/LiteralResultIterationPlan.java| 9 +- .../apache/phoenix/execute/SortMergeJoinPlan.java | 44 +- .../phoenix/execute/TupleProjectionPlan.java | 14 +- .../java/org/apache/phoenix/execute/UnionPlan.java | 12 +- .../apache/phoenix/execute/UnnestArrayPlan.java| 13 +- .../BaseGroupedAggregatingResultIterator.java | 7 + .../apache/phoenix/iterate/BaseResultIterator.java | 7 + .../phoenix/iterate/BaseResultIterators.java | 67 ++- .../phoenix/iterate/ChunkedResultIterator.java | 14 + .../ClientHashAggregatingResultIterator.java | 8 + .../phoenix/iterate/ConcatResultIterator.java | 10 + .../phoenix/iterate/CursorResultIterator.java | 10 + .../phoenix/iterate/DelegateResultIterator.java| 8 + .../iterate/DistinctAggregatingResultIterator.java | 11 + .../org/apache/phoenix/iterate/ExplainTable.java | 91 +++- .../iterate/FilterAggregatingResultIterator.java | 20 +- .../phoenix/iterate/FilterResultIterator.java | 20 +- .../phoenix/iterate/LimitingResultIterator.java| 22 +- .../phoenix/iterate/LookAheadResultIterator.java | 8 + .../MaterializedComparableResultIterator.java | 8 + .../iterate/MaterializedResultIterator.java| 7 + .../iterate/MergeSortRowKeyResultIterator.java | 20 +- .../iterate/MergeSortTopNResultIterator.java | 30 +- .../phoenix/iterate/OffsetResultIterator.java | 10 + .../phoenix/iterate/OrderedResultIterator.java | 20 + .../phoenix/iterate/PeekingResultIterator.java | 7 + .../org/apache/phoenix/iterate/ResultIterator.java | 24 + .../apache/phoenix/iterate/ResultIterators.java| 20 + .../phoenix/iterate/RoundRobinResultIterator.java | 16 + .../RowKeyOrderedAggregateResultIterator.java | 10 + .../phoenix/iterate/ScanningResultIterator.java| 7 + .../phoenix/iterate/SequenceResultIterator.java| 22 +- .../apache/phoenix/iterate/SerialIterators.java| 7 + .../phoenix/iterate/SpoolingResultIterator.java| 17 + .../phoenix/iterate/TableResultIterator.java | 8 + .../iterate/TableSnapshotResultIterator.java | 15 +- .../phoenix/iterate/UnionResultIterators.java | 30 +- .../phoenix/iterate/ConcatResultIteratorTest.java | 8 + .../iterate/MaterializedResultIterators.java | 7 + .../iterate/MergeSortResultIteratorTest.java | 17 + 55 files changed, 1552 insertions(+), 144 deletions(-) diff --git a/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java b/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java index e842317..5b5b643 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java @@ -28,6 +28,8 @@ import org.apache.hadoop.hbase.Cell; import org.apache.hadoop.hbase.KeyValue; import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.util.Bytes; +import org.apache.phoenix.compile.ExplainPlanAttributes +.ExplainPlanAttributesBuilder; import org.apache.phoenix.execute.TupleProjector; import org.apache.phoenix.schema.PTable; import org.apache.phoenix.schema.tuple.ResultTuple; @@ -56,6 +58,11 @@ public class MockResultIterator implements PeekingResultIterator { public void explain(List planSteps) {} @Override +public void explain(List planSteps, +ExplainPlanAttributesBuilder explainPlanAttributesBuilder) { +} + +
[phoenix] branch master updated: PHOENIX-5728 : ExplainPlan with plan as attributes object
This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/master by this push: new 0106d96 PHOENIX-5728 : ExplainPlan with plan as attributes object 0106d96 is described below commit 0106d96326380e70c6ab895a79ccfac5eafece89 Author: Viraj Jasani AuthorDate: Mon Nov 30 23:02:12 2020 +0530 PHOENIX-5728 : ExplainPlan with plan as attributes object --- .../apache/phoenix/iterate/MockResultIterator.java | 7 + .../phoenix/schema/stats/BaseStatsCollectorIT.java | 129 +++-- .../org/apache/phoenix/compile/DeleteCompiler.java | 25 +- .../org/apache/phoenix/compile/ExplainPlan.java| 19 +- .../phoenix/compile/ExplainPlanAttributes.java | 598 + .../apache/phoenix/compile/GroupByCompiler.java| 51 +- .../apache/phoenix/compile/ListJarsQueryPlan.java | 7 + .../compile/MutatingParallelIteratorFactory.java | 7 + .../org/apache/phoenix/compile/TraceQueryPlan.java | 7 + .../org/apache/phoenix/compile/UpsertCompiler.java | 28 +- .../org/apache/phoenix/execute/BaseQueryPlan.java | 18 +- .../phoenix/execute/ClientAggregatePlan.java | 34 +- .../org/apache/phoenix/execute/ClientScanPlan.java | 23 +- .../org/apache/phoenix/execute/CorrelatePlan.java | 37 +- .../org/apache/phoenix/execute/HashJoinPlan.java | 1 + .../execute/LiteralResultIterationPlan.java| 9 +- .../apache/phoenix/execute/SortMergeJoinPlan.java | 44 +- .../phoenix/execute/TupleProjectionPlan.java | 14 +- .../java/org/apache/phoenix/execute/UnionPlan.java | 12 +- .../apache/phoenix/execute/UnnestArrayPlan.java| 13 +- .../BaseGroupedAggregatingResultIterator.java | 7 + .../apache/phoenix/iterate/BaseResultIterator.java | 7 + .../phoenix/iterate/BaseResultIterators.java | 67 ++- .../phoenix/iterate/ChunkedResultIterator.java | 14 + .../ClientHashAggregatingResultIterator.java | 8 + .../phoenix/iterate/ConcatResultIterator.java | 10 + .../phoenix/iterate/CursorResultIterator.java | 10 + .../phoenix/iterate/DelegateResultIterator.java| 8 + .../iterate/DistinctAggregatingResultIterator.java | 11 + .../org/apache/phoenix/iterate/ExplainTable.java | 91 +++- .../iterate/FilterAggregatingResultIterator.java | 20 +- .../phoenix/iterate/FilterResultIterator.java | 20 +- .../phoenix/iterate/LimitingResultIterator.java| 22 +- .../phoenix/iterate/LookAheadResultIterator.java | 8 + .../MaterializedComparableResultIterator.java | 8 + .../iterate/MaterializedResultIterator.java| 7 + .../iterate/MergeSortRowKeyResultIterator.java | 20 +- .../iterate/MergeSortTopNResultIterator.java | 30 +- .../phoenix/iterate/OffsetResultIterator.java | 10 + .../phoenix/iterate/OrderedResultIterator.java | 20 + .../phoenix/iterate/PeekingResultIterator.java | 7 + .../org/apache/phoenix/iterate/ResultIterator.java | 24 + .../apache/phoenix/iterate/ResultIterators.java| 20 + .../phoenix/iterate/RoundRobinResultIterator.java | 16 + .../RowKeyOrderedAggregateResultIterator.java | 10 + .../phoenix/iterate/ScanningResultIterator.java| 7 + .../phoenix/iterate/SequenceResultIterator.java| 22 +- .../apache/phoenix/iterate/SerialIterators.java| 7 + .../phoenix/iterate/SpoolingResultIterator.java| 17 + .../phoenix/iterate/TableResultIterator.java | 8 + .../iterate/TableSnapshotResultIterator.java | 15 +- .../phoenix/iterate/UnionResultIterators.java | 30 +- .../phoenix/iterate/ConcatResultIteratorTest.java | 8 + .../iterate/MaterializedResultIterators.java | 7 + .../iterate/MergeSortResultIteratorTest.java | 17 + 55 files changed, 1552 insertions(+), 144 deletions(-) diff --git a/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java b/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java index e842317..5b5b643 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/iterate/MockResultIterator.java @@ -28,6 +28,8 @@ import org.apache.hadoop.hbase.Cell; import org.apache.hadoop.hbase.KeyValue; import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.util.Bytes; +import org.apache.phoenix.compile.ExplainPlanAttributes +.ExplainPlanAttributesBuilder; import org.apache.phoenix.execute.TupleProjector; import org.apache.phoenix.schema.PTable; import org.apache.phoenix.schema.tuple.ResultTuple; @@ -56,6 +58,11 @@ public class MockResultIterator implements PeekingResultIterator { public void explain(List planSteps) {} @Override +public void explain(List planSteps, +ExplainPlanAttributesBuilder explainPlanAttributesBuilder) { +} + +
[phoenix-omid] branch master updated (edce851 -> 0c7092a)
This is an automated email from the ASF dual-hosted git repository. stoty pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/phoenix-omid.git. from edce851 OMID-191 Fix missing executable permission because of MASSEMBLY-941 add 0c7092a OMID-192 fix missing jcommander dependency No new revisions were added by this update. Summary of changes: tso-server/pom.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
[phoenix] branch 4.x updated: PHOENIX-6245 Update tephra dependency version to 0.16.0
This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch 4.x in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/4.x by this push: new 2b9455c PHOENIX-6245 Update tephra dependency version to 0.16.0 2b9455c is described below commit 2b9455c362e78b11361ac2b225d9b2f6b85c5434 Author: Istvan Toth AuthorDate: Fri Dec 4 06:46:47 2020 +0100 PHOENIX-6245 Update tephra dependency version to 0.16.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b9d9bb6..f14d25e 100644 --- a/pom.xml +++ b/pom.xml @@ -121,7 +121,7 @@ 2.1.2 1.12.0 8.1.7.v20120910 -0.15.0-incubating +0.16.0 1.0.2 2.4.0 2.11.8
Apache-Phoenix | master | HBase 2.3 | Build #136 FAILURE
master branch HBase 2.3 build #136 status FAILURE Build #136 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/master/136/
Apache-Phoenix | master | HBase 2.2 | Build #136 FAILURE
master branch HBase 2.2 build #136 status FAILURE Build #136 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/master/136/
Apache-Phoenix | master | HBase 2.1 | Build #136 FAILURE
master branch HBase 2.1 build #136 status FAILURE Build #136 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/master/136/
[phoenix] branch master updated: PHOENIX-6245 Update tephra dependency version to 0.16.0
This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/master by this push: new 995858f PHOENIX-6245 Update tephra dependency version to 0.16.0 995858f is described below commit 995858f223c6c23755ac83d1080952cf857ae4e0 Author: Istvan Toth AuthorDate: Fri Dec 4 06:49:53 2020 +0100 PHOENIX-6245 Update tephra dependency version to 0.16.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index dcc5991..19ac080 100644 --- a/pom.xml +++ b/pom.xml @@ -113,7 +113,7 @@ 3.2.2 2.10.5 2.1.2 -0.16.0-SNAPSHOT +0.16.0 1.0.2 2.9.5 1.0.4
[phoenix] branch master updated: PHOENIX-6082 : Avoid checkAndPut when altering properties for a table or view with column-encoding enabled
This is an automated email from the ASF dual-hosted git repository. yanxinyi pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/master by this push: new 414ca16 PHOENIX-6082 : Avoid checkAndPut when altering properties for a table or view with column-encoding enabled 414ca16 is described below commit 414ca163b3a1b3a7f2bce7257cb985f244fd515d Author: Viraj Jasani AuthorDate: Sun Nov 22 18:58:41 2020 +0530 PHOENIX-6082 : Avoid checkAndPut when altering properties for a table or view with column-encoding enabled Signed-off-by: Xinyi Yan --- .../java/org/apache/phoenix/rpc/UpdateCacheIT.java | 121 +++-- .../org/apache/phoenix/schema/MetaDataClient.java | 17 ++- 2 files changed, 124 insertions(+), 14 deletions(-) diff --git a/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java b/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java index 302089d..0f63390 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java @@ -19,7 +19,6 @@ package org.apache.phoenix.rpc; import static org.apache.phoenix.util.TestUtil.INDEX_DATA_SCHEMA; import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertFalse; import static org.junit.Assert.fail; @@ -37,30 +36,38 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.Properties; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; import org.apache.phoenix.end2end.ParallelStatsDisabledIT; +import org.apache.phoenix.jdbc.PhoenixDatabaseMetaData; import org.apache.phoenix.jdbc.PhoenixEmbeddedDriver; import org.apache.phoenix.query.ConnectionQueryServices; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.MetaDataClient; import org.apache.phoenix.schema.PName; -import org.apache.phoenix.schema.PTable; import org.apache.phoenix.schema.types.PVarchar; +import org.apache.phoenix.thirdparty.com.google.common.util.concurrent.ThreadFactoryBuilder; import org.apache.phoenix.transaction.TransactionFactory; import org.apache.phoenix.util.PropertiesUtil; import org.apache.phoenix.util.SchemaUtil; import org.apache.phoenix.util.TestUtil; import org.junit.Test; import org.mockito.Mockito; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Verifies the number of RPC calls from {@link MetaDataClient} updateCache() * for transactional and non-transactional tables. */ public class UpdateCacheIT extends ParallelStatsDisabledIT { - - public static final int NUM_MILLIS_IN_DAY = 8640; + +private static final Logger LOGGER = +LoggerFactory.getLogger(UpdateCacheIT.class); private static void setupSystemTable(String fullTableName) throws SQLException { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); @@ -104,10 +111,29 @@ public class UpdateCacheIT extends ParallelStatsDisabledIT { String tableName = generateUniqueName(); String fullTableName = INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + tableName; Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); +AtomicBoolean isSysMutexEmpty = new AtomicBoolean(true); +ExecutorService executorService = Executors.newFixedThreadPool(5, +new ThreadFactoryBuilder().setDaemon(true) +.setNameFormat("check-sys-mutex-count-%d").build()); +for (int i = 0; i < 5; i++) { +executorService.submit(new SystemMutexCaller(isSysMutexEmpty, +props, INDEX_DATA_SCHEMA, tableName)); +} +Thread.sleep(500); try (Connection conn = DriverManager.getConnection(getUrl(), props)) { conn.createStatement().execute("create table " + fullTableName + TestUtil.TEST_TABLE_SCHEMA); -conn.createStatement().execute( -"alter table " + fullTableName + " SET UPDATE_CACHE_FREQUENCY=NEVER"); +conn.createStatement().execute("ALTER TABLE " + fullTableName ++ " SET UPDATE_CACHE_FREQUENCY=NEVER"); +} +// make sure SYSTEM.MUTEX did not contain any record while +// ALTER TABLE SET query was being executed +assertTrue("Mutex should not have been acquired", isSysMutexEmpty.get()); +try { +executorService.shutdown(); +executorService.awaitTermination(5, TimeUnit.SECONDS); +} catch (Exception e) { +// no action needed +LOGGER.debug("Error during ExecutorService
[phoenix] branch 4.x updated: PHOENIX-6082 : Avoid checkAndPut when altering properties for a table or view with column-encoding enabled
This is an automated email from the ASF dual-hosted git repository. yanxinyi pushed a commit to branch 4.x in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/4.x by this push: new b4cf108 PHOENIX-6082 : Avoid checkAndPut when altering properties for a table or view with column-encoding enabled b4cf108 is described below commit b4cf108fb4d242e7e74aa594ded9d2b971d9d9f0 Author: Viraj Jasani AuthorDate: Thu Nov 26 16:01:15 2020 +0530 PHOENIX-6082 : Avoid checkAndPut when altering properties for a table or view with column-encoding enabled Signed-off-by: Xinyi Yan --- .../java/org/apache/phoenix/rpc/UpdateCacheIT.java | 121 +++-- .../org/apache/phoenix/schema/MetaDataClient.java | 17 ++- 2 files changed, 124 insertions(+), 14 deletions(-) diff --git a/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java b/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java index 302089d..cd04b4f 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/rpc/UpdateCacheIT.java @@ -19,7 +19,6 @@ package org.apache.phoenix.rpc; import static org.apache.phoenix.util.TestUtil.INDEX_DATA_SCHEMA; import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertFalse; import static org.junit.Assert.fail; @@ -37,15 +36,20 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.Properties; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; +import com.google.common.util.concurrent.ThreadFactoryBuilder; import org.apache.phoenix.end2end.ParallelStatsDisabledIT; +import org.apache.phoenix.jdbc.PhoenixDatabaseMetaData; import org.apache.phoenix.jdbc.PhoenixEmbeddedDriver; import org.apache.phoenix.query.ConnectionQueryServices; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.MetaDataClient; import org.apache.phoenix.schema.PName; -import org.apache.phoenix.schema.PTable; import org.apache.phoenix.schema.types.PVarchar; import org.apache.phoenix.transaction.TransactionFactory; import org.apache.phoenix.util.PropertiesUtil; @@ -53,14 +57,17 @@ import org.apache.phoenix.util.SchemaUtil; import org.apache.phoenix.util.TestUtil; import org.junit.Test; import org.mockito.Mockito; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Verifies the number of RPC calls from {@link MetaDataClient} updateCache() * for transactional and non-transactional tables. */ public class UpdateCacheIT extends ParallelStatsDisabledIT { - - public static final int NUM_MILLIS_IN_DAY = 8640; + +private static final Logger LOGGER = +LoggerFactory.getLogger(UpdateCacheIT.class); private static void setupSystemTable(String fullTableName) throws SQLException { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); @@ -104,10 +111,29 @@ public class UpdateCacheIT extends ParallelStatsDisabledIT { String tableName = generateUniqueName(); String fullTableName = INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + tableName; Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); +AtomicBoolean isSysMutexEmpty = new AtomicBoolean(true); +ExecutorService executorService = Executors.newFixedThreadPool(5, +new ThreadFactoryBuilder().setDaemon(true) +.setNameFormat("check-sys-mutex-count-%d").build()); +for (int i = 0; i < 5; i++) { +executorService.submit(new SystemMutexCaller(isSysMutexEmpty, +props, INDEX_DATA_SCHEMA, tableName)); +} +Thread.sleep(500); try (Connection conn = DriverManager.getConnection(getUrl(), props)) { conn.createStatement().execute("create table " + fullTableName + TestUtil.TEST_TABLE_SCHEMA); -conn.createStatement().execute( -"alter table " + fullTableName + " SET UPDATE_CACHE_FREQUENCY=NEVER"); +conn.createStatement().execute("ALTER TABLE " + fullTableName ++ " SET UPDATE_CACHE_FREQUENCY=NEVER"); +} +// make sure SYSTEM.MUTEX did not contain any record while +// ALTER TABLE SET query was being executed +assertTrue("Mutex should not have been acquired", isSysMutexEmpty.get()); +try { +executorService.shutdown(); +executorService.awaitTermination(5, TimeUnit.SECONDS); +} catch (Exception e) { +// no action needed +LOGGER.debug("Error during ExecutorService shutdown"); }
svn commit: r1884174 - in /phoenix/site: publish/language/datatypes.html publish/language/functions.html publish/language/index.html publish/secondary_indexing.html source/src/site/markdown/secondary_
Author: stoty Date: Mon Dec 7 05:56:25 2020 New Revision: 1884174 URL: http://svn.apache.org/viewvc?rev=1884174=rev Log: PHOENIX-6236 Document Strongly Consistent Global Indexes on website Modified: phoenix/site/publish/language/datatypes.html phoenix/site/publish/language/functions.html phoenix/site/publish/language/index.html phoenix/site/publish/secondary_indexing.html phoenix/site/source/src/site/markdown/secondary_indexing.md Modified: phoenix/site/publish/language/datatypes.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/language/datatypes.html?rev=1884174=1884173=1884174=diff == --- phoenix/site/publish/language/datatypes.html (original) +++ phoenix/site/publish/language/datatypes.html Mon Dec 7 05:56:25 2020 @@ -1,7 +1,7 @@ Modified: phoenix/site/publish/language/functions.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/language/functions.html?rev=1884174=1884173=1884174=diff == --- phoenix/site/publish/language/functions.html (original) +++ phoenix/site/publish/language/functions.html Mon Dec 7 05:56:25 2020 @@ -1,7 +1,7 @@ Modified: phoenix/site/publish/language/index.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/language/index.html?rev=1884174=1884173=1884174=diff == --- phoenix/site/publish/language/index.html (original) +++ phoenix/site/publish/language/index.html Mon Dec 7 05:56:25 2020 @@ -1,7 +1,7 @@ Modified: phoenix/site/publish/secondary_indexing.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/secondary_indexing.html?rev=1884174=1884173=1884174=diff == --- phoenix/site/publish/secondary_indexing.html (original) +++ phoenix/site/publish/secondary_indexing.html Mon Dec 7 05:56:25 2020 @@ -1,7 +1,7 @@ @@ -195,7 +195,7 @@ Global Indexes - Global indexing targets read heavy uses cases. With global indexes, all the performance penalties for indexes occur at write time. We intercept the data table updates on write (DELETE, UPSERT VALUES and UPSERT SELECT), build the index update and then sent any necessary updates to all interested index tables. At read time, Phoenix will select the index table to use that will produce the fastest query time and directly scan it just like any other HBase table. By default, unless hinted, an index will not be used for a query that references a column that isnât part of the index. + Global indexing targets read heavy uses cases. With global indexes, all the performance penalties for indexes occur at write time. We intercept the data table updates on write (DELETE, UPSERT VALUES and UPSERT SELECT), build the index update and then sent any necessary updates to all interested index tables. At read time, Phoenix will select the index table to use that will produce the fastest query time and directly scan it just like any other HBase table. An index will not be used for a query that references a column that isnât part of the index. Local Indexes @@ -224,7 +224,7 @@ ASYNC Index threshold - As of 4.16, setting the phoenix.index.async.threshold property to a positive number will disallow synchronous index creation if the estimated indexed data size exceeds phoenix.index.async.threshold (in bytes). + As of 4.16 (and 5.1), setting the phoenix.index.async.threshold property to a positive number will disallow synchronous index creation if the estimated indexed data size exceeds phoenix.index.async.threshold (in bytes). @@ -235,7 +235,7 @@ SELECT v2 FROM my_table WHERE v1 = 'foo' - There are three means of getting an index to be used in this case: + There are two means of getting an index to be used in this case: Create a covered index by including v2 in the index: @@ -243,12 +243,6 @@ CREATE INDEX my_index ON my_table (v1) INCLUDE (v2) This will cause the v2 column value to be copied into the index and kept in synch as it changes. This will obviously increase the size of the index. - Hint the query to force it to use the index: - - -SELECT /*+ INDEX(my_table my_index) */ v2 FROM my_table WHERE v1 = 'foo' - -This will cause each data row to be retrieved when the index is traversed to find the missing v2 column value. This hint should only be used if you know that the index has good selective (i.e. a small number of table rows have a value of âfooâ in this example), as otherwise youâll get better performance by the default behavior of doing a full table scan. Create a local index: @@ -282,12 +276,16 @@ CREATE LOCAL INDEX my_index ON my_table However, since indexes are stored in separate tables than the