[1/2] phoenix git commit: PHOENIX-2901 If namespaces are enabled, check for existence of schema when sequence created

2016-06-10 Thread ankit
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-0.98 df65b174d -> 3c205ac49


PHOENIX-2901 If namespaces are enabled, check for existence of schema when 
sequence created


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/45e4af51
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/45e4af51
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/45e4af51

Branch: refs/heads/4.x-HBase-0.98
Commit: 45e4af519ff90a7969ba0ef690c3a9c5fe178229
Parents: df65b17
Author: Ankit Singhal 
Authored: Fri Jun 10 16:49:54 2016 +0530
Committer: Ankit Singhal 
Committed: Fri Jun 10 16:49:54 2016 +0530

--
 .../org/apache/phoenix/end2end/SequenceIT.java  |  58 -
 .../end2end/TenantSpecificViewIndexIT.java  | 211 +--
 .../org/apache/phoenix/end2end/UpgradeIT.java   |  41 +++-
 .../phoenix/end2end/index/ViewIndexIT.java  |  22 +-
 .../apache/phoenix/compile/FromCompiler.java|   4 +
 .../phoenix/query/ConnectionQueryServices.java  |   1 -
 .../query/ConnectionQueryServicesImpl.java  |  26 ++-
 .../apache/phoenix/schema/MetaDataClient.java   |  21 +-
 .../org/apache/phoenix/util/MetaDataUtil.java   |  35 +--
 .../org/apache/phoenix/util/PhoenixRuntime.java |   6 +-
 .../org/apache/phoenix/util/UpgradeUtil.java|  55 -
 11 files changed, 367 insertions(+), 113 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/45e4af51/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
index 3e7ec31..3ed4fd7 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
@@ -37,6 +37,7 @@ import java.util.Properties;
 import org.apache.phoenix.exception.SQLExceptionCode;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.query.QueryServices;
+import org.apache.phoenix.schema.SchemaNotFoundException;
 import org.apache.phoenix.schema.SequenceAlreadyExistsException;
 import org.apache.phoenix.schema.SequenceNotFoundException;
 import org.apache.phoenix.util.PhoenixRuntime;
@@ -110,6 +111,49 @@ public class SequenceIT extends BaseClientManagedTimeIT {
}
}

