You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Ryan Ernst (JIRA)" <ji...@apache.org> on 2013/07/10 20:33:55 UTC

[jira] [Updated] (SOLR-5028) Incorrect ShardHandlerFactory creation

     [ https://issues.apache.org/jira/browse/SOLR-5028?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ryan Ernst updated SOLR-5028:
-----------------------------

    Attachment: SOLR-5082.patch

Looks like a lot has changed since I fixed this in SOLR-4543...

The attached patch "fixes" the issue here.  I don't understand why the test I had for SolrProperties was not ported over to the "new" xml when the former was removed (added back here).

But there are still more problems.  Persistence right now assumes a flat hierarchy (the addAttrib function takes a single String->String map to fill).  This looks like SolrProperties stuff all over again.  shardHandlerFactory is a plugin, and it has arbitrary children.  Persistence should be getting the Node for shardHandlerFactory and copying it.  There should be no need to look for specific children like connTimeout or socketTimeout.
                
> Incorrect ShardHandlerFactory creation
> --------------------------------------
>
>                 Key: SOLR-5028
>                 URL: https://issues.apache.org/jira/browse/SOLR-5028
>             Project: Solr
>          Issue Type: Bug
>    Affects Versions: 5.0, 4.4
>            Reporter: Tomás Fernández Löbbe
>         Attachments: SOLR-5082.patch
>
>
> It seems to me that there are two bugs in the ShardHandlerFactoryCreation that cancel each other and it seems to be working with the old style solr.xml, but not with the "new style". ConfigSolrOldXml seems to be expecting the shardHandlerFactory with the xpath:
> solr/shardHandlerFactory/@class
> Instead of solr/*cores*/shardHandlerFactory/@class as it used to be. This is never caught because in the CoreContainer the ShardHandlerFactory is initialized using "configSolr.getConfig().getNode("solr/cores/shardHandlerFactory", false);" instead of "configSolr.get(CfgProp.SOLR_SHARDHANDLERFACTORY_CLASS, null);" or something like that. However, if you use the "new style" xml, the CoreContainer will still try to initialize the factory like that, and won't find the  SHF. 

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