Optimistic Locking while using Enhanced DDB Client - DeleteItem not working
- Lingua principale
- Java
- Stelle
- 2.6k
- Fork
- 1k
- Merge medio
- 2g 9h
- PR unite (30g)
- 51
Descrizione
## Describe the issue
Need to upgrade SDK version to 2 for DDB client. I want to understand how to enforce optimistic locking while doing CRUD operation by enhanced DDB client. I am already using @DynamoDbVersionAttribute annotation.
## Steps to Reproduce
1. Insert item using TransactWriteItemsEnhancedRequest - PutItem.
2. Fetch the item using table.getItem(GetItemEnhancedRequest). (recordVersion would be 1)
3. Update one field of item using TransactWriteItemsEnhancedRequest - UpdateItem. (recordVersion will updated to 2 in the DDB.)
4. Delete item using TransactWriteItemsEnhancedRequest - DeleteItem but use object fetched from Step 2 for deletion.
## Current Behavior
Item is deleted successfully without any exception for record number mismatch.
## Your Environment
* AWS Java SDK version used: 2
* JDK version used: 11
* Operating System and version: macOS 10.15.7
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Riproduci la sequenza in quattro passaggi utilizzando TransactWriteItemsEnhancedRequest, PutItem, GetItemEnhancedRequest, UpdateItem e DeleteItem con AWS Java SDK v2 e @DynamoDbVersionAttribute. Confronta il comportamento di eliminazione dell’oggetto obsoleto con la versione aggiornata del record; il lavoro è completato quando l’eliminazione applica il locking ottimistico e segnala una mancata corrispondenza della versione invece di eliminare l’elemento.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- aws, java
- Ambito
- databases
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100