Skip to content

Commit 49dd643

Browse files
add destIndex specific fields when using sourceIndex for fields
1 parent b05bda3 commit 49dd643

5 files changed

Lines changed: 42 additions & 15 deletions

File tree

x-pack/plugins/ml/public/application/data_frame_analytics/common/fields.ts

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,8 @@ export function getFlattenedFields(obj: EsDocSource, resultsField: string): EsFi
243243

244244
export const getDefaultFieldsFromJobCaps = (
245245
fields: Field[],
246-
jobConfig: DataFrameAnalyticsConfig
246+
jobConfig: DataFrameAnalyticsConfig,
247+
needsDestIndexFields: boolean
247248
): { selectedFields: Field[]; docFields: Field[]; depVarType?: ES_FIELD_TYPES } => {
248249
const fieldsObj = { selectedFields: [], docFields: [] };
249250
if (fields.length === 0) {
@@ -260,16 +261,22 @@ export const getDefaultFieldsFromJobCaps = (
260261
const predictedField = `${resultsField}.${
261262
predictionFieldName ? predictionFieldName : defaultPredictionField
262263
}`;
263-
264-
const allFields: any = [
265-
{
266-
id: `${resultsField}.is_training`,
267-
name: `${resultsField}.is_training`,
268-
type: ES_FIELD_TYPES.BOOLEAN,
269-
},
270-
{ id: predictedField, name: predictedField, type },
271-
...fields,
272-
].sort(({ name: a }, { name: b }) => sortRegressionResultsFields(a, b, jobConfig));
264+
// Only need to add these first two fields if we didn't use dest index pattern to get the fields
265+
const allFields: any =
266+
needsDestIndexFields === true
267+
? [
268+
{
269+
id: `${resultsField}.is_training`,
270+
name: `${resultsField}.is_training`,
271+
type: ES_FIELD_TYPES.BOOLEAN,
272+
},
273+
{ id: predictedField, name: predictedField, type },
274+
]
275+
: [];
276+
277+
allFields.push(...fields);
278+
// @ts-ignore
279+
allFields.sort(({ name: a }, { name: b }) => sortRegressionResultsFields(a, b, jobConfig));
273280

274281
let selectedFields = allFields
275282
.slice(0, DEFAULT_REGRESSION_COLUMNS * 2)

x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_exploration/components/classification_exploration/results_table.tsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,14 +128,23 @@ export const ResultsTable: FC<Props> = React.memo(
128128
}
129129
}
130130

131+
const needsDestIndexFields = indexPattern && indexPattern.title === jobConfig.source.index[0];
132+
131133
const {
132134
errorMessage,
133135
loadExploreData,
134136
sortField,
135137
sortDirection,
136138
status,
137139
tableItems,
138-
} = useExploreData(jobConfig, selectedFields, setSelectedFields, setDocFields, setDepVarType);
140+
} = useExploreData(
141+
jobConfig,
142+
needsDestIndexFields,
143+
selectedFields,
144+
setSelectedFields,
145+
setDocFields,
146+
setDepVarType
147+
);
139148

140149
const columns: Array<ColumnType<TableItem>> = selectedFields
141150
.sort(({ name: a }, { name: b }) => sortRegressionResultsFields(a, b, jobConfig))

x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_exploration/components/classification_exploration/use_explore_data.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ export interface UseExploreDataReturnType {
5151

5252
export const useExploreData = (
5353
jobConfig: DataFrameAnalyticsConfig | undefined,
54+
needsDestIndexFields: boolean,
5455
selectedFields: Field[],
5556
setSelectedFields: React.Dispatch<React.SetStateAction<Field[]>>,
5657
setDocFields: React.Dispatch<React.SetStateAction<Field[]>>,
@@ -70,7 +71,7 @@ export const useExploreData = (
7071
selectedFields: defaultSelected,
7172
docFields,
7273
depVarType,
73-
} = getDefaultFieldsFromJobCaps(fields, jobConfig);
74+
} = getDefaultFieldsFromJobCaps(fields, jobConfig, needsDestIndexFields);
7475

7576
setDepVarType(depVarType);
7677
setSelectedFields(defaultSelected);

x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_exploration/components/regression_exploration/results_table.tsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,14 +129,23 @@ export const ResultsTable: FC<Props> = React.memo(
129129
}
130130
}
131131

132+
const needsDestIndexFields = indexPattern && indexPattern.title === jobConfig.source.index[0];
133+
132134
const {
133135
errorMessage,
134136
loadExploreData,
135137
sortField,
136138
sortDirection,
137139
status,
138140
tableItems,
139-
} = useExploreData(jobConfig, selectedFields, setSelectedFields, setDocFields, setDepVarType);
141+
} = useExploreData(
142+
jobConfig,
143+
needsDestIndexFields,
144+
selectedFields,
145+
setSelectedFields,
146+
setDocFields,
147+
setDepVarType
148+
);
140149

141150
const columns: Array<ColumnType<TableItem>> = selectedFields
142151
.sort(({ name: a }, { name: b }) => sortRegressionResultsFields(a, b, jobConfig))

x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_exploration/components/regression_exploration/use_explore_data.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export interface UseExploreDataReturnType {
4646

4747
export const useExploreData = (
4848
jobConfig: DataFrameAnalyticsConfig | undefined,
49+
needsDestIndexFields: boolean,
4950
selectedFields: Field[],
5051
setSelectedFields: React.Dispatch<React.SetStateAction<Field[]>>,
5152
setDocFields: React.Dispatch<React.SetStateAction<Field[]>>,
@@ -65,7 +66,7 @@ export const useExploreData = (
6566
selectedFields: defaultSelected,
6667
docFields,
6768
depVarType,
68-
} = getDefaultFieldsFromJobCaps(fields, jobConfig);
69+
} = getDefaultFieldsFromJobCaps(fields, jobConfig, needsDestIndexFields);
6970

7071
setDepVarType(depVarType);
7172
setSelectedFields(defaultSelected);

0 commit comments

Comments
 (0)