diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java b/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java
index 7fbc80a2a2acb58358053876b6f43f1bccc3d774..d4f789a8619996480583c6a88d3fcaed3e469659 100644
--- a/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java
+++ b/Experimental/src/org/sleuthkit/autopsy/experimental/autoingest/AutoIngestManager.java
@@ -2814,10 +2814,13 @@ private void analyze(AutoIngestDataSource dataSource) throws AnalysisStartupExce
                         /*
                          * Block until notified by the ingest job event listener
                          * or until interrupted because auto ingest is shutting
-                         * down.
+                         * down. For very small jobs, it is possible that ingest has
+                         * completed by the time we get here, so check periodically
+                         * in case the event was missed.
                          */
-                        ingestLock.wait();
-                        sysLogger.log(Level.INFO, "Finished ingest modules analysis for {0} ", manifestPath);
+                        while (IngestManager.getInstance().isIngestRunning()) {
+                            ingestLock.wait(300000);  // Check every five minutes
+                        }
                         IngestJob.ProgressSnapshot jobSnapshot = ingestJob.getSnapshot();
                         IngestJob.ProgressSnapshot.DataSourceProcessingSnapshot snapshot = jobSnapshot.getDataSourceProcessingSnapshot();
                         AutoIngestJobLogger nestedJobLogger = new AutoIngestJobLogger(manifestPath, snapshot.getDataSource(), caseDirectoryPath);