From 4e8801b8e1379ced12e96b612a26e1c9f317e411 Mon Sep 17 00:00:00 2001 From: apriestman <apriestman@basistech.com> Date: Fri, 9 Jul 2021 08:28:36 -0400 Subject: [PATCH] Delete merged objects when their target is deleted --- .../src/org/sleuthkit/datamodel/CaseDatabaseFactory.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/java/src/org/sleuthkit/datamodel/CaseDatabaseFactory.java b/bindings/java/src/org/sleuthkit/datamodel/CaseDatabaseFactory.java index aec10f42a..e6c08af85 100644 --- a/bindings/java/src/org/sleuthkit/datamodel/CaseDatabaseFactory.java +++ b/bindings/java/src/org/sleuthkit/datamodel/CaseDatabaseFactory.java @@ -418,7 +418,7 @@ private void createHostTables(Statement stmt) throws SQLException { + "person_id INTEGER, " + "merged_into " + dbQueryHelper.getBigIntType() + ", " + "FOREIGN KEY(person_id) REFERENCES tsk_persons(id) ON DELETE SET NULL, " - + "FOREIGN KEY(merged_into) REFERENCES tsk_hosts(id) ON DELETE SET NULL, " + + "FOREIGN KEY(merged_into) REFERENCES tsk_hosts(id) ON DELETE CASCADE, " + "UNIQUE(name)) "); stmt.execute("CREATE TABLE tsk_host_addresses (id " + dbQueryHelper.getPrimaryKey() + " PRIMARY KEY, " @@ -492,7 +492,7 @@ private void createAccountTables(Statement stmt) throws SQLException { + "merged_into " + dbQueryHelper.getBigIntType() + " DEFAULT NULL, " + "UNIQUE(realm_signature), " + "FOREIGN KEY(scope_host_id) REFERENCES tsk_hosts(id) ON DELETE CASCADE," - + "FOREIGN KEY(merged_into) REFERENCES tsk_os_account_realms(id) ON DELETE SET NULL )"); + + "FOREIGN KEY(merged_into) REFERENCES tsk_os_account_realms(id) ON DELETE CASCADE )"); // References tsk_objects, tsk_os_account_realms, tsk_persons stmt.execute("CREATE TABLE tsk_os_accounts (os_account_obj_id " + dbQueryHelper.getBigIntType() + " PRIMARY KEY, " @@ -509,7 +509,7 @@ private void createAccountTables(Statement stmt) throws SQLException { + "UNIQUE(signature, realm_id), " + "FOREIGN KEY(os_account_obj_id) REFERENCES tsk_objects(obj_id) ON DELETE CASCADE, " + "FOREIGN KEY(realm_id) REFERENCES tsk_os_account_realms(id) ON DELETE CASCADE," - + "FOREIGN KEY(merged_into) REFERENCES tsk_os_accounts(os_account_obj_id) ON DELETE SET NULL )"); + + "FOREIGN KEY(merged_into) REFERENCES tsk_os_accounts(os_account_obj_id) ON DELETE CASCADE )"); } // Must be called after createAccountTables() and blackboard_attribute_types, blackboard_artifacts creation. -- GitLab