Skip to content

Commit

Permalink
Revert "[Explorer] Supports session for s3 direct query (opensearch-p…
Browse files Browse the repository at this point in the history
  • Loading branch information
mengweieric committed Nov 8, 2023
1 parent fe770e3 commit 081218e
Show file tree
Hide file tree
Showing 9 changed files with 21 additions and 104 deletions.
5 changes: 0 additions & 5 deletions common/constants/data_sources.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,3 @@ export const enum QUERY_LANGUAGE {
SQL = 'SQL',
DQL = 'DQL',
}
export enum DATA_SOURCE_TYPES {
DEFAULT_CLUSTER_TYPE = DEFAULT_DATA_SOURCE_TYPE,
SPARK = 'spark',
S3Glue = 's3glue',
}
4 changes: 0 additions & 4 deletions common/constants/shared.ts
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,3 @@ export const VISUALIZATION_ERROR = {
};

export const S3_DATASOURCE_TYPE = 'S3_DATASOURCE';

export const ASYNC_QUERY_SESSION_ID = 'async-query-session-id';

export const DIRECT_DUMMY_QUERY = 'select 1';
7 changes: 0 additions & 7 deletions common/types/explorer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -427,10 +427,3 @@ export enum DirectQueryLoadingStatus {
SCHEDULED = 'SCHEDULED',
CANCELED = 'CANCELED',
}

export interface DirectQueryRequest {
query: string;
lang: string;
datasource: string;
sessionId?: string;
}
16 changes: 0 additions & 16 deletions common/utils/query_session_utils.ts

This file was deleted.

8 changes: 0 additions & 8 deletions common/utils/shared.ts

This file was deleted.

29 changes: 10 additions & 19 deletions public/components/common/search/sql_search.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ import {
EuiPopoverFooter,
EuiToolTip,
} from '@elastic/eui';
import { isEqual } from 'lodash';
import { isEqual, lowerCase } from 'lodash';
import React, { useEffect, useState } from 'react';
import { batch, useDispatch, useSelector } from 'react-redux';
import { APP_ANALYTICS_TAB_ID_REGEX, RAW_QUERY } from '../../../../common/constants/explorer';
import { DirectQueryLoadingStatus, DirectQueryRequest } from '../../../../common/types/explorer';
import { DirectQueryLoadingStatus } from '../../../../common/types/explorer';
import { PPL_NEWLINE_REGEX, PPL_SPAN_REGEX } from '../../../../common/constants/shared';
import { uiSettingsService } from '../../../../common/utils';
import { useFetchEvents } from '../../../components/event_analytics/hooks';
Expand All @@ -38,8 +38,6 @@ import { PPLReferenceFlyout } from '../helpers';
import { Autocomplete } from './autocomplete';
import { changeQuery } from '../../../components/event_analytics/redux/slices/query_slice';
import { QUERY_LANGUAGE } from '../../../../common/constants/data_sources';
import { getAsyncSessionId, setAsyncSessionId } from '../../../../common/utils/query_session_utils';
import { get as getObjValue } from '../../../../common/utils/shared';
export interface IQueryBarProps {
query: string;
tempQuery: string;
Expand Down Expand Up @@ -103,7 +101,7 @@ export const DirectSearch = (props: any) => {
stopPolling,
} = usePolling<any, any>((params) => {
return sqlService.fetchWithJobId(params);
}, 2000);
}, 5000);

const requestParams = { tabId };
const { dispatchOnGettingHis } = useFetchEvents({
Expand Down Expand Up @@ -192,21 +190,13 @@ export const DirectSearch = (props: any) => {
);
});
dispatch(updateSearchMetaData({ tabId, data: { isPolling: true, lang } }));
const sessionId = getAsyncSessionId();
const requestPayload = {
lang: lang.toLowerCase(),
query: tempQuery || query,
datasource: explorerSearchMetadata.datasources[0].label,
} as DirectQueryRequest;

if (sessionId) {
requestPayload.sessionId = sessionId;
}

