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

ASF GitHub Bot commented on FLINK-4422:
---------------------------------------

Github user jinmingjian commented on a diff in the pull request:

    https://github.com/apache/flink/pull/3420#discussion_r103196536
  
    --- Diff: 
flink-connectors/flink-connector-kafka-0.8/src/main/java/org/apache/flink/streaming/connectors/kafka/internals/ClosableBlockingQueue.java
 ---
    @@ -355,13 +355,13 @@ public E getElementBlocking(long timeoutMillis) 
throws InterruptedException {
                        throw new IllegalArgumentException("invalid timeout");
                }
                
    -           final long deadline = System.currentTimeMillis() + 
timeoutMillis;
    +           final long deadline = System.nanoTime() + timeoutMillis * 
1_000_000L;
    --- End diff --
    
    We can. But as an API, a ton of invocations in tests will come to change. 
Are you ready for review? :smiley_cat: And from practices, it is uncommon to 
use nano sec time unit in API except for performance/benchmark in that it is 
usual too small.


> Convert all time interval measurements to System.nanoTime()
> -----------------------------------------------------------
>
>                 Key: FLINK-4422
>                 URL: https://issues.apache.org/jira/browse/FLINK-4422
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Stephan Ewen
>            Assignee: Jin Mingjian
>            Priority: Minor
>
> In contrast to {{System.currentTimeMillis()}}, {{System.nanoTime()}} is 
> monotonous. To measure delays and time intervals, {{System.nanoTime()}} is 
> hence reliable, while {{System.currentTimeMillis()}} is not.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to