hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kashif J S (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-9902) Region Server is starting normally even if clock skew is more than default 30 seconds(or any configured). -> Regionserver node time is greater than master node time
Date Wed, 06 Nov 2013 14:44:18 GMT
Kashif J S created HBASE-9902:
---------------------------------

             Summary: Region Server is starting normally even if clock skew is more than default
30 seconds(or any configured). -> Regionserver node time is greater than master node time
                 Key: HBASE-9902
                 URL: https://issues.apache.org/jira/browse/HBASE-9902
             Project: HBase
          Issue Type: Bug
          Components: master
    Affects Versions: 0.94.11
            Reporter: Kashif J S


When Region server's time is ahead of Master's time and the difference is more than hbase.master.maxclockskew
value, region server startup is not failing with ClockOutOfSyncException.
This causes some abnormal behavior as detected by our Tests.

    ServerManager.java#checkClockSkew
          long skew = System.currentTimeMillis() - serverCurrentTime;
        if (skew > maxSkew) {
          String message = "Server " + serverName + " has been " +
            "rejected; Reported time is too far out of sync with master.  " +
            "Time difference of " + skew + "ms > max allowed of " + maxSkew + "ms";
          LOG.warn(message);
          throw new ClockOutOfSyncException(message);
        }

    Above line results in negative value when Master's time is lesser than region server time
and  " if (skew > maxSkew) " check fails to find the skew in this case.


    Please Note: This was tested in hbase 0.94.11 version and the trunk also currently has
the same logic.

The fix for the same would be to make the skew positive value first as below:

 long skew = System.currentTimeMillis() - serverCurrentTime;
    skew = (skew < 0 ? -skew : skew);
    if (skew > maxSkew) {.....



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message