diff --git a/akka-actor-tests/src/test/scala/akka/actor/ActorWithBoundedStashSpec.scala b/akka-actor-tests/src/test/scala/akka/actor/ActorWithBoundedStashSpec.scala index dead255d7c..7b0ad46e34 100644 --- a/akka-actor-tests/src/test/scala/akka/actor/ActorWithBoundedStashSpec.scala +++ b/akka-actor-tests/src/test/scala/akka/actor/ActorWithBoundedStashSpec.scala @@ -20,7 +20,6 @@ object ActorWithBoundedStashSpec { stash() sender ! "OK" case "world" ⇒ - self ! "world" try { unstashAll() } catch { @@ -60,7 +59,7 @@ object ActorWithBoundedStashSpec { """) // bounded deque-based mailbox with capacity 10 - class Bounded(config: Config) extends BoundedDequeBasedMailbox(10, 10 seconds) + class Bounded(config: Config) extends BoundedDequeBasedMailbox(10, 5 seconds) } @@ -80,7 +79,7 @@ class ActorWithBoundedStashSpec extends AkkaSpec(ActorWithBoundedStashSpec.testC ActorWithBoundedStashSpec.expectedException = new TestLatch val stasher = system.actorOf(Props(new StashingActor)) // fill up stash - val futures = for (_ ← 1 to 10) yield { stasher ? "hello" } + val futures = for (_ ← 1 to 11) yield { stasher ? "hello" } futures foreach { Await.ready(_, 10 seconds) } // cause unstashAll with capacity violation diff --git a/akka-actor/src/main/scala/akka/actor/Stash.scala b/akka-actor/src/main/scala/akka/actor/Stash.scala index a6a78ad466..5c10f1d851 100644 --- a/akka-actor/src/main/scala/akka/actor/Stash.scala +++ b/akka-actor/src/main/scala/akka/actor/Stash.scala @@ -98,7 +98,7 @@ An (unbounded) deque-based mailbox can be configured as follows: */ def unstashAll(): Unit = { try { - mailbox.enqueueAllFirst(self, theStash.reverseIterator, theStash.size) + for (msg ← theStash.reverseIterator) mailbox.enqueueFirst(self, msg) } finally { theStash = Vector.empty[Envelope] } diff --git a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala index 513e1b83bb..c5b7064ddb 100644 --- a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala +++ b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala @@ -335,7 +335,6 @@ trait BoundedMessageQueueSemantics extends QueueBasedMessageQueue { trait DequeBasedMessageQueue extends QueueBasedMessageQueue { def queue: Deque[Envelope] def enqueueFirst(receiver: ActorRef, handle: Envelope): Unit - def enqueueAllFirst(receiver: ActorRef, handleIterator: Iterator[Envelope], size: Int): Unit } trait UnboundedDequeBasedMessageQueueSemantics extends DequeBasedMessageQueue { @@ -343,9 +342,6 @@ trait UnboundedDequeBasedMessageQueueSemantics extends DequeBasedMessageQueue { final def enqueueFirst(receiver: ActorRef, handle: Envelope): Unit = queue addFirst handle - final def enqueueAllFirst(receiver: ActorRef, handleIterator: Iterator[Envelope], size: Int): Unit = - handleIterator foreach { enqueueFirst(receiver, _) } - final def dequeue(): Envelope = queue.poll() } @@ -367,11 +363,6 @@ trait BoundedDequeBasedMessageQueueSemantics extends DequeBasedMessageQueue { } else queue putFirst handle - final def enqueueAllFirst(receiver: ActorRef, handleIterator: Iterator[Envelope], size: Int): Unit = - if (queue.asInstanceOf[BlockingQueue[Envelope]].remainingCapacity >= size) - handleIterator foreach { enqueueFirst(receiver, _) } - else throw new MessageQueueAppendFailedException("Couldn't enqueue stash to " + receiver) - final def dequeue(): Envelope = queue.poll() }