Prozeduren beim Auftreten von Problemen während des Plone-Upgrades.
Fährt die Zope-Instanz nicht mit ZOPE_INSTANCE/bin/zopectl start
hoch, erhalten Sie mit ZOPE_INSTANCE/bin/zopectl fg
Hinweise, an welcher Stelle Zope hängen bleibt.
Überprüfen der Log-Dateien
Wenn ein Fehler auf der aktualisierten Plone-Site ausgegeben wird, gibt es möglicherweise eine informative Fehlermeldung in den Log-Dateien der Zope-Instanz. Gehen Sie zu ZOPE_INSTANCE/logs/event.log
und suchen dort nach error
, exception
oder traceback
.
Detailliertere Informationen zu den Fehlermeldungen finden Sie in
Testen der Anpassungen
Wenn Sie Page Templates und Python-Skripte angepasst haben, mögen diese Änderungen mit der neuen Plone-Versionen interferieren. Entfernen Sie temporär diese Anpassungen indem Sie die Layer aus dem von Ihnen verwendeten Skin entfernen.
Testen der Zusatzprodukte
Um Bugs oder Kompatibilitätsprobleme in den installierten Zusatzprodukten herauszufinden, deinstallieren Sie alle Produkte, die nicht zusammen mit Plone ausgeliefert werden, in Site Setup, Add/Remove Products. Anschließend entfernen Sie diese Produkte aus dem Produktverzeichnis Ihrer Zope-Instanz.
Falls das Problem hiermit beseitigt wird, überprüfen Sie für jedes der betreffenden Produkte:
ob dessen Version auch mit den aktuellen Versionen von Plone, Zope und Python kompatibel ist?
ob dieses Produkt zusätzliche Upgrade-Prozeduren benötigt?
ob das Produkt korrekt installiert ist? Installieren Sie es erneut und überprüfen Sie die Ausgabe beim Starten der Zope-Instanz mit ZOPE_INSTANCE/bin/zopectl fg
.
Liegt ein Produkt nicht für die aktuelle Plone-Version vor und hinterlässt beim Deinstallieren »verwaiste« Inhalte, so können Sie sich mit folgendem Skript solche Inhalte auflisten lassen:
portal_types = context.portal_types.objectIds()
print "Orphaned items:"
print
for i in context.portal_catalog.uniqueValuesFor('portal_type'):
if i in portal_types: continue
print i
results = context.portal_catalog(portal_type=i)
for i in results:
print i.getURL()
print
return printed
Um das Skript zu verwenden, erstellen Sie im ZMI des Wurzelverzeichnisses Ihrer Plone-Site ein Python-Skript, kopieren den Code in das Formular und sichern es anschließend. Zum Ausführen des Skripts müssen Sie nun nur noch in den «Test»-Reiter klicken.
Wie Sie Upgrade-Skripte für Ihre eigenen Produkte schreiben können, erfahren Sie hier: Eigene Upgrade-Skripte schreiben.
Testen Sie in einer neu aufgesetzten Plone-Site.
Falls das Problem nicht in einer neu aufgesetzten Plone-Site auftritt, bedeutet dies, dass die Ursache zu suchen ist
in einer Anpassung
einem Zusatzprodukt
oder in Inhalten, die nicht sauber migriert wurden.
Machen Sie das Problem reproduzierbar
Bevor Sie andere um Hilfe bitten, sollten Sie das Problem so beschreiben können, dass es für andere in deren Systemumgebung nachvollziehbar ist. Schränken Sie hierzu die Fehlerquellen so weit wie möglich ein um es anderen zu erleichtern, Ihr Problem nachvollziehen zu können.