You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2015/08/11 10:32:20 UTC
svn commit: r1695226 - in /qpid/java/trunk/broker-core/src:
main/java/org/apache/qpid/server/logging/
test/java/org/apache/qpid/server/logging/
Author: orudyy
Date: Tue Aug 11 08:32:20 2015
New Revision: 1695226
URL: http://svn.apache.org/r1695226
Log:
QPID-6687: Fix NPE on stopping logging for Broker and VirtualHost file loggers in ERRORED state
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/BrokerFileLoggerImpl.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/VirtualHostFileLoggerImpl.java
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/BrokerFileLoggerTest.java
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/VirtualHostLoggerTest.java
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/BrokerFileLoggerImpl.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/BrokerFileLoggerImpl.java?rev=1695226&r1=1695225&r2=1695226&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/BrokerFileLoggerImpl.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/BrokerFileLoggerImpl.java Tue Aug 11 08:32:20 2015
@@ -192,7 +192,10 @@ public class BrokerFileLoggerImpl extend
public void stopLogging()
{
super.stopLogging();
- _rolledPolicyExecutor.shutdown();
+ if (_rolledPolicyExecutor != null)
+ {
+ _rolledPolicyExecutor.shutdown();
+ }
}
@Override
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/VirtualHostFileLoggerImpl.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/VirtualHostFileLoggerImpl.java?rev=1695226&r1=1695225&r2=1695226&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/VirtualHostFileLoggerImpl.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/logging/VirtualHostFileLoggerImpl.java Tue Aug 11 08:32:20 2015
@@ -182,7 +182,10 @@ public class VirtualHostFileLoggerImpl e
public void stopLogging()
{
super.stopLogging();
- _rolledPolicyExecutor.shutdown();
+ if (_rolledPolicyExecutor != null)
+ {
+ _rolledPolicyExecutor.shutdown();
+ }
}
@Override
Modified: qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/BrokerFileLoggerTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/BrokerFileLoggerTest.java?rev=1695226&r1=1695225&r2=1695226&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/BrokerFileLoggerTest.java (original)
+++ qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/BrokerFileLoggerTest.java Tue Aug 11 08:32:20 2015
@@ -25,8 +25,8 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import java.io.File;
-import java.util.Collection;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
@@ -48,6 +48,7 @@ public class BrokerFileLoggerTest extend
private File _baseFolder;
private File _logFile;
private Broker _broker;
+ private BrokerFileLogger<?> _logger;
@Override
public void setUp() throws Exception
@@ -87,7 +88,11 @@ public class BrokerFileLoggerTest extend
{
try
{
- _broker.close();
+ if (_logger != null)
+ {
+ _logger.close();
+ _logger.stopLogging();
+ }
_taskExecutor.stopImmediately();
if (_baseFolder != null && _baseFolder.exists())
{
@@ -102,6 +107,14 @@ public class BrokerFileLoggerTest extend
public void testGetLogFilesOnResolutionErrors()
{
+ _logger = createLoggerInErroredState();
+
+ List<LogFileDetails> logFileDetails = _logger.getLogFiles();
+ assertTrue("File details should be empty", logFileDetails.isEmpty());
+ }
+
+ private BrokerFileLogger createLoggerInErroredState()
+ {
Map<String, Object> attributes = new HashMap<>();
attributes.put(BrokerLogger.NAME, getTestName());
attributes.put(ConfiguredObject.TYPE, BrokerFileLogger.TYPE);
@@ -112,9 +125,7 @@ public class BrokerFileLoggerTest extend
logger.open();
assertEquals("Unexpected state", State.ERRORED, logger.getState());
-
- Collection<LogFileDetails> logFileDetails = logger.getLogFiles();
- assertTrue("File details should be empty", logFileDetails.isEmpty());
+ return logger;
}
}
Modified: qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/VirtualHostLoggerTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/VirtualHostLoggerTest.java?rev=1695226&r1=1695225&r2=1695226&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/VirtualHostLoggerTest.java (original)
+++ qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/logging/VirtualHostLoggerTest.java Tue Aug 11 08:32:20 2015
@@ -205,6 +205,20 @@ public class VirtualHostLoggerTest exte
public void testGetLogFilesOnResolutionErrors()
{
+ VirtualHostFileLogger logger = createErrorredLogger();
+
+ Collection<LogFileDetails> logFileDetails = logger.getLogFiles();
+ assertTrue("File details should be empty", logFileDetails.isEmpty());
+ }
+
+ public void testStopLoggingLoggerInErroredState()
+ {
+ VirtualHostFileLogger logger = createErrorredLogger();
+ logger.stopLogging();
+ }
+
+ private VirtualHostFileLogger createErrorredLogger()
+ {
Map<String, Object> attributes = new HashMap<>();
attributes.put(VirtualHostLogger.NAME, getTestName());
attributes.put(ConfiguredObject.TYPE, VirtualHostFileLogger.TYPE);
@@ -215,9 +229,7 @@ public class VirtualHostLoggerTest exte
logger.open();
assertEquals("Unexpected state", State.ERRORED, logger.getState());
-
- Collection<LogFileDetails> logFileDetails = logger.getLogFiles();
- assertTrue("File details should be empty", logFileDetails.isEmpty());
+ return logger;
}
private VirtualHostLogger createVirtualHostLogger()
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org