Size: a a a

2021 January 07

YS

Yan Shkurinskiy in Haskell
иногда же делаются запросы с IO ()
источник

YS

Yan Shkurinskiy in Haskell
которые должны что-то делать
источник

MP

Misha Puzanov in Haskell
но наверное основное тут это то что из mdb_txn_commit и mdb_txn_abort должен вызваться только кто-то один
источник

MP

Misha Puzanov in Haskell
то есть вопрос в том, бывает ли такой
bracketX 
  allocate
  onlyIfFailed
  onlyIFSucceeded
 f
источник

KV

Kirill Valyavin in Haskell
> Like bracket, but only performs the final action if there was an exception raised by the in-between computation.
Если коммит не может закоммитить и после этого бросить эксепшен, то всё ок
источник

YS

Yan Shkurinskiy in Haskell
решение в лоб - вернуть какой-то результат и на основании этого делать уже коммит/аборт)))
источник

KV

Kirill Valyavin in Haskell
Ну с поправкой на асинхронные исключения как всегда
источник

MP

Misha Puzanov in Haskell
Kirill Valyavin
Ну с поправкой на асинхронные исключения как всегда
они как раз асинхронные —- я им cancel кидаю
источник

KV

Kirill Valyavin in Haskell
Бракет ловит интерраптабл
источник

YS

Yan Shkurinskiy in Haskell
можно взять бракет Сноймана
источник

MP

Misha Puzanov in Haskell
то есть сценарий типа
- коммит
- прилетает CancelException или как там его
- опаньки!!! аборт
источник

YS

Yan Shkurinskiy in Haskell
он "по-настоящему" непрерываем)
источник

MP

Misha Puzanov in Haskell
кстати да, надо посмотреть что там накручено в safe-exceptions
источник

MP

Misha Puzanov in Haskell
хорошая мысль
источник

KV

Kirill Valyavin in Haskell
Обычный кэнсил интераптибл
источник

KV

Kirill Valyavin in Haskell
Т. е. оно будет ждать, пока брекет отработает
источник

YS

Yan Shkurinskiy in Haskell
но кажется проблемы это решает
источник

YS

Yan Shkurinskiy in Haskell
если подозрение, что он сначала коммитит, потом абортит
источник

KV

Kirill Valyavin in Haskell
Так проблемы-то нет, по крайней мере, из описанного ничего не выглядит проблематично
источник

YS

Yan Shkurinskiy in Haskell
будет вести себя так же .-.
источник