я не могу тут сходу предсказать, написано так, что тут множество граничных случев может быть. Судя по всему Вы еще и mapDisposable пополняете именно в startExecution который уже за рамками synchronized так ккак он асинхронный. Инстанс этого класса, кстати, точно один?