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

Rakesh R commented on BOOKKEEPER-700:
-------------------------------------

yeah class exists. Does it a good idea to make all the threads by extending 
this BookieThread and behave like:
# if its critical log as fatal and exit
# otherwise simply log warn and continue running. Here we will get the 
advantage of seeing the failure cause.
I could see one disadvantage: by making this, we are restricting the 
extensibility of threads which are Runnable.

Will modify the BookieThread constructor as follows:
{code}
public BookieThread (String name, boolean exitOnUnhandledException)
{code}

> GarbageCollectorThread exsiting with ArrayIndexOutOfBoundsException
> -------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-700
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-700
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-server
>            Reporter: Rakesh R
>            Assignee: Rakesh R
>             Fix For: 4.3.0
>
>         Attachments: 0001-BOOKKEEPER-700.patch, 0002-BOOKKEEPER-700.patch
>
>
> After completing compaction, GarbageCollectorThread will do flush any 
> outstanding offsets. When there is no offset present, its throwing following 
> exception and exiting.
> {code}
> 2013-10-30 11:37:20,944 - ERROR - 
> [GarbageCollectorThread:NIOServerCnxnFactory$1@49] - Thread 
> Thread[GarbageCollectorThread,5,main] died
> java.lang.ArrayIndexOutOfBoundsException: -1
>       at java.util.ArrayList.get(ArrayList.java:324)
>       at 
> org.apache.bookkeeper.bookie.GarbageCollectorThread$CompactionScannerFactory.waitEntrylogFlushed(GarbageCollectorThread.java:151)
>       at 
> org.apache.bookkeeper.bookie.GarbageCollectorThread$CompactionScannerFactory.flush(GarbageCollectorThread.java:175)
>       at 
> org.apache.bookkeeper.bookie.GarbageCollectorThread.doCompactEntryLogs(GarbageCollectorThread.java:400)
>       at 
> org.apache.bookkeeper.bookie.GarbageCollectorThread.run(GarbageCollectorThread.java:309)
> {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to