мда, как то грязновато, а если сбой, тогда у юзера уж слишком много прав будет
а если попробовать дать пермишны кодюниту, который выполняет эти операции?
Думаю если сделать в рамках одной транзакции такой ситуации быть не должно.
Спасибо за идею с кодеюнитом.