From 0ee8aeba95950b978d609a6c13d4e6fcdec7bc2d Mon Sep 17 00:00:00 2001 From: Ugo Bechameil Date: Mon, 9 Sep 2024 20:46:20 +0200 Subject: [PATCH 1/2] Connecting twice after listing databases was failing on opening the ssh tunnel twice --- reverse_engineering/api.js | 1 - 1 file changed, 1 deletion(-) diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 772e313..805f32f 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -78,7 +78,6 @@ module.exports = { }); postgresService.setDependencies(app); - await postgresService.connect(connectionInfo, sshService, postgresLogger); await postgresService.logVersion(); const schemasNames = await postgresService.getAllSchemasNames(); From a96cd1bd4f7a2101725920f45175a69035eacc7a Mon Sep 17 00:00:00 2001 From: Ugo Bechameil Date: Tue, 10 Sep 2024 13:26:03 +0200 Subject: [PATCH 2/2] Make sure to not recreate ssh tunnel twice --- reverse_engineering/api.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 805f32f..7355a68 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -38,6 +38,7 @@ module.exports = { async getDatabases(connectionInfo, logger, cb, app) { const sshService = app.require('@hackolade/ssh-service'); + await postgresService.disconnect(sshService); try { logInfo('Get databases', connectionInfo, logger); @@ -78,6 +79,9 @@ module.exports = { }); postgresService.setDependencies(app); + if (!connectionInfo.ssh) { + await postgresService.connect(connectionInfo, sshService, postgresLogger); + } await postgresService.logVersion(); const schemasNames = await postgresService.getAllSchemasNames();