Как получить разные файлы схемы для разных ядер в SOLR? - PullRequest
3 голосов
/ 21 сентября 2011

У меня есть один экземпляр SOLR с тремя разными ядрами.
Я создал файл конфигурации solr.xml, в котором указан файл схемы для каждого ядра, но он не распознается.Система все еще пытается загрузить файл schema.xml по умолчанию (я удалил его, поэтому он не работает).

В целях отладки я оставил только один код в файле solr.xml, у меня есть следующие записи:

<solr persistent="false">
  <cores adminPath="/admin/cores" defaultCoreName="content" shareSchema="false">
        <core name="content" instanceDir=".">
                <property name="schema" value="conf/contentSchema.xml" />
        </core>
  </cores>
</solr>

Файл `contentSchema.xml существует в [SOLR_HOME] / conf.Он указывал только имя файла и имя файла conf / filename

Даже не достигли этой фазы, ошибка:

SEVERE: java.lang.RuntimeException: не удается найти ресурс"schema.xml" в classpath или /usr/local/solr/./conf/, cwd = / usr / local / solr

Ответы [ 3 ]

2 голосов
/ 21 сентября 2011

Если вы загрузили исходный код, проверьте папку многоядерности, которая демонстрирует конфигурацию многоядерности, к которой вы можете обратиться, и протестируйте ее. или см. @ http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/example/multicore/

Подробнее @ http://wiki.apache.org/solr/CoreAdmin#Configuration - будет хорошей отправной точкой.

Многоядерный не обязательно должен находиться в домашней папке solr и может быть указан с помощью -Dsolr.solr.home = многожильный

Solr.xml находится в той же папке, что и основные папки. Каталог экземпляра указывает на основные папки schemaName - имя файла схемы ядра (по умолчанию schema.xml) например,

<core name="content" instanceDir="content">
     <property name="schemaName" value="contentSchema.xml" />
</core>
1 голос
/ 10 мая 2012

Внимательно прочитайте документ, «схема» является АТРИБУТОМ основного элемента, а не СОБСТВЕННОСТЬЮ. так что предположим, что вы поместили myschema.xml в папку conf ядра:

<core ....>
   <property name="schema" value="myschema.xml" />
</core>

приведет к невозможности найти schema.xml в classpath или ..... / conf error

Принимая во внимание,

<core .... schema='myschema.xml' />

удастся.

Примечание: документ от Lucid Imagination может быть устаревшим или, возможно, он говорит об особенностях будущей версии Solr, я думаю.

0 голосов
/ 10 мая 2012

Это то, что я окончательно использовал и работает

<cores adminPath="/admin/cores" defaultCoreName="content">
    <core name="content" instanceDir="./content" />
    <core name="users" instanceDir="./users" />
    <core name="users_organizations" instanceDir="./users_organizations" />
</cores>

В каждом из этих каталогов у меня есть каталог conf со своими собственными файлами конфигурации, которые они, в свою очередь, также указывают вправо data папка (в файле solrconfig.xml)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...