From 049b82c897ad8e8d5e47725e8e15e8e092c2a443 Mon Sep 17 00:00:00 2001 From: Gethin James Date: Tue, 26 Jul 2016 11:26:30 +0200 Subject: [PATCH] SEARCH-97: Handles NULL state object in finally{} --- .../org/alfresco/solr/tracker/AbstractTracker.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/alfresco-solr/src/main/java/org/alfresco/solr/tracker/AbstractTracker.java b/alfresco-solr/src/main/java/org/alfresco/solr/tracker/AbstractTracker.java index eedc723c2..9857ba5f2 100644 --- a/alfresco-solr/src/main/java/org/alfresco/solr/tracker/AbstractTracker.java +++ b/alfresco-solr/src/main/java/org/alfresco/solr/tracker/AbstractTracker.java @@ -133,14 +133,14 @@ public abstract class AbstractTracker implements Tracker public void track() { if(runLock.availablePermits() == 0) { - log.info("... " + this.getClass().getSimpleName() + " for core [" + coreName + "] is already in use "+ this.getClass()); + log.info("... " + this.getClass().getSimpleName() + " " + hashCode() + " for core [" + coreName + "] is already in use "+ this.getClass()); return; } try { runLock.acquire(); - log.info("... Running " + this.getClass().getSimpleName() + " for core [" + coreName + "]."); + log.info("... Running " + this.getClass().getSimpleName() + " " + hashCode() + " for core [" + coreName + "]."); if(state == null) { @@ -191,8 +191,11 @@ public abstract class AbstractTracker implements Tracker finally { infoSrv.unregisterTrackerThread(); - state.setRunning(false); - state.setCheck(false); + if (state != null) + { + state.setRunning(false); + state.setCheck(false); + } runLock.release(); } }