mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-17 18:17:43 +00:00
Merge pull request #502 from bcarrier/keyword_search_exception
Keyword search exception
This commit is contained in:
commit
60f3bf260c
@ -66,9 +66,9 @@ class Installer extends ModuleInstall {
|
|||||||
int serverStopPort = server.getCurrentSolrStopPort();
|
int serverStopPort = server.getCurrentSolrStopPort();
|
||||||
logger.log(Level.SEVERE, "There's already a server running on "
|
logger.log(Level.SEVERE, "There's already a server running on "
|
||||||
+ serverPort + " port that can't be shutdown.");
|
+ serverPort + " port that can't be shutdown.");
|
||||||
if (!Server.available(serverPort)) {
|
if (!Server.isPortAvailable(serverPort)) {
|
||||||
reportPortError(serverPort);
|
reportPortError(serverPort);
|
||||||
} else if (!Server.available(serverStopPort)) {
|
} else if (!Server.isPortAvailable(serverStopPort)) {
|
||||||
reportStopPortError(serverStopPort);
|
reportStopPortError(serverStopPort);
|
||||||
} else {
|
} else {
|
||||||
//some other reason
|
//some other reason
|
||||||
@ -95,7 +95,7 @@ class Installer extends ModuleInstall {
|
|||||||
//TODO move some of this logic to Server class
|
//TODO move some of this logic to Server class
|
||||||
for (int i = 0; i <= 3; i++) {
|
for (int i = 0; i <= 3; i++) {
|
||||||
logger.log(Level.INFO, "Checking if port available.");
|
logger.log(Level.INFO, "Checking if port available.");
|
||||||
if (Server.available(server.getCurrentSolrServerPort())) {
|
if (Server.isPortAvailable(server.getCurrentSolrServerPort())) {
|
||||||
logger.log(Level.INFO, "Port available, trying to start server.");
|
logger.log(Level.INFO, "Port available, trying to start server.");
|
||||||
server.start();
|
server.start();
|
||||||
break;
|
break;
|
||||||
@ -165,9 +165,9 @@ class Installer extends ModuleInstall {
|
|||||||
//check if port is taken or some other reason
|
//check if port is taken or some other reason
|
||||||
int serverPort = server.getCurrentSolrServerPort();
|
int serverPort = server.getCurrentSolrServerPort();
|
||||||
int serverStopPort = server.getCurrentSolrStopPort();
|
int serverStopPort = server.getCurrentSolrStopPort();
|
||||||
if (!Server.available(serverPort)) {
|
if (!Server.isPortAvailable(serverPort)) {
|
||||||
reportPortError(serverPort);
|
reportPortError(serverPort);
|
||||||
} else if (!Server.available(serverStopPort)) {
|
} else if (!Server.isPortAvailable(serverStopPort)) {
|
||||||
reportStopPortError(serverStopPort);
|
reportStopPortError(serverStopPort);
|
||||||
} else {
|
} else {
|
||||||
//some other reason
|
//some other reason
|
||||||
|
@ -44,6 +44,7 @@ import org.netbeans.api.progress.aggregate.AggregateProgressFactory;
|
|||||||
import org.netbeans.api.progress.aggregate.AggregateProgressHandle;
|
import org.netbeans.api.progress.aggregate.AggregateProgressHandle;
|
||||||
import org.netbeans.api.progress.aggregate.ProgressContributor;
|
import org.netbeans.api.progress.aggregate.ProgressContributor;
|
||||||
import org.openide.util.Cancellable;
|
import org.openide.util.Cancellable;
|
||||||
|
import org.openide.util.Exceptions;
|
||||||
import org.sleuthkit.autopsy.casemodule.Case;
|
import org.sleuthkit.autopsy.casemodule.Case;
|
||||||
import org.sleuthkit.autopsy.coreutils.EscapeUtil;
|
import org.sleuthkit.autopsy.coreutils.EscapeUtil;
|
||||||
import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
|
import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
|
||||||
@ -361,8 +362,7 @@ public final class KeywordSearchIngestModule extends IngestModuleAbstractFile {
|
|||||||
logger.log(Level.SEVERE, msg);
|
logger.log(Level.SEVERE, msg);
|
||||||
String details = NbBundle.getMessage(this.getClass(), "KeywordSearchIngestModule.init.tryStopSolrMsg", msg);
|
String details = NbBundle.getMessage(this.getClass(), "KeywordSearchIngestModule.init.tryStopSolrMsg", msg);
|
||||||
services.postMessage(IngestMessage.createErrorMessage(++messageID, instance, msg, details));
|
services.postMessage(IngestMessage.createErrorMessage(++messageID, instance, msg, details));
|
||||||
return;
|
throw new IngestModuleException(msg);
|
||||||
|
|
||||||
}
|
}
|
||||||
} catch (KeywordSearchModuleException ex) {
|
} catch (KeywordSearchModuleException ex) {
|
||||||
logger.log(Level.WARNING, "Error checking if Solr server is running while initializing ingest", ex);
|
logger.log(Level.WARNING, "Error checking if Solr server is running while initializing ingest", ex);
|
||||||
@ -370,9 +370,15 @@ public final class KeywordSearchIngestModule extends IngestModuleAbstractFile {
|
|||||||
String msg = NbBundle.getMessage(this.getClass(), "KeywordSearchIngestModule.init.badInitMsg");
|
String msg = NbBundle.getMessage(this.getClass(), "KeywordSearchIngestModule.init.badInitMsg");
|
||||||
String details = NbBundle.getMessage(this.getClass(), "KeywordSearchIngestModule.init.tryStopSolrMsg", msg);
|
String details = NbBundle.getMessage(this.getClass(), "KeywordSearchIngestModule.init.tryStopSolrMsg", msg);
|
||||||
services.postMessage(IngestMessage.createErrorMessage(++messageID, instance, msg, details));
|
services.postMessage(IngestMessage.createErrorMessage(++messageID, instance, msg, details));
|
||||||
return;
|
throw new IngestModuleException(msg);
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
// make an actual query to verify that server is responding
|
||||||
|
// we had cases where getStatus was OK, but the connection resulted in a 404
|
||||||
|
server.queryNumIndexedDocuments();
|
||||||
|
} catch (KeywordSearchModuleException | NoOpenCoreException ex) {
|
||||||
|
throw new IngestModuleException("Error connecting to SOLR server: " + ex.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//initialize extractors
|
//initialize extractors
|
||||||
stringExtractor = new AbstractFileStringExtract();
|
stringExtractor = new AbstractFileStringExtract();
|
||||||
@ -415,7 +421,7 @@ public final class KeywordSearchIngestModule extends IngestModuleAbstractFile {
|
|||||||
curDataSourceIds = new HashSet<Long>();
|
curDataSourceIds = new HashSet<Long>();
|
||||||
|
|
||||||
indexer = new Indexer();
|
indexer = new Indexer();
|
||||||
|
|
||||||
final int updateIntervalMs = KeywordSearchSettings.getUpdateFrequency().getTime() * 60 * 1000;
|
final int updateIntervalMs = KeywordSearchSettings.getUpdateFrequency().getTime() * 60 * 1000;
|
||||||
logger.log(Level.INFO, "Using commit interval (ms): " + updateIntervalMs);
|
logger.log(Level.INFO, "Using commit interval (ms): " + updateIntervalMs);
|
||||||
logger.log(Level.INFO, "Using searcher interval (ms): " + updateIntervalMs);
|
logger.log(Level.INFO, "Using searcher interval (ms): " + updateIntervalMs);
|
||||||
|
@ -350,7 +350,7 @@ public class Server {
|
|||||||
*/
|
*/
|
||||||
void start() throws KeywordSearchModuleException, SolrServerNoPortException {
|
void start() throws KeywordSearchModuleException, SolrServerNoPortException {
|
||||||
logger.log(Level.INFO, "Starting Solr server from: " + solrFolder.getAbsolutePath());
|
logger.log(Level.INFO, "Starting Solr server from: " + solrFolder.getAbsolutePath());
|
||||||
if (available(currentSolrServerPort)) {
|
if (isPortAvailable(currentSolrServerPort)) {
|
||||||
logger.log(Level.INFO, "Port [" + currentSolrServerPort + "] available, starting Solr");
|
logger.log(Level.INFO, "Port [" + currentSolrServerPort + "] available, starting Solr");
|
||||||
try {
|
try {
|
||||||
final String MAX_SOLR_MEM_MB_PAR = "-Xmx" + Integer.toString(MAX_SOLR_MEM_MB) + "m";
|
final String MAX_SOLR_MEM_MB_PAR = "-Xmx" + Integer.toString(MAX_SOLR_MEM_MB) + "m";
|
||||||
@ -419,7 +419,7 @@ public class Server {
|
|||||||
*
|
*
|
||||||
* @param port the port to check for availability
|
* @param port the port to check for availability
|
||||||
*/
|
*/
|
||||||
static boolean available(int port) {
|
static boolean isPortAvailable(int port) {
|
||||||
ServerSocket ss = null;
|
ServerSocket ss = null;
|
||||||
try {
|
try {
|
||||||
|
|
||||||
@ -524,6 +524,7 @@ public class Server {
|
|||||||
|
|
||||||
//TODO handle timeout in cases when some other type of server on that port
|
//TODO handle timeout in cases when some other type of server on that port
|
||||||
CoreAdminRequest.getStatus(null, solrServer);
|
CoreAdminRequest.getStatus(null, solrServer);
|
||||||
|
|
||||||
logger.log(Level.INFO, "Solr server is running");
|
logger.log(Level.INFO, "Solr server is running");
|
||||||
} catch (SolrServerException ex) {
|
} catch (SolrServerException ex) {
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user