Hello Tidy Bot, Kudu Jenkins, Adar Dembo, Grant Henke, Volodymyr Verovkin,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/15161
to look at the new patch set (#8).
Change subject: [clock] introduce time source auto selection
......................................................................
[clock] introduce time source auto selection
This patch introduces a new pseudo time source named 'auto'. When
the --time_source flag is set to 'auto', Kudu masters and tablet
servers automatically select the most appropriate time source for
the hybrid clock (see below for the rationale behind the choice).
Below are the rules for the time source auto-selection:
* AWS and GCE cloud environments: the 'builtin' time source is
used (i.e. the hybrid clock uses the built-in NTP client)
** if --builtin_ntp_client_enable_auto_config is set to 'true'
(the default), the dedicated NTP server provided by the
environment is used as the reference server for the built-in
NTP client
** if --builtin_ntp_client_enable_auto_config is set to 'false',
the built-in NTP client is configured with the set of NTP
servers provided by the --builtin_ntp_servers flag
* Azure cloud environments, not-yet-supported cloud environments,
and non-cloud machines: the 'system' time source is used
(i.e. the hybrid clock uses NTP-synchronized local clock)
* macOS machines:
** High Sierra 10.13 and newer: 'system'
** releases prior to High Sierra: 'system_unsync'
As for the rationale behind auto-selecting this or another time source:
* when NTP servers are not known beforehand or their high availability
is not guaranteed, relying on the local NTP-synchronized clock is
the only rational choice (and it's backward-compatible)
* when it's guaranteed to have a set of highly available NTP servers,
using the built-in NTP client is the best choice because it removes
the requirement to configure and maintain NTP server at the machine
Change-Id: If9f2bc94f4a1ad32fe365d4f6f0707913fb476a4
---
M src/kudu/clock/builtin_ntp.cc
M src/kudu/clock/builtin_ntp.h
M src/kudu/clock/hybrid_clock-test.cc
M src/kudu/clock/hybrid_clock.cc
M src/kudu/clock/hybrid_clock.h
5 files changed, 252 insertions(+), 83 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/15161/8
--
To view, visit http://gerrit.cloudera.org:8080/15161
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If9f2bc94f4a1ad32fe365d4f6f0707913fb476a4
Gerrit-Change-Number: 15161
Gerrit-PatchSet: 8
Gerrit-Owner: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Adar Dembo <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Grant Henke <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Volodymyr Verovkin <[email protected]>