Beitrag Nr. 2147483647

Leserinnen und Leser, die regelmäßig hier vorbeischauen oder meine Site in ihren Newsreadern abonniert haben, können sich vielleicht an die vielen Hosting- und Servicewechsel von dreitehabee erinnern. Sie wissen auch, dass ich über Tumblr zwar viel Gutes, aber noch viel mehr Schlechtes zu berichten hatte und mich die Versuchung, dreitehabee bei Tumblr zu hosten, viele Stunden der Verzweiflung gekostet hat.

Ein letztes Mal habe ich mich am 25. Februar 2011 aufgerappelt, um all meine Tumblr-Einträge mithilfe des tumblr2wp-Tools in eine WordPress XML-Datei (WXR) zu laden und diese dann bei WordPress.com zu importieren. Das hat ganz gut funktioniert und all meine Artikel wurden halbwegs richtig in WordPress.com importiert. Es waren zwar ein paar Stunden Feinarbeit nötig, um zum Beispiel alle internen Verlinkungen zu verbessern, die verwendeten Fotos mit vernünftigen Dateinamen auszustatten oder URLs und Beitragstitel zu vergeben, die von Tumblr lediglich mit Nummern angegeben wurden, aber im Großen und Ganzen hat der Export/Import gut geklappt. Dachte ich.

Von Anfang an gab es in meinen Statistiken auf WordPress.com einen rätselhaften Beitrag mit dem Titel #2147483647. Zuerst dachte ich, dass das wohl ein Beitrag war, der irgendwo bei Google verlinkt war und deshalb so häufig aufgerufen wurde, doch hat ein Blick in meine tumblr2wp-Exportdatei gezeigt, dass dort nirgendwo ein Artikel mit diesem Titel oder dieser ID vorhanden war. Ebenso ergab eine Suche in WordPress.com, dass es keinen Artikel mit dieser ID oder diesem Titel gab. Und dennoch wurde (und wird!) dieser Beitrag als am häufigsten besuchter Artikel auf dreitehabee geführt.

Ich habe diesen mysteriösen Artikel mit der Nr. 2147483647 dem Support gemeldet und bekam zur Antwort, was ich mir ohnehin auch selbst schon gedacht hatte: Wahrscheinlich ist dieser Artikel irgendwo verlinkt und taucht deshalb so weit oben in den Statistiken auf. Ich kümmerte mich weiterhin nicht darum.

Letzte Woche habe ich WordPress auf einem externen Server installiert und wollte die Daten meines WordPress.com-Blogs ins selbst gehostete WordPress importieren. Natürlich gab es eine ganze Menge Fehler, doch letzten Endes gelang mir der Import. Aber: Die Site funktionierte nicht. Zwar kann man alle Artikel lesen, doch will man einen der Artikel bearbeiten, erhält man die Rückmeldung

You attempted to edit an item that doesn’t exist. Perhaps it was deleted?

Merkwürdig. Ich kann den Artikel sehen, doch kann ich ihn nicht bearbeiten – was war da los? Ich wechselte in die WordPress-Oberfläche und versuchte, den Artikel von dort aus zu bearbeiten, doch ich erhielt genau denselben Fehler zur Antwort. Ebenso fiel mir auf, dass die meisten importierten Artikel weder mit Schlagwörtern bestückt noch Kategorien zugeteilt waren; die meisten, muss ich ergänzen, denn einige Artikel waren sehr wohl beschlagwortet und kategorisiert! Ebenso wurde die hier auf WordPress.com vorhandenen (und ins WXR-File exportierten) Kommentare nicht übernommen. Seiten funktionierten, Artikel, Schlagwörter, Kategorien und Kommentare jedoch nicht.

Zuerst dachte ich, dass dieser Fehler auf ein Problem mit dem aus WordPress.com exportierten WXR-File zurückzuführen sei. Ich öffnete die Datei und stellte fest, dass dort noch immer Datensätze von Tumblr vorhanden waren! WordPress.com hatte die Tumblr-IDs und die Tumblr-URLs aus der mit tumblr2wp erstellten Import/Exportdatei übernommen! Die URLs waren weniger das Problem, da sie lediglich zur eindeutigen Identifikation benutzt wurden, dass aber die Tumblr-ID ins WordPress-System übernommen wurde, stimmte mich bedenklich. Das erklärte nämlich auch, warum meine SQL-Tabellen in etwa folgenden ID-Aufbau hatten 1, 11, 21, 31, 34567890, 12345678900, 987654321234567, usw. und nicht, wie sonst üblich, einem halbwegs erklärbaren Schema folgten (also 1, 11, 21, 31, 41, etc.).

Ich prüfte noch einmal die Links, die zum Bearbeiten eines Artikel führten und stellte fest, dass die meisten Artikel den gleichen Bearbeiten-Link hatten: http://domain.tld/wp-admin/post.php?post=2147483647&action=edit.

Und damit war ich wieder ganz am Anfang angelangt, denn die Beitrags-ID, die hier bearbeitet werden sollte, ist wieder der mysteriöse Artikel mit der Nummer 2147483647. Ich hätte gleich Google bemühen soll, dann hätte ich von Anfang an gewusst, dass der Import von Tumblr nach WordPress (com oder org) äußerst problematisch war (und scheinbar noch immer ist), da die der Beitrags-ID-Vergabe zugrundeliegende Mathematik im Falle der Zahl 2147483647 Besonderheiten enthält.

Ich habe bis heute keine Lösung für dieses Problem, doch kümmert sich zumindest WordPress.com jetzt darum. Allen, die ihre Seiten von Tumblr nach WordPress importieren wollen, sei jedoch gesagt: Auch wenn alles gut zu sein scheint, solange es keine Heilung für die Tumblr-IDs gibt, gilt: wer einmal mit Tumblr infiziert ist, wird es nicht mehr los.

Ich werde diesen Artikel aktualisieren, sobald eine Lösung (oder ein Workaround) für mein Problem gefunden wurde.

Aktualisierung am 18. April 2012

Die Post-ID 2147483647 ist der höchste Integer-Wert, mit dem ein 32-Bit-System umgehen kann. Da der externe Hoster ein 32-Bit-System betrieb, WordPress.com aber auf einem 64-Bit-System zu laufen scheint, kann ich dort meine Einträge bearbeiten, beim externen Hoster jedoch nicht. Das löst zwar jetzt keines der vielen Probleme, aber mir wurde zumindest das Geld für den externen Hoster zurückerstattet und ich weiß jetzt über diesen Fehler bescheid.