FIX: Importing with pgbouncer failed

Checking if all records have been imported uses a temp table in PostgreSQL. This fails when pgbouncer is used unless the temp table is created inside a transaction.
This commit is contained in:
Gerhard Schlager
2020-03-26 16:36:38 +01:00
parent c94b63bc75
commit d216483c53

View File

@ -219,6 +219,8 @@ class ImportScripts::Base
def all_records_exist?(type, import_ids)
return false if import_ids.empty?
ActiveRecord::Base.transaction do
begin
connection = ActiveRecord::Base.connection.raw_connection
connection.exec('CREATE TEMP TABLE import_ids(val text PRIMARY KEY)')
@ -238,6 +240,8 @@ class ImportScripts::Base
ensure
connection.exec('DROP TABLE import_ids') unless connection.nil?
end
end
end
def created_user(user)
# override if needed