Mike Drob commented on HBASE-19920:

It looks like there are a couple of subtle things going on here.

# Clients could use dynamic jars for coprocessors, for example if they are 
making a request that involves endpoint coprocessors. So I think I disagree 
with the implied solution.
# Dynamic jars shouldn't be getting loaded from the local file system, the 
intended use it to load them from a shared file system like HDFS. This might 
break in use cases where HBase is running on LocalFS instead of HDFS, I suspect 
this to be seen in a test environment?
# Maybe we shouldn't be creating this directory, but limit to checking if it 
exists and is readable. Not having the directory there shouldn't be a fatal 
error, probably sufficient to log a warning and move on.

> TokenUtil.obtainToken unnecessarily creates a local directory
> -------------------------------------------------------------
>                 Key: HBASE-19920
>                 URL: https://issues.apache.org/jira/browse/HBASE-19920
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Rohini Palaniswamy
>            Priority: Major
> On client code, when one calls TokenUtil.obtainToken it loads ProtobufUtil 
> which in its static block initializes DynamicClassLoader and that creates the 
> directory ${hbase.rootdir}/lib
> https://github.com/apache/hbase/blob/master/hbase-common/src/main/java/org/apache/hadoop/hbase/util/DynamicClassLoader.java#L115-L127
> Since this is region server specific code, not expecting this to happen when 
> one accesses hbase as a client.

This message was sent by Atlassian JIRA

Reply via email to