- Verschifft
- 9. August 2026 um 22:52 UTC
- Autor
- Kamo
- Ausschuss
- ed450ee
Alle 15 Migrationen gelten nun sauber für YugabyteDB: 111 Tabellen, passend CockroachDB genau. Acht verschiedene CockroachDB-nur Konstrukte mussten sein behandelt, fand man nach dem anderen, indem man den Zuschauer ausstellte, bis er aufhörte zu versagen: STRING/BYTES Typen, USING HASH bucket_count, inline INDEX inside CREATE TABELLE, ON UPDATE-Säulnenklauseln, Reihen-Level TTL, ALTER PRIMARY KEY, ADD CONSTRAINT IF NOT EXISTS, and x'.' byte literals. Drei davon waren Verhaltensweisen, nicht syntektisch, und hätten eine bestanden Syntax-Prüfung unter stillen Änderung, was die Datenbank tut: - ON UPDATE now() unterhält wirklich eine Spalte auf jedem Update. Dropping it hätte 20 aktualisiert_at/last_seen_at Spalten auf ihren Beilagewert eingefroren. Ersetzt durch BVORE UPDATE Trigger. - Reihenauf TTL löscht tatsächlich Zeilen. Acht Tabellen hatten Retentionspolitik (chat_messages 90 Tage, player_sessions_daily 400, ...). Strippen der Klausel ist erforderlich, um zu parsen, so dass die Politiken wieder als explizit umgesetzt werden DELETEs in 02-retention-sweeper.sql. Nichts erzwingt diese Korrespondenz jetzt -- jede Erklärung benennt die Politik, die sie ersetzt. - x'DEADBEEF' ist ein BYTES wörtlich in CockroachDB aber ein BIT STRING in PostgreSQL. Die 8 betroffenen Literale sind 32-Byte Worldgen-Master-Samen, die aus dem Terrain jedes Planeten stammt; verifiziert byte-identical nach Konvertierung in '\xDEADBEEF'::bytea.