Multisite stellt Uploads auf „default" statt auf den tatsächlichen DB-Namen wieder her

Ich habe mich etwas mit diesem Fehler beschäftigt und möchte Sie über meine Erkenntnisse auf dem Laufenden halten. Grundsätzlich habe ich alles bestätigt, was Sie bereits gesagt haben: Der Wiederherstellungsprozess verläuft wie folgt:

migrate_database
reconnect_database
...
extract_uploads

Das Problem ist, dass nach der Migration reconnect_database nicht auf die gewünschte Datenbank wechselt, sondern standardmäßig weiterarbeitet.

Daher ist dieser Code falsch:

def extract_uploads
  ...
  current_db_name = 
  RailsMultisite::ConnectionManagement.current_db # default
  optimized_images_exist = File.exist?(File.join(tmp_uploads_path, 'optimized'))

Eine Workaround-Lösung wäre, hier @current_db zu verwenden, das noch den korrekten Namen enthält, anstatt RailsMultisite::ConnectionManagement.current_db. Dies löst jedoch nicht das eigentliche Problem, warum reconnect_database nicht ordnungsgemäß funktioniert.

Ich muss tiefer graben, um die Ursache des Problems zu finden.