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

Sean Busbey commented on HBASE-17817:
-------------------------------------

Thanks for taking care of this, should help debugging considerably! A couple of 
small changes and I'm +1:

{code}
-          "environment because it threw:  " + e,e);
+      // HBASE-17817: try to extract as much information as possible from the 
environment
+      if(env instanceof RegionCoprocessorEnvironment) {
{code}

No need to reference the JIRA for the change in the code unless there's some 
detailed reasoning that won't fit in the comment itself. For this change I 
think something like "If available, pull a table name out of the environment" 
would better summarize the code block that follows.

{code}
+        LOG.error("Removing coprocessor '" + env.toString() + "' from table 
'"+ tableName, e);
{code}

this should have a closing single quote after the table name.

{quote}

Reason  Tests
Failed junit tests      hadoop.hbase.snapshot.TestExportSnapshot
        hadoop.hbase.snapshot.TestSecureExportSnapshot
{quote}

these are unrelated to the patch AFAICT, don't worry about them.

> Make Regionservers log which tables it removed coprocessors from when aborting
> ------------------------------------------------------------------------------
>
>                 Key: HBASE-17817
>                 URL: https://issues.apache.org/jira/browse/HBASE-17817
>             Project: HBase
>          Issue Type: Improvement
>          Components: Coprocessors, regionserver
>    Affects Versions: 1.1.2
>            Reporter: Steen Manniche
>            Assignee: Steen Manniche
>              Labels: logging
>         Attachments: HBASE-17817.master.001.patch, 
> HBASE-17817.master.002.patch, HBASE-17817.master.003.patch, 
> HBASE-17817.master.004.patch
>
>
> When a coprocessor throws a runtime exception (e.g. NPE), the regionserver 
> handles this according to {{hbase.coprocessor.abortonerror}}.
> If the coprocessor was loaded on a specific table, the output in the logs 
> give no indication as to which table the coprocessor was removed from (or 
> which version, or jarfile is the culprit). This causes longer debugging and 
> recovery times.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to