1
我在執行復雜的數據導入任務,使用多個 PostgreSQL數據庫連接。在某些情況下,如果遇到ActiveRecord::StatementInvalid
異常,我需要在特定的數據庫連接上執行回滾。我可以從ActiveRecord :: StatementInvalid異常中獲取ActiveRecord :: Connection實例嗎?
我似乎無法得到該例外的ActiveRecord::Connection
實例。我能得到的是一個PG::Connection
實例,從exception.cause.connection
。不幸的是,我需要ActiveRecord實例來正確執行回滾,並保持內部AR數據結構與數據庫同步。至少我需要最後一個保存點的名稱(如果有)來執行手動回滾。
如何從ActiveRecord::StatementInvalid
異常中獲得ActiveRecord::Connection
實例?
您正在使用多個客戶或你是如何連接之間通過客戶機區別? – Anthony
只有一個客戶端,但模型類上有多個連接,即「MyModel.establish_connection」和「MyModel.remove_connection」 –