问题描述
我花了很多时间来解决我本来运行良好的ZIO+HTTP4S+Doobie
项目上的交易。
如何进行适当的[声明式]交易管理?类似于Spring @Transactional
。
我读了这篇很好的帖子from-transactional-to-type-safe-reasonable-transactions,但具有讽刺意味的是,确切地说,正是春季所面临的挑战,就是如何混淆如何精确地处理交易:)
还尝试过tranzactio,甚至在问题下输入了question,我的PR(在我的叉子上)似乎表示单个transact
的呼叫被归为一个事务?!
还有ZIO引用列表中的here in bootzooka,我不明白为什么资源在main中仅被“使用”一次,然后围绕逻辑调用transact
。好吧,我知道为什么会起作用,但是当第一个ZIO效果中的错误让我可以控制第二个平面映射效果发生什么时,我看不到任何“策略”或其他让我处理的东西……
或者如何确保HTTP4S请求将发生单个事务。
或者是一个错误处理程序,即使在正确地回滚了所有先前逻辑的情况下,也得到了@RequiresNew
来将有关错误的信息实际存储在数据库中的某个地方。
我不介意为此写些东西来帮助别人,但显然我还有很多东西要学习。关于Doobie和ZLayers等。
如果我在这里显然缺少某些东西,请告诉我:-)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)