是否无法在ActiveRecord中禁用事务?为什么?

时间:2017-08-19 02:02:51

标签: ruby-on-rails ruby activerecord transactions

我继承了一个使用ActiveRecord的导入算法,它的速度非常慢。很多人报告说使用ActiveRecord导入脚本的速度很慢是因为它使用了事务。

我已经从原始脚本本身删除了尽可能多的事务,但似乎ActiveRecord将整个请求包装在一个我无法摆脱的巨大事务中。

我知道有一些模块,比如ar_import和诸如将导入分成较小的块以解决这个问题的技术,但这些解决方案需要对导入算法进行大量更改,如果我必须走那条路,我我宁愿用我最了解的语言(比如JavaScript)重写它。

对于我来说,我无法暂时禁用ActiveAdmin中的事务来进行某些模型更改。 ActiveAdmin 依赖依赖来处理事务,或者它不会让我禁用它们只是因为它在病理上是自以为是的吗?如果我可以暂时禁用它们,我该怎么做?

0 个答案:

没有答案