Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Add or remove an entry from a List type attribute in a DynamoDB table item

I have a very simple class, with a string type primary key and List type attributes. I want to write an API for adding and removing an item from the attribute list, and saving the changes back to DDB.

The simplest solution I can think of is:

  1. Read the list (if it exists)
  2. If it exists, remove or add the item from the List type attribute
  3. Put the modified object back

Is there a cleaner/simpler way to do this via DynamoDB java API?

like image 690
user1071840 Avatar asked Feb 01 '15 02:02

user1071840


1 Answers

The accepted answer is incorrect, the correct way of doing this is listed in the DynamoDB UpdateExpression documentation

You need to read the list then get the index of the item you're looking to remove then run REMOVE list[index] as an UpdateExpression

like image 156
csilk Avatar answered Oct 29 '22 20:10

csilk