Akka - reenviando a mensagem “quebrando”

No oficialakka 2.0.4 docs diz:

Uma reinicialização de ator substitui apenas o objeto real do ator; o conteúdo da caixa de correio não é afetado pela reinicialização, portanto, o processamento de mensagens será retomado depois que o gancho postRestart for retornado. A mensagem que acionou a exceção não será recebida novamente. Qualquer mensagem enviada a um ator enquanto ele está sendo reiniciado será enfileirada para sua caixa de correio como de costume.

Digamos que eu tenha uma mensagem que fez meu ator reiniciar. Não está mais na caixa de correio, por isso não será processado pelo ator que ocupará seu lugar. Se eu quiser que essa mensagem seja processada pelo ator de qualquer maneira (supondo que a ordem não importe nesse caso), seria uma má idéia para o ator enviar a mensagem para si mesmo no reinício?

Algum (pseudo) código para mostrar o que quero dizer:

class ResendingActor extends Actor {
  var curMessage: Option[MyMessage] = None
  def receive = {
    case MyMessage(x) => {
      curMessage = Some(MyMessage(x))
      /* processing */
      curMessage = None
    }
  }
  override def preRestart(reason: Throwable, message: Option[Any]) {
    curMessage match {
      case Some(x) => self ! x
      case None => ;
    }
  }
}

Dessa forma, a mensagem que não foi processada pelo ator antes de ser reiniciada é enviada ao final da fila para o novo ator.

Então minha pergunta é: Existe alguma razão pela qual eu não deveria estar fazendo isso?

A única coisa em que consigo pensar é que, se por algum motivo a mensagem estiver malformada, ela nunca sairá do sistema e fará com que o ator seja reiniciado regularmente ...

questionAnswers(1)

yourAnswerToTheQuestion