2024-01-29

You don’t need to be an iOS developer to get the “build it, and see what happens” experience. Just get a CloudFormation stack with a DynamoDB table and GSI. Oh, you want to add a new attribute to an index, or change an index’s projection? Well, just do it and see what happens (it’ll probably fail).

My favourite limitation: you cannot deploy a CloudFormation delta that contains more than one GSI change on a single table (I’m pretty sure it’s per table and not per delta). If you need to make two GSI changes, you’ll need to do two CloudFormation deployments. This is super fun when you’re banking changes that will be pushed to prod in one hit, and you’ve forgotten earlier changes you made to GSIs.