The solr:worker:run processes the queue for some tasks. The process does not use a lock. When used in a cron every minute sometimes the process takes longer than 1 minute and a second process is started. This can even take down a server with too many simultaneously run processes.
Add a lock to the solr:worker:run process so there can be no more than one unique instance (as in solr:indexer:run)
On error don't throw an error (after all another worker is running)