I know this is a bit of an old topic, but I’ve just completed a comparably sized vb4 migration and am missing a LOT of image attachments, somewhere on the order of 75% of them I’d wager. They are not tombstoned, and all the threads have been rebaked.
Has anyone else dealt with this? How should I go about recovering those images?
Yes, quite a few ‘Attachment file doesn’t exist’ errors with some ‘Couldn’t find attachment record for post.id=xxx, import_id=xxx’ sprinkled in.
The thing that has me scratching my head is that these are posts that I know have intact attachments, and that those attachments are in the ATTACHMENT_DIR global directory. The threads with missing images are missing ALL the associated images, which seems… not random.
I’m at a loss to find any common factor among the threads/posts with lost images either.
Ich wollte Discourse einmal ausprobieren, indem ich unsere umfangreiche VBulletin-Datenbank konvertiere, und habe daher dieses Skript getestet.
Es hat Benutzer und Gruppen importiert, ist jedoch jetzt ein paar Mal bei Unterkategorien gescheitert.
Importieren der Hauptkategorien...
7 / 7 (100,0 %) [902 Elemente/Min] n]
Importieren der Unterkategorien...
Traceback (most recent call last):
5: from script/import_scripts/vbulletin.rb:942:in `<main>'
4: from /home/peterb/discourse/script/import_scripts/base.rb:47:in `perform'
3: from script/import_scripts/vbulletin.rb:84:in `execute'
2: from script/import_scripts/vbulletin.rb:287:in `import_categories'
1: from script/import_scripts/vbulletin.rb:287:in `each'
script/import_scripts/vbulletin.rb:289:in `block in import_categories': undefined method `[]' for nil:NilClass (NoMethodError)
Ich habe verschiedene Dinge wie UTF8-Kodierung, Serverressourcen usw. überprüft – aber ich weiß im Moment nicht mehr, was ich sonst noch prüfen könnte.
Irgendeine Idee?
Danke.
Ich führe gerade einen Import von 8 Millionen Beiträgen aus vBulletin durch. Ich habe Unterstützung für Likes (anscheinend durch ein Plugin oder eine Modifikation) und Umfragen hinzugefügt.
Aus der Fehlermeldung lässt sich nicht ganz erkennen, was das Problem ist. Meine Vermutung ist, dass irgendwie eine parentid nicht gefunden wird.
Ich denke, du musst auf irgendeine Weise Folgendes beheben:
Ja. Klingt, als hättest du es herausgefunden. Dass so etwas schiefgeht, ist eher die Regel als die Ausnahme. Dann musst du entscheiden, ob du es in der Datenbank reparierst oder den Code anpasst, um mit deiner kaputten Datenbank umzugehen.
Bei jeder Datenmigration ist es üblich, dass kein Skript alle Eventualitäten abdeckt. Es hilft auch nicht, dass die einzige Zeit, die ich habe, um daran zu arbeiten, spät abends ist (es ist ein kostenloses Angebot für meinen Auto-Club). Die vBulletin-Seite ist ziemlich stark angepasst, also werde ich sehen, welche weiteren Überraschungen noch auf mich zukommen.
Ich verstehe, dass es ein Skript gibt, das Importe aus vBulletin 4 verarbeiten kann, aber ich sehe nichts bezüglich der Umleitung aller URLs auf das neue Discourse-URL-Format.
Wie geht ihr damit um? Was passiert mit allen externen Links, die eure Foren haben?
Danke @RGJ, aber kannst du erklären, wie das in der Praxis funktioniert? Was genau macht dieses Skript? Erstellt es gewissermaßen Alias-URLs (in Discourse) für die aktuellen/korrekten importierten Discourse-URLs?
Wie würdest du empfehlen, ein altes Vbulletin-Domain (www.example1.com) auf eine neue Discourse-Domain (www.exmple2.com) zu migrieren?
Ich denke, idealerweise würde es sein, wenn die alte Forendomain den gesamten eingehenden Traffic/Links basierend auf einer Liste von 301-Umleitungen auf die neue Domain weiterleitet. Wie würdest du empfehlen, eine solche Liste mit 301-Umleitungen zu erstellen?
Ich habe ein Problem damit, dass Anhänge nicht vollständig importiert werden – ähnlich wie bereits erwähnt, aber das Skript wirft keine Fehlermeldungen aus.
Die Datenbank ist klein (71 MB), und der gesamte Import ist in 0 Minuten 23 Sekunden abgeschlossen.
Der Großteil der Anhänge fehlt in den Beiträgen.
Ich habe die SQL-Abfragen direkt auf meiner vb4-Datenbank ausgeführt, wie sie im Skript stehen, und sie liefern die korrekten Daten zurück. Daher bin ich im Moment nicht sicher, wo das Problem liegt…
Sind die fehlenden Anhänge nicht direkt in den Beiträgen verlinkt? Ich glaube, das Skript zieht nur die Bilder, die in den Beiträgen erwähnt werden, nicht aber diejenigen, die lediglich an den Beitrag angehängt sind.
Ich habe ein Skript, das diese importiert, habe es aber noch nicht geschafft, einen PR einzureichen.
Wenn du ein Budget hast, lass es mich wissen. Ich plane, eine Version einzureichen, sobald ich diesen Import abgeschlossen habe. Allerdings muss ich eine beträchtliche Menge an Code entfernen, der nur für diesen Import gedacht ist – genau aus diesem Grund ist es vor einem Jahr nicht passiert…