[
https://issues.apache.org/jira/browse/ZOOKEEPER-1366?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13203309#comment-13203309
]
Benjamin Reed commented on ZOOKEEPER-1366:
------------------------------------------
agreed. i think also that you can still mock a static api if you provide a
method and interface to allow the implementation to get the time from a user
provided object. but again that is a different issue.
for now i would really really like to get this in asap. it's a shame that it
missed the next release since this is a real problem that we have a fix for.
even without the C client, the big problem is what happens at the server with
the session timeouts and this patch fixes that problem.
> Zookeeper should be tolerant of clock adjustments
> -------------------------------------------------
>
> Key: ZOOKEEPER-1366
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1366
> Project: ZooKeeper
> Issue Type: Bug
> Reporter: Ted Dunning
> Assignee: Ted Dunning
> Fix For: 3.5.0
>
> Attachments: ZOOKEEPER-1366-3.3.3.patch, ZOOKEEPER-1366.patch,
> ZOOKEEPER-1366.patch, ZOOKEEPER-1366.patch, ZOOKEEPER-1366.patch
>
>
> If you want to wreak havoc on a ZK based system just do [date -s "+1hour"]
> and watch the mayhem as all sessions expire at once.
> This shouldn't happen. Zookeeper could easily know handle elapsed times as
> elapsed times rather than as differences between absolute times. The
> absolute times are subject to adjustment when the clock is set while a timer
> is not subject to this problem. In Java, System.currentTimeMillis() gives
> you absolute time while System.nanoTime() gives you time based on a timer
> from an arbitrary epoch.
> I have done this and have been running tests now for some tens of minutes
> with no failures. I will set up a test machine to redo the build again on
> Ubuntu and post a patch here for discussion.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira