git commit: PHOENIX-1249 Support local immutable index
Repository: phoenix Updated Branches: refs/heads/4.0 c0c4bdf10 -> 6d91f8c4c PHOENIX-1249 Support local immutable index Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/6d91f8c4 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/6d91f8c4 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/6d91f8c4 Branch: refs/heads/4.0 Commit: 6d91f8c4c27fe0c843412b010529a12195e0be23 Parents: c0c4bdf Author: Rajeshbabu Chintaguntla Authored: Tue Sep 30 07:40:17 2014 +0530 Committer: Rajeshbabu Chintaguntla Committed: Tue Sep 30 19:41:54 2014 +0530 -- .../org/apache/phoenix/end2end/DeleteIT.java| 11 +- .../phoenix/end2end/index/ImmutableIndexIT.java | 74 -- .../phoenix/end2end/index/LocalIndexIT.java | 60 +++ .../apache/phoenix/compile/DeleteCompiler.java | 13 ++- .../hbase/index/covered/IndexUpdate.java| 2 +- .../apache/phoenix/index/IndexMaintainer.java | 55 -- .../phoenix/index/PhoenixIndexBuilder.java | 20 +++- .../apache/phoenix/index/PhoenixIndexCodec.java | 101 +++ .../apache/phoenix/schema/MetaDataClient.java | 3 - 9 files changed, 255 insertions(+), 84 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/6d91f8c4/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java -- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java index 337e49b..677fb53 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java @@ -344,6 +344,15 @@ public class DeleteIT extends BaseHBaseManagedTimeIT { @Test public void testDeleteRowFromTableWithImmutableIndex() throws SQLException { +testDeleteRowFromTableWithImmutableIndex(false); +} + +@Test +public void testDeleteRowFromTableWithImmutableLocalIndex() throws SQLException { +testDeleteRowFromTableWithImmutableIndex(true); +} + +public void testDeleteRowFromTableWithImmutableIndex(boolean localIndex) throws SQLException { Connection con = null; try { boolean autoCommit = false; @@ -360,7 +369,7 @@ public class DeleteIT extends BaseHBaseManagedTimeIT { "USAGE.DB BIGINT," + "STATS.ACTIVE_VISITOR INTEGER " + "CONSTRAINT PK PRIMARY KEY (HOST, DOMAIN, FEATURE, DATE)) IMMUTABLE_ROWS=true"); -stm.execute("CREATE INDEX web_stats_idx ON web_stats (DATE, FEATURE)"); +stm.execute("CREATE " + (localIndex ? "LOCAL" : "") + " INDEX web_stats_idx ON web_stats (DATE, FEATURE)"); stm.close(); Date date = new Date(0); http://git-wip-us.apache.org/repos/asf/phoenix/blob/6d91f8c4/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 b522931..c1a50da 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 @@ -113,12 +113,21 @@ public class ImmutableIndexIT extends BaseHBaseManagedTimeIT { @Test public void testIndexWithNullableFixedWithCols() throws Exception { +testIndexWithNullableFixedWithCols(false); +} + +@Test +public void testLocalIndexWithNullableFixedWithCols() throws Exception { +testIndexWithNullableFixedWithCols(true); +} + +public void testIndexWithNullableFixedWithCols(boolean localIndex) throws Exception { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); conn.setAutoCommit(false); ensureTableCreated(getUrl(), INDEX_DATA_TABLE); populateTestTable(); -String ddl = "CREATE INDEX IDX ON " + INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE +String ddl = "CREATE " + (localIndex ? "LOCAL" : "") + " INDEX IDX ON " + INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE + " (char_col1 ASC, int_col1 ASC)" + " INCLUDE (long_col1, long_col2)"; PreparedStatement stmt = conn.prepareStatement(ddl); @@ -126,7 +135,13 @@ public class ImmutableIndexIT extends BaseHBaseManagedTimeIT { String query = "SELECT char_col1, i
git commit: PHOENIX-1249 Support local immutable index
Repository: phoenix Updated Branches: refs/heads/master abd049d88 -> f28fb8b7c PHOENIX-1249 Support local immutable index Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/f28fb8b7 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/f28fb8b7 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/f28fb8b7 Branch: refs/heads/master Commit: f28fb8b7c5075ccb7a522baa58c2b3ab3003dbe7 Parents: abd049d Author: Rajeshbabu Chintaguntla Authored: Tue Sep 30 07:40:17 2014 +0530 Committer: Rajeshbabu Chintaguntla Committed: Tue Sep 30 07:40:17 2014 +0530 -- .../org/apache/phoenix/end2end/DeleteIT.java| 11 +- .../phoenix/end2end/index/ImmutableIndexIT.java | 74 -- .../phoenix/end2end/index/LocalIndexIT.java | 60 +++ .../apache/phoenix/compile/DeleteCompiler.java | 13 ++- .../hbase/index/covered/IndexUpdate.java| 2 +- .../apache/phoenix/index/IndexMaintainer.java | 55 -- .../phoenix/index/PhoenixIndexBuilder.java | 20 +++- .../apache/phoenix/index/PhoenixIndexCodec.java | 101 +++ .../apache/phoenix/schema/MetaDataClient.java | 3 - 9 files changed, 255 insertions(+), 84 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/f28fb8b7/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java -- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java index 337e49b..677fb53 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java @@ -344,6 +344,15 @@ public class DeleteIT extends BaseHBaseManagedTimeIT { @Test public void testDeleteRowFromTableWithImmutableIndex() throws SQLException { +testDeleteRowFromTableWithImmutableIndex(false); +} + +@Test +public void testDeleteRowFromTableWithImmutableLocalIndex() throws SQLException { +testDeleteRowFromTableWithImmutableIndex(true); +} + +public void testDeleteRowFromTableWithImmutableIndex(boolean localIndex) throws SQLException { Connection con = null; try { boolean autoCommit = false; @@ -360,7 +369,7 @@ public class DeleteIT extends BaseHBaseManagedTimeIT { "USAGE.DB BIGINT," + "STATS.ACTIVE_VISITOR INTEGER " + "CONSTRAINT PK PRIMARY KEY (HOST, DOMAIN, FEATURE, DATE)) IMMUTABLE_ROWS=true"); -stm.execute("CREATE INDEX web_stats_idx ON web_stats (DATE, FEATURE)"); +stm.execute("CREATE " + (localIndex ? "LOCAL" : "") + " INDEX web_stats_idx ON web_stats (DATE, FEATURE)"); stm.close(); Date date = new Date(0); http://git-wip-us.apache.org/repos/asf/phoenix/blob/f28fb8b7/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 b522931..c1a50da 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 @@ -113,12 +113,21 @@ public class ImmutableIndexIT extends BaseHBaseManagedTimeIT { @Test public void testIndexWithNullableFixedWithCols() throws Exception { +testIndexWithNullableFixedWithCols(false); +} + +@Test +public void testLocalIndexWithNullableFixedWithCols() throws Exception { +testIndexWithNullableFixedWithCols(true); +} + +public void testIndexWithNullableFixedWithCols(boolean localIndex) throws Exception { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); conn.setAutoCommit(false); ensureTableCreated(getUrl(), INDEX_DATA_TABLE); populateTestTable(); -String ddl = "CREATE INDEX IDX ON " + INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE +String ddl = "CREATE " + (localIndex ? "LOCAL" : "") + " INDEX IDX ON " + INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE + " (char_col1 ASC, int_col1 ASC)" + " INCLUDE (long_col1, long_col2)"; PreparedStatement stmt = conn.prepareStatement(ddl); @@ -126,7 +135,13 @@ public class ImmutableIndexIT extends BaseHBaseManagedTimeIT { String query = "SELECT char_c