+@Test
+public void testCreateSequenceWhenNamespaceEnabled() throws Exception {
+Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
+props.setProperty(QueryServices.IS_NAMESPACE_MAPPING_ENABLED, 
Boolean.toString(true));
+String sequenceSchemaName = "ALPHA";
+String sequenceName = sequenceSchemaName + ".M_OMEGA";
+
+nextConnection(props);
+try {
+conn.createStatement().execute("CREATE SEQUENCE " + sequenceName + 
" START WITH 2 INCREMENT BY 4");
+fail();
+} catch (SchemaNotFoundException e) {
+// expected
+}
+
+conn.createStatement().execute("CREATE SCHEMA " + sequenceSchemaName);
+nextConnection(props);
+conn.createStatement().execute("CREATE SEQUENCE " + sequenceName + " 
START WITH 2 INCREMENT BY 4");
+sequenceSchemaName = "TEST_SEQ_SCHEMA";
+sequenceName = "M_SEQ";
+conn.createStatement().execute("CREATE SCHEMA " + sequenceSchemaName);
+nextConnection(props);
+conn.createStatement().execute("USE " + sequenceSchemaName);
+conn.createStatement().execute("CREATE SEQUENCE " + sequenceName + " 
START WITH 2 INCREMENT BY 4");
+nextConnection(props);
+String query = "SELECT sequence_schema, sequence_name, current_value, 
increment_by FROM SYSTEM.\"SEQUENCE\" WHERE sequence_name='"
++ sequenceName + "'";
+ResultSet rs = conn.prepareStatement(query).executeQuery();
+assertTrue(rs.next());
+assertEquals(sequenceSchemaName, rs.getString("sequence_schema"));
+assertEquals(sequenceName, rs.getString("sequence_name"));
+assertEquals(2, rs.getInt("current_value"));
+assertEquals(4, rs.getInt("increment_by"));
+assertFalse(rs.next());
+try {
+conn.createStatement().execute(
+"CREATE SEQUENCE " + sequenceSchemaName + "." + 
sequenceName + " START WITH 2 INCREMENT BY 4");
+fail();
+} catch (SequenceAlreadyExistsException e) {
+
+}
+}
+   
@Test
 public void testCreateSequence() throws Exception { 
 nextConnection();
@@ -696,15 +740,19 @@ public class SequenceIT extends BaseClientManagedTimeIT {
 

[1/2] phoenix git commit: PHOENIX-2901 If namespaces are enabled, check for existence of schema when sequence created

2016-06-10 Thread ankit
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.1 891131c78 -> 5fc6fa184


PHOENIX-2901 If namespaces are enabled, check for existence of schema when 
sequence created


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/a50bee21
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/a50bee21
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/a50bee21

Branch: refs/heads/4.x-HBase-1.1
Commit: a50bee213269e249c8f4bbae0242aa5a3a3b8341
Parents: 891131c
Author: Ankit Singhal 
Authored: Fri Jun 10 16:09:13 2016 +0530
Committer: Ankit Singhal 
Committed: Fri Jun 10 16:09:13 2016 +0530

--
 .../org/apache/phoenix/end2end/SequenceIT.java  |  58 -
 .../end2end/TenantSpecificViewIndexIT.java  | 211 +--
 .../org/apache/phoenix/end2end/UpgradeIT.java   |  41 +++-
 .../phoenix/end2end/index/ViewIndexIT.java  |  22 +-
 .../apache/phoenix/compile/FromCompiler.java|   4 +
 .../phoenix/query/ConnectionQueryServices.java  |   1 -
 .../query/ConnectionQueryServicesImpl.java  |  26 ++-
 .../apache/phoenix/schema/MetaDataClient.java   |  21 +-
 .../org/apache/phoenix/util/MetaDataUtil.java   |  36 ++--
 .../org/apache/phoenix/util/PhoenixRuntime.java |   6 +-
 .../org/apache/phoenix/util/UpgradeUtil.java|  55 -
 11 files changed, 367 insertions(+), 114 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/a50bee21/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
index 3e7ec31..3ed4fd7 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SequenceIT.java
@@ -37,6 +37,7 @@ import java.util.Properties;
 import org.apache.phoenix.exception.SQLExceptionCode;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.query.QueryServices;
+import org.apache.phoenix.schema.SchemaNotFoundException;
 import org.apache.phoenix.schema.SequenceAlreadyExistsException;
 import org.apache.phoenix.schema.SequenceNotFoundException;
 import org.apache.phoenix.util.PhoenixRuntime;
@@ -110,6 +111,49 @@ public class SequenceIT extends BaseClientManagedTimeIT {
}
}

+@Test
+public void testCreateSequenceWhenNamespaceEnabled() throws Exception {
+Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
+props.setProperty(QueryServices.IS_NAMESPACE_MAPPING_ENABLED, 
Boolean.toString(true));
+String sequenceSchemaName = "ALPHA";
+String sequenceName = sequenceSchemaName + ".M_OMEGA";
+
+nextConnection(props);
+try {
+conn.createStatement().execute("CREATE SEQUENCE " + sequenceName + 
" START WITH 2 INCREMENT BY 4");
+fail();
+} catch (SchemaNotFoundException e) {
+// expected
+}
+
+conn.createStatement().execute("CREATE SCHEMA " + sequenceSchemaName);
+nextConnection(props);
+conn.createStatement().execute("CREATE SEQUENCE " + sequenceName + " 
START WITH 2 INCREMENT BY 4");
+sequenceSchemaName = "TEST_SEQ_SCHEMA";
+sequenceName = "M_SEQ";
+conn.createStatement().execute("CREATE SCHEMA " + sequenceSchemaName);
+nextConnection(props);
+conn.createStatement().execute("USE " + sequenceSchemaName);
+conn.createStatement().execute("CREATE SEQUENCE " + sequenceName + " 
START WITH 2 INCREMENT BY 4");
+nextConnection(props);
+String query = "SELECT sequence_schema, sequence_name, current_value, 
increment_by FROM SYSTEM.\"SEQUENCE\" WHERE sequence_name='"
++ sequenceName + "'";
+ResultSet rs = conn.prepareStatement(query).executeQuery();
+assertTrue(rs.next());
+assertEquals(sequenceSchemaName, rs.getString("sequence_schema"));
+assertEquals(sequenceName, rs.getString("sequence_name"));
+assertEquals(2, rs.getInt("current_value"));
+assertEquals(4, rs.getInt("increment_by"));
+assertFalse(rs.next());
+try {
+conn.createStatement().execute(
+"CREATE SEQUENCE " + sequenceSchemaName + "." + 
sequenceName + " START WITH 2 INCREMENT BY 4");
+fail();
+} catch (SequenceAlreadyExistsException e) {
+
+}
+}
+   
@Test
 public void testCreateSequence() throws Exception { 
 nextConnection();
@@ -696,15 +740,19 @@ public class SequenceIT extends BaseClientManagedTimeIT {