diff --git a/x-pack/legacy/plugins/index_lifecycle_management/public/sections/edit_policy/components/min_age_input.js b/x-pack/legacy/plugins/index_lifecycle_management/public/sections/edit_policy/components/min_age_input.js index 26dffd19039bd..4a1bf06f32135 100644 --- a/x-pack/legacy/plugins/index_lifecycle_management/public/sections/edit_policy/components/min_age_input.js +++ b/x-pack/legacy/plugins/index_lifecycle_management/public/sections/edit_policy/components/min_age_input.js @@ -116,7 +116,7 @@ export const MinAgeInput = props => { onChange={async e => { setPhaseData(PHASE_ROLLOVER_MINIMUM_AGE, e.target.value); }} - min={1} + min={0} /> diff --git a/x-pack/legacy/plugins/index_lifecycle_management/public/store/selectors/lifecycle.js b/x-pack/legacy/plugins/index_lifecycle_management/public/store/selectors/lifecycle.js index 2463a7fed8799..745f7b90cc89b 100644 --- a/x-pack/legacy/plugins/index_lifecycle_management/public/store/selectors/lifecycle.js +++ b/x-pack/legacy/plugins/index_lifecycle_management/public/store/selectors/lifecycle.js @@ -64,11 +64,17 @@ export const maximumDocumentsRequiredMessage = defaultMessage: 'Maximum documents is required.' }); + export const positiveNumbersAboveZeroErrorMessage = i18n.translate('xpack.indexLifecycleMgmt.editPolicy.positiveNumberAboveZeroRequiredError', { defaultMessage: 'Only numbers above 0 are allowed.' }); +export const positiveNumbersEqualAboveZeroErrorMessage = + i18n.translate('xpack.indexLifecycleMgmt.editPolicy.positiveNumberAboveZeroRequiredError', { + defaultMessage: 'Only numbers equal to or above 0 are allowed.' + }); + export const validatePhase = (type, phase, errors) => { const phaseErrors = {}; @@ -106,10 +112,12 @@ export const validatePhase = (type, phase, errors) => { phaseErrors[numberedAttribute] = [positiveNumberRequiredMessage]; } else if ((numberedAttribute === PHASE_ROLLOVER_MINIMUM_AGE || - numberedAttribute === PHASE_PRIMARY_SHARD_COUNT) && phase[numberedAttribute] < 1) { - phaseErrors[numberedAttribute] = [positiveNumbersAboveZeroErrorMessage]; + numberedAttribute === PHASE_PRIMARY_SHARD_COUNT) && phase[numberedAttribute] < 0) { + phaseErrors[numberedAttribute] = [positiveNumbersEqualAboveZeroErrorMessage]; } + } + } if (phase[PHASE_ROLLOVER_ENABLED]) { if ( @@ -153,6 +161,7 @@ export const validatePhase = (type, phase, errors) => { } if (phase[PHASE_FORCE_MERGE_ENABLED]) { + if (!isNumber(phase[PHASE_FORCE_MERGE_SEGMENTS])) { phaseErrors[PHASE_FORCE_MERGE_SEGMENTS] = [numberRequiredMessage]; }