From 85eb7b88246ea63eaba65e740bf0330d82e29d57 Mon Sep 17 00:00:00 2001 From: Charles Gagnon Date: Tue, 17 Jan 2023 17:00:21 -0800 Subject: [PATCH] Add trace debug logging to OE service (#21617) * Add trace debug logging to OE service * cleanup --- .../browser/objectExplorerService.ts | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/sql/workbench/services/objectExplorer/browser/objectExplorerService.ts b/src/sql/workbench/services/objectExplorer/browser/objectExplorerService.ts index f7b7bcbd7d..c5fb8c2f6a 100644 --- a/src/sql/workbench/services/objectExplorer/browser/objectExplorerService.ts +++ b/src/sql/workbench/services/objectExplorer/browser/objectExplorerService.ts @@ -238,16 +238,19 @@ export class ObjectExplorerService implements IObjectExplorerService { } let sessionStatus = this._sessions[expandResponse.sessionId!]; - let foundSession = false; if (sessionStatus) { - let nodeStatus = this._sessions[expandResponse.sessionId!].nodes[expandResponse.nodePath]; - foundSession = !!nodeStatus; - if (foundSession && nodeStatus.expandEmitter) { - nodeStatus.expandEmitter.fire(expandResponse); + const nodeStatus = sessionStatus.nodes[expandResponse.nodePath]; + if (nodeStatus) { + if (!nodeStatus.expandEmitter) { + this.logService.warn(`No expand emitter for session: ${expandResponse.sessionId} and node path: ${expandResponse.nodePath}`); + } else { + nodeStatus.expandEmitter.fire(expandResponse); + } + } else { + this.logService.warn(`Cannot find node status for session: ${expandResponse.sessionId} and node path: ${expandResponse.nodePath}`); } - } - if (!foundSession) { - this.logService.warn(`Cannot find node status for session: ${expandResponse.sessionId} and node path: ${expandResponse.nodePath}`); + } else { + this.logService.warn(`Cannot find session ${expandResponse.sessionId} for node path: ${expandResponse.nodePath}`); } } @@ -351,11 +354,13 @@ export class ObjectExplorerService implements IObjectExplorerService { const provider = this._providers[providerId]; if (provider) { const result = await provider.createNewSession(connection.toConnectionInfo()); + if (this._sessions[result.sessionId]) { + this.logService.trace(`Overwriting session ${result.sessionId}`); + } this._sessions[result.sessionId] = { connection: connection, nodes: {} }; - return result; } else { throw new Error(`Provider doesn't exist. id: ${providerId}`); @@ -397,6 +402,7 @@ export class ObjectExplorerService implements IObjectExplorerService { self._sessions[session.sessionId!].nodes[node.nodePath] = { expandEmitter: new Emitter() }; + this.logService.trace(`Adding node ${node.nodePath} to session ${session.sessionId}`); newRequest = true; } let provider = this._providers[providerId]; @@ -437,6 +443,7 @@ export class ObjectExplorerService implements IObjectExplorerService { // Have to delete it after get all responses otherwise couldn't find session for not the first response if (newRequest) { delete self._sessions[session.sessionId!].nodes[node.nodePath]; + this.logService.trace(`Deleted node ${node.nodePath} from session ${session.sessionId}`); } } });