2015-12-02 79 views
1

我設立Solr的ubuntu上3.6,在Bitnami Solr的工作堆棧5.1後。 這裏的情況:Schema.xml的多模式(Solr的3.6)

我在我的實例中有不同的核心,共享一個schema.xml。

基本上是一個模式是這樣的:

<schema name="schema1" version="1.5"> 
    <fields> 
     <field name="_version_" type="long" indexed="true" stored="true"/> 
     <field name="id" type="int" indexed="true" stored="true" /> 
     <field name="item_name" type="string" indexed="true" stored="true"/> 
    <fields> 
</schema> 

於是,我的財產以後這樣的:

<schemas> 
    <schema name="schema1" version="1.5"> 
     <fields> 
      <field name="_version_" type="long" indexed="true" stored="true"/> 
      <field name="id" type="int" indexed="true" stored="true" /> 
      <field name="item_name" type="string" indexed="true" stored="true"/> 
     <fields> 
    </schema> 

    <schema name="schema2" version="1.5"> 
     <fields> 
      <field name="_version_" type="long" indexed="true" stored="true"/> 
      <field name="differentField" type="int" indexed="true" stored="true" /> 
      <field name="anotherDifferentField" type="string" indexed="true" stored="true"/> 
     <fields> 
    </schema> 
</schemas> 

然後,一個

HTTP狀態500 - Solr中的嚴重錯誤組態。發生 。

如果我在我的文件中使用單個模式,則不會發生此錯誤。

我知道在覈心配置中,模式名稱可以作爲屬性應用,所以看起來能夠有多個模式是合乎邏輯的。或者它僅僅是爲了防止我的模式名爲例如

或溶液會爲每個核心可以創建一個Solr的實例(與似乎是唯一的選擇,如果我不能emcapsulate多種模式)

回答

1

通過使用模式SCHEMANAME我的核心標籤 屬性從solr.xml,我對earch核心使用了不同的模式。

<cores adminPath="/admin/cores"> 
    <core name="core1" instanceDir="." schema="schemaCore1.xml" schemaName="schemaCore1" dataDir="/var/lib/solr/core1/> 
    <core name="core2" instanceDir="." schema="schemaCore2.xml" schemaName="schemaCore2" dataDir="/var/lib/solr/core2/> 
</cores>