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 extends Actor with EventLogSPI with Stash with ActorLogging

    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.

  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 extends AnyRef

    Permalink

    Event log storage provider interface (SPI).

  8. trait EventLogSettings extends AnyRef

    Permalink

    Event log settings to be implemented by storage providers.

Value Members

  1. object EventLog

    Permalink
  2. package cassandra

    Permalink
  3. package leveldb

    Permalink

Ungrouped