локи у тебя в пайплайне должны быть пока твой сервис не отработал. можно конечно замутить лок в табличках но там тогда вопросики возникнут веселые "а что делать если лок не высводобился"... таймауты вводить... а если оно по ошибке посчитает что все? Слишком сложная схема выходит.
представь что тебе надо на живой базе добавить not null колонку. ты сначала "для совместимости" добавишь nullable колонку, потом там сделаешь свои дела что бы заполнить ее данными и потом сделаешь set not null