Solr
  1. Solr
  2. SOLR-179

Save me from myself! Abort on configuration errors

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.2
    • Component/s: None
    • Labels:
      None

      Description

      When something goes wrong in solr configuration, I want solr to stop working and loudly say "something went wrong" This patch adds a collection of severe errors to SolrConfig. If abortOnConfigurationError=true and there are errors, the SolrDispatchFilter prints out a nice message saying "hey something went wrong!"

      The specific things that were hidden in error files that will now give dramatic error are:

      • unknown class for RequestHandler/ResponseWriter
      • any exception throw during handler/writer init()

      If you want to disable this behavior (perhaps for a production environment) you need to add:
      <abortOnConfigurationError>false</abortOnConfigurationError>
      to solrconfig.xml

      for more discussion, see:
      http://www.nabble.com/merely-a-suggestion%3A-schema.xml-validator-or-better-schema-validation-logging-tf3331929.html

      1. SOLR-179-ConfigurationErrors.patch
        8 kB
        Ryan McKinley
      2. SOLR-179-ConfigurationErrors.patch
        8 kB
        Ryan McKinley
      3. SOLR-179-ConfigurationErrors.patch
        7 kB
        Ryan McKinley

        Issue Links

          Activity

          Hide
          Ryan McKinley added a comment -

          This is using Erik's new system propety substition to make changing configuraiton for devlopment/production sites easier

          <abortOnConfigurationError>$

          {solr.abortOnConfigurationError:true}

          </abortOnConfigurationError>

          Show
          Ryan McKinley added a comment - This is using Erik's new system propety substition to make changing configuraiton for devlopment/production sites easier <abortOnConfigurationError>$ {solr.abortOnConfigurationError:true} </abortOnConfigurationError>
          Hide
          Ryan McKinley added a comment -

          updated to apply cleanly with trunk.

          I looked into having the SolrDispatchFilter.init() thow an exception that would hopefully abort the web-app. This works in Resin, but in Jetty it just logs the error and continues normally – at that point it gives a 404 for any request though.

          rather then have undefined behavior, this caches the error string and spits it out for every request.

          Show
          Ryan McKinley added a comment - updated to apply cleanly with trunk. I looked into having the SolrDispatchFilter.init() thow an exception that would hopefully abort the web-app. This works in Resin, but in Jetty it just logs the error and continues normally – at that point it gives a 404 for any request though. rather then have undefined behavior, this caches the error string and spits it out for every request.
          Hide
          Ryan McKinley added a comment -

          compiles with trunk. I will commit this as it does not require anyone to change their solrconfig.xml (except to override the behavior)

          Show
          Ryan McKinley added a comment - compiles with trunk. I will commit this as it does not require anyone to change their solrconfig.xml (except to override the behavior)

            People

            • Assignee:
              Ryan McKinley
              Reporter:
              Ryan McKinley
            • Votes:
              2 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development