diff --git a/x-pack/platform/plugins/shared/ml/public/application/data_frame_analytics/pages/analytics_creation/hooks/use_index_data.ts b/x-pack/platform/plugins/shared/ml/public/application/data_frame_analytics/pages/analytics_creation/hooks/use_index_data.ts index 6769157c8987a..cdb0f75ac51c1 100644 --- a/x-pack/platform/plugins/shared/ml/public/application/data_frame_analytics/pages/analytics_creation/hooks/use_index_data.ts +++ b/x-pack/platform/plugins/shared/ml/public/application/data_frame_analytics/pages/analytics_creation/hooks/use_index_data.ts @@ -146,10 +146,14 @@ export const useIndexData = ( const [columns, setColumns] = useState([]); useEffect(() => { if (Array.isArray(dataViewFields)) { - setColumns([ + const cols = [ ...getDataViewColumns(dataView, dataViewFields), ...(combinedRuntimeMappings ? getRuntimeFieldColumns(combinedRuntimeMappings) : []), - ]); + ]; + + // de-duplicate columns by id to avoid runtime fields being added twice + const uniqueCols = Array.from(new Map(cols.map((item) => [item.id, item])).values()); + setColumns(uniqueCols); } }, [dataView, dataViewFields, combinedRuntimeMappings]);