Solr, in Drupal, Suddenly Stopped Working!
Ok, so you can swear Solr was working just fine on your Drupal website and suddenly it does not! You made sure nobody messed with your install and you do not believe in goblins. What to do?
Keep your cool. Help is on its way and let us explain what happened.
Apache Solr module uses Drupal’s drupal_http_request() function. This is a very useful function that has numerous benefits over PHP curl library for the retrieval of information via HTTP. Simplicity, reliability and speed are just a few to name.
However, it has one serious shortcoming. Somebody thought it was a good idea to check if the Drupal installation can make HTTP calls at all, by fetching self-generated page. If that request fails (because you had .htaccess on for a brief moment there, the request just timed out randomly or evil in-laws casted Voodoo spell on you) - Drupal blocks the function by setting a variable ‘drupal_http_request_fails’ in the database and then it’s all downwards from there.
So, if your Solr installation suddenly stops working for no good reason, or your FeedAPI is not bringing feed items, anymore, try clearing the flag by either issuing: variable_set(drupal_http_request_fails, false); in Drupal, or running the following command in mysql:
mysql> update variable set value='b:0;' where name='drupal_http_request_fails';