override def postStop()

in src/main/scala/org/apache/pekko/persistence/dynamodb/journal/DynamoDBJournal.scala [106:124]


  override def postStop(): Unit = dynamo.shutdown()

  private case class OpFinished(pid: String, f: Future[Done])
  private val opQueue: JMap[String, Future[Done]] = new JHMap

  override def asyncWriteMessages(messages: immutable.Seq[AtomicWrite]): Future[immutable.Seq[Try[Unit]]] = {
    val p = Promise[Done]()
    val pid = messages.head.persistenceId
    opQueue.put(pid, p.future)

    val f = writeMessages(messages)

    f.onComplete { _ =>
      self ! OpFinished(pid, p.future)
      p.success(Done)
    }(ExecutionContexts.parasitic)

    f
  }