Patrick Freeman has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/12149 )

Change subject: Take absolute value of ntp maxerror to avoid undefined behavior 
from negative values
......................................................................


Patch Set 1:

> (1 comment)

We have seen this in practice when using PTP instead of NTP.

We first noticed this behavior in the binary ntptime (/usr/sbin), seemingly 
when the adjtimex system call returns any negative value for maxerror.
The output from ntptime results in very large maxerror values due to ntptime 
casting long maxerror to an unsigned long.

Here is the initial log entry from Kudu crashing:

F0102 21:07:23.614316 18235 hybrid_clock.cc:340] Check failed: _s.ok() unable 
to get current time with error bound:
Service unavailable: clock error estimate (18446744073709551608us) too high 
(clock considered synchronized by the kernel)


Some ref links for convenience
https://github.com/ntp-project/ntp/blob/1a399a03e674da08cfce2cdb847bfb65d65df237/util/ntptime.c#L347
https://manpages.ubuntu.com/manpages/xenial/man2/adjtimex.2.html

 > (1 comment)


--
To view, visit http://gerrit.cloudera.org:8080/12149
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I3fdc5807d227bb3f6f7f039239d1a9755b9a5725
Gerrit-Change-Number: 12149
Gerrit-PatchSet: 1
Gerrit-Owner: Patrick Freeman <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Patrick Freeman <[email protected]>
Gerrit-Reviewer: Todd Lipcon <[email protected]>
Gerrit-Comment-Date: Thu, 03 Jan 2019 05:53:35 +0000
Gerrit-HasComments: No

Reply via email to