Akka.Persistence.Sql.Common.Journal Namespace |
Class | Description | |
---|---|---|
AbstractQueryExecutor |
TBD
| |
AllPersistenceIds |
Message type containing set of all PersistenceId received from the database.
| |
BatchingSqlJournalTConnection, TCommand |
An abstract journal used by PersistentActors to read/write events to a database.
This implementation uses horizontal batching to recycle usage of the DbConnection
and to optimize writes made to a database. Batching journal is not going to acquire a new DB
connection on every request. Instead it will batch incoming requests and execute them only when
a previous operation batch has been completed. This means that requests coming from many
actors at the same time will be executed in one batch.
Maximum number of batches executed at the same time is defined by
MaxConcurrentOperations setting, while max allowed batch
size is defined by MaxBatchSize setting.
Batching journal also defines MaxBufferSize, which defines
a maximum number of all requests stored at once in memory. Once that value is surpassed, journal
will start to apply OnBufferOverflow(IJournalMessage) logic on each incoming requests, until a
buffer gets freed again. This may be used for overflow strategies, request denials or backpressure.
| |
BatchingSqlJournalSetup |
All settings that can be used by implementations of
BatchingSqlJournalTConnection, TCommand.
| |
CircuitBreakerSettings |
Settings used by CircuitBreaker used internally by
the batching journal when executing event batches.
| |
CurrentPersistenceIds |
TBD
| |
DefaultTimestampProvider |
Default implementation of timestamp provider. Returns UtcNow for any message.
| |
EventAppended |
TBD
| |
JournalBufferOverflowException |
TBD
| |
JournalEntry |
Class used for storing intermediate result of the IPersistentRepresentation
in form which is ready to be stored directly in the SQL table.
| |
PersistenceIdAdded |
TBD
| |
QueryConfiguration |
TBD
| |
ReplayedTaggedMessage |
TBD
| |
ReplayFilterSettings |
Settings used for managing filter rules during event replay.
| |
ReplayTaggedMessages |
TBD
| |
SqlJournal |
TBD
| |
SubscribeAllPersistenceIds |
Subscribe the `sender` to current and new persistenceIds.
Used by query-side. The journal will send one CurrentPersistenceIds to the
subscriber followed by PersistenceIdAdded messages when new persistenceIds
are created.
| |
SubscribePersistenceId |
Subscribe the `sender` to changes (appended events) for a specific `persistenceId`.
Used by query-side. The journal will send EventAppended messages to
the subscriber when WriteMessagesAsync(IEnumerableAtomicWrite) has been called.
| |
SubscribeTag |
Subscribe the `sender` to changes (appended events) for a specific `tag`.
Used by query-side. The journal will send TaggedEventAppended messages to
the subscriber when `asyncWriteMessages` has been called.
Events are tagged by wrapping in Tagged
via an IEventAdapter.
| |
TaggedEventAppended |
TBD
| |
WriteJournalBatch |
Class used for storing whole intermediate set of write changes to be applied within single SQL transaction.
|
Structure | Description | |
---|---|---|
EventId |
Persisted event identifier returning set of keys used to map particular instance of an event to database row id.
|
Interface | Description | |
---|---|---|
IJournalQueryExecutor |
SQL query builder used for generating queries required to perform journal's tasks.
| |
ISubscriptionCommand |
TBD
| |
ITimestampProvider |
Interface responsible for generation of timestamps for persisted messages in SQL-based journals.
|