basalt / events-prisma/src / PrismaOutboxStoreOptions
Interface: PrismaOutboxStoreOptions
Defined in: events-prisma/src/index.ts:105
Properties
claim?
> optional claim?: boolean
Defined in: events-prisma/src/index.ts:114
Claim pending rows before dispatching (lockedUntil / lockedBy columns), so several relays — one per replica — never deliver the same entry at once, and a failed entry's retry backoff holds across replicas. Requires the two columns from the reference schema (basalt prisma:sync, then migrate). Default false, so an existing schema without them keeps working; turn it on whenever more than one process runs the relay.
columnLimits?
> optional columnLimits?: "mysql" | ColumnLimits<{ OutboxEntry: OutboxColumn; }>
Defined in: events-prisma/src/index.ts:127
Refuse (throw ColumnLengthError) a value longer than its column instead of letting the database truncate it — on MySQL outside strict mode a cut payload is no longer valid JSON, and the relay fails on it forever. 'mysql' uses the limits of the bundled schema.mysql.prisma; pass an object for a schema of your own. Default: unchecked (PostgreSQL and SQLite store any length).
lastError is the one exception: it is diagnostic, and refusing it would stop markFailed from counting the attempt, so an over-long error is shortened on purpose (marked …[truncated]) rather than refused.