Apache Solr user guide
Local solr configuration
Every time you pull a database down from Pantheon, you will need to disable the pantheon_apachesolr module, which will otherwise prevent you from connecting to the local solr on your local solr configuration:
$ drush -y dis pantheon_apachesolr
Â
Posting the Solr Schema
When you first create an environment – locally, on DEV, TEST, LIVE or for any MULTIDEV on Pantheon, you will need to repost the Solr schema.
This is done in the UI at /admin/config/search/pantheon
Â
Â
Rebuilding the solr index
Every time you pull a fresh database down, you will want to clear out the contents of your local index and re-index it.
A) via the UI
The status of the index reported at admin/config/search/search_api/ is provided by the Drupal database. If you just pulled a new database down, you're looking at the state of the upstream solr, not your local index. You can clear out the index from the Drupal UI at the above page by first clicking on the index name, then the "Clear all indexed data" button at the bottom of the page.
You can click the "Index now" button, but we suggest drush for all solr operations however.
Â
B) With Drush
Let's see what we have:
$ drush search-api-status Id Index % Complete Indexed Total 4 my_custom_index 100% 22680 22680
We find the ID of the solr index (4 here, but the number may differ for you). If this was a fresh DB pull, the indexed % represents what was upstream, not on your local solr.
We need tell drupal it will have to re-index the solr.
$ drush search-api-reindex 4 my_custom_index was successfully marked for re-indexing.
This command does not actually do any indexing, it just clears out the index:
$ drush search-api-status Id Index % Complete Indexed Total 4 my_custom_index 0% 0 1597
Now, we perform the indexing operation, specifying the solr index ID (4), and the number of items to index (2000). We can also increase the batch size up from its default (10) to a more impressive count (50):
$ drush search-api-index 4 2000 50
Â
and (eventually) we can verify our index status for completeness
$ drush search-api-status Id Index % Complete Indexed Total 4 my_custom_index 100% 1597 1597
Run search-api-index again if you add new fields to the solr index locally, or new content you want indexed. No need to clear it out every time, just when you grab a new upstream database.