diff --git a/plugins/dbgate-plugin-duckdb/src/backend/driver.js b/plugins/dbgate-plugin-duckdb/src/backend/driver.js index 82fe275a1..81be19869 100644 --- a/plugins/dbgate-plugin-duckdb/src/backend/driver.js +++ b/plugins/dbgate-plugin-duckdb/src/backend/driver.js @@ -21,29 +21,16 @@ function getDuckDb() { return duckDb; } -let fileToCon = {}; -async function getConnection(file) { - if (fileToCon[file]) { - fileToCon[file].close(); - } - - const duckDb = getDuckDb(); - const instance = await duckDb.DuckDBInstance.create(file); - console.log('DuckDB instance created', instance); - const connection = await instance.connect(); - - fileToCon[file] = connection; - - return fileToCon[file]; -} - /** @type {import('dbgate-types').EngineDriver} */ const driver = { ...driverBase, analyserClass: Analyser, async connect({ databaseFile, isReadOnly }) { + const instance = await getDuckDb().DuckDBInstance.create(databaseFile); + const connection = await instance.connect(); + return { - client: await getConnection(databaseFile), + client: connection, }; }, async close(dbhan) {