[
https://issues.apache.org/jira/browse/SOLR-4650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Steve Rowe updated SOLR-4650:
-----------------------------
Attachment: SOLR-4650.patch
Patch, relaxes copyField source validation to allow any valid glob, including
those that don't match any explicit or dynamic fields, adds test for this case.
Retains the validation check that no-asterisk copyField sources must match
either an explicit or a dynamic field, and adds a test for this case.
Adds tests for copyField source and dest glob validity.
Committing shortly.
> copyField doesn't work with source globs that don't match dynamic fields
> ------------------------------------------------------------------------
>
> Key: SOLR-4650
> URL: https://issues.apache.org/jira/browse/SOLR-4650
> Project: Solr
> Issue Type: Bug
> Components: Schema and Analysis
> Affects Versions: 4.2
> Reporter: Daniel Collins
> Assignee: Steve Rowe
> Attachments: SOLR-4650.patch
>
>
> We have a schema that is currently on Solr 4.0 and supports language-specific
> stemming for content by use of dynamic fields and copyFields.
> Sample of schema:
> {code:xml}
> <field name="headline" type="text_general" indexed="true" stored="true"
> required="false" omitNorms="true"/>
> <field name="body" type="text_general" indexed="true" stored="false"
> required="false" omitNorms="true"/>
> <dynamicField name="*_en" type="text_en" indexed="true" stored="false"
> multiValued="true" omitNorms="true"/>
> <dynamicField name="*_ja" type="text_ja" indexed="true" stored="false"
> multiValued="true" omitNorms="true"/>
> <dynamicField name="*_fr" type="text_fr" indexed="true" stored="false"
> multiValued="true" omitNorms="true"/>
> <dynamicField name="*_de" type="text_de" indexed="true" stored="false"
> multiValued="true" omitNorms="true"/>
> <dynamicField name="*_es" type="text_es" indexed="true" stored="false"
> multiValued="true" omitNorms="true"/>
> <dynamicField name="*_pt" type="text_pt" indexed="true" stored="false"
> multiValued="true" omitNorms="true"/>
> ...
> <copyField source="headline_*" dest="headline"/>
> <copyField source="body_*" dest="body"/>
> {code}
> The aim is to store language-specific (stemmed) text in the headline_en,
> body_en, ... fields and then generic versions (no stemming) in headline &
> body. This works fine in 4.0 and 4.1, but now fails to start in 4.2,
> {noformat}
> SEVERE: Unable to create core: collection1
> org.apache.solr.common.SolrException: copyField source :'headline_*' is not
> an explicit field and doesn't match a dynamicField.
> at
> org.apache.solr.schema.IndexSchema.registerCopyField(IndexSchema.java:688)
> {noformat}
> Shouldn't this still work?
--
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: [email protected]
For additional commands, e-mail: [email protected]