Speculative replication - step 1 (#29289)

* Step 1: general event-publishing-to-topic feature

* Step 2: an actor subscribes to the topic and forwards events to the sharded replicas

* Another half piece of the puzzle, receive the PublishedEvent in the ESB internals

* Stash published events while replaying rather than drop

* Publish on the event stream instead of a topic

* Active active actor receiving a published event

* Some smaller changes

 * Public API for published event
 * Better name for the sharding component

* Naive test for the Active Active Sharding Replication

* Java API for ActiveActiveShardingReplication

* Spelling

* Use ShardingEnvelope for publishing the event across sharding

* Fast forwarding filter stage

* Move test to testkit, enable the see-event-twice test (fails)

* Use persistence testkit journal

* Various smaller review feedback things

* Trying to figure out why duplicate event write test fails

* Missing unstash after processing published event

Co-authored-by: Christopher Batey <christopher.batey@gmail.com>
This commit is contained in:
Johan Andrén 2020-06-29 08:06:59 +02:00 committed by Christopher Batey
parent e98f1311f3
commit c44302bd1e
18 changed files with 709 additions and 29 deletions

View file

@ -499,7 +499,7 @@ lazy val clusterShardingTyped = akkaModule("akka-cluster-sharding-typed")
clusterSharding % "compile->compile;compile->CompileJdk9;multi-jvm->multi-jvm",
actorTestkitTyped % "test->test",
actorTypedTests % "test->test",
persistenceTyped % "test->test",
persistenceTyped % "optional->compile;test->test",
persistenceTestkit % "test->test",
remote % "compile->CompileJdk9;test->test",
remoteTests % "test->test",