I applied that approach. I've added an intermediary method that is not synchronized. What bothers me a bit is that we could lock per indexManagerName instead of all index manager creation but that might not be a problem in practice.