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

Dave Marion commented on ACCUMULO-708:
--------------------------------------

Josh,

  Please back out your change of setting dfs.datanode.data.dir.perm to 755. I 
believe this issue is fixed in HDFS-1560. Instead, please change the 
hadoop-test dependency in start/pom.xml to 1.1.0. I talked with Eric about 
changing the hadoop dependency from 0.20.205 to 1.1.0 for Accumulo 1.5. I 
talked with Keith yesterday and I believe he is past the directory permission 
issue, he is now running into another issue that has to do with the 
configuration of his computer.

Keith,

bq. •In AccumuloVFSClassLoader and AccumuloClassLoader the methods 
replaceEnvVars(), addUrl(), findAccumuloURLs(), etc. look very similar. Are 
these methods just copies? If not, what is the essence of the diffs?

 If I remember correctly, they are copies of methods in AccumuloClassLoader. I 
did not want to extend AccumuloClassLoader as I do not know its lifetime.

bq. •Seems like unit test AccumuloContextClassLoaderTest would benefit from 
using two seprate jars. The same jar is loaded into two different context. 
Seems like it would be better to load two different jars with different 
classes. Then verify that each context contains only the expected classes and 
nothing else.

 I was testing that the same jar/class was in fact being loaded by two 
different classloaders, and were therefore different classes. I will add your 
test suggestions to my to-do list.

All,

 I believe that the discussion around which contexts are supported is a 
separate discussion. I can think of several different scenarios in which 
contexts could be defined: per user, per table, per scan session, per minc/majc 
session, per application, etc. Regarding the heirarchy of the context 
classloader, I can see Keiths point above, and would also counter with a 
different scenario. Say for example that I wanted to run different versions 
(api compatible of course) of the Accumulo iterators on my table. The current 
setup would allow me to run a 1.5.0 tablet server and 1.5.1 iterators on my 
table. I can do this because the context classloader for my application is not 
a child of the system classloader. Changing the context classloader to be a 
child of the system classloader is a very small change.

                
> Modify ClassLoader to support different applications / multi-tenancy
> --------------------------------------------------------------------
>
>                 Key: ACCUMULO-708
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-708
>             Project: Accumulo
>          Issue Type: Improvement
>          Components: start
>            Reporter: Dave Marion
>            Assignee: Dave Marion
>              Labels: classloader
>             Fix For: 1.5.0
>
>         Attachments: ACCUMULO-708-1.patch
>
>   Original Estimate: 24h
>          Time Spent: 33h
>  Remaining Estimate: 0h
>
> I'd like to expand the current classloader to support loading classes from 
> HDFS and different application contexts. I'll be modifying the ticket as the 
> idea matures.

--
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

Reply via email to