You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "BELUGA BEHR (JIRA)" <ji...@apache.org> on 2018/05/01 19:45:00 UTC

[jira] [Created] (HIVE-19378) "hive.lock.numretries" Is Misleading

BELUGA BEHR created HIVE-19378:
----------------------------------

             Summary: "hive.lock.numretries" Is Misleading
                 Key: HIVE-19378
                 URL: https://issues.apache.org/jira/browse/HIVE-19378
             Project: Hive
          Issue Type: Improvement
          Components: HiveServer2
    Affects Versions: 3.0.0, 2.4.0
            Reporter: BELUGA BEHR


Configuration 'hive.lock.numretries' is confusing.  It's not actually a 'retry' count, it's the total number of attempt to try:

 

{code:java|title=ZooKeeperHiveLockManager.java}
do {
      lastException = null;
      tryNum++;
      try {
        if (tryNum > 1) {
          Thread.sleep(sleepTime);
          prepareRetry();
        }
        ret = lockPrimitive(key, mode, keepAlive, parentCreated, conflictingLocks);
...
} while (tryNum < numRetriesForLock);
{code}

So, from this code you can see that on the first loop, {{tryNum}} is set to 1, in which case, if the configuration num*retries* is set to 1, there will be one attempt total.  With a *retry* value of 1, I would assume one initial attempt and one additional retry.  Please change to:

{code}
while (tryNum <= numRetriesForLock);
{code}



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