Package

com.rbmhtechnology.eventuate

log

Permalink

package log

Visibility
  1. Public
  2. All

Type Members

  1. case class BatchReadResult(events: Seq[DurableEvent], to: Long) extends DurableEventBatch with Product with Serializable

    Permalink

    Result of an event batch-read operation.

    Result of an event batch-read operation.

    events

    Read event batch.

    to

    Last read position in the event log.

  2. class BatchingLayer extends Actor

    Permalink

    An event log wrapper that batches write commands.

    An event log wrapper that batches write commands. Batched EventsourcingProtocol.Write commands are sent as EventsourcingProtocol.WriteN batch to the wrapped event log. Batched ReplicationProtocol.ReplicationWrite commands are sent as ReplicationProtocol.ReplicationWriteN batch to the wrapped event event log.

    Batch sizes dynamically increase to a configurable limit under increasing load. The batch size limit can be configured with eventuate.log.write-batch-size. If there is no current write operation in progress, a new Write or ReplicationWrite command is served immediately (as WriteN or ReplicationWriteN batch of size 1, respectively), keeping latency at a minimum.

  3. class CircuitBreaker extends Actor

    Permalink

    A wrapper that can protect EventLog implementations from being overloaded while they are retrying to serve a write request.

    A wrapper that can protect EventLog implementations from being overloaded while they are retrying to serve a write request. If the circuit breaker is closed, it forwards all requests to the underlying event log. If it is open, it replies with a failure message to the requestor. The circuit breaker can be opened by sending it ServiceFailure messages with a retry value greater than or equal to the configuration parameter eventuate.log.circuit-breaker.open-after-retries. It can be closed again by sending it a ServiceNormal or ServiceInitialized message. These messages are usually sent by EventLog implementations and not by applications.

    See also

    EventLogSPI.write

  4. case class DeletionMetadata(toSequenceNr: Long, remoteLogIds: Set[String]) extends Product with Serializable

    Permalink

    View of a Delete request.

    View of a Delete request.

    toSequenceNr

    A marker that indicates that all event with a smaller sequence nr are not replayed any more.

    remoteLogIds

    A set of remote log ids that must have replicated events before they these events are allowed to be physically deleted locally.

  5. abstract class EventLog[A <: EventLogState] extends Actor with EventLogSPI[A] with Stash

    Permalink

    An abstract event log that handles EventsourcingProtocol and ReplicationProtocol messages and translates them to read and write operations declared on the EventLogSPI trait.

    An abstract event log that handles EventsourcingProtocol and ReplicationProtocol messages and translates them to read and write operations declared on the EventLogSPI trait. Storage providers implement an event log by implementing the EventLogSPI.

    A

    Event log state type (a subtype of EventLogState).

  6. case class EventLogClock(sequenceNr: Long = 0L, versionVector: VectorTime = VectorTime.Zero) extends Product with Serializable

    Permalink

    A clock that tracks the current sequence number and the version vector of an event log.

    A clock that tracks the current sequence number and the version vector of an event log. The version vector is the merge result of vector timestamps of all events that have been written to that event log.

  7. trait EventLogSPI[A] extends AnyRef

    Permalink

    Event log storage provider interface (SPI).

    Event log storage provider interface (SPI).

    A

    Event log state type.

  8. trait EventLogSettings extends AnyRef

    Permalink

    Event log settings to be implemented by storage providers.

  9. trait EventLogState extends AnyRef

    Permalink

    EventLog actor state that must be recovered on log actor initialization.

    EventLog actor state that must be recovered on log actor initialization. Implementations are storage provider-specific.

  10. class EventLogUnavailableException extends RuntimeException

    Permalink

    Indicates that an event log is currently unavailable for serving requests.

  11. class EventLogWriter extends AnyRef

    Permalink

    Utility for writing events to an event log.

  12. class NotificationChannel extends Actor

    Permalink

    Notifies registered replicators about source log updates.

  13. class NotificationChannelSettings extends AnyRef

    Permalink

Value Members

  1. object CircuitBreaker

    Permalink
  2. object EventLog

    Permalink
  3. object NotificationChannel

    Permalink
  4. package cassandra

    Permalink
  5. package leveldb

    Permalink

Ungrouped