=cls #19893 Handle SaveSnapshotSuccess in PersistentShard

This commit is contained in:
Patrik Nordwall 2016-03-15 15:35:25 +01:00
parent c735403d47
commit a45959d3f7

View file

@ -14,6 +14,8 @@ import akka.persistence.PersistentActor
import akka.persistence.SnapshotOffer import akka.persistence.SnapshotOffer
import akka.actor.Actor import akka.actor.Actor
import akka.persistence.RecoveryCompleted import akka.persistence.RecoveryCompleted
import akka.persistence.SaveSnapshotFailure
import akka.persistence.SaveSnapshotSuccess
/** /**
* INTERNAL API * INTERNAL API
@ -349,6 +351,13 @@ private[akka] class PersistentShard(
log.debug("Shard recovery completed {}", shardId) log.debug("Shard recovery completed {}", shardId)
} }
override def receiveCommand: Receive = ({
case _: SaveSnapshotSuccess
log.debug("PersistentShard snapshot saved successfully")
case SaveSnapshotFailure(_, reason)
log.warning("PersistentShard snapshot failure: {}", reason.getMessage)
}: Receive).orElse(super.receiveCommand)
override def entityTerminated(ref: ActorRef): Unit = { override def entityTerminated(ref: ActorRef): Unit = {
val id = idByRef(ref) val id = idByRef(ref)
if (messageBuffers.getOrElse(id, Vector.empty).nonEmpty) { if (messageBuffers.getOrElse(id, Vector.empty).nonEmpty) {