S
У вас на счете 100 руб
текущая транзакция хочет списать 99 руб
паралельная транзакция хочет списать еще +2 руб
99 + 2 = 101 (больше чем 100)
пока батч на 99 рублей не завершился, может придти еще одна операция по тому же счету на 2 руб. и если блокировки записи о счете нет, то получается вы стартуете новый batch_list для 2 руб по этому же счету списывая средства которых на карте нет? то есть в отрицательный баланс?
и учитывая что на чтение блокировки нет, значит паралельная транзакция на 2 руб будет думать что баланс 100! хотя реально там 1 руб и списывать нельзя...