[23/47] phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/e4fd0395 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/e4fd0395 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/e4fd0395 Branch: refs/heads/calcite Commit: e4fd03952a15be60eee6ddc557a19ce917c606c2 Parents: b640b39 Author: Rajeshbabu ChintaguntlaAuthored: Wed Sep 14 21:03:22 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Wed Sep 14 21:03:22 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 34 +--- .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 32 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/e4fd0395/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 0a85216..c68d897 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE " + (!localIndex ? "LOCAL " : "") + "INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; ResultSet rs =
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/4.8-HBase-0.98 22fcbe4e9 -> 04860ec40 PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/04860ec4 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/04860ec4 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/04860ec4 Branch: refs/heads/4.8-HBase-0.98 Commit: 04860ec40a29000ff46af583c35d4a6d94b4ca22 Parents: 22fcbe4 Author: Rajeshbabu ChintaguntlaAuthored: Fri Sep 16 22:21:39 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Fri Sep 16 22:21:39 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 37 .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 34 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/04860ec4/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 e3d4c75..9b4f77a 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " +
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/4.8-HBase-1.0 97cb4e010 -> 8066f88ab PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/8066f88a Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/8066f88a Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/8066f88a Branch: refs/heads/4.8-HBase-1.0 Commit: 8066f88ab1e756182726f890d78bef7543a5fa6b Parents: 97cb4e0 Author: Rajeshbabu ChintaguntlaAuthored: Fri Sep 16 21:22:51 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Fri Sep 16 21:22:51 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 37 .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 34 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/8066f88a/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 0a85216..9b4f77a 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName;
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/4.8-HBase-1.1 b9d51ecdc -> 40e0c1d7f PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/40e0c1d7 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/40e0c1d7 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/40e0c1d7 Branch: refs/heads/4.8-HBase-1.1 Commit: 40e0c1d7f1e0f8ca09739eb65d7c3ed4c3052e2f Parents: b9d51ec Author: Rajeshbabu ChintaguntlaAuthored: Fri Sep 16 21:00:03 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Fri Sep 16 21:00:03 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 37 .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 34 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/40e0c1d7/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 0a85216..9b4f77a 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName;
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/4.8-HBase-1.2 496872c6e -> 614f870bd PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/614f870b Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/614f870b Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/614f870b Branch: refs/heads/4.8-HBase-1.2 Commit: 614f870bdeff324ce2236a64d6c5465ced649884 Parents: 496872c Author: Rajeshbabu ChintaguntlaAuthored: Fri Sep 16 20:24:02 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Fri Sep 16 20:24:02 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 37 .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 34 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/614f870b/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 0a85216..1f987ed 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE " + (!localIndex ? "LOCAL " : "") + "INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" +
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/4.x-HBase-0.98 dc713aa2a -> aa11bd402 PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/aa11bd40 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/aa11bd40 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/aa11bd40 Branch: refs/heads/4.x-HBase-0.98 Commit: aa11bd4025b6995049302c112e4471a45fd2bc61 Parents: dc713aa Author: Rajeshbabu ChintaguntlaAuthored: Fri Sep 16 20:00:38 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Fri Sep 16 20:00:38 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 37 .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 34 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/aa11bd40/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 ba223f3..21f6346 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " +
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/4.x-HBase-1.1 5d5ae08b9 -> c749a3611 PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/c749a361 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/c749a361 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/c749a361 Branch: refs/heads/4.x-HBase-1.1 Commit: c749a361196e42e4eeb802f989994295859c7579 Parents: 5d5ae08 Author: Rajeshbabu ChintaguntlaAuthored: Wed Sep 14 21:04:05 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Wed Sep 14 21:04:05 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 34 +--- .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 32 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/c749a361/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 0a85216..c68d897 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE " + (!localIndex ? "LOCAL " : "") + "INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" +
phoenix git commit: PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu)
Repository: phoenix Updated Branches: refs/heads/master b640b39ce -> e4fd03952 PHOENIX-3162 TableNotFoundException might be thrown when an index dropped while upserting.(Rajeshbabu) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/e4fd0395 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/e4fd0395 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/e4fd0395 Branch: refs/heads/master Commit: e4fd03952a15be60eee6ddc557a19ce917c606c2 Parents: b640b39 Author: Rajeshbabu ChintaguntlaAuthored: Wed Sep 14 21:03:22 2016 +0530 Committer: Rajeshbabu Chintaguntla Committed: Wed Sep 14 21:03:22 2016 +0530 -- .../end2end/index/MutableIndexFailureIT.java| 34 +--- .../index/PhoenixIndexFailurePolicy.java| 5 +-- 2 files changed, 32 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/phoenix/blob/e4fd0395/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 0a85216..c68d897 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 @@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.regionserver.MiniBatchOperationInProgress; import org.apache.hadoop.hbase.util.Bytes; import org.apache.phoenix.end2end.BaseOwnClusterHBaseManagedTimeIT; import org.apache.phoenix.end2end.NeedsOwnMiniClusterTest; +import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.PIndexState; @@ -79,7 +80,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { private String tableName; private String indexName; -private String fullTableName; +public static volatile String fullTableName; private String fullIndexName; private final boolean transactional; @@ -150,6 +151,11 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { FAIL_WRITE = false; conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + indexName + " ON " + fullTableName + " (v1) INCLUDE (v2)"); +// Create other index which should be local/global if the other index is global/local to +// check the drop index. +conn.createStatement().execute( +"CREATE " + (!localIndex ? "LOCAL " : "") + "INDEX " + indexName + "_3" + " ON " ++ fullTableName + " (v2) INCLUDE (v1)"); conn.createStatement().execute( "CREATE " + (localIndex ? "LOCAL " : "") + "INDEX " + secondIndexName + " ON " + secondTableName + " (v1) INCLUDE (v2)"); @@ -166,7 +172,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { assertTrue(rs.next()); assertEquals(secondIndexName, rs.getString(3)); assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); -assertFalse(rs.next()); +assertTrue(rs.next()); +assertEquals(indexName+"_3", rs.getString(3)); +assertEquals(PIndexState.ACTIVE.toString(), rs.getString("INDEX_STATE")); initializeTable(conn, fullTableName); initializeTable(conn, secondTableName); @@ -262,7 +270,9 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { stmt.setString(3, "4"); stmt.execute(); conn.commit(); - +// To clear the index name from connection. +PhoenixConnection phoenixConn = conn.unwrap(PhoenixConnection.class); +phoenixConn.getMetaDataCache().removeTable(null, fullTableName, null, HConstants.LATEST_TIMESTAMP); // verify index table has correct data validateDataWithIndex(conn, fullTableName, fullIndexName); validateDataWithIndex(conn, secondTableName, secondFullIndexName); @@ -306,7 +316,7 @@ public class MutableIndexFailureIT extends BaseOwnClusterHBaseManagedTimeIT { } private void validateDataWithIndex(Connection conn, String tableName, String indexName) throws SQLException { -String query = "SELECT /*+ INDEX(" + indexName + ") */ k,v1 FROM " + tableName; +String query = "SELECT /*+ INDEX(" + indexName + ") */