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

ramkrishna.s.vasudevan commented on HBASE-5097:
-----------------------------------------------

Committed to 0.94, 0.92 and trunk.  Sorry for the delay in committing the 
patches.
Thanks to Stack, Andy, Lars and Ted for the review.
                
> RegionObserver implementation whose preScannerOpen and postScannerOpen Impl 
> return null can stall the system initialization through NPE
> ---------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-5097
>                 URL: https://issues.apache.org/jira/browse/HBASE-5097
>             Project: HBase
>          Issue Type: Bug
>          Components: coprocessors
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 0.92.2, 0.96.0, 0.94.1
>
>         Attachments: HBASE-5097.patch, HBASE-5097_1.patch, HBASE-5097_2.patch
>
>
> In HRegionServer.java openScanner()
> {code}
>       r.prepareScanner(scan);
>       RegionScanner s = null;
>       if (r.getCoprocessorHost() != null) {
>         s = r.getCoprocessorHost().preScannerOpen(scan);
>       }
>       if (s == null) {
>         s = r.getScanner(scan);
>       }
>       if (r.getCoprocessorHost() != null) {
>         s = r.getCoprocessorHost().postScannerOpen(scan, s);
>       }
> {code}
> If we dont have implemention for postScannerOpen the RegionScanner is null 
> and so throwing nullpointer 
> {code}
> java.lang.NullPointerException
>       at 
> java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:881)
>       at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.addScanner(HRegionServer.java:2282)
>       at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.openScanner(HRegionServer.java:2272)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at 
> org.apache.hadoop.hbase.ipc.WritableRpcEngine$Server.call(WritableRpcEngine.java:364)
>       at 
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1326)
> {code}
> Making this defect as blocker.. Pls feel free to change the priority if am 
> wrong.  Also correct me if my way of trying out coprocessors without 
> implementing postScannerOpen is wrong.  Am just a learner.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to