diff options
| author | Ross Burton <ross.burton@intel.com> | 2019-11-24 15:50:11 -0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-11-25 21:37:40 +0000 |
| commit | f307a225ade221f783f97ce40e9e2659ed0a864a (patch) | |
| tree | f5a1c79452efc2137706800b24cade2a10c63cb6 /meta/recipes-core | |
| parent | 1dbea71db42718831b47286c8bbc6fbd55aaac74 (diff) | |
| download | poky-f307a225ade221f783f97ce40e9e2659ed0a864a.tar.gz | |
cve-update-db-native: add an index on the CVE ID column
Create an index on the PRODUCTS table which contains a row for each CPE,
drastically increasing the performance of lookups for a specific CVE.
(From OE-Core rev: b4048b05b3a00d85c40d09961f846eadcebd812e)
(From OE-Core rev: 1b4a524da1532d15eb34a96c5bda5ff2af25a953)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
| -rw-r--r-- | meta/recipes-core/meta/cve-update-db-native.bb | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/meta/recipes-core/meta/cve-update-db-native.bb b/meta/recipes-core/meta/cve-update-db-native.bb index c15534de08..08b18f064f 100644 --- a/meta/recipes-core/meta/cve-update-db-native.bb +++ b/meta/recipes-core/meta/cve-update-db-native.bb | |||
| @@ -120,11 +120,14 @@ python do_populate_cve_db() { | |||
| 120 | 120 | ||
| 121 | def initialize_db(c): | 121 | def initialize_db(c): |
| 122 | c.execute("CREATE TABLE IF NOT EXISTS META (YEAR INTEGER UNIQUE, DATE TEXT)") | 122 | c.execute("CREATE TABLE IF NOT EXISTS META (YEAR INTEGER UNIQUE, DATE TEXT)") |
| 123 | |||
| 123 | c.execute("CREATE TABLE IF NOT EXISTS NVD (ID TEXT UNIQUE, SUMMARY TEXT, \ | 124 | c.execute("CREATE TABLE IF NOT EXISTS NVD (ID TEXT UNIQUE, SUMMARY TEXT, \ |
| 124 | SCOREV2 TEXT, SCOREV3 TEXT, MODIFIED INTEGER, VECTOR TEXT)") | 125 | SCOREV2 TEXT, SCOREV3 TEXT, MODIFIED INTEGER, VECTOR TEXT)") |
| 126 | |||
| 125 | c.execute("CREATE TABLE IF NOT EXISTS PRODUCTS (ID TEXT, \ | 127 | c.execute("CREATE TABLE IF NOT EXISTS PRODUCTS (ID TEXT, \ |
| 126 | VENDOR TEXT, PRODUCT TEXT, VERSION_START TEXT, OPERATOR_START TEXT, \ | 128 | VENDOR TEXT, PRODUCT TEXT, VERSION_START TEXT, OPERATOR_START TEXT, \ |
| 127 | VERSION_END TEXT, OPERATOR_END TEXT)") | 129 | VERSION_END TEXT, OPERATOR_END TEXT)") |
| 130 | c.execute("CREATE INDEX IF NOT EXISTS PRODUCT_ID_IDX on PRODUCTS(ID);") | ||
| 128 | 131 | ||
| 129 | def parse_node_and_insert(c, node, cveId): | 132 | def parse_node_and_insert(c, node, cveId): |
| 130 | # Parse children node if needed | 133 | # Parse children node if needed |
