hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (HBASE-7205) Coprocessor classloader is replicated for all regions in the HRegionServer
Date Thu, 06 Dec 2012 21:53:10 GMT

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

Ted Yu edited comment on HBASE-7205 at 12/6/12 9:52 PM:
--------------------------------------------------------

In writing the test for this JIRA, I am thinking of adding the following package private methods
to CoprocessorHost because CoprocessorHost doesn't have knowledge about which table the coprocessor
is being loaded for:
1. static void clearCacheForTesting();
2. static int getClassloaderCountForTesting(Path path);
The first method would be called at the beginning of every test. The second method would be
called where we want to make sure only one ClassLoader exists per region server.

Please comment on the above plan.

Thanks
                
      was (Author: yuzhihong@gmail.com):
    In writing the test for this JIRA, I am thinking of adding the following package private
methods to CoprocessorHost because CoprocessorHost doesn't have knowledge about which table
the coprocessor is being loaded for:
1. void clearCacheForTesting();
2. int getClassloaderCountForTesting(Path path);
The first method would be called at the beginning of every test. The second method would be
called where we want to make sure only one ClassLoader exists per region server.

Please comment on the above plan.

Thanks
                  
> Coprocessor classloader is replicated for all regions in the HRegionServer
> --------------------------------------------------------------------------
>
>                 Key: HBASE-7205
>                 URL: https://issues.apache.org/jira/browse/HBASE-7205
>             Project: HBase
>          Issue Type: Bug
>          Components: Coprocessors
>    Affects Versions: 0.92.2, 0.94.2
>            Reporter: Adrian Muraru
>            Assignee: Ted Yu
>            Priority: Critical
>             Fix For: 0.96.0, 0.94.4
>
>         Attachments: 7205-v1.txt, 7205-v3.txt, HBASE-7205_v2.patch
>
>
> HBASE-6308 introduced a new custom CoprocessorClassLoader to load the coprocessor classes
and a new instance of this CL is created for each single HRegion opened. This leads to OOME-PermGen
when the number of regions go above hundres / region server. 
> Having the table coprocessor jailed in a separate classloader is good however we should
create only one for all regions of a table in each HRS.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message