Github user joshelser commented on a diff in the pull request:

    https://github.com/apache/phoenix/pull/277#discussion_r146902373
  
    --- Diff: 
phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
 ---
    @@ -2526,8 +2541,14 @@ private void 
createOtherSystemTables(PhoenixConnection metaConnection) throws SQ
             try {
                 
metaConnection.createStatement().execute(QueryConstants.CREATE_FUNCTION_METADATA);
             } catch (TableAlreadyExistsException ignore) {}
    +        // We catch TableExistsException in createSysMutexTable() and 
ignore it. Hence we will also ignore IOException here.
    +        // SYSTEM.MUTEX table should not be exposed to user. Hence it is 
directly created and used via HBase API.
    +        // Using 'CREATE TABLE' statement will add entries to 
SYSTEM.CATALOG table, which should not happen.
    +        try {
    +            createSysMutexTable(hBaseAdmin, 
ConnectionQueryServicesImpl.this.getProps());
    +        } catch (IOException ignore) {}
    --- End diff --
    
    What about the case where the table creation failed for a legitimate system 
reason (something an admin needs to correct)? We should at least have some 
warning to the user that we failed to created the table, right?


---

Reply via email to