v0.41.2 Several bug fixes and improvements for fully concurrent topic-post import

This commit is contained in:
David Sainty 2024-08-17 19:08:38 +10:00
parent 8f80fbd19f
commit 3a1476951e

View File

@ -1118,17 +1118,17 @@ class GossamerForumsImporter < ImportScripts::Base
# Use connection ppoling for PostgreSQL and synchronize access to shared resources # Use connection ppoling for PostgreSQL and synchronize access to shared resources
ActiveRecord::Base.connection_pool.with_connection do ActiveRecord::Base.connection_pool.with_connection do
mutex.synchronize do mutex.synchronize do
begin ## begin
puts "Processing post ID: #{post_id}" puts "Processing post ID: #{post_id}"
topic_import_job(post_id, mysql_client) # Import topic and its replies topic_import_job(post_id, mysql_client) # Import topic and its replies
mark_post_as_complete(post_id) # Mark as complete in SQLite table mark_post_as_complete(post_id) # Mark as complete in SQLite table
rescue => e ## rescue => e
puts "Error processing post ID #{post_id}: #{e.message}" puts "Error processing post ID #{post_id}: #{e.message}"
mark_post_as_failed(post_id) mark_post_as_failed(post_id)
ensure ## ensure
# Ensure the MariaDB connection is closed after processing # Ensure the MariaDB connection is closed after processing
mysql_client.close if mysql_client mysql_client.close if mysql_client
end ## end
end end
end end
end end