akka / akka-persistence-jdbc

Asynchronously writes journal and snapshot entries to configured JDBC databases so that Akka Actors can recover state

Home Page:https://doc.akka.io/docs/akka-persistence-jdbc/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CRON build broken after merging #230

ignasi35 opened this issue · comments

(The issue may be unrelated to merging #230 )

The CRON build https://travis-ci.org/dnvriend/akka-persistence-jdbc/builds/536159790 failed both Java11 jobs with similar test failures on the akka.persistence.jdbc.query.PostgresJournalSequenceActorTest test.

No ideas.

The relevant logging:

[info] PostgresJournalSequenceActorTest:
[info] JournalSequenceActor
2019-05-23 08:38:58,899 - akka.event.slf4j.Slf4jLogger -> INFO [test-akka.actor.default-dispatcher-2] Slf4jLogger - Slf4jLogger started
2019-05-23 08:38:59,301 - akka.actor.LocalActorRef -> INFO [test-akka.actor.default-dispatcher-5] LocalActorRef - Message [akka.actor.StopChild] without sender to Actor[akka://test/user] was not delivered. [1] dead letters encountered. If this is not an expected behavior, then [Actor[akka://test/user]] may have terminated unexpectedly, This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'.
[info] - should recover normally (423 milliseconds)
2019-05-23 08:38:59,363 - akka.event.slf4j.Slf4jLogger -> INFO [test-akka.actor.default-dispatcher-5] Slf4jLogger - Slf4jLogger started
2019-05-23 08:39:24,042 - akka.actor.RepointableActorRef -> INFO [test-akka.actor.default-dispatcher-9] RepointableActorRef - Message [akka.persistence.jdbc.query.JournalSequenceActor$NewOrderingIds] from Actor[akka://test/user/$a#721164480] to Actor[akka://test/user/$a#721164480] was not delivered. [1] dead letters encountered. If this is not an expected behavior, then [Actor[akka://test/user/$a#721164480]] may have terminated unexpectedly, This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'.
[info] - should recover one million events quickly if no ids are missing *** FAILED *** (24 seconds, 661 milliseconds)
[info]   The code passed to eventually never returned normally. Attempted 397 times over 10.025609351 seconds. Last failure message: 410000 was not equal to 1000000. (JournalSequenceActorTest.scala:73)
[info]   org.scalatest.exceptions.TestFailedDueToTimeoutException:
[info]   at org.scalatest.concurrent.Eventually.tryTryAgain$1(Eventually.scala:432)
[info]   at org.scalatest.concurrent.Eventually.eventually(Eventually.scala:439)
[info]   at org.scalatest.concurrent.Eventually.eventually$(Eventually.scala:391)
[info]   at akka.persistence.jdbc.SingleActorSystemPerTestSpec.eventually(SingleActorSystemPerTestSpec.scala:30)
[info]   at akka.persistence.jdbc.query.JournalSequenceActorTest.$anonfun$new$13(JournalSequenceActorTest.scala:73)
[info]   at akka.persistence.jdbc.query.JournalSequenceActorTest.$anonfun$new$13$adapted(JournalSequenceActorTest.scala:68)
[info]   at akka.persistence.jdbc.query.JournalSequenceActorTest.withJournalSequenceActor(JournalSequenceActorTest.scala:158)
[info]   at akka.persistence.jdbc.query.JournalSequenceActorTest.$anonfun$new$9(JournalSequenceActorTest.scala:68)
[info]   at akka.persistence.jdbc.query.JournalSequenceActorTest.$anonfun$new$9$adapted(JournalSequenceActorTest.scala:56)

I think this may just be a flaky test. However it could be worthwhile to investigate why the following dead letter message occurred:

Message [akka.persistence.jdbc.query.JournalSequenceActor$NewOrderingIds] from Actor[akka://test/user/$a#721164480] to Actor[akka://test/user/$a#721164480] was not delivered

I set up the scheduled build to run with Akka 2.6.0
Let's see how it goes https://travis-ci.com/akka/akka-persistence-jdbc/builds

This is not a problem anymore.