[ https://issues.apache.org/jira/browse/HBASE-24511?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Viraj Jasani resolved HBASE-24511. ---------------------------------- Fix Version/s: 2.2.6 2.3.0 3.0.0-alpha-1 Hadoop Flags: Reviewed Resolution: Fixed Pushed to master, branch-2, 2.3, 2.2. > Ability to configure timeout between RPC retry to RS from master > ---------------------------------------------------------------- > > Key: HBASE-24511 > URL: https://issues.apache.org/jira/browse/HBASE-24511 > Project: HBase > Issue Type: Bug > Reporter: Sandeep Guggilam > Assignee: Sandeep Guggilam > Priority: Major > Fix For: 3.0.0-alpha-1, 2.3.0, 2.2.6 > > > This is useful for the cases where there is an injected environment edge and > when the first RS RPC request fails causing it to go to the retry block. > In the absence of this , the default timeout would be set to 100 ms and the > DelayedUtil class is meant to execute the retry after 100 ms. However as per > the getRemainingTime() logic here > (https://github.com/apache/hbase/blob/5b01e613fbbb92e243e99a1d199b4ffbb21ed2d9/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/util/DelayedUtil.java#L94), > the equation would be evaluated to > > EnvironmentEdgeManager.currentTime() >= EnvironmentEdgeManager.currentTime() > + 100 which would never get evaluated to true in case of injected edge and > retry never happens. Hence this config helps you to override it to 0 in cases > we want to test with a manual injected environment edge so that the retry > would succeed > > An example would be Master trying to open the meta region even before the RS > is online, In this case the retry of opening the meta region would never > happen in the case of injected environment edge and master would never finish > the initialization -- This message was sent by Atlassian Jira (v8.3.4#803005)