How to fix: Error CREATEing SolrCore 'gettings

2019-03-12 09:57发布

I'm getting this error when I try to create a new core in solr.

root@ubuntu:/opt/solr# bin/solr create -c gettingstarted -n data_driven_schema_configs

Setup new core instance directory:
/var/solr/data/gettingstarted

Creating new core 'gettingstarted' using command:
http://localhost:8983/solr/admin/cores?action=CREATE&name=gettingstarted&instanceDir=gettingstarted

Failed to create core 'gettingstarted' due to: Error CREATEing SolrCore 'gettingstarted': Unable to create core [gettingstarted] Caused by: /var/solr/data/gettingstarted/data

Also, if I try to create alternatively, It gives me same error:

root@ubuntu:/opt/solr# bin/solr create -c mycore

Setup new core instance directory:
/var/solr/data/mycore

Creating new core 'mycore' using command:
http://localhost:8983/solr/admin/cores?action=CREATE&name=mycore&instanceDir=mycore

Failed to create core 'mycore' due to: Error CREATEing SolrCore 'mycore': Unable to create core [mycore] Caused by: /var/solr/data/mycore/data

In browser, when I try to access solr admin panel, it displays a notification like:

SolrCore Initialization Failures

opt/solr/example/exampledocs/*.xml: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: /var/solr/data/opt/solr/example/exampledocs/*.xml/data 

snapshot is attached.

enter image description here

6条回答
疯言疯语
2楼-- · 2019-03-12 10:15

Since it might help anybody with the same issue, it's indeed caused by permission issues when using root. The script doesn't terminate quickly when executing the command as root and instead creates a piece of the core definition before failing.

So first cleanup the broken core:

bin/solr delete -c mycore

Make sure that no folder(s) linger under /var/solr/data for your mycore core.

Next create the core as the solr user

su -u solr -c "/opt/solr/bin/solr create_core -c mycore"

This time it should succeed

查看更多
爱情/是我丢掉的垃圾
3楼-- · 2019-03-12 10:17

You can solve the problem with the following steps:

  1. Check whether the directories with the right files are exist:

    • /opt/solr/server/gettingstarted/conf/solrconfig.xml
    • /opt/solr/server/gettingstarted/conf/schema.xml
    • /opt/solr/server/gettingstarted/data
  2. then open the Core Admin, "Add new core", enter the right directory/file names and add the core to the system. Actually it will give you an error message that the core already exists. Refresh the admin webpage in the browser and it will automatically load this core now without any error message.

查看更多
地球回转人心会变
4楼-- · 2019-03-12 10:21

Looks to me like a possible user permission issue. You seem to be running the commands as root, but some of the work is done by the Solr server. Is it possible that the server process is run with a user that does not have access to the directories mentioned in the error message.

查看更多
Ridiculous、
5楼-- · 2019-03-12 10:26

this works normally with me... creating cores as the solr linux user.

sudo su - solr -c "/opt/solr/bin/solr create -c mycol1 -n data_driven_schema_configs"
查看更多
时光不老,我们不散
6楼-- · 2019-03-12 10:35

I found this as the solution:

sudo su - solr -c "/opt/solr/bin/solr create -c mycore"

More information here: https://www.howtoforge.com/tutorial/how-to-install-and-configure-solr-on-ubuntu-1604/

查看更多
疯言疯语
7楼-- · 2019-03-12 10:37

Don't run solr script as root user (it is not recommended). You should run as solr user, e.g.:

sudo -u solr ./bin/solr create -c mycore
查看更多
登录 后发表回答