Skip to content

MetaDataEvolutionValidator can now be configured to ignore field renames only on deprecated fields#4119

Open
alecgrieser wants to merge 1 commit intoFoundationDB:mainfrom
alecgrieser:04020-mdev-deprecated-field-renames
Open

MetaDataEvolutionValidator can now be configured to ignore field renames only on deprecated fields#4119
alecgrieser wants to merge 1 commit intoFoundationDB:mainfrom
alecgrieser:04020-mdev-deprecated-field-renames

Conversation

@alecgrieser
Copy link
Copy Markdown
Collaborator

The MetaDataEvolutionValidator was given an option to allow for field renames with #4034. That can be problematic in the general case, as we don't really want fields that are in use to change their field name. (For example, if two fields swap places accidentlly but they have identical types, allowing general field renames wouldn't catch that.) However, if a field has been marked as deprecated, then it is likely no longer in use, so allowing field renames for those fields is less problematic. It is also the only way to support a flow that allows for a field to be recreated (e.g., with a new type), though that operation has its own costs.

This resolves #4020.

@alecgrieser alecgrieser added the enhancement New feature or request label Apr 28, 2026
@alecgrieser alecgrieser changed the title The MetaDataEvolutionValidator can now be configured to ignore field renames only on deprecated fields MetaDataEvolutionValidator can now be configured to ignore field renames only on deprecated fields Apr 29, 2026
…d renames only on deprecated types

The `MetaDataEvolutionValidator` was given an option to allow for field renames with FoundationDB#4034. That can be problematic in the general case, as we don't really want fields that are in use to change their field name. (For example, if two fields swap places accidentlly but they have identical types, allowing general field renames wouldn't catch that.) However, if a field has been marked as deprecated, then it is likely no longer in use, so allowing field renames for those fields is less problematic. It is also the only way to support a flow that allows for a field to be recreated (e.g., with a new type), though that operation has its own costs.

This resolves FoundationDB#4020.
@alecgrieser alecgrieser force-pushed the 04020-mdev-deprecated-field-renames branch from 3625acb to c5e8dcc Compare May 5, 2026 11:50
@alecgrieser alecgrieser requested a review from ScottDugas May 5, 2026 11:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow field renames to be ignored on deprecated fields

1 participant