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

Sijie Guo commented on BOOKKEEPER-327:
--------------------------------------

ah, I got the reason why it throws ArrayIndexOutOfBoundsException. seems that 
the latency becomes negative due to SystemTime changed. we need check latency 
when updateLatency. I think the fix is quite simple.
                
> System.currentTimeMillis usage in BookKeeper
> --------------------------------------------
>
>                 Key: BOOKKEEPER-327
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-327
>             Project: Bookkeeper
>          Issue Type: Bug
>            Reporter: Rakesh R
>            Priority: Minor
>         Attachments: BOOKKEEPER-327.patch
>
>
> The following exception occured in the bookie statistics logic due to the 
> System time changes. In our bookie cluster its running a periodic syncup 
> scripts just to unify the SystemTime in all the machines. This is causing the 
> problem and resulting ArrayIndexOutOfBoundException.
> {code}
> Exception in thread "BookieJournal-3181" 
> java.lang.ArrayIndexOutOfBoundsException: -423
> at org.apache.bookkeeper.proto.BKStats$OpStats.updateLatency(BKStats.java:126)
> at 
> org.apache.bookkeeper.proto.BookieServer.writeComplete(BookieServer.java:655)
> at org.apache.bookkeeper.bookie.Journal.run(Journal.java:507)
> {code}
> This jira is raised to discuss whether to use ??System.nanoTime()?? instead 
> of ??System.currentTimeMillis()??

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to