Packages

final class Reconciliation extends AnyRef

For reconciling with tag_views table with the messages table. Can be used to fix data issues causes by split brains or persistence ids running in multiple locations.

Should not be run at the same time as an application.

To support running in the same system as a journal the tag writers actor would need to be shared and all the interleavings of the actor running at the same be considered.

API likely to change when a java/scaladsl is added.

Annotations
@ApiMayChange()
Source
Reconciliation.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Reconciliation
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Reconciliation(systemProvider: ClassicActorSystemProvider)
  2. new Reconciliation(systemProvider: ClassicActorSystemProvider, settings: ReconciliationSettings)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def allTags(): Source[String, NotUsed]

    Returns all the tags in the journal.

    Returns all the tags in the journal. This is not an efficient query for Cassandra so it is better to calculate tags for calls to deleteTagViewForPersistenceId another way.

    Prefer to do batches of persistence ids at a time getting the tags just for that persistence id.

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  7. def deleteTagViewForPersistenceIds(persistenceId: Set[String], tag: String): Future[Done]

    Scans the given tag and deletes all events for the provided persistence ids.

    Scans the given tag and deletes all events for the provided persistence ids. All events for a persistence id have to be deleted as not to leave gaps in the tag pid sequence numbers.

    As this has to scan the tag views table for the given tag it is more efficient to

  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  11. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. def rebuildAllPersistenceIds(): Future[Done]
  18. def rebuildTagViewForPersistenceIds(persistenceId: String): Future[Done]

    Assumes that the tag views table contains no elements for the given persistence ids Either because tag_views and tag_progress have truncated for this given persistence id or tag writing has never been enabled

  19. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  20. def tagsForPersistenceId(persistenceId: String): Future[Set[String]]

    Select all the tags for the given persistence id.

    Select all the tags for the given persistence id. This may not return tags that have just been used for the first time.

  21. def toString(): String
    Definition Classes
    AnyRef → Any
  22. def truncateTagView(): Future[Done]

    Truncate all tables and all metadata so that it can be rebuilt

  23. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped