[ 
https://issues.apache.org/jira/browse/HBASE-10119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoit Sigoure updated HBASE-10119:
-----------------------------------

    Attachment: HBASE-10119.patch

Tentative patch to address the issue by making sure we call the coprocessor's 
{{stop()}} when forcefully removing it.  This is the patch I'm using in 
production right now, it's working well for me.  Sorry I didn't have time to 
write the accompanying test.

> Allow HBase coprocessors to clean up when they fail
> ---------------------------------------------------
>
>                 Key: HBASE-10119
>                 URL: https://issues.apache.org/jira/browse/HBASE-10119
>             Project: HBase
>          Issue Type: New Feature
>    Affects Versions: 0.96.0
>            Reporter: Benoit Sigoure
>         Attachments: HBASE-10119.patch
>
>
> In the thread [Giving a chance to buggy coprocessors to clean 
> up|http://osdir.com/ml/general/2013-12/msg17334.html] I brought up the issue 
> that coprocessors currently don't have a chance to release their own 
> resources (be they internal resources within the JVM, or external resources 
> elsewhere) when they get forcefully removed due to an uncaught exception 
> escaping.
> It would be nice to fix that, either by adding an API called by the 
> {{CoprocessorHost}} when killing a faulty coprocessor, or by guaranteeing 
> that the coprocessor's {{stop()}} method will be invoked then.
> This feature request is actually pretty important due to bug HBASE-9046, 
> which means that it's not possible to properly clean up a coprocessor without 
> restarting the RegionServer (!!).



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to