Skip to content

Attachments aus Zustelldienst-Datenbank entfernen und Anwendungscode bereinigen

Why

Als Entwickler

möchte ich obsolete Attachments aus der Datenbank entfernen und den Anwendungscode bereinigen,

um die Wartbarkeit der Anwendung zu verbessern und den Einsatz von obsoleten Code zu vermeiden.

Links, Notes, Remarks

  • Seit heute (28 April 2025) ist MinIO auf allen Umgebungen live.
  • Dieses Ticket sollte aber erst bearbeitet werden, wenn das letzte Attachment aus der Produktionsdatenbank verschwunden ist. Dies kann theoretisch bis zum 02 Juni 2025 dauern (Wenn ein Anbinder 14 Tage wartet, dann forwarded, dann nach 14 Tagen den Auto-Reject bekommt und dann weitere 7 Tage bis zur Löschung vergehen).
  • Mit der Query unten kann herausgefunden werden, ob noch Large Objects gespeichert sind und von wo auf sie verwiesen wird:
SELECT
    l.oid AS oid,
    a.attachment_id AS attachment_id,
    s.submission_id AS submission_id,
    s.current_status AS submission_status,
    s.updated_at AS submission_updated_at,
    ra.attachment_id AS reply_attachment_id,
    r.reply_id AS reply_id,
    r.current_status AS reply_status,
    r.updated_at AS reply_updated_at
FROM pg_largeobject_metadata l
    LEFT JOIN attachment a ON l.oid = a.content
    LEFT JOIN submission s ON a.fk_submission = s.id
    LEFT JOIN reply_attachment ra ON l.oid = ra.content
    LEFT JOIN reply r ON ra.fk_reply = r.id;

Acceptance criteria

  1. Die content-Felder sind aus den beiden Tabellen und den beiden Entities entfernt.
  2. Code für Attachment-Handling und Ablage in die PostgresDB ist entfernt, da er obsolet ist
  3. Die unnötige Indirektion ist abgebaut.
  4. Die Spring-Konfigurationswerte für MinIO sind jetzt als verplfichtend markiert.
Edited by Fabian Sudau