From 809b32f9b2a8887cb39140f0b4db9271ceecd585 Mon Sep 17 00:00:00 2001 From: JImmy Kuang Date: Thu, 19 Dec 2019 10:13:44 -0800 Subject: [PATCH] Kibana should allow a min_age setting of 0ms in ILM policy phases --- .../sections/edit_policy/components/min_age_input.js | 2 +- .../public/store/selectors/lifecycle.js | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) 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 0ed28bbaa905f..b4c9f4e958cd2 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 @@ -131,7 +131,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 026845c78ee66..b287b74a7aebb 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 @@ -84,6 +84,11 @@ export const positiveNumbersAboveZeroErrorMessage = i18n.translate( } ); +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 = {}; @@ -123,11 +128,12 @@ export const validatePhase = (type, phase, errors) => { } else if ( (numberedAttribute === PHASE_ROLLOVER_MINIMUM_AGE || numberedAttribute === PHASE_PRIMARY_SHARD_COUNT) && - phase[numberedAttribute] < 1 + phase[numberedAttribute] < 0 ) { - phaseErrors[numberedAttribute] = [positiveNumbersAboveZeroErrorMessage]; + phaseErrors[numberedAttribute] = [positiveNumbersEqualAboveZeroErrorMessage]; } } + } if (phase[PHASE_ROLLOVER_ENABLED]) { if ( @@ -161,6 +167,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]; } else if (phase[PHASE_FORCE_MERGE_SEGMENTS] < 1) {