Menu

📰
0

Building a DynamoDB conformance suite

DEV Community: dynamodb·Martin Hicks·about 1 month ago
#hmvHNa3Q
#dev#dynamodb#strong#suite#real#tier
Reading 0:00
15s threshold

When I started building Dynoxide - a DynamoDB-compatible engine in Rust - I kept running into the same problem. I'd implement an operation, write tests against my understanding of DynamoDB's behaviour, and ship it. Then someone (usually me) would discover that real DynamoDB does something slightly different. A validation error with a different message. A condition expression that fails where I expected it to succeed. An edge case in number precision that I'd never considered. Every emulator ships with "DynamoDB compatible" and you're expected to take their word for it. I needed a way to answer a simple question: does Dynoxide actually behave like DynamoDB? No public conformance suite exists for DynamoDB - not from AWS, not from the community. So I built one. The idea The principle is straightforward. Write a test. Run it against real DynamoDB. Record the result. That recorded result becomes the ground truth. Then run the same test against an emulator and compare.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.

Read More