hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "rajeshbabu (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (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 Tue, 12 Nov 2013 15:56:18 GMT

     [ https://issues.apache.org/jira/browse/HBASE-9902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

rajeshbabu updated HBASE-9902:
------------------------------

      Resolution: Fixed
    Hadoop Flags: Reviewed
          Status: Resolved  (was: Patch Available)

Committed to trunk,0.96 and 0.94.
Thanks for patch Kashif.
Thanks for review Stack and Ted.

> 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
>            Assignee: Kashif J S
>             Fix For: 0.98.0, 0.96.1, 0.94.14
>
>         Attachments: HBASE-9902.patch, HBASE-9902_v2-0.94.patch, HBASE-9902_v2.patch
>
>
> 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