There is a bug in IndexFetcher for replication logic, it may cause deadlock issue, and it's very easy to reproduce. If you change your solrconfig to keep more than 1 commit points, this operation will causes 2 issues:
1. Slave has to download whole index directory of Master, instead of incremental udpates only;
2. If you click "replicate now" button manually, this is cause deadlock, stop both "indexFetcher" thread and "explicitFetcher" thread.
The first issue is a design issue, can be worked around by keep only 1 commit point. But the second issue can always happen if there is some file located in slave's index directory, but can not be deleted by index delete policy (due to permission issue etc), I have fixed this issue for my service, would happy to contribute to Solr community to benefit others.