mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 22:43:33 +08:00
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:
@ -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
|
||||
|
Reference in New Issue
Block a user