[jira] [Commented] (PROTON-1583) handle edge cases when driving transport#tick(now) with nanoTime derived values

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (PROTON-1583) handle edge cases when driving transport#tick(now) with nanoTime derived values

JIRA jira@apache.org

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

ASF subversion and git services commented on PROTON-1583:
---------------------------------------------------------

Commit f52166eb35f0d6952bea09716bf9dc6a9d3b7b1b in qpid-proton-j's branch refs/heads/master from [~gemmellr]
[ https://git-wip-us.apache.org/repos/asf?p=qpid-proton-j.git;h=f52166e ]

PROTON-1583: add some javadoc to clarify the use and behaviour of the tick method


> handle edge cases when driving transport#tick(now) with nanoTime derived values
> -------------------------------------------------------------------------------
>
>                 Key: PROTON-1583
>                 URL: https://issues.apache.org/jira/browse/PROTON-1583
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-j
>    Affects Versions: proton-j-0.21.0
>            Reporter: Robbie Gemmell
>            Assignee: Robbie Gemmell
>             Fix For: proton-j-0.22.0
>
>
> Transport#tick is driven with time values representing 'now' in milliseconds. This is often done with System.currentTimeMillis(), however that varies with the wall clock so there are advantages to deriving the value from System.nanoTime() which does not. There are some edge cases the existing tick implementation doesn't handle when doing that (such as values wrapping and a possible clash of actual deadline zero with use of zero as a not-initialized/no-idle-timeout indicator) which could lead to incorrect behaviour and needs addressed.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]