phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ohadshacham <>
Subject [GitHub] phoenix pull request #291: [PHOENIX-4278] Implement pure client side transac...
Date Thu, 08 Feb 2018 09:35:21 GMT
Github user ohadshacham commented on a diff in the pull request:
    --- Diff: phoenix-core/src/main/java/org/apache/phoenix/query/
    @@ -850,19 +849,12 @@ private void addCoprocessors(byte[] tableName, HTableDescriptor
descriptor, PTab
                         && !SchemaUtil.isMetaTable(tableName)
                         && !SchemaUtil.isStatsTable(tableName)) {
                     if (isTransactional) {
    -                    if (!descriptor.hasCoprocessor(PhoenixTransactionalIndexer.class.getName()))
    -                        descriptor.addCoprocessor(PhoenixTransactionalIndexer.class.getName(),
null, priority, null);
    -                    }
    --- End diff --
    Maybe I am missing something, but I don't understand why if we upgrade server and client
together, we still need an empty PhoenixTransactionalIndexer. Can't we just remove the addCoprocessor
from the code and remove PhoenixTransactionalIndexer?
    Regarding the case of supporting server upgrade with old clients. Can't we just add a
new attribute to each mutation denotes that the index maintenance performed on the client
slide and modify PhoenixTransactionalIndexer to ignore mutations (call the super function)
for mutations that contains this attribute?


View raw message