[ https://issues.apache.org/jira/browse/TEPHRA-212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15847646#comment-15847646 ]
ASF GitHub Bot commented on TEPHRA-212: --------------------------------------- Github user poornachandra commented on a diff in the pull request: https://github.com/apache/incubator-tephra/pull/29#discussion_r98780450 --- Diff: tephra-hbase-compat-1.1-base/src/main/java/org/apache/tephra/hbase/txprune/HBaseTransactionPruningPlugin.java --- @@ -209,6 +212,31 @@ public void destroy() { } } + /** + * Create the prune state table given the {@link TableName} if the table doesn't exist already. + * + * @param stateTable prune state table name + */ + protected void createPruneTable(TableName stateTable) throws IOException { + try (Admin admin = this.connection.getAdmin()) { + HTableDescriptor htd = new HTableDescriptor(stateTable); + htd.addFamily(new HColumnDescriptor(DataJanitorState.FAMILY).setMaxVersions(1)); + admin.createTable(htd); --- End diff -- Since this happens on all regions on every startup, I think it would be better to check for existence first. > CompactionState #savePruneUpperBoundForRegion put call might because problems > if regions are not available > ---------------------------------------------------------------------------------------------------------- > > Key: TEPHRA-212 > URL: https://issues.apache.org/jira/browse/TEPHRA-212 > Project: Tephra > Issue Type: Bug > Affects Versions: 0.11.0-incubating > Reporter: Gokul Gunasekaran > Assignee: Gokul Gunasekaran > Fix For: 0.11.0-incubating > > > If the regions corresponding to prune state table are not available, trying > to do a put to that table might cause multiple retries etc and might cause > issues. Instead of doing this write in a synchronous fashion, this should be > done asynchronously. -- This message was sent by Atlassian JIRA (v6.3.15#6346)