PostgresDurableStateStore
이 콘텐츠는 아직 번역되지 않았습니다.
Defined in: src/persistence/durable-state-stores/PostgresDurableStateStore.ts:45
DurableStateStore backed by PostgreSQL (pg) — the first SQL-based
durable-state store (SQLite / Cassandra ship journal + snapshot only).
One row per persistence_id, rewritten in place. Optimistic
concurrency via the revision column:
expectedRevision === 0→INSERT … ON CONFLICT DO NOTHING; zero rows affected means the row already exists → conflict.expectedRevision > 0→UPDATE … WHERE revision = expected; zero rows affected means the stored revision diverged → conflict.
On conflict the current revision is read back and reported in the
DurableStateConcurrencyError. PersistenceOptions are ignored
(JSON-text payload, like the other SQL stores).
Implements
Section titled “Implements”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new PostgresDurableStateStore(
options?):PostgresDurableStateStore
Defined in: src/persistence/durable-state-stores/PostgresDurableStateStore.ts:54
Parameters
Section titled “Parameters”options?
Section titled “options?”PostgresDurableStateStoreOptions = {}
Returns
Section titled “Returns”PostgresDurableStateStore
Methods
Section titled “Methods”close()
Section titled “close()”close():
Promise<void>
Defined in: src/persistence/durable-state-stores/PostgresDurableStateStore.ts:126
Returns
Section titled “Returns”Promise<void>
delete()
Section titled “delete()”delete(
persistenceId):Promise<void>
Defined in: src/persistence/durable-state-stores/PostgresDurableStateStore.ts:121
Remove the record entirely. Idempotent.
Parameters
Section titled “Parameters”persistenceId
Section titled “persistenceId”string
Returns
Section titled “Returns”Promise<void>
Implementation of
Section titled “Implementation of”load()
Section titled “load()”load<
S>(persistenceId,_options?):Promise<Option<DurableStateRecord<S>>>
Defined in: src/persistence/durable-state-stores/PostgresDurableStateStore.ts:105
Load the latest record for persistenceId, or None if none exists.
options.encryption is required when client-side encryption was
used at write time.
Type Parameters
Section titled “Type Parameters”S
Parameters
Section titled “Parameters”persistenceId
Section titled “persistenceId”string
_options?
Section titled “_options?”PersistenceOptions
Returns
Section titled “Returns”Promise<Option<DurableStateRecord<S>>>
Implementation of
Section titled “Implementation of”upsert()
Section titled “upsert()”upsert<
S>(persistenceId,expectedRevision,state,_options?):Promise<DurableStateRecord<S>>
Defined in: src/persistence/durable-state-stores/PostgresDurableStateStore.ts:60
Upsert the state for persistenceId. expectedRevision must match the
current stored revision (0 when no record exists yet). Throws
DurableStateConcurrencyError on conflict. Optional options
carry per-call preferences from the caller (e.g. compression /
encryption set on the actor); stores that cannot honour them
silently ignore the field.
Type Parameters
Section titled “Type Parameters”S
Parameters
Section titled “Parameters”persistenceId
Section titled “persistenceId”string
expectedRevision
Section titled “expectedRevision”number
S
_options?
Section titled “_options?”PersistenceOptions
Returns
Section titled “Returns”Promise<DurableStateRecord<S>>