[ML] Prevent default job values overwriting nulled fields #34804
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Jobs have a field
model_snapshot_retention_daysdescribing how long old model snapshots should be kept for. If the value isnullmodel snapshots are never deleted.model_snapshot_retention_dayshas a default value of 1 statically set inJob.Builder. If the field is later explicitly set to null the null value will not be written intoXContentand so the parser will never read the field and set it back to null meaning the default value comes back into play and the information that the field was previously null is lost. This happens anywhere the job is parsed.