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

Andrew Purtell commented on HBASE-12457:
----------------------------------------

If you just want to test if interrupting compaction is possible, you might be 
able to use Mockito, something like:
{code}
// Get a reference to the DefaultCompactor instance as defaultCompactor somehow
compactor = spy(defaultCompactor);
// This should first call compactor.compact() and then execute the code in the 
answer() callback
when(compactor.compact(anyObject())).thenAnswer(new Answer() {
    Object answer(InvocationOnMock invocation) {
        Thread.sleep(60000); // or whatever
        return ...; // need to return a List<Path>
    }
});
// ...
// Trigger compaction
{code}
?

> Regions in transition for a long time when CLOSE interleaves with a slow 
> compaction
> -----------------------------------------------------------------------------------
>
>                 Key: HBASE-12457
>                 URL: https://issues.apache.org/jira/browse/HBASE-12457
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.7
>            Reporter: Lars Hofhansl
>         Attachments: 12457-minifix.txt, 12457.interrupt.txt
>
>
> Under heave load we have observed regions remaining in transition for 20 
> minutes when the master requests a close while a slow compaction is running.
> The pattern is always something like this:
> # RS starts a compaction
> # HM request the region to be closed on this RS
> # Compaction is not aborted for another 20 minutes
> # The region is in transition and not usable.
> In every case I tracked down so far the time between the requested CLOSE and 
> abort of the compaction is almost exactly 20 minutes, which is suspicious.
> Of course part of the issue is having compactions that take over 20 minutes, 
> but maybe we can do better here.



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

Reply via email to