22 lines
830 B
Plaintext
22 lines
830 B
Plaintext
sequenceDiagram
|
|
autonumber
|
|
participant A as Anfrage A
|
|
participant S3 as S3-Speicher
|
|
participant B as Anfrage B
|
|
|
|
Note over A,B: Ausgangslage: Ordner "AltName/" mit 200 Objekten,<br/>Zielname "Kunde GmbH/". Beide Anfragen gehoeren derselben Org.
|
|
|
|
A->>S3: CanClaim("Kunde GmbH") → frei
|
|
B->>S3: CanClaim("Kunde GmbH") → frei
|
|
Note over A,B: Beide halten den Zielnamen fuer beanspruchbar
|
|
|
|
A->>S3: kopiert alle 200 Objekte
|
|
B->>S3: kopiert Objekte 1 bis 60
|
|
A->>S3: DeleteObjects("AltName/*")
|
|
Note over S3: Quelle ist jetzt geloescht
|
|
|
|
B->>S3: kopiert Objekt 61 → NoSuchKey
|
|
B->>S3: catch: DeleteObjects(eigene 60 Kopien)
|
|
|
|
Note over S3: Die 60 geloeschten Objekte sind genau die,<br/>die A erfolgreich geschrieben hatte.<br/>Die Quelle existiert nicht mehr — Datenverlust.
|