Size: a a a

Django [ru] #STAY HOME

2020 August 05

D

Dmitry in Django [ru] #STAY HOME
ну я так понимаю, что select_for_update взывает SELECT ... FOR UPDATE, а FOR UPDATE запись блокирует.
Атомарная транзакция выполняет логику в одном запросе, смотрит, чтобы не выпало исключений и только после этого проводит транзакцию
источник

A

Andrey in Django [ru] #STAY HOME
Dmitry
ну я так понимаю, что select_for_update взывает SELECT ... FOR UPDATE, а FOR UPDATE запись блокирует.
Атомарная транзакция выполняет логику в одном запросе, смотрит, чтобы не выпало исключений и только после этого проводит транзакцию
Можно и без исключений транзакцию откатить
источник

A

Andrey in Django [ru] #STAY HOME
Вообще можно довольно удобно транзакцией управлять через сэйвпоинты, но почему то такое редко делают.
источник

D

Dmitry in Django [ru] #STAY HOME
Andrey
Вообще можно довольно удобно транзакцией управлять через сэйвпоинты, но почему то такое редко делают.
а примеры есть?
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Andrey
Вообще можно довольно удобно транзакцией управлять через сэйвпоинты, но почему то такое редко делают.
звучит как из мира оракл)
источник

A

Andrey in Django [ru] #STAY HOME
Alexander Shavelev
звучит как из мира оракл)
С оракл пока не доводилось работать
источник

A

Andrey in Django [ru] #STAY HOME
Dmitry
а примеры есть?
Чего именно?
источник

D

Dmitry in Django [ru] #STAY HOME
>удобно транзакцией управлять через сэйвпоинты
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Andrey
С оракл пока не доводилось работать
так а вы говорили про какой-то partial commit? такое есть в постгре/майсикул?
источник
2020 August 06

A

Andrey in Django [ru] #STAY HOME
Джанго создаёт сэйвпоинт, если использовать atomic внутри atomic
Если вложенный atomic кинет исключение, то транзакция вернётся к сэйвпоинту выше
источник

A

Andrey in Django [ru] #STAY HOME
Alexander Shavelev
так а вы говорили про какой-то partial commit? такое есть в постгре/майсикул?
Партиал коммит?
Это разве сути транзакций не противоречит?
источник

D

Dmitry in Django [ru] #STAY HOME
Andrey
Джанго создаёт сэйвпоинт, если использовать atomic внутри atomic
Если вложенный atomic кинет исключение, то транзакция вернётся к сэйвпоинту выше
круто звучит, надо подумать над этим
источник

D

Dmitry in Django [ru] #STAY HOME
Andrey
Партиал коммит?
Это разве сути транзакций не противоречит?
есть же процедуры в Постгре. Можно вызывать в начале/конце транзакции
источник

A

Andrey in Django [ru] #STAY HOME
Можно
Не про то речь, вроде как
источник

D

Dmitry in Django [ru] #STAY HOME
я потерял нить, сори:)
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Andrey
Партиал коммит?
Это разве сути транзакций не противоречит?
ну вот мне кажется про оракл такое слышал

(если бизнесу надо - то не противоречит)
источник

Д

Денис in Django [ru] #STAY HOME
Alexander Shavelev
ну если кто-то хочет записать туда 6 или 7 - должна быть ошибка?
Записи нет в поле, оно read only.
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Денис
Записи нет в поле, оно read only.
тогда ваш вопрос чушь
или криво задали
источник

A

Andrey in Django [ru] #STAY HOME
Alexander Shavelev
ну вот мне кажется про оракл такое слышал

(если бизнесу надо - то не противоречит)
Бизнесу пофигу как реализовано, а разработчик должен сделать как надо
источник

Д

Денис in Django [ru] #STAY HOME
Да похоже, но как раз select_for_update и смщают ссылки на джангу 1 версии. А с DRF можно это применить, или есть какие-то нюансы?
источник