diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java b/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java index 79566add62..4c1cea69b8 100644 --- a/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java +++ b/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java @@ -889,7 +889,7 @@ public final class AutoIngestManager extends Observable implements PropertyChang /** * A FileVisitor that searches the input directories for manifest files. The * search results are used to refresh the pending jobs queue and the - * completed jobs list. Crashed job recovery is perfomed as needed. + * completed jobs list. Crashed job recovery is performed as needed. */ private final class InputDirScanner implements FileVisitor { @@ -914,7 +914,9 @@ public final class AutoIngestManager extends Observable implements PropertyChang AutoIngestManager.this.pendingJobs = newPendingJobsList; AutoIngestManager.this.completedJobs = newCompletedJobsList; - } catch (IOException ex) { + } catch (Exception ex) { + /* NOTE: Need to catch all exceptions here. Otherwise uncaught exceptions will + propagate up to the calling thread and may stop it from running.*/ SYS_LOGGER.log(Level.SEVERE, String.format("Error scanning the input directory %s", rootInputDirectory), ex); } } diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/datamodel/AbstractSqlEamDb.java b/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/datamodel/AbstractSqlEamDb.java index 2d6425afd0..0610efe438 100644 --- a/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/datamodel/AbstractSqlEamDb.java +++ b/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/datamodel/AbstractSqlEamDb.java @@ -1005,7 +1005,7 @@ public abstract class AbstractSqlEamDb implements EamDb { sql.append(tableName); sql.append(" (case_id, data_source_id, value, file_path, known_status, comment) "); sql.append("VALUES ((SELECT id FROM cases WHERE case_uid=? LIMIT 1), "); - sql.append("(SELECT id FROM data_sources WHERE name=? LIMIT 1), ?, ?, ?, ?)"); + sql.append("(SELECT id FROM data_sources WHERE device_id=? LIMIT 1), ?, ?, ?, ?)"); bulkPs = conn.prepareStatement(sql.toString()); @@ -1015,7 +1015,7 @@ public abstract class AbstractSqlEamDb implements EamDb { for (EamArtifactInstance eamInstance : eamInstances) { bulkPs.setString(1, eamInstance.getEamCase().getCaseUUID()); - bulkPs.setString(2, eamInstance.getEamDataSource().getName()); + bulkPs.setString(2, eamInstance.getEamDataSource().getDeviceID()); bulkPs.setString(3, eamArtifact.getArtifactValue()); bulkPs.setString(4, eamInstance.getFilePath()); bulkPs.setString(5, eamInstance.getKnownStatus().name()); diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/ingestmodule/IngestModule.java b/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/ingestmodule/IngestModule.java index c706dc61a2..20e0b4d762 100644 --- a/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/ingestmodule/IngestModule.java +++ b/Experimental/src/org/sleuthkit/autopsy/experimental/enterpriseartifactsmanager/ingestmodule/IngestModule.java @@ -152,6 +152,17 @@ class IngestModule implements FileIngestModule { @Override public void shutDown() { + if (Boolean.parseBoolean(ModuleSettings.getConfigSetting("EnterpriseArtifactManager", "db.enabled")) == false + || EamDb.getInstance().isEnabled() == false) { + /* + * Not signaling an error for now. This is a workaround for the way + * all newly didscovered ingest modules are automatically anabled. + * + * TODO (JIRA-2731): Add isEnabled API for ingest modules. + */ + return; + } + EamDb dbManager = EamDb.getInstance(); try { dbManager.bulkInsertArtifacts(); diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties index 99d88938ce..1a14ddf308 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties @@ -236,10 +236,10 @@ KeywordSearchGlobalLanguageSettingsPanel.ingestSettingsLabel.text=Ingest setting KeywordSearchGlobalLanguageSettingsPanel.enableUTF16Checkbox.text=Enable UTF16LE and UTF16BE string extraction KeywordSearchGlobalLanguageSettingsPanel.languagesLabel.text=Enabled scripts (languages): KeywordSearchGlobalSearchSettingsPanel.timeRadioButton1.toolTipText=20 mins. (fastest ingest time) -KeywordSearchGlobalSearchSettingsPanel.timeRadioButton1.text=20 minutes (slowest feedback, fastest ingest) +KeywordSearchGlobalSearchSettingsPanel.timeRadioButton1.text=20 minutes KeywordSearchGlobalSearchSettingsPanel.timeRadioButton2.toolTipText=10 minutes (faster overall ingest time than default) -KeywordSearchGlobalSearchSettingsPanel.timeRadioButton2.text=10 minutes (slower feedback, faster ingest) -KeywordSearchGlobalSearchSettingsPanel.frequencyLabel.text=Results update frequency during ingest: +KeywordSearchGlobalSearchSettingsPanel.timeRadioButton2.text=10 minutes +KeywordSearchGlobalSearchSettingsPanel.frequencyLabel.text=Results update frequency during ingest (we have not seen significant performance differences between 5, 10, or 20 minute intervals): KeywordSearchGlobalSearchSettingsPanel.skipNSRLCheckBox.toolTipText=Requires Hash DB service to had run previously, or be selected for next ingest. KeywordSearchGlobalSearchSettingsPanel.skipNSRLCheckBox.text=Do not add files in NSRL (known files) to keyword index during ingest KeywordSearchGlobalSearchSettingsPanel.informationLabel.text=Information @@ -249,7 +249,7 @@ KeywordSearchGlobalSearchSettingsPanel.filesIndexedLabel.text=Files in keyword i KeywordSearchGlobalSearchSettingsPanel.showSnippetsCB.text=Show Keyword Preview in Keyword Search Results (will result in longer search times) KeywordSearchGlobalSearchSettingsPanel.chunksValLabel.text=0 KeywordSearchGlobalSearchSettingsPanel.timeRadioButton4.toolTipText=1 minute (overall ingest time will be longest) -KeywordSearchGlobalSearchSettingsPanel.timeRadioButton4.text_1=1 minute (faster feedback, longest ingest) +KeywordSearchGlobalSearchSettingsPanel.timeRadioButton4.text_1=1 minute KeywordSearchGlobalSearchSettingsPanel.chunksLabel.text=Chunks in keyword index: KeywordSearchGlobalSearchSettingsPanel.timeRadioButton3.toolTipText=5 minutes (overall ingest time will be longer) KeywordSearchGlobalSearchSettingsPanel.timeRadioButton3.text=5 minutes (default)