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

ASF GitHub Bot commented on NUTCH-2378:
---------------------------------------

sebastian-nagel closed pull request #213: NUTCH-2378 ChildFirst plugin 
classloader
URL: https://github.com/apache/nutch/pull/213
 
 
   
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> ChildFirst plugin classloader
> -----------------------------
>
>                 Key: NUTCH-2378
>                 URL: https://issues.apache.org/jira/browse/NUTCH-2378
>             Project: Nutch
>          Issue Type: Improvement
>          Components: plugin
>    Affects Versions: 1.13
>            Reporter: Jurian Broertjes
>             Fix For: 1.14
>
>         Attachments: NUTCH-2378-childfirst-plugin-classloader.patch
>
>
> While working on upgrading the indexer-elastic plugin from 2.x to 5.x, I ran 
> into several nasty runtime dependency issues (both local and on Hadoop). 
> After seeking help on the mailing list, I still was unable to resolve these 
> issues and after digging further, decided to try a different plugin 
> classloader strategy. 
> The normal classloader delegates class loading requests to it's parent 
> classloader. This can cause all sorts of nasty runtime dependency version 
> conflicts (jar hell, version conflicts), since the plugin's own classloader 
> gets queried last. The child-first classloader approach tries to load a class 
> from the plugin's dependencies first and when unavailable, delegates to it's 
> parent classloader. This fixed the issues I had.
> The new approach can give runtime LinkageErrors, but these are easily 
> resolvable (see the patch for a few examples)
> I've tested the new loader a bit and am curious about others' findings.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to