[ 
https://issues.apache.org/jira/browse/HADOOP-11032?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14254506#comment-14254506
 ] 

Sangjin Lee commented on HADOOP-11032:
--------------------------------------

Thanks for the update. It looks good to me except for just one thing. Currently 
in Journal.java you have

{code}
    long nanoSeconds = sw.now();
    metrics.addSync(
        TimeUnit.MICROSECONDS.convert(nanoSeconds, TimeUnit.NANOSECONDS));
    if (TimeUnit.MILLISECONDS.convert(nanoSeconds, TimeUnit.NANOSECONDS)
        > WARN_SYNC_MILLIS_THRESHOLD) {
       LOG.warn("Sync of transaction range " + firstTxnId + "-" + lastTxnId +
               " took " + sw.now(TimeUnit.MILLISECONDS) + "ms");
{code}

I think this could be improved slightly to shave off a few more cycles:

{code}
    long nanoSeconds = sw.now();
    metrics.addSync(
        TimeUnit.MICROSECONDS.convert(nanoSeconds, TimeUnit.NANOSECONDS));
    long millis = TimeUnit.MILLISECONDS.convert(nanoSeconds, 
TimeUnit.NANOSECONDS);
    if (millis > WARN_SYNC_MILLIS_THRESHOLD) {
       LOG.warn("Sync of transaction range " + firstTxnId + "-" + lastTxnId +
               " took " + millis + "ms");
{code}

or 

{code}
    long micros = sw.now(TimeUnit.MICROSECONDS);
    metrics.addSync(micros);
    long millis = TimeUnit.MILLISECONDS.convert(micros, TimeUnit.MICROSECONDS);
    if (millis > WARN_SYNC_MILLIS_THRESHOLD) {
       LOG.warn("Sync of transaction range " + firstTxnId + "-" + lastTxnId +
               " took " + millis + "ms");
{code}

> Replace use of Guava Stopwatch with Apache StopWatch
> ----------------------------------------------------
>
>                 Key: HADOOP-11032
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11032
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Gary Steelman
>            Assignee: Tsuyoshi OZAWA
>         Attachments: HADOOP-11032.1.patch, HADOOP-11032.2.patch, 
> HADOOP-11032.3.patch, HADOOP-11032.3.patch, HADOOP-11032.3.patch, 
> HADOOP-11032.3.patch, HADOOP-11032.3.patch, HADOOP-11032.4.patch, 
> HADOOP-11032.5.patch, HADOOP-11032.6.patch
>
>
> This patch reduces Hadoop's dependency on an old version of guava. 
> Stopwatch.elapsedMillis() isn't part of guava past v16 and the tools I'm 
> working on use v17. 
> To remedy this and also reduce Hadoop's reliance on old versions of guava, we 
> can use the Apache StopWatch (org.apache.commons.lang.time.StopWatch) which 
> provides nearly equivalent functionality. apache.commons.lang is already a 
> dependency for Hadoop so this will not introduce new dependencies. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to