sqlService
.fetch(requestPayload)
.fetch({
lang: lowerCase(lang),
query: tempQuery || query,
datasource: explorerSearchMetadata.datasources[0].name,
})
.then((result) => {
setAsyncSessionId(getObjValue(result, 'sessionId', null));
if (result.queryId) {
startPolling({
queryId: result.queryId,
Expand All @@ -218,7 +208,8 @@ export const DirectSearch = (props: any) => {
.catch((e) => {
setIsQueryRunning(false);
console.error(e);
});
})
.finally(() => {});
};

useEffect(() => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import { reset as resetQueryResults } from '../../redux/slices/query_result_slic
import { reset as resetVisualization } from '../../redux/slices/visualization_slice';
import { reset as resetVisConfig } from '../../redux/slices/viualization_config_slice';
import { reset as resetQuery } from '../../redux/slices/query_slice';
import { DirectQueryRequest, SelectedDataSource } from '../../../../../common/types/explorer';
import { SelectedDataSource } from '../../../../../common/types/explorer';
import { ObservabilityDefaultDataSource } from '../../../../framework/datasources/obs_opensearch_datasource';
import {
DATA_SOURCE_TYPE_URL_PARAM_KEY,
Expand All @@ -32,16 +32,7 @@ import {
DEFAULT_DATA_SOURCE_TYPE,
DEFAULT_DATA_SOURCE_TYPE_NAME,
DEFAULT_DATA_SOURCE_OBSERVABILITY_DISPLAY_NAME,
DATA_SOURCE_TYPES,
QUERY_LANGUAGE,
} from '../../../../../common/constants/data_sources';
import { SQLService } from '../../../../services/requests/sql';
import { get as getObjValue } from '../../../../../common/utils/shared';
import {
setAsyncSessionId,
getAsyncSessionId,
} from '../../../../../common/utils/query_session_utils';
import { DIRECT_DUMMY_QUERY } from '../../../../../common/constants/shared';

const getDataSourceState = (selectedSourceState: SelectedDataSource[]) => {
if (selectedSourceState.length === 0) return [];
Expand Down Expand Up @@ -79,8 +70,7 @@ const removeDataSourceFromURLParams = (currURL: string) => {
};

export const DataSourceSelection = ({ tabId }: { tabId: string }) => {
const { dataSources, http } = coreRefs;
const sqlService = new SQLService(http!);
const { dataSources } = coreRefs;
const dispatch = useDispatch();
const routerContext = useContext(LogExplorerRouterContext);
const explorerSearchMetadata = useSelector(selectSearchMetaData)[tabId];
Expand Down Expand Up @@ -119,23 +109,6 @@ export const DataSourceSelection = ({ tabId }: { tabId: string }) => {
setSelectedSources(selectedSource);
};

const runDummyQuery = (dataSource: string) => {
const requestPayload = {
lang: QUERY_LANGUAGE.SQL.toLowerCase(),
query: DIRECT_DUMMY_QUERY,
datasource: dataSource,
} as DirectQueryRequest;

sqlService
.fetch(requestPayload)
.then((result) => {
setAsyncSessionId(getObjValue(result, 'sessionId', null));
})
.catch((e) => {
console.error(e);
});
};

useEffect(() => {
setSelectedSources(getDataSourceState(explorerSearchMetadata.datasources));
}, [explorerSearchMetadata.datasources]);
Expand Down Expand Up @@ -193,19 +166,6 @@ export const DataSourceSelection = ({ tabId }: { tabId: string }) => {
}
}, []);

useEffect(() => {
// Execute a dummy query to initialize the cluster and obtain a sessionId for subsequent queries.
const dsType = explorerSearchMetadata.datasources?.[0]?.type;
const dsName = explorerSearchMetadata.datasources?.[0]?.label;
if (
!getAsyncSessionId() &&
[DATA_SOURCE_TYPES.SPARK, DATA_SOURCE_TYPES.S3Glue].includes(dsType) &&
dsName
) {
runDummyQuery(dsName);
}
}, [explorerSearchMetadata.datasources]);

/**
* Process the data source options to display different than discover's group names.
* Temporary solution for version 2.11.
Expand Down
11 changes: 9 additions & 2 deletions public/services/requests/sql.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,22 @@
*/

import { CoreStart } from '../../../../../src/core/public';
import { DirectQueryRequest } from '../../../common/types/explorer';
import { PPL_BASE, PPL_SEARCH } from '../../../common/constants/shared';

export class SQLService {
private http;
constructor(http: CoreStart['http']) {
this.http = http;
}

fetch = async (params: DirectQueryRequest, errorHandler?: (error: any) => void) => {
fetch = async (
params: {
query: string;
lang: string;
datasource: string;
},
errorHandler?: (error: any) => void
) => {
return this.http
.post('/api/observability/query/jobs', {
body: JSON.stringify(params),
Expand Down
1 change: 0 additions & 1 deletion server/routes/datasources/datasources_router.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ export function registerDatasourcesRoute(router: IRouter) {
query: schema.string(),
lang: schema.string(),
datasource: schema.string(),
sessionId: schema.maybe(schema.string()),
}),
},
},
Expand Down

0 comments on commit 081218e

Please sign in to comment.