You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ja...@apache.org on 2017/10/03 22:05:46 UTC
[1/2] phoenix git commit: PHOENIX-4274 Test case for Hint query for
index on view does not use include
Repository: phoenix
Updated Branches:
refs/heads/master 68b5db54d -> f0bc4cdb5
PHOENIX-4274 Test case for Hint query for index on view does not use include
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/f0bc4cdb
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/f0bc4cdb
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/f0bc4cdb
Branch: refs/heads/master
Commit: f0bc4cdb5bbf96b316c78cc816400b04f63e911b
Parents: 8e91c62
Author: James Taylor <jt...@salesforce.com>
Authored: Tue Oct 3 15:04:30 2017 -0700
Committer: James Taylor <jt...@salesforce.com>
Committed: Tue Oct 3 15:05:36 2017 -0700
----------------------------------------------------------------------
.../phoenix/end2end/index/ViewIndexIT.java | 33 +++++++++++++++++++-
1 file changed, 32 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/f0bc4cdb/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 8ea6c27..53bb550 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
@@ -44,7 +44,6 @@ import org.apache.phoenix.jdbc.PhoenixStatement;
import org.apache.phoenix.query.KeyRange;
import org.apache.phoenix.query.QueryServices;
import org.apache.phoenix.schema.PNameFactory;
-import org.apache.phoenix.schema.PTableType;
import org.apache.phoenix.schema.TableNotFoundException;
import org.apache.phoenix.util.MetaDataUtil;
import org.apache.phoenix.util.PhoenixRuntime;
@@ -52,6 +51,7 @@ import org.apache.phoenix.util.PropertiesUtil;
import org.apache.phoenix.util.QueryUtil;
import org.apache.phoenix.util.SchemaUtil;
import org.apache.phoenix.util.TestUtil;
+import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@@ -413,4 +413,35 @@ public class ViewIndexIT extends ParallelStatsDisabledIT {
conn.close();
}
}
+
+ @Test
+ public void testHintForIndexOnViewWithInclude() throws Exception {
+ testHintForIndexOnView(true);
+ }
+
+ @Ignore("PHOENIX-4274 Hint query for index on view does not use include")
+ @Test
+ public void testHintForIndexOnViewWithoutInclude() throws Exception {
+ testHintForIndexOnView(false);
+ }
+
+ private void testHintForIndexOnView(boolean includeColumns) throws Exception {
+ Properties props = new Properties();
+ Connection conn1 = DriverManager.getConnection(getUrl(), props);
+ conn1.setAutoCommit(true);
+ String tableName=generateUniqueName();
+ String viewName=generateUniqueName();
+ String indexName=generateUniqueName();
+ conn1.createStatement().execute(
+ "CREATE TABLE "+tableName+" (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) UPDATE_CACHE_FREQUENCY=1000000");
+ conn1.createStatement().execute("upsert into "+tableName+" values ('row1', 'value1', 'key1')");
+ conn1.createStatement().execute(
+ "CREATE VIEW "+viewName+" (v3 VARCHAR, v4 VARCHAR) AS SELECT * FROM "+tableName+" WHERE v1 = 'value1'");
+ conn1.createStatement().execute("CREATE INDEX " + indexName + " ON " + viewName + "(v3)" + (includeColumns ? " INCLUDE(v4)" : ""));
+ PhoenixStatement stmt = conn1.createStatement().unwrap(PhoenixStatement.class);
+ ResultSet rs = stmt.executeQuery("SELECT /*+ INDEX(" + viewName + " " + indexName + ") */ v1 FROM " + viewName + " WHERE v3 = 'foo' ORDER BY v4");
+ assertFalse(rs.next());
+ assertEquals(indexName, stmt.getQueryPlan().getContext().getCurrentTable().getTable().getName().getString());
+ }
+
}
[2/2] phoenix git commit: PHOENIX-4275 Use unique table names for
ViewIT
Posted by ja...@apache.org.
PHOENIX-4275 Use unique table names for ViewIT
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/8e91c62b
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/8e91c62b
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/8e91c62b
Branch: refs/heads/master
Commit: 8e91c62bdde4998896418453d260401224a21f74
Parents: 68b5db5
Author: James Taylor <jt...@salesforce.com>
Authored: Tue Oct 3 15:03:03 2017 -0700
Committer: James Taylor <jt...@salesforce.com>
Committed: Tue Oct 3 15:05:36 2017 -0700
----------------------------------------------------------------------
.../src/it/java/org/apache/phoenix/end2end/ViewIT.java | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/8e91c62b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
index 267dbc9..1953f79 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java
@@ -701,15 +701,15 @@ public class ViewIT extends BaseViewIT {
Properties props = new Properties();
Connection conn1 = DriverManager.getConnection(getUrl(), props);
conn1.setAutoCommit(true);
- String TABLE_NAME="UpdateCacheViewTest"+System.currentTimeMillis();
- String VIEW_NAME="VIEW_"+System.currentTimeMillis();
+ String tableName=generateUniqueName();
+ String viewName=generateUniqueName();
conn1.createStatement().execute(
- "CREATE TABLE "+TABLE_NAME+" (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) UPDATE_CACHE_FREQUENCY=1000000");
- conn1.createStatement().execute("upsert into "+TABLE_NAME+" values ('row1', 'value1', 'key1')");
+ "CREATE TABLE "+tableName+" (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) UPDATE_CACHE_FREQUENCY=1000000");
+ conn1.createStatement().execute("upsert into "+tableName+" values ('row1', 'value1', 'key1')");
conn1.createStatement().execute(
- "CREATE VIEW "+VIEW_NAME+" (v43 VARCHAR) AS SELECT * FROM "+TABLE_NAME+" WHERE v1 = 'value1'");
+ "CREATE VIEW "+viewName+" (v43 VARCHAR) AS SELECT * FROM "+tableName+" WHERE v1 = 'value1'");
ResultSet rs = conn1.createStatement()
- .executeQuery("SELECT * FROM "+TABLE_NAME+" WHERE v1 = 'value1'");
+ .executeQuery("SELECT * FROM "+tableName+" WHERE v1 = 'value1'");
assertTrue(rs.next());
}