ProjectionEngineConfig

zio.blocks.projection.ProjectionEngineConfig
See theProjectionEngineConfig companion object
final case class ProjectionEngineConfig(batchSize: Int = ..., batchTimeout: Duration = ..., ringCapacity: Int = ..., rebuildParallelism: Int = ..., lazyRebuild: Boolean = ..., evolution: SchemaEvolutionConfig = ...)

Settings for a ProjectionEngine.

Value parameters

batchSize

the most events read together while catching up on history. Each event of a batch is still applied, and its position saved, on its own.

batchTimeout

how long catch-up waits for a batch to fill before it applies what it has

evolution

settings for SchemaEvolution. The engine does not read them: it always tries the migration shortcut when a migration is registered for the projection, and uses its own lazyRebuild and rebuildParallelism.

lazyRebuild

if true, a projection whose schema changed is only marked as pending at startup, and rebuilt on its first query or by the background pre-warm. If false, the default, it is rebuilt during start.

rebuildParallelism

the size of the groups in which the background pre-warm rebuilds pending projections when lazyRebuild is on. The groups, and the projections in them, are rebuilt one after the other.

ringCapacity

the capacity of the bounded hub that carries live events, where a hub is created from the config, as TestEngine does. An event store made with SQLiteEventStore.make has its own hub of 4,096 events.

Attributes

Companion
object
Source
ProjectionEngine.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

def productElementNames: Iterator[String]

An iterator over the names of all the elements of this product.

An iterator over the names of all the elements of this product.

Attributes

Inherited from:
Product
Source
Product.scala
def productIterator: Iterator[Any]

An iterator over all the elements of this product.

An iterator over all the elements of this product.

Attributes

Returns

in the default implementation, an Iterator[Any]

Inherited from:
Product
Source
Product.scala