diff options
-rw-r--r-- | container-messagebus/src/main/java/com/yahoo/messagebus/jdisc/MbusServer.java | 4 | ||||
-rw-r--r-- | container-messagebus/src/test/java/com/yahoo/messagebus/jdisc/MbusServerConformanceTest.java | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/container-messagebus/src/main/java/com/yahoo/messagebus/jdisc/MbusServer.java b/container-messagebus/src/main/java/com/yahoo/messagebus/jdisc/MbusServer.java index f8e50845bc8..a165a0b8c64 100644 --- a/container-messagebus/src/main/java/com/yahoo/messagebus/jdisc/MbusServer.java +++ b/container-messagebus/src/main/java/com/yahoo/messagebus/jdisc/MbusServer.java @@ -75,7 +75,9 @@ public final class MbusServer extends AbstractResource implements ServerProvider return; } if (state == State.STOPPED) { - dispatchErrorReply(msg, ErrorCode.SEND_QUEUE_CLOSED, "MBusServer has been closed."); + // We might need to detect requests originating from the same JVM, as they nede to fail fast + // As they are holding references to the container preventing proper shutdown. + dispatchErrorReply(msg, ErrorCode.SESSION_BUSY, "MBusServer has been closed."); return; } if (msg.getTrace().shouldTrace(6)) { diff --git a/container-messagebus/src/test/java/com/yahoo/messagebus/jdisc/MbusServerConformanceTest.java b/container-messagebus/src/test/java/com/yahoo/messagebus/jdisc/MbusServerConformanceTest.java index 2bdc15002ad..0c387456cf3 100644 --- a/container-messagebus/src/test/java/com/yahoo/messagebus/jdisc/MbusServerConformanceTest.java +++ b/container-messagebus/src/test/java/com/yahoo/messagebus/jdisc/MbusServerConformanceTest.java @@ -51,7 +51,7 @@ public class MbusServerConformanceTest extends ServerProviderConformanceTest { @Test public void testContainerNotReadyException() throws Throwable { new TestRunner().setRequestTimeout(100, TimeUnit.MILLISECONDS) - .expectError(is(SEND_QUEUE_CLOSED)) + .expectError(is(SESSION_BUSY)) .executeAndClose(); } |