Code changed in jenkins
User: Steven Brown
Path:
src/main/java/hudson/plugins/timestamper/Timestamp.java
src/main/java/hudson/plugins/timestamper/TimestamperOutputStream.java
src/main/java/hudson/plugins/timestamper/io/DumpTimestamps.java
src/main/java/hudson/plugins/timestamper/io/TimestampsReader.java
src/main/java/hudson/plugins/timestamper/io/TimestampsWriter.java
src/main/java/hudson/plugins/timestamper/io/TimestampsWriterImpl.java
src/test/java/hudson/plugins/timestamper/TimestamperOutputStreamTest.java
src/test/java/hudson/plugins/timestamper/action/TimestampsActionTest.java
src/test/java/hudson/plugins/timestamper/annotator/TimestampAnnotatorTest.java
src/test/java/hudson/plugins/timestamper/io/TimestampsIOTest.java
src/test/java/hudson/plugins/timestamper/io/TimestampsReaderTest.java
src/test/java/hudson/plugins/timestamper/io/TimestampsWriterImplTest.java
http://jenkins-ci.org/commit/timestamper-plugin/4ec6bacdaa2c4dbd61fe3feb448c374ec30e1048
Log:
Rely on System.currentTimeMillis only (not nanoTime) due to JENKINS-19778
On most Jenkins servers, System.nanoTime gives a more accurate reading of
elapsed time, because it is unaffected when the clock is changed. However,
on the Jenkins server in issue 19778, System.nanoTime jumps forwards
several times during the build, by about 30-40 seconds each time. Once the
build has finished, the Timestamper plugin reports an elapsed time of about
twice what it should be.
It does not seem possible for the plugin to reliably determine whether it
can use System.nanoTime, especially when running within a virtual machine.
Overall, it is not worthwhile for the plugin to rely on System.nanoTime.
Compare: https://github.com/jenkinsci/timestamper-plugin/compare/830d25b5fe14...4ec6bacdaa2c
I haven't been able to reproduce this. If you could provide steps to reproduce from a new Jenkins install, that would be really useful. i.e. which version of Timestamper, which other plugins do I need, how should I configure the job.