Thought about that too (should have written ;) ).
When I remove the schema-tag from the composite xml I get:
org.apache.solr.common.SolrException: Unable to create core [test]
        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:533)
        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:493)
...
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: org.apache.solr.common.SolrException: Could not load conf for core 
test: org.apache.solr.common.SolrException: org.xml.sax.SAXParseException; 
systemId: solrres:/schema.xml; lineNumber: 3; columnNumber: 84; Error 
attempting to parse XML file (href='schema-common.xml').. Schema file is 
C:\source\search\search-impl\WebContent\WEB-INF\solr\configsets\test\conf\schema.xml
        at 
org.apache.solr.core.ConfigSetService.getConfig(ConfigSetService.java:78)
        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:516)
        ... 12 more
Caused by: com.google.common.util.concurrent.UncheckedExecutionException: 
org.apache.solr.common.SolrException: org.xml.sax.SAXParseException; systemId: 
solrres:/schema.xml; lineNumber: 3; columnNumber: 84; Error attempting to parse 
XML file (href='schema-common.xml').. Schema file is 
C:\source\search\search-impl\WebContent\WEB-INF\solr\configsets\test\conf\schema.xml
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2199)
        at com.google.common.cache.LocalCache.get(LocalCache.java:3932)
        at 
com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4721)
        at 
org.apache.solr.core.ConfigSetService$SchemaCaching.createIndexSchema(ConfigSetService.java:206)
        at 
org.apache.solr.core.ConfigSetService.getConfig(ConfigSetService.java:74)
        ... 13 more
Caused by: org.apache.solr.common.SolrException: org.xml.sax.SAXParseException; 
systemId: solrres:/schema.xml; lineNumber: 3; columnNumber: 84; Error 
attempting to parse XML file (href='schema-common.xml').. Schema file is 
C:\source\search\search-impl\WebContent\WEB-INF\solr\configsets\test\conf\schema.xml
        at org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:596)
        at org.apache.solr.schema.IndexSchema.<init>(IndexSchema.java:175)
        at 
org.apache.solr.schema.IndexSchemaFactory.create(IndexSchemaFactory.java:55)
        at 
org.apache.solr.schema.IndexSchemaFactory.buildIndexSchema(IndexSchemaFactory.java:69)
        at 
org.apache.solr.core.ConfigSetService$SchemaCaching$1.call(ConfigSetService.java:210)
        at 
org.apache.solr.core.ConfigSetService$SchemaCaching$1.call(ConfigSetService.java:206)
        at 
com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4724)
        at 
com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3522)
        at 
com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2315)
        at 
com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2278)
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2193)
        ... 17 more
Caused by: org.apache.solr.common.SolrException: org.xml.sax.SAXParseException; 
systemId: solrres:/schema.xml; lineNumber: 3; columnNumber: 84; Error 
attempting to parse XML file (href='schema-common.xml').
        at org.apache.solr.core.Config.<init>(Config.java:156)
        at org.apache.solr.core.Config.<init>(Config.java:92)
        at org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:455)
        ... 27 more
Caused by: org.xml.sax.SAXParseException; systemId: solrres:/schema.xml; 
lineNumber: 3; columnNumber: 84; Error attempting to parse XML file 
(href='schema-common.xml').
        at org.apache.solr.core.Config.<init>(Config.java:145)
        ... 29 more

-----Ursprüngliche Nachricht-----
Von: Steve Rowe [mailto:sar...@gmail.com] 
Gesendet: Freitag, 15. Mai 2015 13:30
An: solr-user@lucene.apache.org
Betreff: Re: schema.xml & xi:include -> copyField source :'_my_title' is not a 
glob and doesn't match any explicit field or dynamicField

Hi Clemens,

I think the problem is the structure of the composite schema - you’ll end up 
with:

<schema>   <- your other schema file
  <schema> <- the included schema-common.xml
    <copyField source=“_my_title” …
    <fields>
      <field name=“_my_title” …

Field declarations are found in the schema using XPath expressions 
"/schema/fields/field” and "/schema/field”, which won’t be found, since in your 
composite schema they’re at “/schema/schema/fields/field”.  You’re seeing the 
copyField error because copyField rules are found via XPath expression 
“//copyField”: they are found regardless of the containing structure.

One way to address the issue you’re seeing is to remove the top-level 
<schema></schema> tags from your schema-common.xml.  You won’t be able to use 
it alone in that case, but if you need to do that, you could just create 
another schema file that includes it inside wrapping <schema></schema> tags.

Steve

> On May 15, 2015, at 4:01 AM, Clemens Wyss DEV <clemens...@mysign.ch> wrote:
> 
> Given the following schema.xml
> <?xml version="1.0" encoding="UTF-8" ?> <schema name="locale_de" 
> version="1.5">  <uniqueKey>_my_id</uniqueKey>  <field indexed="true" 
> name="_version_" stored="true" type="long"/>  <copyField 
> dest="_my_suggest" source="_my_title"/>  <fields>
>    <field indexed="true" multiValued="false" name="_my_id" required="true" 
> stored="true" type="string"/>
>    <field indexed="true" multiValued="false" name="_my_title" required="true" 
>  stored="true" type="string"/>
>    <field indexed="true" multiValued="true" name="_my_suggest" 
> stored="false" type="string"/>  </fields>
>   <types>
>    <fieldType class="solr.StrField" name="string" sortMissingLast="true"/>
>     <fieldType class="solr.TrieLongField" name="long" 
> positionIncrementGap="0" precisionStep="0"/>  </types> </schema>
> 
> When I try to include the very schema from another schema file, e.g.:
> <?xml version="1.0" encoding="UTF-8" ?> <schema name="locale_de" 
> version="1.5">  <xi:include href="schema-common.xml" 
> xmlns:xi="http://www.w3.org/2001/XInclude"/>
> </schema>
> 
> I get SolrException
> copyField source :'_my_title' is not a glob and doesn't match any 
> explicit field or dynamicField
> 
> Am I facing a bug or a feature?
> 
> Thanks
> - Clemens

Reply via email to