SqlEventLogServerUnencrypted
SQL-backed storage for unencrypted event-log servers.
This module provides the durable Storage implementation used by EventLogServerUnencrypted when remote entries should be stored in a SQL database and streamed back to clients by store sequence. It creates dialect-specific tables for the server remote id, per-store sequence state, plaintext entries, and session authentication bindings.
Constructors
makeStorage
Added in v4.0.0
Source
Signature
declare function makeStorage(options?: {
readonly entryTablePrefix?: string;
readonly insertBatchSize?: number;
readonly remoteIdTable?: string;
}): Effect<{
readonly changes: (options: {
readonly compactors: ReadonlyMap<string, RegisteredCompactor>;
readonly startSequence: number;
readonly storeId: StoreId;
}) => Stream<RemoteEntry>;
readonly entriesAfter: (storeId: StoreId, entry: Entry) => Effect<Array<Entry>>;
readonly getId: Effect<RemoteId>;
readonly getOrCreateSessionAuthBinding: (publicKey: string, signingPublicKey: Uint8Array<ArrayBuffer>) => Effect<Uint8Array<ArrayBuffer>>;
readonly withTransaction: <A, E, R>(effect: Effect<A, E, R>) => Effect<A, E, R>;
readonly write: (storeId: StoreId, entries: readonly Array<Entry>) => Effect<readonly Array<RemoteEntry>>;
}, SqlError, Scope | SqlClient>Layers
layerStorage
Added in v4.0.0
Source
Provides unencrypted server Storage using the SQL-backed implementation.
Signature
declare function layerStorage(options?: {
readonly entryTablePrefix?: string;
readonly insertBatchSize?: number;
readonly remoteIdTable?: string;
}): Layer<Storage, SqlError, SqlClient>;
Creates unencrypted event-log server
Storagebacked by SQL.Details
The implementation creates tables for the server remote id, store sequences, entries, and session authentication bindings, then persists and streams plaintext remote entries.