diff --git a/changelog.html b/changelog.html
index 7b9e2a7555..a766df6e1c 100644
--- a/changelog.html
+++ b/changelog.html
@@ -55,6 +55,9 @@ Upcoming changes
+ -
+ Clock Difference broken on Manage Nodes page
+ (issue 18671)
-
Fixed another possible cause of an NPE from MatrixConfiguration.newBuild.
(issue 17728)
diff --git a/core/src/main/java/hudson/model/Slave.java b/core/src/main/java/hudson/model/Slave.java
index fe06eb5807..bd0897ef21 100644
--- a/core/src/main/java/hudson/model/Slave.java
+++ b/core/src/main/java/hudson/model/Slave.java
@@ -457,7 +457,7 @@ public abstract class Slave extends Node implements Serializable {
* Capture the time on the master when this object is sent to remote, which is when
* {@link GetClockDifference1#writeReplace()} is run.
*/
- private final long startTime = System.nanoTime();
+ private final long startTime = System.currentTimeMillis();
public GetClockDifference3 call() {
return new GetClockDifference3(startTime);
@@ -467,7 +467,7 @@ public abstract class Slave extends Node implements Serializable {
}
private static final class GetClockDifference3 implements Serializable {
- private final long remoteTime = System.nanoTime();
+ private final long remoteTime = System.currentTimeMillis();
private final long startTime;
public GetClockDifference3(long startTime) {
@@ -475,8 +475,8 @@ public abstract class Slave extends Node implements Serializable {
}
private Object readResolve() {
- long endTime = System.nanoTime();
- return new ClockDifference(TimeUnit2.NANOSECONDS.toMillis((startTime + endTime)/2-remoteTime));
+ long endTime = System.currentTimeMillis();
+ return new ClockDifference((startTime + endTime)/2-remoteTime);
}
}