]> code.ossystems Code Review - openembedded-core.git/commitdiff
cve-update-db-native: clean DB if temporary file exist
authorLee Chee Yang <chee.yang.lee@intel.com>
Fri, 1 May 2020 21:59:17 +0000 (00:59 +0300)
committerAnuj Mittal <anuj.mittal@intel.com>
Tue, 5 May 2020 00:26:51 +0000 (08:26 +0800)
when do_populate_cve_db forced stop at certain point, the
DB execution are stoped however the temporary database
file (DB-JOURNAL) are not removed. This db-journal file
indicates that DB is incomplete and set DB in readonly
mode. So when db-journal exist, remove both DB and the
db-journal and build the DB again from scratch.

[YOCTO #13682]

(From OE-Core rev: 70713df25b8ae27a21e53b0b9234567d7053800a)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
meta/recipes-core/meta/cve-update-db-native.bb

index 1b4f31692ba168325136c2f1222e872ad9f58711..d69d79cb31c1df3a158ee095c1f9b9d758cf9e66 100644 (file)
@@ -13,8 +13,15 @@ deltask do_install
 deltask do_populate_sysroot
 
 python () {
-    if not d.getVar("CVE_CHECK_DB_FILE"):
+    cve_check_db_file = d.getVar("CVE_CHECK_DB_FILE")
+    if not cve_check_db_file:
         raise bb.parse.SkipRecipe("Skip recipe when cve-check class is not loaded.")
+
+    if os.path.exists("%s-journal" % cve_check_db_file ):
+        os.remove("%s-journal" % cve_check_db_file)
+
+        if os.path.exists(cve_check_db_file):
+            os.remove(cve_check_db_file)
 }
 
 python do_populate_cve_db() {