[
https://issues.apache.org/jira/browse/HBASE-17888?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15963643#comment-15963643
]
Umesh Agashe commented on HBASE-17888:
--------------------------------------
A few notes about current ProcV2 code:
* There is no single entry point for procedures in executor. Top level (root)
procedures gets pushed via pushProcedure() and sub-procedures are pushed with
submitChildrenProcedures().
* On restart procedures are loaded through entirely different code path
* Only reliable way to decide if the procedure is failed and will not be
scheduled for execution is in executeRollback(Procedure proc) method. As when
one of the sub-procedure fails it rolls back the entire stack including
siblings and parent procedure
* All siblings are rolled back irrespective of their completion status, this
will cause updateMetricsOnFinish() to be called twice for certain procedures.
> Add generic methods for updating metrics on start and end of a procedure
> execution
> ----------------------------------------------------------------------------------
>
> Key: HBASE-17888
> URL: https://issues.apache.org/jira/browse/HBASE-17888
> Project: HBase
> Issue Type: Improvement
> Components: proc-v2
> Reporter: Umesh Agashe
> Assignee: Umesh Agashe
> Attachments: HBASE-17888.v1.patch
>
>
> For all procedures in Procv2 framework, Procedure class can have generic
> methods to update metrics on start and end of a procedure execution. Specific
> procedure can override these and implement/ update respective metrics.
> Default implementation needs to be provided so override and implementation is
> optional.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)