[ https://issues.apache.org/jira/browse/HDFS-6236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chris Nauroth updated HDFS-6236: -------------------------------- Attachment: HDFS-6236.1.patch I noticed this due to a failure in {{TestCheckpoint#testCheckpoint}} on Windows. There are assertions that the metrics are greater than zero, and these assertions were failing. Windows in particular has a low-precision implementation of {{System#currentTimeMillis}}. This patch fixes the issue. Tests are passing consistently for me on both Mac and Windows now. I also discovered a problem inside {{TestCheckpoint#testReformatNNBetweenCheckpoints}}. Restarting a new {{MiniDFSCluster}} ended up trying to use the same storage directory as a {{SecondaryNameNode}} that was intentionally left running in the background. The new cluster would fail during initialization due to file locks while trying to delete the storage directory. To solve this, I've cloned the configuration and set a different storage dir for use by the 2NN. > ImageServlet should use Time#monotonicNow to measure latency. > ------------------------------------------------------------- > > Key: HDFS-6236 > URL: https://issues.apache.org/jira/browse/HDFS-6236 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode > Affects Versions: 3.0.0, 2.4.0 > Reporter: Chris Nauroth > Assignee: Chris Nauroth > Priority: Minor > Attachments: HDFS-6236.1.patch > > > {{ImageServlet}} currently uses {{Time#now}} to get file transfer latency > measurements and pass them to the metrics system. It would be preferrable to > use {{Time#monotonicNow}} so that we're using the most precise available > system timer, and we're not subject to odd bugs that could result in negative > latency measurements, like resetting the system clock. -- This message was sent by Atlassian JIRA (v6.2#6252)