tephra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gokulavasan <...@git.apache.org>
Subject [GitHub] incubator-tephra pull request #28: TEPHRA-210 Get table specific properties ...
Date Mon, 23 Jan 2017 21:37:08 GMT
Github user gokulavasan commented on a diff in the pull request:

    https://github.com/apache/incubator-tephra/pull/28#discussion_r97421770
  
    --- Diff: tephra-hbase-compat-1.1-base/src/main/java/org/apache/tephra/hbase/coprocessor/TransactionProcessor.java
---
    @@ -140,29 +141,25 @@ public void start(CoprocessorEnvironment e) throws IOException {
             ttlByFamily.put(columnDesc.getName(), ttl);
           }
     
    -      this.allowEmptyValues = env.getConfiguration().getBoolean(TxConstants.ALLOW_EMPTY_VALUES_KEY,
    -                                                                TxConstants.ALLOW_EMPTY_VALUES_DEFAULT);
    +      String allowEmptyValuesFromTableDesc = tableDesc.getValue(TxConstants.ALLOW_EMPTY_VALUES_KEY);
    +      this.allowEmptyValues = (allowEmptyValuesFromTableDesc != null) ? Boolean.valueOf(allowEmptyValuesFromTableDesc)
:
    +        getConfiguration(env).getBoolean(TxConstants.ALLOW_EMPTY_VALUES_KEY, TxConstants.ALLOW_EMPTY_VALUES_DEFAULT);
    +
           this.readNonTxnData = Boolean.valueOf(tableDesc.getValue(TxConstants.READ_NON_TX_DATA));
           if (readNonTxnData) {
             LOG.info("Reading pre-existing data enabled for table " + tableDesc.getNameAsString());
           }
     
           this.txMaxLifetimeMillis =
    -        TimeUnit.SECONDS.toMillis(env.getConfiguration().getInt(TxConstants.Manager.CFG_TX_MAX_LIFETIME,
    -                                                                TxConstants.Manager.DEFAULT_TX_MAX_LIFETIME));
    -
    -      boolean pruneEnabled = env.getConfiguration().getBoolean(TxConstants.TransactionPruning.PRUNE_ENABLE,
    -                                                               TxConstants.TransactionPruning.DEFAULT_PRUNE_ENABLE);
    -      if (pruneEnabled) {
    -        String pruneTable = env.getConfiguration().get(TxConstants.TransactionPruning.PRUNE_STATE_TABLE,
    -                                                       TxConstants.TransactionPruning.DEFAULT_PRUNE_STATE_TABLE);
    -        compactionState = new CompactionState(env, TableName.valueOf(pruneTable), txMaxLifetimeMillis);
    -        LOG.debug("Automatic invalid list pruning is enabled. Compaction state will be
recorded in table " +
    -                    pruneTable);
    -      }
    +        TimeUnit.SECONDS.toMillis(getConfiguration(env).getInt(TxConstants.Manager.CFG_TX_MAX_LIFETIME,
    --- End diff --
    
    This is being lazily read again when compaction is being called. Unfortunately we have
to set it in the start method since it is in ensureValidTxLifetime method and thus we need
to set it in the beginning.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message