gpt4 book ai didi

ruby-on-rails - 如何在不启动 Rails 事务的情况下运行迁移?

转载 作者:太空狗 更新时间:2023-10-30 01:40:11 25 4
gpt4 key购买 nike

我正在运行来自 OpenCongress 的一些奇怪的 Postgres 迁移代码我收到了这个错误:

RuntimeError: ERROR     C25001  MVACUUM cannot run inside a transaction block
Fxact.c L2649 RPreventTransactionChain: VACUUM FULL ANALYZE;

所以我想尝试在不被事务包裹的情况下运行它。

最佳答案

现在有一个方法 disable_ddl_transaction! 允许这样做,例如:

class AddIndexesToTablesBasedOnUsage < ActiveRecord::Migration
disable_ddl_transaction!
def up
execute %{
CREATE INDEX CONCURRENTLY index_reservations_subscription_id ON reservations (subscription_id);
}
end
def down
execute %{DROP INDEX index_reservations_subscription_id}
end
end

关于ruby-on-rails - 如何在不启动 Rails 事务的情况下运行迁移?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1395672/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com