OpenSolr Turbo Indexer

True Parallel Solr Indexing for Drupal 9 / 10 / 11

Troubleshooting

Workers Not Starting

Check that the pcntl extension is enabled:

php -m | grep pcntl

If missing, see the Requirements page for installation instructions.

Zombie Processes

The module handles zombie cleanup automatically. If you see zombies, run:

drush osstop

If zombies persist:

# Force kill all worker processes
pkill -9 -f 'opensolr:worker'

# Clean up PID files
rm -f /tmp/opensolr_turbo*.pid

"Class does not exist" Errors

This can happen if workers spawn too quickly. The module uses staggered spawning (200ms between workers) to prevent this. If it persists, try reducing worker count:

drush ost --workers=2 --batch=100

Memory Issues

Reduce batch size if workers run out of memory:

drush ost --batch=50 --workers=4

Also check PHP memory limit for CLI:

php -i | grep memory_limit

Slow Indexing

If indexing is slower than expected:

  1. Check system resources: htop or top
  2. Check database load: mysqladmin processlist
  3. Check Solr response time: Look at request duration in Solr admin
  4. Content complexity: Nodes with many fields/references are slower
💡 Content Type Speed
Taxonomy terms typically index at ~300/s while nodes index at ~100-150/s. This is normal due to the complexity difference.

Background Process Not Starting

Check if one is already running:

cat /tmp/opensolr_turbo_master.pid
ps aux | grep opensolr

If a stale PID file exists, remove it:

rm /tmp/opensolr_turbo_master.pid

Index Not Updating

If items are being processed but Solr isn't updating:

  1. Check Solr connection: drush search-api:server-status
  2. Check for errors in Drupal logs: drush watchdog:show
  3. Verify Solr is receiving requests (check Solr admin logs)

Tracker Shows Wrong Counts

Rebuild the tracker to fix sync issues:

drush osrb --index=my_solr_index

Debug Mode

For detailed debugging, run in foreground and watch for errors:

# Run single worker manually
drush opensolr:worker --index=my_solr_index --batch=10

# Check Drupal logs
drush watchdog:show --count=50

Getting Help

If you're still stuck:

  1. Check the log file: /tmp/opensolr_turbo.log
  2. Check Drupal watchdog: drush watchdog:show
  3. Check Solr logs in the Solr admin panel
  4. Enable verbose Drush output: drush ost -v