You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ma...@apache.org on 2016/09/20 18:05:56 UTC
[33/47] phoenix git commit: PHOENIX-3285 Add test name in Parameters
name since failsafe uses that to form report file name
PHOENIX-3285 Add test name in Parameters name since failsafe uses that to form report file name
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/4c8bda15
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/4c8bda15
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/4c8bda15
Branch: refs/heads/calcite
Commit: 4c8bda1510606148e6d3d5154ed9004098ff239d
Parents: b0f9004
Author: James Taylor <ja...@apache.org>
Authored: Thu Sep 15 17:07:13 2016 -0700
Committer: James Taylor <ja...@apache.org>
Committed: Thu Sep 15 17:07:13 2016 -0700
----------------------------------------------------------------------
.../phoenix/end2end/AlterTableWithViewsIT.java | 2 +-
.../phoenix/end2end/AutoPartitionViewsIT.java | 2 +-
.../apache/phoenix/end2end/CaseStatementIT.java | 2 +-
.../apache/phoenix/end2end/CastAndCoerceIT.java | 2 +-
.../end2end/ClientTimeArithmeticQueryIT.java | 2 +-
.../apache/phoenix/end2end/DerivedTableIT.java | 4 +-
.../apache/phoenix/end2end/DropSchemaIT.java | 2 +-
.../org/apache/phoenix/end2end/GroupByIT.java | 5 +-
.../org/apache/phoenix/end2end/NotQueryIT.java | 2 +-
.../org/apache/phoenix/end2end/ScanQueryIT.java | 2 +-
.../end2end/SequenceBulkAllocationIT.java | 2 +-
.../apache/phoenix/end2end/TenantIdTypeIT.java | 12 +-
.../phoenix/end2end/index/ImmutableIndexIT.java | 4 +-
.../apache/phoenix/end2end/index/IndexIT.java | 5 +-
.../end2end/index/IndexOnOwnClusterIT.java | 218 ++++++++++++++++++-
.../end2end/index/MutableIndexFailureIT.java | 2 +-
.../phoenix/end2end/index/MutableIndexIT.java | 4 +-
.../end2end/index/ReadOnlyIndexFailureIT.java | 2 +-
.../phoenix/end2end/index/ViewIndexIT.java | 2 +-
.../end2end/index/txn/MutableRollbackIT.java | 2 +-
.../phoenix/end2end/index/txn/RollbackIT.java | 2 +-
.../end2end/index/txn/TxWriteFailureIT.java | 2 +-
.../apache/phoenix/execute/PartialCommitIT.java | 5 +-
.../org/apache/phoenix/tx/TxCheckpointIT.java | 5 +-
24 files changed, 248 insertions(+), 44 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/AlterTableWithViewsIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AlterTableWithViewsIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AlterTableWithViewsIT.java
index ae3b977..177a5c7 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AlterTableWithViewsIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AlterTableWithViewsIT.java
@@ -67,7 +67,7 @@ public class AlterTableWithViewsIT extends BaseHBaseManagedTimeTableReuseIT {
this.isMultiTenant = isMultiTenant;
}
- @Parameters(name="multiTenant = {0}")
+ @Parameters(name="AlterTableWithViewsIT_multiTenant={0}") // name is used by failsafe as file name in reports
public static Collection<Boolean> data() {
return Arrays.asList(false, true);
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
index 95ac2cb..f44c083 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
@@ -56,7 +56,7 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeTableReuseIT {
private final String TENANT_SPECIFIC_URL2 = getUrl() + ';' + PhoenixRuntime.TENANT_ID_ATTRIB
+ "=tenant2";
- @Parameters(name = "salted = {0}, multi-tenant = {1}")
+ @Parameters(name = "AutoPartitionViewsIT_salted={0},multi-tenant={1}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] { { false, false }, { false, true }, { true, false },
{ true, true } });
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/CaseStatementIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/CaseStatementIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/CaseStatementIT.java
index bda1273..59b0f41 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/CaseStatementIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/CaseStatementIT.java
@@ -58,7 +58,7 @@ public class CaseStatementIT extends BaseQueryIT {
super(indexDDL);
}
- @Parameters(name="{0}")
+ @Parameters(name="CaseStatementIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
return QueryIT.data();
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/CastAndCoerceIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/CastAndCoerceIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/CastAndCoerceIT.java
index 8134aba..876c23a 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/CastAndCoerceIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/CastAndCoerceIT.java
@@ -47,7 +47,7 @@ public class CastAndCoerceIT extends BaseQueryIT {
super(indexDDL);
}
- @Parameters(name="{0}")
+ @Parameters(name="CastAndCoerceIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
return QueryIT.data();
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/ClientTimeArithmeticQueryIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ClientTimeArithmeticQueryIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ClientTimeArithmeticQueryIT.java
index 584f2ff..ea4f3ab 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ClientTimeArithmeticQueryIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ClientTimeArithmeticQueryIT.java
@@ -64,7 +64,7 @@ public class ClientTimeArithmeticQueryIT extends BaseQueryIT {
super(indexDDL);
}
- @Parameters(name="{0}")
+ @Parameters(name="ClientTimeArithmeticQueryIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
return QueryIT.data();
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/DerivedTableIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DerivedTableIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DerivedTableIT.java
index 16ad47f..862416b 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DerivedTableIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DerivedTableIT.java
@@ -18,6 +18,7 @@
package org.apache.phoenix.end2end;
+import static org.apache.phoenix.util.TestUtil.ATABLE_NAME;
import static org.apache.phoenix.util.TestUtil.A_VALUE;
import static org.apache.phoenix.util.TestUtil.B_VALUE;
import static org.apache.phoenix.util.TestUtil.C_VALUE;
@@ -32,7 +33,6 @@ import static org.apache.phoenix.util.TestUtil.ROW7;
import static org.apache.phoenix.util.TestUtil.ROW8;
import static org.apache.phoenix.util.TestUtil.ROW9;
import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES;
-import static org.apache.phoenix.util.TestUtil.ATABLE_NAME;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -85,7 +85,7 @@ public class DerivedTableIT extends BaseClientManagedTimeIT {
}
}
- @Parameters(name="{0}")
+ @Parameters(name="DerivedTableIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
List<Object> testCases = Lists.newArrayList();
testCases.add(new String[][] {
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/DropSchemaIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DropSchemaIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DropSchemaIT.java
index bfaf401..9d59ec7 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DropSchemaIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DropSchemaIT.java
@@ -65,7 +65,7 @@ public class DropSchemaIT extends BaseClientManagedTimeIT {
this.schema = schema;
}
- @Parameters(name = "schema = {0}")
+ @Parameters(name = "DropSchemaIT_schema={0}") // name is used by failsafe as file name in reports
public static Collection<String> data() {
return Arrays.asList("TEST_SCHEMA", "\"test_schema\"");
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/GroupByIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/GroupByIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/GroupByIT.java
index 1b5c275..f0c781f 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/GroupByIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/GroupByIT.java
@@ -31,7 +31,6 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.sql.Connection;
-import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
@@ -45,8 +44,6 @@ import java.util.Properties;
import org.apache.phoenix.query.QueryServices;
import org.apache.phoenix.util.PhoenixRuntime;
import org.apache.phoenix.util.PropertiesUtil;
-import org.apache.phoenix.util.ReadOnlyProps;
-import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -64,7 +61,7 @@ public class GroupByIT extends BaseQueryIT {
super(indexDDL);
}
- @Parameters(name="{0}")
+ @Parameters(name="GroupByIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
return QueryIT.data();
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/NotQueryIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/NotQueryIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/NotQueryIT.java
index 6cc0eed..76627be 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/NotQueryIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/NotQueryIT.java
@@ -56,7 +56,7 @@ public class NotQueryIT extends BaseQueryIT {
super(indexDDL);
}
- @Parameters(name="{0}")
+ @Parameters(name="NotQueryIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
return QueryIT.data();
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/ScanQueryIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ScanQueryIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ScanQueryIT.java
index 063bdab..9b28bad 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ScanQueryIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ScanQueryIT.java
@@ -61,7 +61,7 @@ import com.google.common.primitives.Floats;
@RunWith(Parameterized.class)
public class ScanQueryIT extends BaseQueryIT {
- @Parameters(name="{0}")
+ @Parameters(name="ScanQueryIT_{index}") // name is used by failsafe as file name in reports
public static Collection<Object> data() {
return QueryIT.data();
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceBulkAllocationIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceBulkAllocationIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceBulkAllocationIT.java
index e7db1ec..7ea3477 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceBulkAllocationIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceBulkAllocationIT.java
@@ -96,7 +96,7 @@ public class SequenceBulkAllocationIT extends BaseClientManagedTimeIT {
}
}
- @Parameters
+ @Parameters(name="SequenceBulkAllocationIT_tenantId={0}") // name is used by failsafe as file name in reports
public static Object[] data() {
return new Object[] {null, "tenant1"};
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java
index c7b5716..a3ca355 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java
@@ -22,11 +22,13 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import java.sql.*;
-import java.util.Properties;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.ResultSet;
+import java.sql.SQLException;
import java.util.Collection;
import java.util.List;
-import com.google.common.collect.Lists;
+import java.util.Properties;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.schema.SequenceNotFoundException;
@@ -37,6 +39,8 @@ import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
+import com.google.common.collect.Lists;
+
@RunWith(Parameterized.class)
public class TenantIdTypeIT extends BaseHBaseManagedTimeTableReuseIT {
@@ -86,7 +90,7 @@ public class TenantIdTypeIT extends BaseHBaseManagedTimeTableReuseIT {
+ "MULTI_TENANT=true";
}
- @Parameters
+ @Parameters( name = "TenantIdTypeIT_datatype={0}" ) // name is used by failsafe as file name in reports
public static Collection<Object[]> data() {
List<Object[]> testCases = Lists.newArrayList();
testCases.add(new Object[] { "INTEGER", "2147483647", "2147483646" });
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ImmutableIndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ImmutableIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ImmutableIndexIT.java
index 0c7a356..ec5267d 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ImmutableIndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ImmutableIndexIT.java
@@ -72,7 +72,6 @@ import com.google.common.collect.Maps;
public class ImmutableIndexIT extends BaseHBaseManagedTimeTableReuseIT {
private final boolean localIndex;
- private final boolean transactional;
private final String tableDDLOptions;
private volatile boolean stopThreads = false;
@@ -83,7 +82,6 @@ public class ImmutableIndexIT extends BaseHBaseManagedTimeTableReuseIT {
public ImmutableIndexIT(boolean localIndex, boolean transactional) {
this.localIndex = localIndex;
- this.transactional = transactional;
StringBuilder optionBuilder = new StringBuilder("IMMUTABLE_ROWS=true");
if (transactional) {
optionBuilder.append(", TRANSACTIONAL=true");
@@ -103,7 +101,7 @@ public class ImmutableIndexIT extends BaseHBaseManagedTimeTableReuseIT {
setUpTestDriver(new ReadOnlyProps(serverProps.entrySet().iterator()), new ReadOnlyProps(clientProps.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0} , transactional = {1}")
+ @Parameters(name="ImmutableIndexIT_localIndex={0},transactional={1}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] {
{ false, false }, { false, true },
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexIT.java
index a5fefe2..f06ac82 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexIT.java
@@ -55,7 +55,6 @@ import org.apache.hadoop.hbase.ipc.PhoenixRpcSchedulerFactory;
import org.apache.phoenix.compile.ColumnResolver;
import org.apache.phoenix.compile.FromCompiler;
import org.apache.phoenix.end2end.BaseHBaseManagedTimeTableReuseIT;
-import org.apache.phoenix.end2end.BaseOwnClusterIT;
import org.apache.phoenix.end2end.Shadower;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.jdbc.PhoenixConnection;
@@ -83,7 +82,7 @@ import org.junit.runners.Parameterized.Parameters;
import com.google.common.collect.Maps;
@RunWith(Parameterized.class)
-public class IndexIT extends BaseOwnClusterIT {
+public class IndexIT extends BaseHBaseManagedTimeTableReuseIT {
private final boolean localIndex;
private final boolean transactional;
@@ -114,7 +113,7 @@ public class IndexIT extends BaseOwnClusterIT {
setUpTestDriver(new ReadOnlyProps(props.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0} , mutable = {1} , transactional = {2}")
+ @Parameters(name="IndexIT_localIndex={0},mutable={1},transactional={2}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] {
{ false, false, false }, { false, false, true }, { false, true, false }, { false, true, true },
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexOnOwnClusterIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexOnOwnClusterIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexOnOwnClusterIT.java
index 8c90b6e..4f0da4d 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexOnOwnClusterIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/IndexOnOwnClusterIT.java
@@ -25,24 +25,36 @@ import static org.junit.Assert.assertTrue;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.List;
import java.util.Map;
import java.util.Properties;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.hbase.HRegionInfo;
+import org.apache.hadoop.hbase.MetaTableAccessor;
+import org.apache.hadoop.hbase.TableName;
+import org.apache.hadoop.hbase.client.HBaseAdmin;
+import org.apache.hadoop.hbase.util.Bytes;
import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT;
import org.apache.phoenix.end2end.IndexToolIT;
+import org.apache.phoenix.jdbc.PhoenixConnection;
import org.apache.phoenix.mapreduce.index.IndexTool;
import org.apache.phoenix.query.QueryServices;
import org.apache.phoenix.query.QueryServicesOptions;
+import org.apache.phoenix.util.ByteUtil;
import org.apache.phoenix.util.PropertiesUtil;
import org.apache.phoenix.util.QueryUtil;
import org.apache.phoenix.util.ReadOnlyProps;
+import org.apache.phoenix.util.SchemaUtil;
+import org.apache.phoenix.util.TestUtil;
import org.junit.BeforeClass;
import org.junit.Test;
import com.google.common.collect.Maps;
-public class AsyncImmutableIndexIT extends BaseOwnClusterHBaseManagedTimeIT {
+public class IndexOnOwnClusterIT extends BaseOwnClusterHBaseManagedTimeIT {
@BeforeClass
public static void doSetup() throws Exception {
@@ -50,9 +62,9 @@ public class AsyncImmutableIndexIT extends BaseOwnClusterHBaseManagedTimeIT {
serverProps.put(QueryServices.EXTRA_JDBC_ARGUMENTS_ATTRIB,
QueryServicesOptions.DEFAULT_EXTRA_JDBC_ARGUMENTS);
setUpRealDriver(new ReadOnlyProps(serverProps.entrySet().iterator()),
- ReadOnlyProps.EMPTY_PROPS);
+ ReadOnlyProps.EMPTY_PROPS);
}
-
+
@Test
public void testDeleteFromImmutable() throws Exception {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
@@ -97,7 +109,7 @@ public class AsyncImmutableIndexIT extends BaseOwnClusterHBaseManagedTimeIT {
String query = "SELECT pk3 from TEST_TABLE ORDER BY pk3";
ResultSet rs = conn.createStatement().executeQuery("EXPLAIN " + query);
String expectedPlan =
- "CLIENT 1-CHUNK PARALLEL 1-WAY FULL SCAN OVER TEST_INDEX\n"
+ "CLIENT PARALLEL 1-WAY FULL SCAN OVER TEST_INDEX\n"
+ " SERVER FILTER BY FIRST KEY ONLY";
assertEquals("Wrong plan ", expectedPlan, QueryUtil.getExplainPlan(rs));
rs = conn.createStatement().executeQuery(query);
@@ -111,4 +123,202 @@ public class AsyncImmutableIndexIT extends BaseOwnClusterHBaseManagedTimeIT {
}
}
+ private Connection getConnection() throws SQLException{
+ Properties props = PropertiesUtil.deepCopy(TestUtil.TEST_PROPERTIES);
+ props.put(QueryServices.EXPLAIN_ROW_COUNT_ATTRIB,
+ Boolean.FALSE.toString());
+ props.put(QueryServices.EXPLAIN_CHUNK_COUNT_ATTRIB,
+ Boolean.FALSE.toString());
+ props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB,
+ Boolean.TRUE.toString());
+ return DriverManager.getConnection(getUrl(),props);
+ }
+
+ private void createBaseTable(String tableName, String splits) throws SQLException {
+ Connection conn = getConnection();
+ String ddl = "CREATE TABLE " + tableName + " (t_id VARCHAR NOT NULL,\n" +
+ "k1 INTEGER NOT NULL,\n" +
+ "k2 INTEGER NOT NULL,\n" +
+ "k3 INTEGER,\n" +
+ "v1 VARCHAR,\n" +
+ "CONSTRAINT pk PRIMARY KEY (t_id, k1, k2))\n"
+ + (splits != null ? (" split on " + splits) : "");
+ conn.createStatement().execute(ddl);
+ conn.close();
+ }
+
+ // Moved from LocalIndexIT because it was causing parallel runs to hang
+ @Test
+ public void testLocalIndexScanAfterRegionSplit() throws Exception {
+ String schemaName = generateRandomString();
+ String tableName = schemaName + "." + generateRandomString();
+ String indexName = "IDX_" + generateRandomString();
+ TableName physicalTableName = SchemaUtil.getPhysicalTableName(tableName.getBytes(), false);
+ String indexPhysicalTableName = physicalTableName.getNameAsString();
+
+ createBaseTable(tableName, "('e','j','o')");
+ Connection conn1 = getConnection();
+ try{
+ String[] strings = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
+ for (int i = 0; i < 26; i++) {
+ conn1.createStatement().execute(
+ "UPSERT INTO " + tableName + " values('"+strings[i]+"'," + i + ","
+ + (i + 1) + "," + (i + 2) + ",'" + strings[25 - i] + "')");
+ }
+ conn1.commit();
+ conn1.createStatement().execute("CREATE LOCAL INDEX " + indexName + " ON " + tableName + "(v1)");
+ conn1.createStatement().execute("CREATE LOCAL INDEX " + indexName + "_2 ON " + tableName + "(k3)");
+
+ ResultSet rs = conn1.createStatement().executeQuery("SELECT * FROM " + tableName);
+ assertTrue(rs.next());
+
+ HBaseAdmin admin = conn1.unwrap(PhoenixConnection.class).getQueryServices().getAdmin();
+ for (int i = 1; i < 5; i++) {
+ admin.split(physicalTableName, ByteUtil.concat(Bytes.toBytes(strings[3*i])));
+ List<HRegionInfo> regionsOfUserTable =
+ MetaTableAccessor.getTableRegions(getUtility().getZooKeeperWatcher(), admin.getConnection(),
+ physicalTableName, false);
+
+ while (regionsOfUserTable.size() != (4+i)) {
+ Thread.sleep(100);
+ regionsOfUserTable = MetaTableAccessor.getTableRegions(getUtility().getZooKeeperWatcher(),
+ admin.getConnection(), physicalTableName, false);
+ }
+ assertEquals(4+i, regionsOfUserTable.size());
+ String[] tIdColumnValues = new String[26];
+ String[] v1ColumnValues = new String[26];
+ int[] k1ColumnValue = new int[26];
+ String query = "SELECT t_id,k1,v1 FROM " + tableName;
+ rs = conn1.createStatement().executeQuery(query);
+ Thread.sleep(1000);
+ for (int j = 0; j < 26; j++) {
+ assertTrue(rs.next());
+ tIdColumnValues[j] = rs.getString("t_id");
+ k1ColumnValue[j] = rs.getInt("k1");
+ v1ColumnValues[j] = rs.getString("V1");
+ }
+ Arrays.sort(tIdColumnValues);
+ Arrays.sort(v1ColumnValues);
+ Arrays.sort(k1ColumnValue);
+ assertTrue(Arrays.equals(strings, tIdColumnValues));
+ assertTrue(Arrays.equals(strings, v1ColumnValues));
+ for(int m=0;m<26;m++) {
+ assertEquals(m, k1ColumnValue[m]);
+ }
+
+ rs = conn1.createStatement().executeQuery("EXPLAIN " + query);
+ assertEquals(
+ "CLIENT PARALLEL " + (4 + i) + "-WAY RANGE SCAN OVER "
+ + indexPhysicalTableName + " [1]\n"
+ + " SERVER FILTER BY FIRST KEY ONLY\n"
+ + "CLIENT MERGE SORT", QueryUtil.getExplainPlan(rs));
+
+ query = "SELECT t_id,k1,k3 FROM " + tableName;
+ rs = conn1.createStatement().executeQuery("EXPLAIN "+query);
+ assertEquals(
+ "CLIENT PARALLEL "
+ + ((strings[3 * i].compareTo("j") < 0) ? (4 + i) : (4 + i - 1))
+ + "-WAY RANGE SCAN OVER "
+ + indexPhysicalTableName + " [2]\n"
+ + " SERVER FILTER BY FIRST KEY ONLY\n"
+ + "CLIENT MERGE SORT", QueryUtil.getExplainPlan(rs));
+ rs = conn1.createStatement().executeQuery(query);
+ Thread.sleep(1000);
+ int[] k3ColumnValue = new int[26];
+ for (int j = 0; j < 26; j++) {
+ assertTrue(rs.next());
+ tIdColumnValues[j] = rs.getString("t_id");
+ k1ColumnValue[j] = rs.getInt("k1");
+ k3ColumnValue[j] = rs.getInt("k3");
+ }
+ Arrays.sort(tIdColumnValues);
+ Arrays.sort(k1ColumnValue);
+ Arrays.sort(k3ColumnValue);
+ assertTrue(Arrays.equals(strings, tIdColumnValues));
+ for(int m=0;m<26;m++) {
+ assertEquals(m, k1ColumnValue[m]);
+ assertEquals(m+2, k3ColumnValue[m]);
+ }
+ }
+ } finally {
+ conn1.close();
+ }
+ }
+
+ // Moved from LocalIndexIT because it was causing parallel runs to hang
+ @Test
+ public void testLocalIndexScanAfterRegionsMerge() throws Exception {
+ String schemaName = generateRandomString();
+ String tableName = schemaName + "." + generateRandomString();
+ String indexName = "IDX_" + generateRandomString();
+ TableName physicalTableName = SchemaUtil.getPhysicalTableName(tableName.getBytes(), false);
+ String indexPhysicalTableName = physicalTableName.getNameAsString();
+
+ createBaseTable(tableName, "('e','j','o')");
+ Connection conn1 = getConnection();
+ try{
+ String[] strings = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
+ for (int i = 0; i < 26; i++) {
+ conn1.createStatement().execute(
+ "UPSERT INTO " + tableName + " values('"+strings[i]+"'," + i + ","
+ + (i + 1) + "," + (i + 2) + ",'" + strings[25 - i] + "')");
+ }
+ conn1.commit();
+ conn1.createStatement().execute("CREATE LOCAL INDEX " + indexName + " ON " + tableName + "(v1)");
+ conn1.createStatement().execute("CREATE LOCAL INDEX " + indexName + "_2 ON " + tableName + "(k3)");
+
+ ResultSet rs = conn1.createStatement().executeQuery("SELECT * FROM " + tableName);
+ assertTrue(rs.next());
+
+ HBaseAdmin admin = conn1.unwrap(PhoenixConnection.class).getQueryServices().getAdmin();
+ List<HRegionInfo> regionsOfUserTable =
+ MetaTableAccessor.getTableRegions(getUtility().getZooKeeperWatcher(), admin.getConnection(),
+ physicalTableName, false);
+ admin.mergeRegions(regionsOfUserTable.get(0).getEncodedNameAsBytes(),
+ regionsOfUserTable.get(1).getEncodedNameAsBytes(), false);
+ regionsOfUserTable =
+ MetaTableAccessor.getTableRegions(getUtility().getZooKeeperWatcher(), admin.getConnection(),
+ physicalTableName, false);
+
+ while (regionsOfUserTable.size() != 3) {
+ Thread.sleep(100);
+ regionsOfUserTable = MetaTableAccessor.getTableRegions(getUtility().getZooKeeperWatcher(),
+ admin.getConnection(), physicalTableName, false);
+ }
+ String query = "SELECT t_id,k1,v1 FROM " + tableName;
+ rs = conn1.createStatement().executeQuery(query);
+ Thread.sleep(1000);
+ for (int j = 0; j < 26; j++) {
+ assertTrue(rs.next());
+ assertEquals(strings[25 - j], rs.getString("t_id"));
+ assertEquals(25 - j, rs.getInt("k1"));
+ assertEquals(strings[j], rs.getString("V1"));
+ }
+ rs = conn1.createStatement().executeQuery("EXPLAIN " + query);
+ assertEquals(
+ "CLIENT PARALLEL " + 3 + "-WAY RANGE SCAN OVER "
+ + indexPhysicalTableName
+ + " [1]\n" + " SERVER FILTER BY FIRST KEY ONLY\n"
+ + "CLIENT MERGE SORT", QueryUtil.getExplainPlan(rs));
+
+ query = "SELECT t_id,k1,k3 FROM " + tableName;
+ rs = conn1.createStatement().executeQuery("EXPLAIN " + query);
+ assertEquals(
+ "CLIENT PARALLEL " + 3 + "-WAY RANGE SCAN OVER "
+ + indexPhysicalTableName
+ + " [2]\n" + " SERVER FILTER BY FIRST KEY ONLY\n"
+ + "CLIENT MERGE SORT", QueryUtil.getExplainPlan(rs));
+
+ rs = conn1.createStatement().executeQuery(query);
+ Thread.sleep(1000);
+ for (int j = 0; j < 26; j++) {
+ assertTrue(rs.next());
+ assertEquals(strings[j], rs.getString("t_id"));
+ assertEquals(j, rs.getInt("k1"));
+ assertEquals(j + 2, rs.getInt("k3"));
+ }
+ } finally {
+ conn1.close();
+ }
+ }
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexFailureIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexFailureIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexFailureIT.java
index c68d897..ff74dc8 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexFailureIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexFailureIT.java
@@ -115,7 +115,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT {
setUpTestDriver(new ReadOnlyProps(serverProps.entrySet().iterator()), new ReadOnlyProps(clientProps.entrySet().iterator()));
}
- @Parameters(name = "transactional = {0}, localIndex = {1}, isNamespaceMapped = {2}")
+ @Parameters(name = "MutableIndexFailureIT_transactional={0},localIndex={1},isNamespaceMapped={2}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] { { false, false, true }, { false, false, false }, { false, true, true },
{ false, true, false }, { true, false, true }, { true, true, true }, { true, false, false },
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexIT.java
index 1646538..6dc4657 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexIT.java
@@ -70,11 +70,9 @@ public class MutableIndexIT extends BaseHBaseManagedTimeTableReuseIT {
protected final boolean localIndex;
private final String tableDDLOptions;
- private final boolean transactional;
public MutableIndexIT(boolean localIndex, boolean transactional) {
this.localIndex = localIndex;
- this.transactional = transactional;
StringBuilder optionBuilder = new StringBuilder();
if (transactional) {
optionBuilder.append("TRANSACTIONAL=true");
@@ -92,7 +90,7 @@ public class MutableIndexIT extends BaseHBaseManagedTimeTableReuseIT {
setUpTestDriver(new ReadOnlyProps(props.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0} , transactional = {1}")
+ @Parameters(name="MutableIndexIT_localIndex={0},transactional={1}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] {
{ false, false }, { false, true }, { true, false }, { true, true }
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ReadOnlyIndexFailureIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ReadOnlyIndexFailureIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ReadOnlyIndexFailureIT.java
index a3ad418..1dae126 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ReadOnlyIndexFailureIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ReadOnlyIndexFailureIT.java
@@ -95,7 +95,7 @@ public class ReadOnlyIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT {
this.fullIndexName = SchemaUtil.getTableName(TestUtil.DEFAULT_SCHEMA_NAME, indexName);
}
- @Parameters(name = "localIndex = {0}")
+ @Parameters(name = "ReadOnlyIndexFailureIT_localIndex={0}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] { { false }, { true } });
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
index f70397a..a886bca 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/ViewIndexIT.java
@@ -48,7 +48,7 @@ import org.junit.runners.Parameterized.Parameters;
public class ViewIndexIT extends BaseHBaseManagedTimeTableReuseIT {
private boolean isNamespaceMapped;
- @Parameters(name = "isNamespaceMapped = {0}")
+ @Parameters(name = "ViewIndexIT_isNamespaceMapped={0}") // name is used by failsafe as file name in reports
public static Collection<Boolean> data() {
return Arrays.asList(true, false);
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/MutableRollbackIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/MutableRollbackIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/MutableRollbackIT.java
index 9d61247..8562c0a 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/MutableRollbackIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/MutableRollbackIT.java
@@ -69,7 +69,7 @@ public class MutableRollbackIT extends BaseHBaseManagedTimeTableReuseIT {
setUpTestDriver(new ReadOnlyProps(props.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0}")
+ @Parameters(name="MutableRollbackIT_localIndex={0}") // name is used by failsafe as file name in reports
public static Collection<Boolean> data() {
return Arrays.asList(new Boolean[] { false, true});
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/RollbackIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/RollbackIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/RollbackIT.java
index 963263f..92a69d0 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/RollbackIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/RollbackIT.java
@@ -66,7 +66,7 @@ public class RollbackIT extends BaseHBaseManagedTimeTableReuseIT {
setUpTestDriver(new ReadOnlyProps(props.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0} , mutable = {1}")
+ @Parameters(name="RollbackIT_localIndex={0},mutable={1}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] {
{ false, false }, { false, true },
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/TxWriteFailureIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/TxWriteFailureIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/TxWriteFailureIT.java
index c7364dd..0202128 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/TxWriteFailureIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/index/txn/TxWriteFailureIT.java
@@ -86,7 +86,7 @@ public class TxWriteFailureIT extends BaseOwnClusterHBaseManagedTimeIT {
setUpTestDriver(new ReadOnlyProps(serverProps.entrySet().iterator()), new ReadOnlyProps(clientProps.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0} , mutable = {1}")
+ @Parameters(name="TxWriteFailureIT_localIndex={0},mutable={1}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] {
{ false, false }, { false, true }, { true, false }, { true, true }
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/execute/PartialCommitIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/execute/PartialCommitIT.java b/phoenix-core/src/it/java/org/apache/phoenix/execute/PartialCommitIT.java
index 7ba6889..6758abc 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/execute/PartialCommitIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/execute/PartialCommitIT.java
@@ -67,8 +67,7 @@ import com.google.common.base.Preconditions;
import com.google.common.collect.Maps;
@RunWith(Parameterized.class)
-// Needs to extend BaseOwnClusterIT (and not BaseOwnClusterHBaseManagedTimeIT since table data
-// is created and populated once in the constructor
+// Needs to extend BaseOwnClusterIT due to installation of FailingRegionObserver coprocessor
public class PartialCommitIT extends BaseOwnClusterIT {
private final String A_SUCESS_TABLE;
@@ -93,7 +92,7 @@ public class PartialCommitIT extends BaseOwnClusterIT {
createTablesWithABitOfData();
}
- @Parameters(name="transactional = {0}")
+ @Parameters(name="PartialCommitIT_transactional={0}") // name is used by failsafe as file name in reports
public static Collection<Boolean> data() {
return Arrays.asList(false, true);
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/4c8bda15/phoenix-core/src/it/java/org/apache/phoenix/tx/TxCheckpointIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/tx/TxCheckpointIT.java b/phoenix-core/src/it/java/org/apache/phoenix/tx/TxCheckpointIT.java
index 9f47a1e..8f877ac 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/tx/TxCheckpointIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/tx/TxCheckpointIT.java
@@ -41,14 +41,13 @@ import org.apache.phoenix.query.QueryServices;
import org.apache.phoenix.util.PropertiesUtil;
import org.apache.phoenix.util.ReadOnlyProps;
import org.apache.phoenix.util.SchemaUtil;
+import org.apache.tephra.Transaction.VisibilityLevel;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
-import org.apache.tephra.Transaction.VisibilityLevel;
-
import com.google.common.collect.Maps;
@RunWith(Parameterized.class)
@@ -72,7 +71,7 @@ public class TxCheckpointIT extends BaseHBaseManagedTimeTableReuseIT {
setUpTestDriver(new ReadOnlyProps(props.entrySet().iterator()));
}
- @Parameters(name="localIndex = {0} , mutable = {1}")
+ @Parameters(name="TxCheckpointIT_localIndex={0},mutable={1}") // name is used by failsafe as file name in reports
public static Collection<Boolean[]> data() {
return Arrays.asList(new Boolean[][] {
{ false, false }, { false, true }, { true, false }, { true, true }