Erkenne die Datenbankmigration, die deine Produktivtabelle sperrt oder neu schreibt, bevor sie in Produktion geht. Ein statischer Auditor für Flyway und Liquibase, der jedes Produktionsrisiko mit dem genauen Grund und der sicheren Umschreibung ausweist, als CLI, als CI-Gate oder als Claude-Code-Skill. Er verbindet sich nie mit deiner Datenbank.
Die meisten Migrationsreviews sind ein Generalist, der ein Diff liest. Dabei entgehen genau die Wege, auf denen eine PostgreSQL-Migration deine Seite lahmlegt. Der Auditor prüft 36 Regeln, parst deine tatsächliche Migration mit dem echten PostgreSQL-Parser (kein Regex) und weist jedes Risiko mit offizieller Quelle aus:
ALTERs (ACCESS EXCLUSIVE und verwandte)SET NOT NULL, das die ganze Tabelle scannt, und wann ein validiertes CHECK dir das ab PG12 erspartNOT VALID und anschließendes VALIDATEDie zehn Schemaänderungen, die eine laufende PostgreSQL-Datenbank am ehesten lahmlegen, mit der sicheren Umschreibung für jede. Eine Migration ist gefährlich, sobald sie eine starke Sperre hält (ACCESS EXCLUSIVE blockiert Lesen und Schreiben, SHARE blockiert Schreiben), während sie eine große Tabelle scannt oder neu schreibt. Auf einer kleinen Tabelle merkst du nie etwas, auf einer stark genutzten Produktivtabelle ist es ein Ausfall. Flyway und Liquibase verpacken jede Migration standardmäßig in eine Transaktion, und das ist für einige davon entscheidend.
CREATE INDEX CONCURRENTLY ... außerhalb einer Transaktion.ADD CONSTRAINT c CHECK (col IS NOT NULL) NOT VALID, dann VALIDATE CONSTRAINT c, dann SET NOT NULL (Scan entfällt ab PG12).NOT VALID hinzufügen, dann VALIDATE.NOT VALID hinzufügen, dann VALIDATE.SET DEFAULT.CREATE UNIQUE INDEX CONCURRENTLY, danach ADD CONSTRAINT ... USING INDEX.SET lock_timeout = '2s'; vor riskanter DDL, und bei Timeout erneut versuchen.Fallstrick: CREATE INDEX CONCURRENTLY kann nicht innerhalb einer Transaktion laufen, und genau so verpacken Flyway und Liquibase Migrationen standardmäßig, weshalb eine bloße nebenläufige Index-Migration fehlschlägt. Schalte die umschließende Transaktion für diese eine Migration ab. Der Auditor fängt auch das ab, plus 25 Regeln über diese zehn hinaus.
Der Claude-Code-Skill und die CLI, gebaut auf libpg_query (dem Parser, den PostgreSQL selbst nutzt), mit allen 5 Plattform-Binaries gebündelt. Nur Python 3, sonst nichts per pip zu installieren. Linux, macOS und Windows.
Maschinenlesbares JSON nach einem dokumentierten Schema, Exit-Codes nach Schweregrad, sodass es direkt in eine Pipeline passt, und eine Konfigurationsdatei für deine Postgres-Version und deinen Schwellenwert für große Tabellen.
Jede Regel verweist auf eine offizielle Quelle von Postgres, Flyway oder Liquibase. Enthält eine Regressionssuite mit 224 ausgearbeiteten Beispielen, die du selbst ausführen kannst.
Bewusst rein statische Analyse: Es liest den Text der Migration und verbindet sich nie mit deiner Datenbank, braucht also keine Zugangsdaten und läuft in der CI genauso wie auf deinem Laptop, ohne dass etwas deinen Rechner verlässt. Es schließt aus der Postgres-Version und den Zeilenzahlen, die du angibst (oder die über die optionale lokale Nur-Lese-Introspektion automatisch gefüllt werden), und fängt die häufigen Risiken mit großer Wirkung ab, die ein Diff-Review übersieht.
Einmaliger Kauf, 14,99 €. Verkauft über Polar oder Lemon Squeezy, beide Merchant of Record mit geregelter Umsatzsteuer. Sofortiger Download, alle Plattformen.
Erst die Engine selbst ausprobieren? Postgres Migration Guard ist die kostenlose Open-Source-Teilmenge: 12 derselben Regeln, als CLI und als GitHub Action.