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

jirapos...@reviews.apache.org commented on HBASE-4014:
------------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/969/
-----------------------------------------------------------

(Updated 2011-08-26 20:41:07.342851)


Review request for hbase, Gary Helmling and Mingjie Lai.


Changes
-------

Address Gary's comments on review board:

-remove misbehaving coprocessors from coprocessors set.
-add and use hbase.cprocessor.abort_on_error flag.
-set hbase.coprocessor.abort_on_error to true for tests.
-document usage of hbase.coprocessor.abort_on_error in hbase-default.xml 
(defaults to false).
-using synchronizedSet for coprocessorNames.
-move body of addToLoadedCPs to loadInstance().

Also:
-simplify implementation and improve documentation of special-purpose 
handleThrowableXX() methods in MasterCoprocessorHost and RegionCoprocessorHost()


Summary
-------

https://issues.apache.org/jira/browse/HBASE-4014 Coprocessors: Flag the 
presence of coprocessors in logged exceptions

The general gist here is to wrap each of {Master,RegionServer}CoprocessorHost's 
coprocessor call inside a 

"try { ... } catch (Throwable e) { handleCoprocessorThrowable(e) }"

block. 

handleCoprocessorThrowable() is responsible for either passing 'e' along to the 
client (if 'e' is an IOException) or, otherwise, aborting the service 
(Regionserver or Master).

The abort message contains a list of the loaded coprocessors for crash analysis.


This addresses bug HBASE-4014.
    https://issues.apache.org/jira/browse/HBASE-4014


Diffs (updated)
-----

  src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java 
7a3ac1d 
  src/main/java/org/apache/hadoop/hbase/master/HMaster.java 92d5dbb 
  src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java 
aa930f5 
  src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java 58f0350 
  src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java 
53645ce 
  src/main/resources/hbase-default.xml 2c8f44b 
  
src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorException.java
 PRE-CREATION 
  
src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorException.java
 PRE-CREATION 

Diff: https://reviews.apache.org/r/969/diff


Testing
-------

patch includes two tests:

TestMasterCoprocessorException.java
TestRegionServerCoprocessorException.java

both tests pass in my build environment.


Thanks,

Eugene



> Coprocessors: Flag the presence of coprocessors in logged exceptions
> --------------------------------------------------------------------
>
>                 Key: HBASE-4014
>                 URL: https://issues.apache.org/jira/browse/HBASE-4014
>             Project: HBase
>          Issue Type: Improvement
>          Components: coprocessors
>            Reporter: Andrew Purtell
>            Assignee: Eugene Koontz
>             Fix For: 0.92.0
>
>         Attachments: HBASE-4014.patch, HBASE-4014.patch, HBASE-4014.patch, 
> HBASE-4014.patch, HBASE-4014.patch
>
>
> For some initial triage of bug reports for core versus for deployments with 
> loaded coprocessors, we need something like the Linux kernel's taint flag, 
> and list of linked in modules that show up in the output of every OOPS, to 
> appear above or below exceptions that appear in the logs.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to