[
https://issues.apache.org/jira/browse/HBASE-21774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sergey Shelukhin updated HBASE-21774:
-------------------------------------
Description:
I've noticed it in a few places in the code...
currentMillis can go backwards and have other artifacts.
nanoTime should be used for intervals (see
https://docs.oracle.com/javase/7/docs/api/java/lang/System.html#nanoTime() )
unless it's both the case that the calls are frequent and nanoTime will result
in perf overhead, and also that artifacts from negative intervals and such are
relatively harmless or possible to work around in the code.
was:
I've noticed it in a few places in the code...
currentMillis can go backwards and have other artifacts.
nanoTime should be used for intervals unless it's both the case that the calls
are frequent and nanoTime will result in perf overhead, and also that artifacts
from negative intervals and such are relatively harmless or possible to work
around in the code.
> do not use currentMillis to measure intervals
> ---------------------------------------------
>
> Key: HBASE-21774
> URL: https://issues.apache.org/jira/browse/HBASE-21774
> Project: HBase
> Issue Type: Bug
> Reporter: Sergey Shelukhin
> Priority: Major
>
> I've noticed it in a few places in the code...
> currentMillis can go backwards and have other artifacts.
> nanoTime should be used for intervals (see
> https://docs.oracle.com/javase/7/docs/api/java/lang/System.html#nanoTime() )
> unless it's both the case that the calls are frequent and nanoTime will
> result in perf overhead, and also that artifacts from negative intervals and
> such are relatively harmless or possible to work around in the code.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)