hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Lawlor (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13007) Fix the test timeouts being caused by ChoreService
Date Wed, 11 Feb 2015 19:49:12 GMT

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

Jonathan Lawlor commented on HBASE-13007:
-----------------------------------------

Just to add to my comments above. Upon further investigation into the failing test in TestChoreService
it seemed as though the test thread was hanging on a call to ScheduledChore#cancel(). I suspect
that this hanging is due to the fact that the executing ScheduledChore was hanging in its
synchronized run() method and thus would not let go of the lock. By removing synchronization
on run() and making cancel() use mayInterruptIfRunning = true by default, I am hoping that
a ScheduledChore that is hanging in its run() method can be appropriately cancelled.

> Fix the test timeouts being caused by ChoreService 
> ---------------------------------------------------
>
>                 Key: HBASE-13007
>                 URL: https://issues.apache.org/jira/browse/HBASE-13007
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Jonathan Lawlor
>            Assignee: Jonathan Lawlor
>             Fix For: 2.0.0, 1.1.0
>
>         Attachments: HBASE-13007-v1.patch, HBASE-13007-v2.patch
>
>
> TestChoreService has been seen timing out in recent builds and the timeouts seem to be
rooted in how the ChoreService cancels its chores when being shutdown. The issue is that during
shutdown, the ChoreService calls synchronized methods on the ScheduledChore which could cause
indefinite blocking if the scheduled chore is hanging in a synchronized method. We should
instead call the appropriate cancel method within the ChoreService and add logic into ScheduledChores
that allows them to realize when they have been cancelled.



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

Mime
View raw message