Testing configurations in a local Solr environment
Sometimes saving a new schema.xml can result in an error that prevents your index from being correctly configured.
When saving a new schema.xml, we do perform some very basic
validation of the XML, in order to verify that it is well-formed,
and that certain assumptions that our systems make are in place.
For example, we check for the presence of a
field. However, as of this writing, we cannot perform any further
validation of the correctness of the schema.xml until it is loaded
For those that reason, we highly encourage that you use a development instance of Solr loaded with a subset of your production data to test your search locally before deploying changes to production. This will give you the quickest feedback and the most detailed access to all the logs you need while developing your application's schema.xml.
Some Solr clients come bundled with an instance of Solr for this reason. Sunspot for Ruby on Rails is one such example.
You can also install Solr via homebrew on OS X with
Finally, you can follow the official Solr tutorial at http://lucene.apache.org/solr/tutorial.html which will ultimately guide you through starting a Solr server and using it for a few sample use cases.
If it's impractical for you to set up a local instance of Solr, the Websolr add-on does let you provision two indexes. You can always create a spare index to test changes and just destroy it if anything goes too wrong.
When you find yourself at a loss and need help digging into the production server logs, definitely get in touch and let us know. We're more than happy to dig up whatever information you need from the logs to help you get things sorted out.