The issue here is that the iterator needs to be synchronised, but I think I should be more granular with the synchronisation so that we aren't blocking the map while reloading the calendar.