class JournalSequenceActor extends Actor with ActorLogging with Timers
To support the EventsByTag query, this actor keeps track of which rows are visible in the database. This is required to guarantee the EventByTag does not skip any rows in case rows with a higher (ordering) id are visible in the database before rows with a lower (ordering) id.
- Alphabetic
- By Inheritance
- JournalSequenceActor
- Timers
- ActorLogging
- Actor
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new JournalSequenceActor(readJournalDao: ReadJournalDao, config: JournalSequenceRetrievalConfig)(implicit materializer: Materializer)
Type Members
- type Receive = PartialFunction[Any, Unit]
- Definition Classes
- Actor
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def aroundPostRestart(reason: Throwable): Unit
- Attributes
- protected[pekko]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- def aroundPostStop(): Unit
- Attributes
- protected[pekko]
- Definition Classes
- Timers → Actor
- def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit
- Attributes
- protected[pekko]
- Definition Classes
- Timers → Actor
- def aroundPreStart(): Unit
- Attributes
- protected[pekko]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- def aroundReceive(receive: actor.Actor.Receive, msg: Any): Unit
- Attributes
- protected[pekko]
- Definition Classes
- Timers → Actor
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- implicit val context: ActorContext
- Definition Classes
- Actor
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def findGaps(elements: Seq[OrderingId], currentMaxOrdering: OrderingId, missingByCounter: Map[Int, MissingElements[OrderingId]], moduloCounter: Int): Unit
This method that implements the "find gaps" algo.
This method that implements the "find gaps" algo. It's the meat and main purpose of this actor.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def log: LoggingAdapter
- Definition Classes
- ActorLogging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def postRestart(reason: Throwable): Unit
- Definition Classes
- Actor
- Annotations
- @throws(classOf[java.lang.Exception])
- def postStop(): Unit
- Definition Classes
- Actor
- Annotations
- @throws(classOf[java.lang.Exception])
- def preRestart(reason: Throwable, message: Option[Any]): Unit
- Definition Classes
- Actor
- Annotations
- @throws(classOf[java.lang.Exception])
- def preStart(): Unit
- Definition Classes
- JournalSequenceActor → Actor
- def receive(currentMaxOrdering: OrderingId, missingByCounter: Map[Int, MissingElements[OrderingId]], moduloCounter: Int, previousDelay: FiniteDuration = queryDelay): Receive
- currentMaxOrdering
The highest ordering value for which it is known that no missing elements exist
- missingByCounter
A map with missing orderingIds. The key of the map is the count at which the missing elements can be assumed to be "skipped ids" (they are no longer assumed missing).
- moduloCounter
A counter which is incremented every time a new query have been executed, modulo
maxTries
- previousDelay
The last used delay (may change in case failures occur)
- def receive: Receive
- Definition Classes
- JournalSequenceActor → Actor
- def scheduleQuery(delay: FiniteDuration): Unit
- implicit final val self: ActorRef
- Definition Classes
- Actor
- final def sender(): ActorRef
- Definition Classes
- Actor
- def supervisorStrategy: SupervisorStrategy
- Definition Classes
- Actor
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def timers: TimerScheduler
- Definition Classes
- Timers
- def toString(): String
- Definition Classes
- AnyRef → Any
- def unhandled(message: Any): Unit
- Definition Classes
- Actor
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()