Github user samarthjain commented on a diff in the pull request: https://github.com/apache/phoenix/pull/133#discussion_r45683372 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/schema/MetaDataClient.java --- @@ -1137,7 +1181,7 @@ public MutationState createIndex(CreateIndexStatement statement, byte[][] splits if (hbaseVersion < PhoenixDatabaseMetaData.MUTABLE_SI_VERSION_THRESHOLD) { throw new SQLExceptionInfo.Builder(SQLExceptionCode.NO_MUTABLE_INDEXES).setTableName(indexTableName.getTableName()).build().buildException(); } - if (connection.getQueryServices().hasInvalidIndexConfiguration()) { + if (connection.getQueryServices().hasInvalidIndexConfiguration() && !dataTable.isTransactional()) { --- End diff -- I think hasInvalidIndexConfiguration() should be renamed to something like isMutableIndexWALCodecInstalled(). The actual check happens on the server side. Renaming this way makes it more explicit that the change has to do with mutable secondary indexes and that if the table is transactional, then we don't care about having the right codec in place on region servers.
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---