[
https://issues.apache.org/jira/browse/HBASE-13007?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Lawlor updated HBASE-13007:
------------------------------------
Attachment: HBASE-13007-v1.patch
- Changed the way that ScheduledChores are cancelled within the shutdown()
method of ChoreService. We now call ChoreService#cancelChore() rather than
ScheduledChore#cancel() to avoid being blocked indefinitely by a hanging chore
- Changed the naming of the ChoreServices that are instantiated within
TestChoreService so that any hanging threads can be easily matched to the
appropriate ChoreService
- Added logic within ScheduledChore to ensure that on each scheduled run they
ensure that they have been scheduled (else cancel self)
> 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
> Attachments: HBASE-13007-v1.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)