[ https://issues.apache.org/jira/browse/TEPHRA-210?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15831023#comment-15831023 ]
ASF GitHub Bot commented on TEPHRA-210: --------------------------------------- GitHub user gokulavasan opened a pull request: https://github.com/apache/incubator-tephra/pull/27 TEPHRA-210 Get table specific properties from tableDescriptor and oth… …er properties from getConfiguration method allowing users to override it to supply it JIRA : https://issues.apache.org/jira/browse/TEPHRA-210 Todo: Port this change to other compat modules after review of this change You can merge this pull request into a Git repository by running: $ git pull https://github.com/gokulavasan/incubator-tephra feature/tephra-210 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-tephra/pull/27.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #27 ---- commit 119f132e4ad834ef30312bd52118f007b08466e7 Author: Gokul Gunasekaran <go...@cask.co> Date: 2017-01-20T02:01:14Z TEPHRA-210 Get table specific properties from tableDescriptor and other properties from getConfiguration method allowing users to override it to supply it ---- > Streamline where tephra properties are fetched in TransactionProcessor > coprocessor > ---------------------------------------------------------------------------------- > > Key: TEPHRA-210 > URL: https://issues.apache.org/jira/browse/TEPHRA-210 > Project: Tephra > Issue Type: Improvement > Reporter: Gokul Gunasekaran > Assignee: Gokul Gunasekaran > Fix For: 0.11.0-incubating > > > Tephra properties that are being in the TransactionProcessor coprocessor are: > TxConstants.ALLOW_EMPTY_VALUES_KEY > TxConstants.READ_NON_TX_DATA > TxConstants.Manager.CFG_TX_MAX_LIFETIME > TxConstants.TransactionPruning.PRUNE_ENABLE > TxConstants.TransactionPruning.PRUNE_STATE_TABLE > Out of the above properties, first two are table specific and thus ideally > should come from the tableDesc (and can default to the value in > env.getConfiguration). The other three properties should fetched from a > ``Configuration`` provided by a protected method that could be overriden by > derived classes (default implementation could still fetch it from > env.getConfiguration). Moreover, these two properties are used in filtering > of data during Hbase client calls and thus need to be available right away > (unlike the other three properties which are used only in background > operations such as compaction). > Use Case: When Tephra is used in other projects, the user of > TransactionProcessor coprocessor can provide a way to get this configuration > instead of relying on hbase-site.xml always. > Proposal: Read the table specific properties in coprocessor, such as > ALLOW_EMPTY_VALUES, READ_NON_TX_DATA from tableDescriptor and fall back to > env.getConfiguration. For other three properties, introduce a method whose > default implementation returns env.getConfiguration() that contains those > properties, which could be overriden by derived classes. Also, these three > values should loaded lazily when required during compaction/flush. -- This message was sent by Atlassian JIRA (v6.3.4#6332)