Solr can't find config file despite beeing exiting - solr

I have changed some rights within a new core (solr 7.7.1) I am trying to configure. That has now led to failing to start the core on solr start. The rights look allright to me and everything else as well. Not different to other cores.
The error msg:
SolrCore Initialization Failures
test: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Could not load conf for core test: Error loading solr config from /var/solr/data/test/conf/solrconfig.xml
Please check your logs for more information
log:
core test is not available due to init failure: Could not load conf for core test: Error loading solr config from /var/solr/data/test/conf/solrconfig.xml
at org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:1644)
The file itself:
ls -ls /var/solr/data/test/conf/solrconfig.xml
4 lrwxrwxrwx 1 solr solr 71 Mar 25 09:52 /var/solr/data/test/conf/solrconfig.xml -> /home/www/test/solrconfig.xml
Looks 1:1 with another core config. What am I missing?

Check, if the file /home/www/test/solrconfig.xml exits
Find out, under which user account solr is running. Use something like ps -efa | grep solr and check, if this user has access to /home/www/test/solrconfig.xml
If /var/solr/data/test/conf/solrconfig.xml and /home/www/test/solrconfig.xml resists at the same filesystem: try to use hardlinks instead of softlinks.

Related

Indexing problem with SOLR (MultiMaxScoreQParserPlugin)

I'm trying to integrate SOLR with Hybris but both of them are running on Kubernetes as a diffferent pod.
If I'm trying indexing SOLR on Hybris, it throws the error below;
ERROR [BackofficeLO-47] (000001JT) [SolrStandaloneSearchProvider] Error from server at http://10.10.100.181:34324/solr: Error CREATEing SolrCore 'master_backoffice_backoffice_product_flip': Unable to create core [master_backoffice_backoffice_product_flip] Caused by: de.hybris.platform.solr.search.MultiMaxScoreQParserPlugin
org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error from server at http://10.10.100.181:34324/solr: Error CREATEing SolrCore 'master_backoffice_backoffice_product_flip': Unable to create core [master_backoffice_backoffice_product_flip] Caused by: de.hybris.platform.solr.search.MultiMaxScoreQParserPlugin
I guess somethings wrong with SOLR "deafult" indexing directory.
Solr is running as process like below inside the pod;
solr#solr-fsd33wdf-qteg:/opt/solr-8.5.2$ ps -ef | grep solr
solr 10 1 0 Jun23 ? 00:15:55 /usr/local/openjdk-11/bin/java -server -Xms512m -Xmx512m -XX:+UseG1GC -XX:+PerfDisableSharedMem -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=250 -XX:+UseLargePages -XX:+AlwaysPreTouch -Xlog:gc*:file=/var/solr/logs/solr_gc.log:time,uptime:filecount=9,filesize=20M -Dsolr.jetty.inetaccess.includes= -Dsolr.jetty.inetaccess.excludes= -Dsolr.log.dir=/var/solr/logs -Djetty.port=8983 -DSTOP.PORT=7983 -DSTOP.KEY=solrrocks -Duser.timezone=UTC -Djetty.home=/opt/solr/server -Dsolr.solr.home=/var/solr/data -Dsolr.data.home= -Dsolr.install.dir=/opt/solr -Dsolr.default.confdir=/opt/solr/server/solr/configsets/_default/conf -Dlog4j.configurationFile=/var/solr/log4j2.xml -Xss256k -Dsolr.jetty.https.port=8983 -jar start.jar --module=http
So default confdir is /opt/solr/server/solr/configsets/_default/conf
If I'm check SOLR_HOME variable, it's different directory;
solr#solr-f575dcfdf-qtnpg:/opt/solr-8.5.2$ echo $SOLR_HOME
/var/solr/data
So, how can I change confdir to /var/solr/data ? I guess this is the problem here?
Thanks!
This page provides you with information on how to use the standalone setup. The ant configureSolrServer takes an argument of the path to the original Solr binary that you should download from here. This overwrites the files in the directory with the SAP Commerce specific setup. The MultiMaxScoreQParserPlugin is part of solr-hybris-components-<version_of_solr>.jar file, where the <version_of_solr> corresponds to the solr version your SAP Commerce is running on. Note that SAP Commerce also supports multiple Solr versions and it depends on what configuration you have.
You may then extend the default Solr docker image as provided here to have your setup running.

Solr Error: Unable to create core [mycore] Caused by solr.ICUCollationField

