Zurück zum Blog

Reliability · 10. Juni 2026

Contentful-Versionskonflikte sollten sicher erneut versucht werden

Redakteure und Automatisierungen bearbeiten oft denselben Eintrag. Ein zuverlässiger Lokalisierungs-Workflow behandelt Contentful-Versionskonflikte, ohne dass eine der Änderungen verloren geht.

Contentful-Versionskonflikte sollten sicher erneut versucht werden

Contentful schützt Einträge mit optimistischem Locking. Jedes Update enthält die Version, von der der Client glaubt, dass er sie bearbeitet. Wenn zuerst eine andere Änderung eintrifft, lehnt Contentful das veraltete Update ab, anstatt zuzulassen, dass es neuere Arbeit überschreibt.

Dieser Konflikt ist eine Sicherheitsfunktion. Er sollte für die Lokalisierung nicht zu einer Sackgasse werden.

Warum Konflikte in gesunden Teams auftreten

Eine Übersetzungsanfrage kann Zeit in Anspruch nehmen. Während sie erzeugt oder geprüft wird, kann ein Redakteur den Quell-Eintrag korrigieren, eine andere Locale kann aktualisiert werden oder eine Automatisierung kann Metadaten ändern.

Bis der lokalisierte Wert bereit ist, übertragen zu werden, ist die zuvor erfasste Eintragsversion veraltet.

Das bedeutet nicht, dass jemand einen Fehler gemacht hat. Es bedeutet, dass mehrere Teile des Publishing-Systems gleichzeitig arbeiten.

Niemals dieselbe veraltete Nutzlast blind erneut senden

Der einfachste Wiederholungsversuch wiederholt die abgelehnte Anfrage. Das kann nicht erfolgreich sein, weil sie dieselbe veraltete Version enthält.

Die gefährliche Alternative ruft die neueste Versionsnummer ab und sendet die gesamte alte Eintrags-Nutzlast erneut. Das kann die Versionsprüfung bestehen und gleichzeitig Felder überschreiben, die seit Beginn der Übersetzung geändert wurden.

Ein sicherer Wiederholungsversuch braucht einen frischen Zustand und einen schmalen Patch.

Erneut lesen, zusammenführen und aktualisieren

Wenn Contentful einen Versionskonflikt meldet, sollte der Workflow:

  1. den aktuellen Eintrag aus demselben Space und derselben Environment abrufen
  2. die neuesten Felder und die Version prüfen
  3. nur die freigegebenen Ziel-Locale-Werte aus der Übersetzungsanfrage zusammenführen
  4. nicht zusammenhängende Felder und Locale-Werte beibehalten
  5. das Update mit der frischen Version übermitteln

So bleibt der Wiederholungsversuch an der tatsächlichen Absicht des Benutzers ausgerichtet. Die Übersetzungsanfrage wollte bestimmte lokalisierte Felder ändern, nicht einen alten Schnappschuss des gesamten Eintrags wiederherstellen.

Entscheiden, wann nicht erneut versucht werden sollte

Die automatische Konfliktbehandlung braucht Grenzen.

Wenn sich das genaue Ziel-Locale-Feld geändert hat, nachdem die Prüfung begonnen hat, hat das System eine echte redaktionelle Kollision gefunden. Ein automatischer Wiederholungsversuch könnte neuere menschliche Arbeit ersetzen. In diesem Fall sollte angehalten und eine Prüfung angefordert werden.

Ebenso können wiederholte Konflikte auf eine geschäftige Automatisierungsschleife oder eine Integration hindeuten, die den Eintrag fortlaufend beschreibt. Eine begrenzte Anzahl von Wiederholungsversuchen verhindert, dass sich die Lokalisierung dieser Schleife unbegrenzt anschließt.

Der Fehler sollte umsetzbar bleiben: den Eintrag, die betroffene Locale und die betroffenen Felder sowie die Phase identifizieren, in der die Kollision aufgetreten ist.

Quelle und Ziel klar getrennt halten

Die Konfliktbehandlung ist einfacher, wenn der Workflow eine strikte Schreibgrenze hat. Übersetzungs-Pushes sollten nur freigegebene Ziel-Locales ändern. Sie sollten keine Quellfelder, Content-Type-Metadaten, Tags oder nicht zusammenhängenden Locale-Werte schreiben.

Diese Grenze verringert die Komplexität beim Zusammenführen und macht Audit-Logs aussagekräftig. Wenn ein Wiederholungsversuch erfolgreich ist, kann das Team genau sehen, welche lokalisierten Felder sich geändert haben und warum.

Das Wichtigste

Versionskonflikte sind in einem kollaborativen CMS normal. Jeden Konflikt wie eine fehlgeschlagene Übersetzung zu behandeln, lässt den Workflow fragil wirken; den Konflikt zu ignorieren, macht ihn unsicher.

Rufen Sie den neuesten Eintrag ab, führen Sie die kleinste freigegebene Änderung zusammen und versuchen Sie es innerhalb klarer Grenzen erneut. Wenn sich dasselbe Feld auf beiden Seiten geändert hat, stoppen Sie zur menschlichen Prüfung. Zuverlässigkeit entsteht dadurch, dass gleichzeitige Arbeit respektiert wird, nicht dadurch, dass man so tut, als würde sie nicht passieren.