3 ms·
are there good examples for this, and how it scaled across versions over time?
by foolinaround 6y ago
are there good examples for this, and how it scaled across versions over time?
- ctvo 6y agoThis covers the wider problem of contract (protocol) changes in distributed systems: https://aws.amazon.com/builders-library/ensuring-rollback-safety-during-deployments/?did=ba_card&trk=ba_card https://aws.amazon.com/builders-library/ensuring-rollback-sa... > With each change, we explicitly assign a distinct version to serializers. > We do this independent of source code or build versioning. We also store the serializer version with the serialized data or in the metadata. Older serializer versions continue to function in the new software. We find it’s usually helpful to emit a metric for the version of data written or read. It provides operators with visibility and troubleshooting information if there are errors. All of this applies to RPC and API versions, too. Backwards compatibility and the ability to roll out new changes (that can co-exist with current data) are the primary drivers.