mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2026-04-22 22:42:06 +01:00
Perf/copilot cleanup and optimizations (#2447)
* perf: remove deprecated copilot feature, add ARM timeouts, fix race conditions - Remove entire QueryCopilot feature (~50 files deleted, ~30 files cleaned) - Remove CopilotConfigured and SampleDataLoaded metric phases - Fix DatabaseTreeRendered 76% stuck rate (remove one-shot guard in useMetricPhases) - Add 8s default timeout to ARM requests (AbortController-based) - Fix MSAL token forceRefresh (true -> false, use cache) - Add concurrency limit of 5 to collection loading in Explorer - Remove orphaned SampleDataClient.ts and queryCopilotSampleData.json - Clean up dead sampleDataConnectionInfo field from UserContext * Clean up copilot and optimize initialization * Clean up copilot and optimize initialization
This commit is contained in:
@@ -3,7 +3,6 @@ import { useDialog } from "Explorer/Controls/Dialog";
|
||||
import { Action } from "Shared/Telemetry/TelemetryConstants";
|
||||
import { userContext } from "UserContext";
|
||||
import { allowedJunoOrigins, validateEndpoint } from "Utils/EndpointUtils";
|
||||
import { useQueryCopilot } from "hooks/useQueryCopilot";
|
||||
import promiseRetry, { AbortError, Options } from "p-retry";
|
||||
import {
|
||||
Areas,
|
||||
@@ -149,9 +148,7 @@ export class PhoenixClient {
|
||||
dataExplorerArea: Areas.Notebook,
|
||||
message: getErrorMessage(error),
|
||||
});
|
||||
shouldUseNotebookStates
|
||||
? useNotebook.getState().resetContainerConnection(connectionStatus)
|
||||
: useQueryCopilot.getState().resetContainerConnection();
|
||||
shouldUseNotebookStates ? useNotebook.getState().resetContainerConnection(connectionStatus) : undefined;
|
||||
shouldUseNotebookStates && useNotebook.getState().setIsRefreshed(!useNotebook.getState().isRefreshed);
|
||||
shouldUseNotebookStates &&
|
||||
useDialog
|
||||
@@ -179,9 +176,7 @@ export class PhoenixClient {
|
||||
const connectionStatus: ContainerConnectionInfo = {
|
||||
status: ConnectionStatusType.Failed,
|
||||
};
|
||||
shouldUseNotebookStates
|
||||
? useNotebook.getState().resetContainerConnection(connectionStatus)
|
||||
: useQueryCopilot.getState().resetContainerConnection();
|
||||
shouldUseNotebookStates ? useNotebook.getState().resetContainerConnection(connectionStatus) : undefined;
|
||||
shouldUseNotebookStates && useNotebook.getState().setIsRefreshed(!useNotebook.getState().isRefreshed);
|
||||
return {
|
||||
durationLeftInMinutes: undefined,
|
||||
@@ -193,13 +188,9 @@ export class PhoenixClient {
|
||||
|
||||
private async getContainerHealth(shouldUseNotebookStates: boolean, delayMs: number, containerData: IContainerData) {
|
||||
const containerInfo = await this.getContainerStatusAsync(shouldUseNotebookStates, containerData);
|
||||
shouldUseNotebookStates
|
||||
? useNotebook.getState().setContainerStatus(containerInfo)
|
||||
: useQueryCopilot.getState().setContainerStatus(containerInfo);
|
||||
shouldUseNotebookStates ? useNotebook.getState().setContainerStatus(containerInfo) : undefined;
|
||||
|
||||
const containerStatus = shouldUseNotebookStates
|
||||
? useNotebook.getState().containerStatus?.status
|
||||
: useQueryCopilot.getState().containerStatus?.status;
|
||||
const containerStatus = shouldUseNotebookStates ? useNotebook.getState().containerStatus?.status : undefined;
|
||||
if (containerStatus === ContainerStatusType.Active) {
|
||||
this.scheduleContainerHeartbeat(shouldUseNotebookStates, delayMs, containerData);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user