You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tephra.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/05/01 18:59:00 UTC

[jira] [Commented] (TEPHRA-270) Avoid transaction state cache refresh on co-procesor startup

    [ https://issues.apache.org/jira/browse/TEPHRA-270?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16460015#comment-16460015 ] 

ASF GitHub Bot commented on TEPHRA-270:
---------------------------------------

Github user anew commented on a diff in the pull request:

    https://github.com/apache/incubator-tephra/pull/72#discussion_r185303754
  
    --- Diff: tephra-core/src/main/java/org/apache/tephra/coprocessor/TransactionStateCache.java ---
    @@ -78,6 +78,7 @@ protected void startUp() throws Exception {
       protected void shutDown() throws Exception {
         if (refreshService != null) {
           refreshService.interrupt();
    +      refreshService.join(1000);
    --- End diff --
    
    I was mistaken, thinking that it would throw if the timeout is exceeded. Anyway, in a shutdown sequence we should catch all exceptions and ensure to continue the shutdown. 


> Avoid transaction state cache refresh on co-procesor startup
> ------------------------------------------------------------
>
>                 Key: TEPHRA-270
>                 URL: https://issues.apache.org/jira/browse/TEPHRA-270
>             Project: Tephra
>          Issue Type: Improvement
>          Components: core
>            Reporter: Poorna Chandra
>            Assignee: Poorna Chandra
>            Priority: Major
>             Fix For: 0.14.0-incubating
>
>
> Transaction state cache, on startup, refreshes the transaction snapshot from HDFS. The transaction state cache startup is called during HBase co-processor startup. The refresh of the transaction snapshot can block, thus blocking the co-processor startup. 
> The subsequent transaction snapshot refreshes happen in the background. Also - there is no guarantee that a snapshot will be present during the refresh on startup. Hence it is okay not to refresh the snapshot during snapshot, but do it in background.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)