Migration von Discourse: Wiederherstellung der Daten fehlgeschlagen

[2026-05-11 02:05:14] Website-Einstellungen werden neu geladen...
[2026-05-11 02:05:14] Ausgehende E-Mails für Nicht-Mitarbeiter werden deaktiviert...
[2026-05-11 02:05:14] Seed-Daten werden initialisiert...
[2026-05-11 02:05:31] Nur-Lese-Modus wird deaktiviert...
[2026-05-11 02:05:31] Kategorien-Cache wird geleert...
[2026-05-11 02:05:31] Übersetzungen werden neu geladen...
[2026-05-11 02:05:31] Hochladungen werden neu zugeordnet...
[2026-05-11 02:05:31] Hochladungen werden wiederhergestellt, dies kann eine Weile dauern...
[2026-05-11 02:05:33] AUSNAHME: Sie können nur eine nicht-standardmäßige Prüfsumme gleichzeitig angeben.
[2026-05-11 02:05:33] /var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/seahorse/client/plugins/raise_response_errors.rb:17:in 'Seahorse::Client::Plugins::RaiseResponseErrors::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-s3-1.182.0/lib/aws-sdk-s3/plugins/sse_cpk.rb:24:in 'Aws::S3::Plugins::SseCpk::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-s3-1.182.0/lib/aws-sdk-s3/plugins/dualstack.rb:21:in 'Aws::S3::Plugins::Dualstack::OptionHandler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-s3-1.182.0/lib/aws-sdk-s3/plugins/accelerate.rb:43:in 'Aws::S3::Plugins::Accelerate::OptionHandler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/checksum_algorithm.rb:167:in 'Aws::Plugins::ChecksumAlgorithm::OptionHandler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/jsonvalue_converter.rb:16:in 'Aws::Plugins::JsonvalueConverter::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/invocation_id.rb:16:in 'Aws::Plugins::InvocationId::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/idempotency_token.rb:19:in 'Aws::Plugins::IdempotencyToken::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/param_converter.rb:26:in 'Aws::Plugins::ParamConverter::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/seahorse/client/plugins/request_callback.rb:89:in 'Seahorse::Client::Plugins::RequestCallback::OptionHandler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/response_paging.rb:12:in 'Aws::Plugins::ResponsePaging::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/seahorse/client/plugins/response_target.rb:24:in 'Seahorse::Client::Plugins::ResponseTarget::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/telemetry.rb:39:in 'block in Aws::Plugins::Telemetry::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/telemetry/no_op.rb:29:in 'Aws::Telemetry::NoOpTracer#in_span'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/telemetry.rb:53:in 'Aws::Plugins::Telemetry::Handler#span_wrapper'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/aws-sdk-core/plugins/telemetry.rb:39:in 'Aws::Plugins::Telemetry::Handler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-core-3.244.0/lib/seahorse/client/request.rb:72:in 'Seahorse::Client::Request#send_request'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/aws-sdk-s3-1.182.0/lib/aws-sdk-s3/client.rb:17315:in 'Aws::S3::Client#put_object'
/var/www/discourse/lib/file_store/to_s3_migration.rb:216:in 'block (2 levels) in FileStore::ToS3Migration#migrate_to_s3'
[2026-05-11 02:05:33] Rollback wird versucht...
[2026-05-11 02:05:33] Rollback wird durchgeführt...
[2026-05-11 02:05:34] Aufräumarbeiten...
[2026-05-11 02:05:34] Funktionen aus dem discourse_functions-Schema werden entfernt...
[2026-05-11 02:05:34] Temporäres Verzeichnis '/var/www/discourse/tmp/restores/default/2026-05-11-020447' wird entfernt...
[2026-05-11 02:05:34] Sidekiq wird fortgesetzt...
[2026-05-11 02:05:34] Wiederherstellung wird als abgeschlossen markiert...
[2026-05-11 02:05:34] 'niege' wird über das Ende der Wiederherstellung benachrichtigt...

Wie löse ich dieses Problem?

Ich vermute, es könnte ein Problem mit der S3-Kompatibilität geben?

Ist die Instanz, auf die Sie wiederherstellen, auf dem neuesten Stand der aktuellen Discourse-Version?

Ich denke, hier liegt ein Problem vor:
/var/www/discourse/lib/file_store/to_s3_migration.rb
Vielleicht mit dem Payload, der in Zeile 216 an put_object gesendet wird.

Ich bin mir nicht sicher, was die vollständige Lösung ist, aber um es zum Laufen zu bringen, müssen Sie möglicherweise S3 deaktivieren (enable_s3_uploads: false), die Wiederherstellung und Extraktion lokal durchführen und dann S3 erneut aktivieren, indem Sie den Befehl rake uploads:migrate_to_s3 verwenden.

@Lilly

Da die Serverlaufzeit abgelaufen ist, muss auf einen neuen Server migriert werden. Ich habe zunächst die Discourse-Daten gesichert.

Synchronisiere die app.yml-Datei auf den neuen Server und führe dann auf dem neuen Server folgenden Befehl aus:

./launcher rebuild app

Lade anschließend die gesicherten Daten auf den neuen Server unter /var/discourse/shared/standalone/backups/default hoch.

Verwende dazu folgende Befehle:

./launcher enter app
discourse enable_restore
discourse restore xxxxxxxxxxxxxxxxxxxxx.tar.gz

Die Wiederherstellung ist fehlgeschlagen. Nach dem Neuaufbau eines neuen Discourse-Systems und der Wiederherstellung über das Backend ist dies ebenfalls fehlgeschlagen. Im Anhang findest du das Wiederherstellungsprotokoll:
log.txt (124,0 KB)

Erzählen Sie uns von Ihrer Umgebung, zum Beispiel welchen Objektspeicher Sie verwenden?

Ubuntu 24.04.4 LTS (x86_64)

Cloudflare R2