From e6d792a92216a7d8325935670b25a3e56ae38a35 Mon Sep 17 00:00:00 2001 From: Esben Sparre Andreasen Date: Mon, 28 Jun 2021 08:09:58 +0200 Subject: [PATCH] sample: reuse existing DB --- src/analyze.ts | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/src/analyze.ts b/src/analyze.ts index 3e4a577dd..d1d5071f2 100644 --- a/src/analyze.ts +++ b/src/analyze.ts @@ -120,14 +120,20 @@ async function createdDBForScannedLanguages( if (isScannedLanguage(language)) { logger.startGroup(`Extracting ${language}`); - if (language === Language.python) { - await setupPythonExtractor(logger); - } + let db = util.getCodeQLDatabasePath(config, language); + + if (fs.existsFileSync(db)){ + console.log(`${db} exists already. I am assuming this is intentional...`); + else { + if (language === Language.python) { + await setupPythonExtractor(logger); + } - await codeql.extractScannedLanguage( - util.getCodeQLDatabasePath(config, language), - language - ); + await codeql.extractScannedLanguage( + db, + language + ); + } logger.endGroup(); } } @@ -143,10 +149,15 @@ async function finalizeDatabaseCreation( const codeql = getCodeQL(config.codeQLCmd); for (const language of config.languages) { logger.startGroup(`Finalizing ${language}`); - await codeql.finalizeDatabase( - util.getCodeQLDatabasePath(config, language), - threadsFlag - ); + let db = util.getCodeQLDatabasePath(config, language); + if (codeql.hasBeenFinalized(db)){ + console.log(`${db} has already been finalized. I am assuming this is intentional...`); + } else { + await codeql.finalizeDatabase( + db, + threadsFlag + ); + } logger.endGroup(); } }