Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have made some changes at Solr Schema file and I see I 'am forced to restart SolR in order to have Solr running with new schema updates.

This is hosted on a server where solr is running from a start.jar file but I'am not sure how it was started(maybe with nohup)

I have found a way to stop SolR from another question(

kill `ps uax | grep -i "java -jar start.jar" | head -n 1 | awk '{print $2}'`

After this, I start SolR with "java -jar start.jar".

Is this a correct way to do the restart or is there built-in/better way to restart the jar?

share|improve this question

migrated from Aug 25 '11 at 1:46

This question came from our site for professional and enthusiast programmers.

At Websolr, we use a combination of a custom init.d script plus Monit to start Solr and ensure that it stays running.

That said, for a simpler self-hosted setup, I would recommend using Upstart to start and stop Solr, if your system has Upstart available. Upstart scripts have the benefit of being fairly simple, and Upstart does a good job restarting processes in the event they crash. Plus the start and stop commands (start and stop, respectively) are pretty easy to remember for the next time you need to make Solr aware of new configs.

Here is a good blog post covering starting Solr with Upstart. I've copied their upstart script below; be sure to update the relevant paths to match your system:

description "Solr Search Server"

# Make sure the file system and network devices have started before
# we begin the daemon
start on (filesystem and net-device-up IFACE!=lo)

# Stop the event daemon on system shutdown
stop on shutdown

# Respawn the process on unexpected termination

# The meat and potatoes
exec /usr/bin/java -Xms128m -Xmx256m -Dsolr.solr.home=/path/to/solr/home -Djetty.home=/path/to/jetty -jar /path/to/jetty/start.jar >> /var/log/solr.log 2>&1
share|improve this answer

You can try this approach

Using a command like this


will just reload all your configuration files and you will not have problems in doing SOLR queries querying while the core is restarted.

share|improve this answer
This doesn't work in a standard installation. Probably I need to enable SolR multicore features to be able to use this kind of reload. – Orlando Aug 25 '11 at 15:51
It worked for me: My solr.xml cores configuration looks like this: <cores adminPath="/admin/cores" defaultCoreName="collection1"> <core name="collection1" instanceDir="." /> </cores> I used this link to reload core: localhost:8983/solr/admin/… – Dorin Aug 26 '11 at 10:23
Using the included Jetty (start.jar) seems a kludge. Consider setting it up in Tomcat in a multicore configuratiob. I included instructions in… – aitchnyu Aug 26 '11 at 10:49

For SolrCloud, from the solr folder run:

bin/solr restart -e cloud -noprompt
share|improve this answer

you can press CTRL + C it will be stop solr and restart with java -jar start.jar

share|improve this answer
OP doesn't know how the jar was started, and has as such no access to a console where he can press CTRL + C. – jornane Mar 31 at 7:17

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.