Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
Reviewed
Description
I found the Timestamp for longest write/read lock held log is wrong in trunk:
2020-03-10 16:01:26,585 [main] INFO namenode.FSNamesystem (FSNamesystemLock.java:writeUnlock(281)) - Number of suppressed write-lock reports: 0 Longest write-lock held at 1970-01-03 07:07:40,841+0900 for 3ms via java.lang.Thread.getStackTrace(Thread.java:1559) ...
Looking at the code, it looks like the timestamp comes from System.nanoTime() that returns the current value of the running Java Virtual Machine's high-resolution time source and this method can only be used to measure elapsed time:
https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#nanoTime--
We need to make the timestamp from System.currentTimeMillis().
Attachments
Issue Links
- is related to
-
HDFS-14775 Add Timestamp for longest FSN write/read lock held log
- Resolved
- links to