* Fix javadsl and remove shard regions from ReplicatedSharding
* Simplyfy sharding API for replicated event sourcing
As the ShardRegion access has been removed then we will only initially
support Entity's with ShardingEnvelope meaning we can remove the type
param.
Also provide convenience constructors for running a replica on a role
and a replica in each DC
* Compile
* Review feedback
* feedback
* Make ShardingDirectReplication private
And provider user API to provide ReplicaId so that local messages don't
need to be forwarded to sharding to just be dropped
* Update docs to say direct replication is on my default
* Doh
* Embed akka serialization inside jackson serialization
Allows re-use of existing serializers when embedding the types in
Jackson
* Fix false dead code warning
* Move marker trait and add docs
* Remove module and document adding annotations
* Review feedback
* Tagging for replicated event sourcing
* Docs improvements
* Support for currentEventsByTag in persistence testkit and test coverage for tags in replicated
* Move active active internals into the internal package
* Renaming active active to Replicated Event Sourcing
* Rename of Active Active to Replicated Event Sourcing
* Revert changes to testkit
* Java test formatting...
* Gave up on getting apidoc to link to EventSourcedBehavior and made code snippets of it
Co-authored-by: Christopher Batey <christopher.batey@gmail.com>
And fixing the warnings for the 2.13 build, not sure why PR
validation passes for these
The write side of the JDBC plugin works now as it
persists the PR
* Add missing serializers (and rename classes because metadata is a word)
* Add test instances for journal and snapshot support
* Method to add metadata to existing snapshotmetadata
* Better error message if replicated stream does not have metadata
* Snapshot store tck support for metadata
* Docs for tck coverage of AA metadata
* Support for having multiple isolated testkit journals and corresponding read journals in persistence testkit
* Read journal selection per active-active replica
* a dedicated ReplicaId type to avoid stringly typed mismatches
* ActiveActive: Events with metadata and events by persistence id for (#29287)
* Introduce version vectors for replicated events
* Set concurrent on recovery
* Group together AA related fields in a published event
* I don't think it's worth cheating with Any and narrow just to save
one or two allocations given how many other things that are needed for
sending the messages
* 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>