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 2015/04/30 22:45:22 UTC

phoenix git commit: Code refine for PhoenixSchema

Repository: phoenix
Updated Branches:
  refs/heads/calcite 8e3f68a2d -> 1ee1f2011


Code refine for PhoenixSchema


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

Branch: refs/heads/calcite
Commit: 1ee1f2011eda8a3b22c855e7730ed74b1bd628a9
Parents: 8e3f68a
Author: maryannxue <we...@intel.com>
Authored: Thu Apr 30 16:45:13 2015 -0400
Committer: maryannxue <we...@intel.com>
Committed: Thu Apr 30 16:45:13 2015 -0400

----------------------------------------------------------------------
 .../apache/phoenix/calcite/PhoenixSchema.java   | 22 +++++++++++---------
 1 file changed, 12 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/1ee1f201/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixSchema.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixSchema.java b/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixSchema.java
index 816c156..589f61d 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixSchema.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixSchema.java
@@ -40,34 +40,36 @@ public class PhoenixSchema implements Schema {
         this.schemaName = name;
         this.pc = pc;
         this.client = new MetaDataClient(pc);
-        this.subSchemaNames = Sets.newHashSet();
-        this.tableNames = Sets.newHashSet();
-        if (schemaName == null) {
-            loadSubSchemaNames();
-        }
-        loadTableNames();
+        this.subSchemaNames = name == null ? 
+                  ImmutableSet.<String> copyOf(loadSubSchemaNames()) 
+                : Collections.<String> emptySet();
+        this.tableNames = ImmutableSet.<String> copyOf(loadTableNames());
     }
     
-    private void loadSubSchemaNames() {
+    private Set<String> loadSubSchemaNames() {
         try {
             DatabaseMetaData md = pc.getMetaData();
             ResultSet rs = md.getSchemas();
+            Set<String> subSchemaNames = Sets.newHashSet();
             while (rs.next()) {
                 String schemaName = rs.getString(PhoenixDatabaseMetaData.TABLE_SCHEM);
-                this.subSchemaNames.add(schemaName == null ? "" : schemaName);
+                subSchemaNames.add(schemaName == null ? "" : schemaName);
             }
+            return subSchemaNames;
         } catch (SQLException e) {
             throw new RuntimeException(e);
         }
     }
     
-    private void loadTableNames() {
+    private Set<String> loadTableNames() {
         try {
             DatabaseMetaData md = pc.getMetaData();
             ResultSet rs = md.getTables(null, schemaName == null ? "" : schemaName, null, null);
+            Set<String> tableNames = Sets.newHashSet();
             while (rs.next()) {
-                this.tableNames.add(rs.getString(PhoenixDatabaseMetaData.TABLE_NAME));
+                tableNames.add(rs.getString(PhoenixDatabaseMetaData.TABLE_NAME));
             }
+            return tableNames;
         } catch (SQLException e) {
             throw new RuntimeException(e);
         }