Skip to content

Commit 19d1648

Browse files
authored
Correlation dot notation fix (#441)
1 parent ea8252f commit 19d1648

File tree

4 files changed

+17
-20
lines changed

4 files changed

+17
-20
lines changed

src/pages/Correlation/components/CorrelationJoinSection.tsx

-2
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,6 @@ export const CorrelationJoinSection: FC<CorrelationJoinSectionProps> = ({
8585
const handleFieldChange = (fieldValue: string | null, isFirstField: boolean) => {
8686
if (isFirstField) {
8787
const fieldType = fieldValue && fields[streamNames[0]]?.fieldTypeMap[fieldValue];
88-
console.log(fieldType);
89-
9088
setSelect1Value({ value: fieldValue, dataType: fieldType });
9189
} else {
9290
setSelect2Value({ value: fieldValue });

src/pages/Correlation/components/SaveCorrelationModal.tsx

+13-15
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ const SaveCorrelationModal = () => {
4343

4444
const streamNames = Object.keys(fields);
4545

46-
const joins = correlationCondition.split('=');
46+
const joins = correlationCondition.split('=').map((part) => part.replace(/"/g, '').trim());
4747

4848
useEffect(() => {
4949
const timeRangeOptions = makeTimeRangeOptions({ selected: null, current: timeRange });
@@ -101,18 +101,16 @@ const SaveCorrelationModal = () => {
101101
tableName: streamNames[1],
102102
},
103103
],
104-
joinConfig: {
105-
joinConditions: [
106-
{
107-
tableName: streamNames[0],
108-
field: joins[0].split('.')[1].trim(),
109-
},
110-
{
111-
tableName: streamNames[1],
112-
field: joins[1].split('.')[1].trim(),
113-
},
114-
],
115-
},
104+
joinConditions: [
105+
{
106+
tableName: streamNames[0],
107+
field: joins[0].split('.').slice(1).join('.').trim(),
108+
},
109+
{
110+
tableName: streamNames[1],
111+
field: joins[1].split('.').slice(1).join('.').trim(),
112+
},
113+
],
116114
filter: null,
117115
startTime: formObject?.selectedTimeRangeOption.time_filter?.from,
118116
endTime: formObject?.selectedTimeRangeOption.time_filter?.to,
@@ -141,11 +139,11 @@ const SaveCorrelationModal = () => {
141139
joinConditions: [
142140
{
143141
tableName: streamNames[0],
144-
field: joins[0].split('.')[1].trim(),
142+
field: joins[0].split('.').slice(1).join('.').trim(),
145143
},
146144
{
147145
tableName: streamNames[1],
148-
field: joins[1].split('.')[1].trim(),
146+
field: joins[1].split('.').slice(1).join('.').trim(),
149147
},
150148
],
151149
},

src/pages/Correlation/index.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import { CorrelationToolbar } from './components/CorrelationToolbar';
1717
import CorrleationJSONView from './Views/CorrelationJSONView';
1818
import SaveCorrelationModal from './components/SaveCorrelationModal';
1919
import SavedCorrelationsModal from './components/SavedCorrelationsModal';
20-
import _ from 'lodash';
2120
import classes from './styles/Correlation.module.css';
2221
import dayjs from 'dayjs';
2322
import { useCorrelationFetchCount } from './hooks/useCorrelationFetchCount';
@@ -197,7 +196,7 @@ const Correlation = () => {
197196

198197
const updateCorrelationCondition = () => {
199198
if (select1Value.value && select2Value.value) {
200-
const condition = `"${streamNames[0]}".${select1Value.value} = "${streamNames[1]}".${select2Value.value}`;
199+
const condition = `"${streamNames[0]}"."${select1Value.value}" = "${streamNames[1]}"."${select2Value.value}"`;
201200
setAppStore((store) => setStreamForCorrelation(store, 'correlatedStream'));
202201
setCorrelationData((store) => setCorrelationCondition(store, condition));
203202
}

src/utils/queryBuilder.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,9 @@ export class CorrelationQueryBuilder {
133133
/* eslint-disable no-useless-escape */
134134
`select ${this.selectedFields
135135
.map((field) => {
136-
const [streamName, fieldName] = field.split('.');
136+
const parts = field.split('.');
137+
const streamName = parts.shift();
138+
const fieldName = parts.join('.');
137139
return `"${streamName}"."${fieldName}" as "${field}"`;
138140
})
139141
.join(', ')} from \"${this.streamNames[0]}\" join \"${this.streamNames[1]}\" on ${

0 commit comments

Comments
 (0)