DB Check

Findet und behebt Datenbankkonsistenzprobleme in Payload-Collections mit Dublettenzusammenführung und Referenzreparatur im Admin-Panel.

Community 0 11/Wo. MIT v0.2.0

Installation

pnpm add @yairl/payload-db-check

Über

DB Check ist ein Payload 3 Plugin, das Konsistenzprobleme in der Datenbank direkt im Admin-Panel anzeigt. Es fügt eine DB-Check-Seite unter `/admin/db-check` hinzu, deren Route sich konfigurieren lässt, sowie einen optionalen Sidebar-Eintrag. Nach der Auswahl einer Collection lassen sich die gewünschten Checks aktivieren und starten. Alle Checks sind rein lesend, bis ein Reparaturvorgang explizit ausgeführt wird. Jede Reparatur zeigt vor der Ausführung eine Vorschau der geplanten Änderungen. Das Plugin führt drei Checks aus. Der Dubletten-Check findet Einträge, die einen benutzerdefinierten Schlüssel teilen, etwa `fullName` und `birthday`. Das erste Schlüsselfeld gilt als primäres Identitätsmerkmal. Einträge mit gleichem Wert dort, aber unterschiedlichen Werten in anderen Feldern, werden als wahrscheinliche, aber unbestätigte Dubletten markiert. Der Check für defekte Referenzen findet Relationship- und Upload-Felder, die auf gelöschte Dokumente verweisen. Dabei werden alle Relationship-Felder aus dem Schema ermittelt, auch solche in Arrays, Groups, Tabs und Blocks. Der Check für einseitige Verknüpfungen findet Two-Way-Relationships, bei denen nur eine Seite geschrieben wurde. Aus dem Schema werden mögliche Spiegelpaare zur Bestätigung gelistet. Reparaturen sind opt-in und zugriffsgeschützt. Beim Zusammenführen von Dubletten wird der verbleibende Eintrag ausgewählt, pro Feld entschieden, welcher Wert gewinnt und welche Kopien einfließen. Eingehende Referenzen werden vor dem Löschen der Dubletten auf den verbleibenden Eintrag umgebogen, sodass beim Zusammenführen keine Referenzen entstehen, die das Tool eigentlich finden soll. Ein Bulk-Modus führt alle Gruppen zusammen, deren Kopien in jedem Feld übereinstimmen. Defekte Referenzen lassen sich bereinigen, indem ungültige IDs entfernt und gültige behalten werden. Der Reference-Rebuild stellt den Namen eines gelöschten Eintrags aus einer anderen MongoDB-Datenbank auf demselben Server wieder her und verknüpft erneut anhand des Namens, einzeln oder im Bulk. Da beim Zusammenführen Einträge gelöscht werden, ist die Funktion über die Option `mergeable` pro Collection zu aktivieren. Die Checks selbst laufen auf jeder Collection. REST-Endpunkte liegen unter `/api/db-check` (schema, databases, run, merge, repair, fix, link) und sind durch ein `access`-Prädikat geschützt, das standardmäßig jeden angemeldeten Benutzer zulässt. Der Reference-Rebuild liest aus einer anderen Datenbank auf demselben MongoDB-Server, ohne dorthin zu schreiben.

Paketinformationen

Paketname
@yairl/payload-db-check
Neueste Version
0.2.0
Entpackte Größe
318 kB
Lizenz
MIT
Wöchentliche Downloads
11
Zuletzt veröffentlicht
26. Juli 2026

Mehr von ylahav

Profil ansehen

Ähnliche Plugins

Mehr in Admin