This is an automated email from the ASF dual-hosted git repository.

bdoyle pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk.git


The following commit(s) were added to refs/heads/master by this push:
     new cb3b64f84 Send a queue removed message to the queue manager (#5391)
cb3b64f84 is described below

commit cb3b64f84f64305cf680faaa14f2cd13bdb56589
Author: Dominic Kim <[email protected]>
AuthorDate: Wed Apr 5 02:07:13 2023 +0900

    Send a queue removed message to the queue manager (#5391)
    
    * Send a queue removed message to the queue manager when cleaning up the 
actor and data
    
    * Add one more missing part
    
    * Fix test cases
---
 .../apache/openwhisk/core/scheduler/queue/MemoryQueue.scala |  4 ++++
 .../core/scheduler/queue/test/MemoryQueueTests.scala        | 13 ++++---------
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git 
a/core/scheduler/src/main/scala/org/apache/openwhisk/core/scheduler/queue/MemoryQueue.scala
 
b/core/scheduler/src/main/scala/org/apache/openwhisk/core/scheduler/queue/MemoryQueue.scala
index bb8a1b572..c3e1ee219 100644
--- 
a/core/scheduler/src/main/scala/org/apache/openwhisk/core/scheduler/queue/MemoryQueue.scala
+++ 
b/core/scheduler/src/main/scala/org/apache/openwhisk/core/scheduler/queue/MemoryQueue.scala
@@ -699,6 +699,8 @@ class MemoryQueue(private val etcdClient: EtcdClient,
     cleanUpWatcher()
     cleanUpData()
 
+    context.parent ! queueRemovedMsg
+
     goto(Removed) using NoData()
   }
 
@@ -706,6 +708,8 @@ class MemoryQueue(private val etcdClient: EtcdClient,
     cleanUpActors(data)
     cleanUpData()
 
+    context.parent ! queueRemovedMsg
+
     goto(Removed) using NoData()
   }
 
diff --git 
a/tests/src/test/scala/org/apache/openwhisk/core/scheduler/queue/test/MemoryQueueTests.scala
 
b/tests/src/test/scala/org/apache/openwhisk/core/scheduler/queue/test/MemoryQueueTests.scala
index c2c5ae340..f9ff81115 100644
--- 
a/tests/src/test/scala/org/apache/openwhisk/core/scheduler/queue/test/MemoryQueueTests.scala
+++ 
b/tests/src/test/scala/org/apache/openwhisk/core/scheduler/queue/test/MemoryQueueTests.scala
@@ -654,13 +654,14 @@ class MemoryQueueTests
     fsm ! StateTimeout
     expectMsg(Transition(fsm, Idle, Removed))
     queueRef.queue.length shouldBe 0
+    parent.expectMsg(queueRemovedMsg)
+
     fsm ! message
 
     // queue is timed out again in the Removed state.
     parent.expectMsg(message)
 
     fsm ! StateTimeout
-    parent.expectMsg(queueRemovedMsg)
 
     expectNoMessage()
 
@@ -1103,10 +1104,7 @@ class MemoryQueueTests
     fsm ! message
     probe.expectMsg(ActivationResponse.developerError("nonExecutbleAction 
error"))
 
-    parent.expectMsgAnyOf(
-      2 * queueConfig.flushGrace + 5.seconds,
-      QueueRemoved(testInvocationNamespace, fqn.toDocId.asDocInfo(action.rev), 
Some(leaderKey)),
-      Transition(fsm, Flushing, Removed))
+    parent.expectMsgAllOf(2 * queueConfig.flushGrace + 5.seconds, 
queueRemovedMsg, Transition(fsm, Flushing, Removed))
 
     fsm ! StateTimeout
     parent.expectMsg(queueRemovedMsg)
@@ -1409,10 +1407,7 @@ class MemoryQueueTests
 
     val duration = FiniteDuration(queueConfig.maxBlackboxRetentionMs, 
MILLISECONDS) + queueConfig.flushGrace
     probe.expectMsg(duration, ActivationResponse.whiskError("no available 
invokers"))
-    parent.expectMsgAnyOf(
-      duration,
-      QueueRemoved(testInvocationNamespace, fqn.toDocId.asDocInfo(action.rev), 
Some(leaderKey)),
-      Transition(fsm, Flushing, Removed))
+    parent.expectMsgAllOf(duration, queueRemovedMsg, Transition(fsm, Flushing, 
Removed))
     fsm ! QueueRemovedCompleted
     parent.expectTerminated(fsm)
 

Reply via email to