I am trying to create a solr core, I am using drupalvm with vagrant and virtual box.
When setting up solr with this command:
sudo su - solr -c "/opt/solr/bin/solr create -c m4m -d /tmp/search_api_solr/solr-conf/7.x/"
I am getting this error:
INFO - 2018-11-05 19:21:45.804; org.apache.solr.util.configuration.SSLCredentialProviderFactory; Processing SSL Credential Provider chain: env;sysprop
ERROR: Error CREATEing SolrCore 'mycore': Unable to create core [mycore] Caused by: solr.ICUCollationField
Creating a core without specifying the -d <confdir> option is successful but gives me some really weird errors in the solr dashboard and Drupal UI which research indicates has something to do with a corrupted core.
Any help with why I am getting this error would be much appreciated. Other developers using the same vagrant installation is running without issue.
If you create the core without the config directory, solr will use it's default configurations.
Which in turn, will have none of the drupal needed field definitions, and so forth.
What you need to do, if you know a little bit about the solr's structure, and if you use solr > version 7 is:
go to where your solr installation is
cd /PATH_TO_SOLR/server/solr-webapp/webapp/WEB-INF/lib
Copy all jars from the analysis-extras folder to your wEB-INF/lib folder
cp /PATH_TO_SOLR/contrib/analysis-extras/lib/*.jar ./
restart solr the way you normally do, specifying your -d config directory. That's important.
Hope this helps.
OR...
Save your hassle and let the pros handle all this for you with a SaaS such as the likes of https://opensolr.com
You can create your solr index with 1 click, and you need 2 more clicks to upload your config files and you're done.
I need jars from 2 directories:
cd /PATH_TO_SOLR
cp solr/contrib/analysis-extras/lib/*.jar solr/server/solr-webapp/webapp/WEB-INF/lib/
cp solr/contrib/analysis-extras/lucene-libs/*.jar solr/server/solr-webapp/webapp/WEB-INF/lib/
see solr/contrib/analysis-extras/README.txt

Fail to load ExtractingRequestHandler when running the Solr Quickstart Tutorial

I installed Solr 5.0.0 on OS X 10.10.2 using Homebrew. I am trying to follow the quick start instructions and am getting errors when I try to index a directory of files.
I am able to successfully start the sample Solr server by running
bin/solr start -e cloud -noprompt
as directed by the tutorial. I then try to index a directory of files by running
./bin/post -c gettingstarted docs/
(Note that this has to be done from the libexec subdirectory of the Solr install root.)
I get a server error 500 for every file it tries to add. The relevant stack:
Caused by: org.apache.solr.common.SolrException: Error loading class 'solr.extraction.ExtractingRequestHandler'
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:492)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:423)
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:559)
at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:632)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.createRequestHandler(RequestHandlers.java:326)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.getWrappedHandler(RequestHandlers.java:298)
... 30 more
The issue appears to be that ExtractingRequestHandler is not on the classpath.
ExtractingRequestHandler is in the solr-cell-5.0.0.jar.
jar tf dist/solr-cell-5.0.0.jar | grep ExtractingRequestHandler
org/apache/solr/handler/extraction/ExtractingRequestHandler.class
It's not clear to me if it needs to be on the classpath of the command doing the posting or the Solr instance. The answer to this question makes it sound like the latter. However, I tried setting
export CLASSPATH=dist/solr-cell-5.0.0.jar
before trying to index the files and saw the same error.
I don't see anything in the tutorial about how to configure this. What is the error and how do I get past it?
Looks like the problem is incorrect paths in the Solr example configuration. A workaround is to add softlinks from SOLR_ROOT/contrib and dist to the corresponding directories beneath SOLR_ROOT/libexec/contrib
Details here and here.

solr multiple server dataimport handler throws exception - Properties is not writable

Thanks in advanced,
am tried to setup two solr servers in tomcat7 (ubuntu). Below here is the steps i followed,
create to context file inside tomcat7 localhost directory
/tomcat7/Catalina/localhost/solr.xml
/tomcat7/Catalina/localhost/solr-cc.xml
create two seperate solr instances
/etc/solr-4.6.a/solr.war & index directories
/etc/solr-4.6.b/solr.war & index directories
Server started fine and am able to see both solr admin pages, but when i tried to index data, am using dataimport handler (put separate configuration entries in two servers), first instance /solr is running fine, but the second one /solr-cc throws below exception:
Full Import failed:
org.apache.solr.handler.dataimport.DataImportHandlerException: Properties is not writable. Delta imports are supported by data config but will not work. Processing Document # 1
at org.apache.solr.handler.dataimport.DataImporter.checkWritablePersistFile(DataImporter.java:426)
at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:410)
at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:476)
at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:457)
I tried more then an hour to fix but failed, I gave all the file permission as 777 to index and solr config files directories.
Any help would be appreciated!!
Please make sure your dataimport.properties file is writable by tomcat user(I assume tomcat7), you could change the owner on all the files from conf folder to tomcat.
Let me know if it worked.

SOLR replication failure on one of the slaves

We have a 4 slaves on Windows 2008 environment on tomacat and replication was working fine for some time and it started failing on one of the nodes i see following errors at first look it looks like permission issue but i compared two nodes and they seem to be same and nothing changed on this node.
SEVERE: SnapPull failed
org.apache.solr.common.SolrException: Unable to rename: D:\solr\core0\conf\compoundwords-de.txt to: D:\solr\core0\conf\compoundwords-de.txt.20120703165100
SEVERE: SnapPull failed
org.apache.solr.common.SolrException: Failed to create temporary config folder: conf.20120705004320
I even tried restarting the node to remove any pending locks but it did not resolve the issue anything i can do to troubleshoot the issue and find the real cause.
I was facing the same issue:
SEVERE: SnapPull failed
org.apache.solr.common.SolrException: Failed to create temporary config folder: conf.20120705004320
I happened to notice this error in tomcat's catalina.out after trying to figure out why the Solr admin UI is showing files being transferred during replication, but the index version and gen on the slave do not get updated after replication. In fact, in my case, the slave's version and gen were higher than what were on master (Solr 4.2.1)!
The trouble was the owner of the parent dir of solr conf dir (the one containing schema.xml, solrconfig.xml. etc.,). Solr wants to create a temporary conf dir named like conf.20120705004320 exactly at the same place where conf dir is located.
Once I changed the owner of the parent folder to tomcat6 replication started working fine. I used the command chown -R tomcat6:tomcat6 /var/solr where /var/solr is my ${solr.home}. The slave's version and gen started following the masters' after this fix.
I finally go this resolved after some troubleshooting we found that there was a failed java update since then the replication started failing. Here is what we did to resolve this
Reinstall JRE again
Tried restarting Solr, and removed all index files but it did not work
We went ahead deleted the core and setup the core again and it started working like before

Resources