Closed gysimichael closed 5 months ago
Ich habe den Bug gefunden & gefixed, er ist jetzt bei uns im Review. Das Problem bestand dabei dass unter bestimmten Umständen ein Geschwister-Verweis doppelt in der Datenbank geführt werden kann.
Der Fix löst das Problem nur insofern dass ab jetzt keine neuen doppelten Verweise erfasst werden können. Die bestehenden doppelten Einträge müssen entweder manuell über die UI oder per SQL aus der Datenbank gelöscht werden.
@mPfifi Sollen wir die doppelten Verweise direkt in der Datenbank löschen oder reicht es, wenn es nach und nach durch Benutzer entfernt wird?
@vej-ananas Wenn es für euch möglich ist, die bisher entstandenen doppelten Verweise direkt in der DB zu löschen, ohne die Verweise gleich ganz zu entfernen, könnt ihr das gerne machen. Dies würde uns die Arbeit bei der Nachkontrolle und beim QC erleichtern, da nicht bekannt ist, bei welchen Einträgen dies passiert ist und bei welchen nicht. Merci vielmals für eure Bemühungen!
Hier wäre die entsprechende SQL-Query. Wir können gerne am Weekly besprechen, wie wir die Löschung vornehmen.
DELETE FROM asset_x_asset_y it
WHERE
(it.asset_x_id, it.asset_y_id) IN (
SELECT
a.*
FROM asset_x_asset_y a
LEFT JOIN
asset_x_asset_y b
ON
b.asset_x_id = a.asset_y_id
AND
b.asset_y_id = a.asset_x_id
WHERE
b IS NOT NULL
AND
a.asset_x_id > b.asset_x_id
)
@daniel-va @vej-ananas : Diesen Issue konnte ich auf int-assets.swissgeol.ch bisher nicht vollständig testen, da ich ohne Elasticsearch keine anderen Assets zum Verlinken finden kann (unter "neuer Verweis" im Tab "Verweise". Dennoch denke ich, es wäre gut, die doppelten Verweise auf PROD zu entfernen und das Issue einzuspielen, da sich die Verweise jeweils bei jeder Aktion wieder verdoppeln, obschon die Verdoppelung vorgängig manuell entfern worden ist.
@mPfifi Der Bugfix ist auf dem dev
zum Testen bereit.
@daniel-va @TIL-EBP @vej-ananas Ich werde diesen Bug zusammen mit Issue #33 testen, sobald ich korrekten Zugang zu dev habe. Derzeit habe ich nur Viewer-Rechte und der Login via eIAM klappt noch nicht richtig (gerate da nach wie vor in Endlosschlaufe). Könntet ihr dem noch nachgehen? - Merci vielmals!
Auf dev getestet - ich konnte keine Verdoppelung von Verweisen mehr herbeiführen.
Bei der Erfassung von Verweisen (Edit-Mode, Tab "Verweise") kommt es teilweise zu Verdoppelungen (Beispiel SGS-ID 1706: Verweis auf SGS-ID 1806 ist doppelt vorhanden):
Der Grund dafür kann bisher nicht klar identifiziert werden, der Fehler lässt sich nicht immer nachvollziehen, könnte aber mit bereits bestehenden Verweisen zusammenhängen. Der Fehler lässt sich jeweils mit Löschen und Erneuern der Verweise beheben, wobei nach jedem Zwischenschritt gespeichert werden sollte.
Grundsätzlich sollte das System bei bereits bestehenden Verweisen (Eintrag wird jeweils in beiden Datensätzen zugefügt) keine Verdoppelung zulassen (automatische Validierung und Ausgabe einer Fehlermeldung)!
Analog zu den Alternativ-ID's scheint auch bei den Verweisen das Handling nicht immer stabil zu sein.