lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Miller (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SOLR-4652) Resource loader has broken behavior for solr.xml plugins (basically ShardHandlerFactory)
Date Wed, 03 Apr 2013 01:08:13 GMT

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

Mark Miller commented on SOLR-4652:
-----------------------------------

bq. ZkSolrResourceLoader

If you fill me in, I can probably help. ZkSolrResourceLoader should be pretty simple - it's
intent is simply to load from zk if possible before following back to how SolrResourceLoader
would load - essentially.
                
> Resource loader has broken behavior for solr.xml plugins (basically ShardHandlerFactory)
> ----------------------------------------------------------------------------------------
>
>                 Key: SOLR-4652
>                 URL: https://issues.apache.org/jira/browse/SOLR-4652
>             Project: Solr
>          Issue Type: Bug
>    Affects Versions: 4.2
>            Reporter: Ryan Ernst
>            Assignee: Uwe Schindler
>             Fix For: 4.3, 5.0
>
>         Attachments: SOLR-4652.patch, SOLR-4652.patch, SOLR-4652.patch
>
>
> I have the following scenario:
> MyShardHandlerFactory is plugged in via solr.xml.  The jar containing MyShardHandlerFactory
is in the shared lib dir.  There are a couple issues:
> 1. From within a per core handler (that is loaded within the core's lib dir), you grab
the ShardHandlerFactory from CoreContainer, casting to MyShardHandlerFactory will results
in a ClassCastException with a message like "cannot cast instance of MyShardHandlerFactory
to MyShardHandlerFactory".
> 2. Adding a custom dir for shared lib (for example "mylib") does not work.  The ShardHandlerFactory
is initialized before sharedLib is loaded.
> I've been pouring through the code on this and I don't see an easy fix.  I'll keep looking
at it, but I wanted to get this up so hopefully others have some thoughts on how best to fix.
 IMO, it seems like there needs to be a clear chain of resource loaders (one for loading solr.xml,
a child for loading the lib dir, used for solr.xml plugins, a grandchild for per core config,
and a great grandchild for per core lib dir based plugins).  Right now there are some siblings,
because any place a SolrResourceLoader is created with a null parent classloader, it gets
the jetty thread's classloader as the parent.

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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message