-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
Description
Сейчас локи — это число в this.lock, когда оно больше 0, считаем, что лок взят.
С локами есть проблема, когда выполняются несколько узлов параллельно и один их них фейлится. При этом между событием фейла первого узла и обработкой фейла плана второй узел успевает вызвать arch.withLock(), в связи с чем устанавливается лок на arch (и на все связанные с ним планы).
Получается так, что во время обработки фейла плана план заблокирован, то есть находится в слегка грязном состоянии.
Надо пересмотреть всё идею локов: для чего мы их делаем, как именно они должны работать внутри.
Reactions are currently unavailable