The documentation for 'hibernate.search.default.refresh' property states that "The refresh period should be higher that the expected copy time." which is misleading imo. It should read "The refresh period represents the least amount of time that slaves will be out of sync with the master. It is recommended that the refresh period be higher than the expected copy time, however if the value becomes insufficient then the default implementation of FSSlaveDirectoryProvider will prevent multiple copies from occurring simultaneously using a mutex lock. It's safe to set this value low anticipating that as your index grows the lock will be used appropriately."
Based on the code, I believe the default value to be very high... but that's a separate issue.