Bug 196564 - Add active solution to check the system clock against reference time servers
Summary: Add active solution to check the system clock against reference time servers
Status: CLOSED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Geclipse (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Mathias Stümpert CLA
QA Contact:
URL:
Whiteboard:
Keywords: contributed
Depends on:
Blocks:
 
Reported: 2007-07-15 06:39 EDT by Ariel Garcia CLA
Modified: 2014-01-09 16:17 EST (History)
0 users

See Also:


Attachments
The TimeChecker class and other core patches (19.45 KB, patch)
2007-07-15 06:40 EDT, Ariel Garcia CLA
aog-ecl: iplog+
Details | Diff
The TimeChecker_Test class (5.49 KB, patch)
2007-07-15 06:41 EDT, Ariel Garcia CLA
aog-ecl: iplog+
Details | Diff
A trivial/refactoring patch to .voms (1.09 KB, patch)
2007-07-15 06:42 EDT, Ariel Garcia CLA
aog-ecl: iplog+
Details | Diff
The CheckSystemTimeSolution class and other ui patches (10.08 KB, patch)
2007-07-15 06:44 EDT, Ariel Garcia CLA
aog-ecl: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ariel Garcia CLA 2007-07-15 06:39:16 EDT
The following set of patches adds an active solution allowing to check the
system time against some reference time servers. These patches add just
three classes:
 - the main TimeChecker class in core
 - a corresponding test class in core.test
 - the active solution CheckSystemTimeSolution in ui
Some extra typo fixes (text strings and comments) are also included

Currently ONLY the voms proxy creation is using this solution if a connection problem
occurs... All other connection failures which could be originated by a wrong system time
(gridftp, jobsubmission, ...) still have to be identified and changed to propose this solution.
Comment 1 Ariel Garcia CLA 2007-07-15 06:40:29 EDT
Created attachment 73805 [details]
The TimeChecker class and other core patches
Comment 2 Ariel Garcia CLA 2007-07-15 06:41:13 EDT
Created attachment 73806 [details]
The TimeChecker_Test class
Comment 3 Ariel Garcia CLA 2007-07-15 06:42:19 EDT
Created attachment 73807 [details]
A trivial/refactoring patch to .voms
Comment 4 Ariel Garcia CLA 2007-07-15 06:44:28 EDT
Created attachment 73808 [details]
The  CheckSystemTimeSolution class and other ui patches
Comment 5 Ariel Garcia CLA 2007-07-15 13:52:23 EDT
About how it works: it uses the time/rdate 'protocol' to query 3 time servers in a row, for the case one is down, etc. In the worst case these queries time out after 5s each, so 15s in total, the user is kept informed via a progress bar. In the pathological case that the hostnames cannot be resolved (DNS unreachable) the query would take longer but if there is no DNS the user must have noticed already! It also doen's make sense to query the time servers in parallel, in the normal situation all three are done in a fraction of a second. If the query succeeds the user is informed if the system time is OK or not. If the query fails a new problem dialog is presented -> network problems.

These time queries use outgoing UDP packets to port 37. Implementing the much more complicated NTP protocol wouldn't make things better because it is also UDP.
Comment 6 Mathias Stümpert CLA 2007-07-16 10:24:04 EDT
patches applied and committed
Comment 7 Mathias Stümpert CLA 2007-07-17 03:42:31 EDT
closing this item
Comment 8 Ariel Garcia CLA 2009-05-03 09:48:23 EDT
Comment on attachment 73805 [details]
The TimeChecker class and other core patches

Applied by Mathias
Comment 9 Ariel Garcia CLA 2009-05-03 09:48:29 EDT
Comment on attachment 73806 [details]
The TimeChecker_Test class

Applied by Mathias
Comment 10 Ariel Garcia CLA 2009-05-03 09:48:37 EDT
Comment on attachment 73807 [details]
A trivial/refactoring patch to .voms

Applied by Mathias
Comment 11 Ariel Garcia CLA 2009-05-03 09:48:44 EDT
Comment on attachment 73808 [details]
The  CheckSystemTimeSolution class and other ui patches

Applied by Mathias