@dbos-inc/dbos-enterprise 5.5.2-preview → 5.5.3-preview

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"conductor.d.ts","sourceRoot":"","sources":["../../../src/conductor/conductor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAGzE,OAAO,SAAS,MAAM,IAAI,CAAC;AAO3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAwCpG,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;CACrC;AAED,qBAAa,kBAAmB,YAAW,mBAAmB;;IAiB1D,QAAQ,CAAC,QAAQ,EAAE,YAAY;IAhBjC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,SAAS,GAAG,SAAS,CAAa;IAC7C,cAAc,UAAS;IACvB,YAAY,SAAS;IACrB,aAAa,SAAS;IACtB,mBAAmB,EAAE,eAAe,GAAG,SAAS,CAAa;IAC7D,gBAAgB,SAAQ;IACxB,gBAAgB,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAa;IAEzD,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAa;IAEtD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;gBAGxB,QAAQ,EAAE,YAAY,EAC/B,OAAO,EAAE,gBAAgB;IAU3B,KAAK;IAKL,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM;IAUpD,cAAc,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,eAAe;IAm1BpE,eAAe,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe;IAuBnE,YAAY;IAqGN,cAAc,CAAC,SAAS,GAAE,MAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAW5B"}
1
+ {"version":3,"file":"conductor.d.ts","sourceRoot":"","sources":["../../../src/conductor/conductor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAGzE,OAAO,SAAS,MAAM,IAAI,CAAC;AAO3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAwCpG,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;CACrC;AAED,qBAAa,kBAAmB,YAAW,mBAAmB;;IAiB1D,QAAQ,CAAC,QAAQ,EAAE,YAAY;IAhBjC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,SAAS,GAAG,SAAS,CAAa;IAC7C,cAAc,UAAS;IACvB,YAAY,SAAS;IACrB,aAAa,SAAS;IACtB,mBAAmB,EAAE,eAAe,GAAG,SAAS,CAAa;IAC7D,gBAAgB,SAAQ;IACxB,gBAAgB,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAa;IAEzD,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAa;IAEtD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;gBAGxB,QAAQ,EAAE,YAAY,EAC/B,OAAO,EAAE,gBAAgB;IAU3B,KAAK;IAKL,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM;IAUpD,cAAc,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,eAAe;IAs1BpE,eAAe,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe;IAuBnE,YAAY;IAqGN,cAAc,CAAC,SAAS,GAAE,MAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAW5B"}
@@ -402,7 +402,10 @@ class ConductorWebsocket {
402
402
  else {
403
403
  this.retentionRound = (async () => {
404
404
  try {
405
- await (0, retention_1.garbageCollect)(this.dbosExec.systemDatabase, retentionBody.gc_cutoff_epoch_ms, rowsThreshold, { batchSize: retentionBody.gc_batch_size || undefined });
405
+ await (0, retention_1.garbageCollect)(this.dbosExec.systemDatabase, retentionBody.gc_cutoff_epoch_ms, rowsThreshold, {
406
+ batchSize: retentionBody.gc_batch_size || undefined,
407
+ externalStores: this.dbosExec.externalStorage?.stores,
408
+ });
406
409
  if (retentionBody.timeout_cutoff_epoch_ms) {
407
410
  await (0, retention_1.globalTimeout)(this.dbosExec.systemDatabase, retentionBody.timeout_cutoff_epoch_ms);
408
411
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conductor.js","sourceRoot":"","sources":["../../../src/conductor/conductor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conductor.js","sourceRoot":"","sources":["../../../src/conductor/conductor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ // Copyright (c) 2026 DBOS, Inc. All rights reserved.
2
+ //
3
+ // This file is part of Transact Enterprise, proprietary software licensed under the
4
+ // DBOS Conductor Software License: https://www.dbos.dev/conductor-license
5
+ // You may not use, copy, modify, or distribute this file except as that license permits.
6
+ // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
+ // that gate it is a material breach of that license.
8
+ import type { ExternalObjectStoreOptions, ExternalStorage as ExternalStorageContract, ExternalStorageOptions } from '@dbos-inc/dbos-sdk/internal/enterprise';
9
+ import type { ExternalObjectRef, ExternalStore } from '@dbos-inc/dbos-sdk/internal/external_storage';
10
+ import { type SystemDatabase } from '@dbos-inc/dbos-sdk/internal/system_database';
11
+ export declare const REF_VERSION = 1;
12
+ export declare const COLLECT_BATCH_SIZE = 1000;
13
+ export declare function keySegment(text: string): string;
14
+ export declare class ExternalStorage implements ExternalStorageContract {
15
+ #private;
16
+ constructor(sysdb: SystemDatabase, options: ExternalStorageOptions);
17
+ get stores(): ExternalStore[];
18
+ store(value: unknown, options: ExternalObjectStoreOptions): Promise<ExternalObjectRef>;
19
+ get(ref: ExternalObjectRef): Promise<unknown>;
20
+ collect(cutoffEpochMs: number): Promise<number>;
21
+ }
22
+ export declare function collectExternalObjects(sysdb: SystemDatabase, store: ExternalStore, cutoffEpochMs: number, batchSize?: number): Promise<number>;
23
+ //# sourceMappingURL=external_storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external_storage.d.ts","sourceRoot":"","sources":["../../src/external_storage.ts"],"names":[],"mappings":";;;;;;;AAIA,OAAO,KAAK,EACV,0BAA0B,EAC1B,eAAe,IAAI,uBAAuB,EAC1C,sBAAsB,EACvB,MAAM,wCAAwC,CAAC;AAQhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAErG,OAAO,EAAe,KAAK,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAE/F,eAAO,MAAM,WAAW,IAAI,CAAC;AAO7B,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAQvC,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAuBD,qBAAa,eAAgB,YAAW,uBAAuB;;gBAOjD,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,sBAAsB;IAUlE,IAAI,MAAM,IAAI,aAAa,EAAE,CAE5B;IAqKK,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA6CtF,GAAG,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAY7C,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAOtD;AAMD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,MAAM,EACrB,SAAS,GAAE,MAA2B,GACrC,OAAO,CAAC,MAAM,CAAC,CAuEjB"}
@@ -0,0 +1,278 @@
1
+ // Copyright (c) 2026 DBOS, Inc. All rights reserved.
2
+ //
3
+ // This file is part of Transact Enterprise, proprietary software licensed under the
4
+ // DBOS Conductor Software License: https://www.dbos.dev/conductor-license
5
+ // You may not use, copy, modify, or distribute this file except as that license permits.
6
+ // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
+ // that gate it is a material breach of that license.
8
+ "use strict";
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.collectExternalObjects = exports.ExternalStorage = exports.keySegment = exports.COLLECT_BATCH_SIZE = exports.REF_VERSION = void 0;
11
+ const node_crypto_1 = require("node:crypto");
12
+ const context_1 = require("@dbos-inc/dbos-sdk/internal/context");
13
+ const error_1 = require("@dbos-inc/dbos-sdk/internal/error");
14
+ const serialization_1 = require("@dbos-inc/dbos-sdk/internal/serialization");
15
+ const system_database_1 = require("@dbos-inc/dbos-sdk/internal/system_database");
16
+ exports.REF_VERSION = 1;
17
+ const UTF8 = 'utf8';
18
+ const RAW = 'raw';
19
+ const BYTES = 'bytes';
20
+ exports.COLLECT_BATCH_SIZE = 1000;
21
+ const KEY_SEGMENT = '[A-Za-z0-9][A-Za-z0-9._=-]*';
22
+ const KEY = new RegExp(`^${KEY_SEGMENT}(/${KEY_SEGMENT})*$`);
23
+ const KEY_MAX_LENGTH = 512;
24
+ function keySegment(text) {
25
+ return encodeURIComponent(text).replace(/[!'()*.]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);
26
+ }
27
+ exports.keySegment = keySegment;
28
+ function sha256(data) {
29
+ return (0, node_crypto_1.createHash)('sha256').update(data).digest('hex');
30
+ }
31
+ function compareCodeUnits(a, b) {
32
+ return a < b ? -1 : a > b ? 1 : 0;
33
+ }
34
+ async function callStore(store, key, operation, call) {
35
+ try {
36
+ return await call();
37
+ }
38
+ catch (e) {
39
+ throw new error_1.DBOSExternalStoreError(store.storeID, key, operation, e instanceof Error ? e.message : String(e), e);
40
+ }
41
+ }
42
+ class ExternalStorage {
43
+ #sysdb;
44
+ #stores;
45
+ #serializer;
46
+ #checkCallerOwner;
47
+ constructor(sysdb, options) {
48
+ if (options.stores.length === 0) {
49
+ throw new error_1.DBOSError('ExternalStorage needs at least one store');
50
+ }
51
+ this.#sysdb = sysdb;
52
+ this.#stores = new Map(options.stores.map((store) => [store.storeID, store]));
53
+ this.#serializer = options.serializer;
54
+ this.#checkCallerOwner = options.checkCallerOwner ?? false;
55
+ }
56
+ get stores() {
57
+ return [...this.#stores.values()];
58
+ }
59
+ #storeNamed(storeID) {
60
+ if (storeID === undefined) {
61
+ if (this.#stores.size > 1) {
62
+ throw new error_1.DBOSError(`storeExternalObject must specify a storeID when there are multiple external stores: ${[...this.#stores.keys()].join(', ')}`);
63
+ }
64
+ return [...this.#stores.values()][0];
65
+ }
66
+ const store = this.#stores.get(storeID);
67
+ if (store === undefined) {
68
+ throw new error_1.DBOSExternalStoreNotConfiguredError(storeID, [...this.#stores.keys()]);
69
+ }
70
+ return store;
71
+ }
72
+ async #prepare(store, value, options) {
73
+ const { key, ownerWorkflowID } = options;
74
+ if (key !== undefined && (key.length > KEY_MAX_LENGTH || !KEY.test(key))) {
75
+ throw new error_1.DBOSError(`Invalid external object key ${JSON.stringify(key)}: use up to ${KEY_MAX_LENGTH} characters in '/'-separated segments of letters, digits, '.', '_', '=' or '-', each starting with a letter or digit`);
76
+ }
77
+ const { data, digest, serialization, encoding } = await this.#encode(value, options.serializationType);
78
+ const ownerValues = this.#sysdb.wfValues(ownerWorkflowID);
79
+ const shardKey = ownerValues.shard_key;
80
+ let objectKey = (0, node_crypto_1.randomUUID)();
81
+ if (key !== undefined) {
82
+ objectKey = `${keySegment(ownerWorkflowID)}/${key}`;
83
+ if (shardKey !== undefined) {
84
+ objectKey = `${keySegment(shardKey)}/${objectKey}`;
85
+ }
86
+ }
87
+ await this.#claim(store, objectKey, ownerWorkflowID, ownerValues);
88
+ const ref = {
89
+ version: exports.REF_VERSION,
90
+ store: store.storeID,
91
+ key: objectKey,
92
+ size: data.length,
93
+ sha256: digest,
94
+ serialization,
95
+ encoding,
96
+ };
97
+ return { data, ref };
98
+ }
99
+ async #encode(value, serializationType) {
100
+ if (value instanceof Uint8Array) {
101
+ return { data: value, digest: sha256(value), serialization: BYTES, encoding: RAW };
102
+ }
103
+ if (value instanceof ArrayBuffer || value instanceof SharedArrayBuffer || value instanceof DataView) {
104
+ throw new error_1.DBOSError(`Cannot store a ${value.constructor.name} as an external object: store a Buffer or Uint8Array view of its bytes`);
105
+ }
106
+ const { serializedValue, serialization } = await (0, serialization_1.serializeValue)(value, this.#serializer, serializationType);
107
+ if (serializedValue === null || serialization === null) {
108
+ throw new error_1.DBOSError(`Serializer ${this.#serializer.name()} produced no output for an external object`);
109
+ }
110
+ const data = Buffer.from(serializedValue, 'utf8');
111
+ return { data, digest: sha256(data), serialization, encoding: UTF8 };
112
+ }
113
+ #callerOwner() {
114
+ const workflowID = (0, context_1.getCurrentContextStore)()?.workflowId;
115
+ if (!this.#checkCallerOwner || workflowID === undefined) {
116
+ return undefined;
117
+ }
118
+ const ownerXid = (0, context_1.currentOwnerXid)(workflowID);
119
+ return ownerXid === undefined ? undefined : { workflowID, ownerXid };
120
+ }
121
+ async #claim(store, objectKey, ownerWorkflowID, ownerValues) {
122
+ const sysdb = this.#sysdb;
123
+ const table = `"${sysdb.schemaName}".external_objects`;
124
+ const shardKey = ownerValues.shard_key;
125
+ const caller = this.#callerOwner();
126
+ await (0, system_database_1.withDbRetry)(async () => {
127
+ const client = await sysdb.connect();
128
+ try {
129
+ await sysdb.inTransaction(client, async () => {
130
+ if (caller !== undefined && shardKey === undefined) {
131
+ await sysdb.checkOwner(client, caller.workflowID, caller.ownerXid);
132
+ }
133
+ for (;;) {
134
+ const values = {
135
+ ...ownerValues,
136
+ object_key: objectKey,
137
+ store_id: store.storeID,
138
+ workflow_uuid: ownerWorkflowID,
139
+ created_at: Date.now(),
140
+ };
141
+ const columns = Object.keys(values);
142
+ const { rows: inserted } = await client.query(`INSERT INTO ${table} (${columns.join(', ')})
143
+ VALUES (${columns.map((_, i) => `$${i + 1}`).join(', ')})
144
+ ON CONFLICT (${sysdb.keyConflict('store_id', 'object_key')}) DO NOTHING
145
+ RETURNING object_key`, Object.values(values));
146
+ if (inserted.length > 0) {
147
+ return;
148
+ }
149
+ const params = [Date.now(), store.storeID, objectKey];
150
+ const keyed = shardKey === undefined ? '' : ` AND ${sysdb.keyIn(undefined, [shardKey], params)}`;
151
+ const { rows: restamped } = await client.query(`UPDATE ${table} SET created_at = $1 WHERE store_id = $2 AND object_key = $3${keyed} RETURNING object_key`, params);
152
+ if (restamped.length > 0) {
153
+ return;
154
+ }
155
+ }
156
+ });
157
+ }
158
+ finally {
159
+ client.release();
160
+ }
161
+ });
162
+ if (caller !== undefined && shardKey !== undefined) {
163
+ await (0, system_database_1.withDbRetry)(() => sysdb.ownKey(caller.workflowID, undefined, async () => {
164
+ const client = await sysdb.connect();
165
+ try {
166
+ await sysdb.inTransaction(client, () => sysdb.checkOwner(client, caller.workflowID, caller.ownerXid));
167
+ }
168
+ finally {
169
+ client.release();
170
+ }
171
+ }));
172
+ }
173
+ }
174
+ async store(value, options) {
175
+ const store = this.#storeNamed(options.storeID);
176
+ const { data, ref } = await this.#prepare(store, value, options);
177
+ await callStore(store, ref.key, 'store', () => store.put(ref.key, data));
178
+ return ref;
179
+ }
180
+ #checkRef(ref) {
181
+ const store = this.#stores.get(ref.store);
182
+ if (store === undefined) {
183
+ throw new error_1.DBOSExternalStoreNotConfiguredError(ref.store, [...this.#stores.keys()]);
184
+ }
185
+ if (ref.version !== exports.REF_VERSION) {
186
+ throw new error_1.DBOSError(`Unsupported external object ref version ${ref.version}; upgrade DBOS to read it`);
187
+ }
188
+ return store;
189
+ }
190
+ async #decode(ref, data) {
191
+ if (data.length !== ref.size) {
192
+ throw new error_1.DBOSExternalObjectIntegrityError(ref.store, ref.key, `expected ${ref.size} bytes, found ${data.length}`);
193
+ }
194
+ if (sha256(data) !== ref.sha256) {
195
+ throw new error_1.DBOSExternalObjectIntegrityError(ref.store, ref.key, 'sha256 mismatch');
196
+ }
197
+ if (ref.encoding === RAW && ref.serialization === BYTES) {
198
+ return Buffer.from(data.buffer, data.byteOffset, data.byteLength);
199
+ }
200
+ if (ref.encoding !== UTF8) {
201
+ throw new error_1.DBOSError(`Unsupported external object encoding ${ref.encoding} (serialization ${ref.serialization}); ` +
202
+ 'store the object as bytes or with portable serialization to read it from TypeScript');
203
+ }
204
+ const text = Buffer.from(data.buffer, data.byteOffset, data.byteLength).toString('utf8');
205
+ return await (0, serialization_1.deserializeValue)(text, ref.serialization, this.#serializer);
206
+ }
207
+ async get(ref) {
208
+ const store = this.#checkRef(ref);
209
+ const data = await callStore(store, ref.key, 'load', () => store.get(ref.key));
210
+ if (data === undefined) {
211
+ throw new error_1.DBOSExternalObjectMissingError(ref.store, ref.key);
212
+ }
213
+ return await this.#decode(ref, data);
214
+ }
215
+ async collect(cutoffEpochMs) {
216
+ let deleted = 0;
217
+ for (const store of this.#stores.values()) {
218
+ deleted += await collectExternalObjects(this.#sysdb, store, cutoffEpochMs);
219
+ }
220
+ return deleted;
221
+ }
222
+ }
223
+ exports.ExternalStorage = ExternalStorage;
224
+ async function collectExternalObjects(sysdb, store, cutoffEpochMs, batchSize = exports.COLLECT_BATCH_SIZE) {
225
+ const schema = `"${sysdb.schemaName}"`;
226
+ const collectable = `eo.created_at < $2 AND NOT EXISTS (
227
+ SELECT 1 FROM ${schema}.workflow_status ws WHERE ${sysdb.wfJoin('ws', 'eo')})`;
228
+ const keyColumn = sysdb.keyColumn('eo');
229
+ const objectKey = sysdb.sharded ? 'eo.object_key COLLATE "C"' : 'eo.object_key';
230
+ let deleted = 0;
231
+ let after = [-1, ''];
232
+ for (;;) {
233
+ const { rows: read } = await sysdb.pool.query(`SELECT eo.created_at, eo.object_key, ${keyColumn ?? 'NULL'} AS shard_key
234
+ FROM ${schema}.external_objects eo
235
+ WHERE eo.store_id = $1 AND ${collectable}
236
+ AND (eo.created_at, ${objectKey}) > ($3::bigint, $4::text)
237
+ ORDER BY eo.created_at, ${objectKey}
238
+ LIMIT $5`, [store.storeID, cutoffEpochMs, after[0], after[1], batchSize]);
239
+ const exhausted = read.length < batchSize;
240
+ let rows = read.map((row) => ({ ...row, created_at: Number(row.created_at) }));
241
+ if (sysdb.sharded) {
242
+ rows = rows.sort((a, b) => a.created_at - b.created_at || compareCodeUnits(a.object_key, b.object_key));
243
+ rows = rows.slice(0, batchSize);
244
+ }
245
+ if (rows.length === 0) {
246
+ return deleted;
247
+ }
248
+ after = [rows[rows.length - 1].created_at, rows[rows.length - 1].object_key];
249
+ const keys = rows.map((row) => row.object_key);
250
+ try {
251
+ await callStore(store, keys[0], 'delete', () => store.delete(keys));
252
+ }
253
+ catch (e) {
254
+ if (!(e instanceof error_1.DBOSExternalStoreError))
255
+ throw e;
256
+ sysdb.logger.warn(`External store ${store.storeID} failed to delete ${keys.length} objects, ending this collection pass: ${e.message}`);
257
+ return deleted;
258
+ }
259
+ const byShard = new Map();
260
+ for (const row of rows) {
261
+ const group = byShard.get(row.shard_key) ?? [];
262
+ group.push(row.object_key);
263
+ byShard.set(row.shard_key, group);
264
+ }
265
+ for (const [shardKey, objectKeys] of byShard) {
266
+ const params = [store.storeID, cutoffEpochMs, objectKeys];
267
+ const keyed = shardKey === null ? '' : ` AND ${sysdb.keyIn('eo', [shardKey], params)}`;
268
+ const result = await sysdb.pool.query(`DELETE FROM ${schema}.external_objects eo
269
+ WHERE eo.store_id = $1 AND eo.object_key = ANY($3::text[]) AND ${collectable}${keyed}`, params);
270
+ deleted += result.rowCount ?? 0;
271
+ }
272
+ if (exhausted) {
273
+ return deleted;
274
+ }
275
+ }
276
+ }
277
+ exports.collectExternalObjects = collectExternalObjects;
278
+ //# sourceMappingURL=external_storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external_storage.js","sourceRoot":"","sources":["../../src/external_storage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ // Copyright (c) 2026 DBOS, Inc. All rights reserved.
2
+ //
3
+ // This file is part of Transact Enterprise, proprietary software licensed under the
4
+ // DBOS Conductor Software License: https://www.dbos.dev/conductor-license
5
+ // You may not use, copy, modify, or distribute this file except as that license permits.
6
+ // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
+ // that gate it is a material breach of that license.
8
+ import type { ExternalStore } from '@dbos-inc/dbos-sdk/internal/external_storage';
9
+ export declare class FilesystemExternalStore implements ExternalStore {
10
+ #private;
11
+ readonly storeID: string;
12
+ constructor(root: string, options?: {
13
+ storeID?: string;
14
+ });
15
+ filePath(key: string): string;
16
+ put(key: string, data: Uint8Array): Promise<void>;
17
+ get(key: string): Promise<Uint8Array | undefined>;
18
+ delete(keys: string[]): Promise<void>;
19
+ }
20
+ export interface S3ClientLike {
21
+ send(command: unknown, options?: unknown): Promise<unknown>;
22
+ readonly config: unknown;
23
+ }
24
+ export declare class S3ExternalStore implements ExternalStore {
25
+ #private;
26
+ static deleteBatchSize: number;
27
+ readonly storeID: string;
28
+ constructor(client: S3ClientLike, bucket: string, options?: {
29
+ prefix?: string;
30
+ storeID?: string;
31
+ });
32
+ put(key: string, data: Uint8Array): Promise<void>;
33
+ get(key: string): Promise<Uint8Array | undefined>;
34
+ delete(keys: string[]): Promise<void>;
35
+ }
36
+ //# sourceMappingURL=external_stores.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external_stores.d.ts","sourceRoot":"","sources":["../../src/external_stores.ts"],"names":[],"mappings":";;;;;;;AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAclF,qBAAa,uBAAwB,YAAW,aAAa;;IAE3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEb,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO;IAM5D,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAUvB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCjD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAWjD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAc5C;AA0BD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAGD,qBAAa,eAAgB,YAAW,aAAa;;IAEnD,MAAM,CAAC,eAAe,SAAQ;IAM9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEb,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO;IAY/F,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBjD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAmBjD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAkB5C"}
@@ -0,0 +1,177 @@
1
+ // Copyright (c) 2026 DBOS, Inc. All rights reserved.
2
+ //
3
+ // This file is part of Transact Enterprise, proprietary software licensed under the
4
+ // DBOS Conductor Software License: https://www.dbos.dev/conductor-license
5
+ // You may not use, copy, modify, or distribute this file except as that license permits.
6
+ // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
+ // that gate it is a material breach of that license.
8
+ "use strict";
9
+ var __importDefault = (this && this.__importDefault) || function (mod) {
10
+ return (mod && mod.__esModule) ? mod : { "default": mod };
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.S3ExternalStore = exports.FilesystemExternalStore = void 0;
14
+ const node_crypto_1 = require("node:crypto");
15
+ const promises_1 = __importDefault(require("node:fs/promises"));
16
+ const node_path_1 = __importDefault(require("node:path"));
17
+ const error_1 = require("@dbos-inc/dbos-sdk/internal/error");
18
+ const FILE_SUFFIX = '@';
19
+ const UPPER = /[A-Z]/g;
20
+ const PUT_ATTEMPTS = 5;
21
+ function errnoCode(e) {
22
+ return e?.code;
23
+ }
24
+ class FilesystemExternalStore {
25
+ #root;
26
+ storeID;
27
+ constructor(root, options = {}) {
28
+ this.#root = node_path_1.default.resolve(root);
29
+ this.storeID = options.storeID ?? `file:${this.#root}`;
30
+ }
31
+ filePath(key) {
32
+ const name = key.replace(UPPER, (c) => `^${c.toLowerCase()}`);
33
+ const file = node_path_1.default.join(this.#root, name);
34
+ const relative = node_path_1.default.relative(this.#root, file);
35
+ if (relative === '' || relative === '..' || relative.startsWith(`..${node_path_1.default.sep}`) || node_path_1.default.isAbsolute(relative)) {
36
+ throw new error_1.DBOSError(`External object key ${JSON.stringify(key)} escapes the store's root`);
37
+ }
38
+ return file + FILE_SUFFIX;
39
+ }
40
+ async put(key, data) {
41
+ const file = this.filePath(key);
42
+ const dir = node_path_1.default.dirname(file);
43
+ let handle;
44
+ let temp;
45
+ for (let attempts = 1;; attempts++) {
46
+ try {
47
+ await promises_1.default.mkdir(dir, { recursive: true });
48
+ temp = node_path_1.default.join(dir, `.upload-${(0, node_crypto_1.randomUUID)()}`);
49
+ handle = await promises_1.default.open(temp, 'wx', 0o600);
50
+ break;
51
+ }
52
+ catch (e) {
53
+ if (errnoCode(e) !== 'ENOENT' || attempts >= PUT_ATTEMPTS) {
54
+ throw e;
55
+ }
56
+ }
57
+ }
58
+ try {
59
+ try {
60
+ await handle.writeFile(data);
61
+ await handle.sync();
62
+ }
63
+ finally {
64
+ await handle.close();
65
+ }
66
+ await promises_1.default.rename(temp, file);
67
+ }
68
+ catch (e) {
69
+ await promises_1.default.rm(temp, { force: true });
70
+ throw e;
71
+ }
72
+ }
73
+ async get(key) {
74
+ try {
75
+ return await promises_1.default.readFile(this.filePath(key));
76
+ }
77
+ catch (e) {
78
+ if (errnoCode(e) === 'ENOENT') {
79
+ return undefined;
80
+ }
81
+ throw e;
82
+ }
83
+ }
84
+ async delete(keys) {
85
+ for (const key of keys) {
86
+ const file = this.filePath(key);
87
+ await promises_1.default.rm(file, { force: true });
88
+ for (let parent = node_path_1.default.dirname(file); parent !== this.#root; parent = node_path_1.default.dirname(parent)) {
89
+ try {
90
+ await promises_1.default.rmdir(parent);
91
+ }
92
+ catch {
93
+ break;
94
+ }
95
+ }
96
+ }
97
+ }
98
+ }
99
+ exports.FilesystemExternalStore = FilesystemExternalStore;
100
+ const S3_MISSING = new Set(['NoSuchKey', 'NotFound']);
101
+ function loadS3() {
102
+ try {
103
+ return {
104
+ s3: require('@aws-sdk/client-s3'),
105
+ storage: require('@aws-sdk/lib-storage'),
106
+ };
107
+ }
108
+ catch (e) {
109
+ throw new error_1.DBOSInitializationError('S3ExternalStore requires @aws-sdk/client-s3 and @aws-sdk/lib-storage. Install them with ' +
110
+ `\`npm install @aws-sdk/client-s3 @aws-sdk/lib-storage\`. Cause: ${e instanceof Error ? e.message.split('\n')[0] : String(e)}`);
111
+ }
112
+ }
113
+ class S3ExternalStore {
114
+ static deleteBatchSize = 1000;
115
+ #client;
116
+ #bucket;
117
+ #prefix;
118
+ #sdk;
119
+ storeID;
120
+ constructor(client, bucket, options = {}) {
121
+ this.#sdk = loadS3();
122
+ this.#client = client;
123
+ this.#bucket = bucket;
124
+ this.#prefix = (options.prefix ?? '').replace(/^\/+|\/+$/g, '');
125
+ this.storeID = options.storeID ?? (this.#prefix ? `s3://${bucket}/${this.#prefix}` : `s3://${bucket}`);
126
+ }
127
+ #objectKey(key) {
128
+ return this.#prefix ? `${this.#prefix}/${key}` : key;
129
+ }
130
+ async put(key, data) {
131
+ const params = { Bucket: this.#bucket, Key: this.#objectKey(key), Body: data };
132
+ const upload = new this.#sdk.storage.Upload({ client: this.#client, params, leavePartsOnError: true });
133
+ try {
134
+ await upload.done();
135
+ }
136
+ catch (e) {
137
+ if (upload.uploadId !== undefined) {
138
+ const abort = { Bucket: params.Bucket, Key: params.Key, UploadId: upload.uploadId };
139
+ await this.#client.send(new this.#sdk.s3.AbortMultipartUploadCommand(abort)).catch(() => undefined);
140
+ }
141
+ throw e;
142
+ }
143
+ }
144
+ async get(key) {
145
+ let response;
146
+ try {
147
+ response = await this.#client.send(new this.#sdk.s3.GetObjectCommand({ Bucket: this.#bucket, Key: this.#objectKey(key) }));
148
+ }
149
+ catch (e) {
150
+ const error = e;
151
+ if (S3_MISSING.has(error.name ?? '') || error.$metadata?.httpStatusCode === 404) {
152
+ return undefined;
153
+ }
154
+ throw e;
155
+ }
156
+ if (response.Body === undefined) {
157
+ throw new error_1.DBOSError(`S3 returned no body for ${this.#objectKey(key)}`);
158
+ }
159
+ return await response.Body.transformToByteArray();
160
+ }
161
+ async delete(keys) {
162
+ const batchSize = S3ExternalStore.deleteBatchSize;
163
+ for (let i = 0; i < keys.length; i += batchSize) {
164
+ const batch = keys.slice(i, i + batchSize);
165
+ const response = await this.#client.send(new this.#sdk.s3.DeleteObjectsCommand({
166
+ Bucket: this.#bucket,
167
+ Delete: { Objects: batch.map((k) => ({ Key: this.#objectKey(k) })), Quiet: true },
168
+ }));
169
+ const errors = response.Errors ?? [];
170
+ if (errors.length > 0) {
171
+ throw new error_1.DBOSError(`S3 failed to delete ${errors.length} external objects, first: ${JSON.stringify(errors[0])}`);
172
+ }
173
+ }
174
+ }
175
+ }
176
+ exports.S3ExternalStore = S3ExternalStore;
177
+ //# sourceMappingURL=external_stores.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external_stores.js","sourceRoot":"","sources":["../../src/external_stores.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@
7
7
  // that gate it is a material breach of that license.
8
8
  export { AutoUpgradePass } from './auto_upgrade';
9
9
  export { ConductorWebsocket } from './conductor/conductor';
10
+ export { ExternalStorage } from './external_storage';
11
+ export { FilesystemExternalStore, S3ExternalStore, type S3ClientLike } from './external_stores';
10
12
  export { ShardedSystemDatabase } from './sharding';
11
13
  export { Suspend } from './suspend';
12
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
package/dist/src/index.js CHANGED
@@ -7,11 +7,16 @@
7
7
  // that gate it is a material breach of that license.
8
8
  "use strict";
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.Suspend = exports.ShardedSystemDatabase = exports.ConductorWebsocket = exports.AutoUpgradePass = void 0;
10
+ exports.Suspend = exports.ShardedSystemDatabase = exports.S3ExternalStore = exports.FilesystemExternalStore = exports.ExternalStorage = exports.ConductorWebsocket = exports.AutoUpgradePass = void 0;
11
11
  var auto_upgrade_1 = require("./auto_upgrade");
12
12
  Object.defineProperty(exports, "AutoUpgradePass", { enumerable: true, get: function () { return auto_upgrade_1.AutoUpgradePass; } });
13
13
  var conductor_1 = require("./conductor/conductor");
14
14
  Object.defineProperty(exports, "ConductorWebsocket", { enumerable: true, get: function () { return conductor_1.ConductorWebsocket; } });
15
+ var external_storage_1 = require("./external_storage");
16
+ Object.defineProperty(exports, "ExternalStorage", { enumerable: true, get: function () { return external_storage_1.ExternalStorage; } });
17
+ var external_stores_1 = require("./external_stores");
18
+ Object.defineProperty(exports, "FilesystemExternalStore", { enumerable: true, get: function () { return external_stores_1.FilesystemExternalStore; } });
19
+ Object.defineProperty(exports, "S3ExternalStore", { enumerable: true, get: function () { return external_stores_1.S3ExternalStore; } });
15
20
  var sharding_1 = require("./sharding");
16
21
  Object.defineProperty(exports, "ShardedSystemDatabase", { enumerable: true, get: function () { return sharding_1.ShardedSystemDatabase; } });
17
22
  var suspend_1 = require("./suspend");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,+CAAiD;AAAxC,+GAAA,eAAe,OAAA;AACxB,mDAA2D;AAAlD,+GAAA,kBAAkB,OAAA;AAC3B,uCAAmD;AAA1C,iHAAA,qBAAqB,OAAA;AAC9B,qCAAoC;AAA3B,kGAAA,OAAO,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,+CAAiD;AAAxC,+GAAA,eAAe,OAAA;AACxB,mDAA2D;AAAlD,+GAAA,kBAAkB,OAAA;AAC3B,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,qDAAgG;AAAvF,0HAAA,uBAAuB,OAAA;AAAE,kHAAA,eAAe,OAAA;AACjD,uCAAmD;AAA1C,iHAAA,qBAAqB,OAAA;AAC9B,qCAAoC;AAA3B,kGAAA,OAAO,OAAA"}
@@ -6,6 +6,7 @@
6
6
  // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
7
  // that gate it is a material breach of that license.
8
8
  import type { ClientBase, Pool } from 'pg';
9
+ import type { ExternalStore } from '@dbos-inc/dbos-sdk/internal/external_storage';
9
10
  import { type SystemDatabase } from '@dbos-inc/dbos-sdk/internal/system_database';
10
11
  export declare function retryOnSerializationError<T>(operation: () => Promise<T>, sysdb: SystemDatabase): Promise<T>;
11
12
  export declare function retentionLockKey(schemaName: string): bigint;
@@ -26,6 +27,7 @@ export declare function collectStatuses(sysdb: SystemDatabase, cutoffEpochTimest
26
27
  export declare function listTimedOutWorkflowIds(sysdb: SystemDatabase, cutoffEpochTimestampMs: number): Promise<[string, string | undefined][]>;
27
28
  export declare function garbageCollect(sysdb: SystemDatabase, cutoffEpochTimestampMs?: number | null, rowsThreshold?: number | null, options?: {
28
29
  batchSize?: number | null;
30
+ externalStores?: ExternalStore[];
29
31
  }): Promise<void>;
30
32
  export declare function globalTimeout(sysdb: SystemDatabase, cutoffEpochTimestampMs: number): Promise<void>;
31
33
  //# sourceMappingURL=retention.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/retention.ts"],"names":[],"mappings":";;;;;;;AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AAGvD,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AAgDrD,wBAAsB,yBAAyB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BjH;AAQD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE3D;AAGD,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAsC5C,qBAAa,aAAa;IAGZ,QAAQ,CAAC,SAAS,EAAE,MAAM;IAFtC,KAAK,SAA2B;gBAEX,SAAS,EAAE,MAAM;IAGhC,KAAK,CACT,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,MAAM,EACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CA+D/B;AAQD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,GAAG,SAAS,CAAC,CA+BvD;AAoHD,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAA8B,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CA0CnB;AA8ED,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA+D7B;AAMD,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,cAAc,EACrB,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAqBzC;AAGD,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}
1
+ {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/retention.ts"],"names":[],"mappings":";;;;;;;AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AAIvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AAgDrD,wBAAsB,yBAAyB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BjH;AAQD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE3D;AAGD,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAsC5C,qBAAa,aAAa;IAGZ,QAAQ,CAAC,SAAS,EAAE,MAAM;IAFtC,KAAK,SAA2B;gBAEX,SAAS,EAAE,MAAM;IAGhC,KAAK,CACT,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,MAAM,EACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CA+D/B;AAQD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,GAAG,SAAS,CAAC,CA+BvD;AAoHD,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAA8B,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CA0CnB;AA8ED,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA+D7B;AAMD,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,cAAc,EACrB,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAqBzC;AAGD,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAA;CAAO,GAC5E,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}
@@ -13,6 +13,7 @@ const dbos_executor_1 = require("@dbos-inc/dbos-sdk/internal/dbos-executor");
13
13
  const error_1 = require("@dbos-inc/dbos-sdk/internal/error");
14
14
  const shard_keys_1 = require("@dbos-inc/dbos-sdk/internal/shard_keys");
15
15
  const locks_1 = require("./locks");
16
+ const external_storage_1 = require("./external_storage");
16
17
  const system_database_1 = require("@dbos-inc/dbos-sdk/internal/system_database");
17
18
  const utils_1 = require("@dbos-inc/dbos-sdk/internal/utils");
18
19
  const workflow_1 = require("@dbos-inc/dbos-sdk/internal/workflow");
@@ -393,6 +394,14 @@ async function garbageCollect(sysdb, cutoffEpochTimestampMs, rowsThreshold, opti
393
394
  if (cutoff === undefined) {
394
395
  return;
395
396
  }
397
+ for (const store of options.externalStores ?? []) {
398
+ try {
399
+ await (0, external_storage_1.collectExternalObjects)(sysdb, store, cutoff);
400
+ }
401
+ catch (e) {
402
+ sysdb.logger.warn(`External object garbage collection failed for store ${store.storeID}: ${e instanceof Error ? e.message : String(e)}`);
403
+ }
404
+ }
396
405
  await collectPayloads(sysdb, cutoff, batchSize);
397
406
  }
398
407
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"retention.js","sourceRoot":"","sources":["../../src/retention.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retention.js","sourceRoot":"","sources":["../../src/retention.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/sharding/migrations.ts"],"names":[],"mappings":";;;;;;;AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAErC,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAQrG,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA6YD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,CAGlE;AAED,eAAO,MAAM,cAAc,QAAsC,CAAC;AAOlE,wBAAsB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAO3E;AA0BD,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAGzE;AA4CD,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCxE;AAgCD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAU3E"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/sharding/migrations.ts"],"names":[],"mappings":";;;;;;;AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAErC,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAQrG,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAmaD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,CAQlE;AAED,eAAO,MAAM,cAAc,QAAsC,CAAC;AAOlE,wBAAsB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAO3E;AA0BD,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAGzE;AA4CD,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCxE;AAgCD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAU3E"}
@@ -385,10 +385,34 @@ function migrationThree(s) {
385
385
  { sql: `DROP INDEX CONCURRENTLY IF EXISTS ${s}.idx_workflow_status_deadline` },
386
386
  ];
387
387
  }
388
+ function migrationFour(s) {
389
+ return [
390
+ {
391
+ sql: `CREATE TABLE IF NOT EXISTS ${s}.external_objects (
392
+ shard_key text NOT NULL,
393
+ object_key text NOT NULL,
394
+ store_id text NOT NULL,
395
+ workflow_uuid text NOT NULL,
396
+ created_at bigint NOT NULL,
397
+ PRIMARY KEY (shard_key, store_id, object_key)
398
+ )`,
399
+ creates: 'external_objects',
400
+ },
401
+ {
402
+ sql: `CREATE INDEX IF NOT EXISTS idx_external_objects_store_created_at
403
+ ON ${s}.external_objects (store_id, created_at)`,
404
+ },
405
+ ];
406
+ }
388
407
  const ONLINE_MIGRATIONS = new Set([3]);
389
408
  function getShardedMigrations(schema) {
390
409
  const quotedSchema = quoteIdentifier(schema);
391
- return [migrationOne(quotedSchema), migrationTwo(quotedSchema), migrationThree(quotedSchema)];
410
+ return [
411
+ migrationOne(quotedSchema),
412
+ migrationTwo(quotedSchema),
413
+ migrationThree(quotedSchema),
414
+ migrationFour(quotedSchema),
415
+ ];
392
416
  }
393
417
  exports.getShardedMigrations = getShardedMigrations;
394
418
  exports.LATEST_VERSION = getShardedMigrations('dbos').length;
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/sharding/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/sharding/migrations.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dbos-inc/dbos-enterprise",
3
- "version": "5.5.2-preview",
3
+ "version": "5.5.3-preview",
4
4
  "description": "Enterprise extension for DBOS Transact",
5
5
  "license": "DBOS Conductor Software License (https://www.dbos.dev/conductor-license)",
6
6
  "repository": {
@@ -37,16 +37,29 @@
37
37
  "ws": "^8.18.1"
38
38
  },
39
39
  "peerDependencies": {
40
+ "@aws-sdk/client-s3": "^3.1161.0",
41
+ "@aws-sdk/lib-storage": "^3.1161.0",
40
42
  "@dbos-inc/dbos-sdk": "*"
41
43
  },
44
+ "peerDependenciesMeta": {
45
+ "@aws-sdk/client-s3": {
46
+ "optional": true
47
+ },
48
+ "@aws-sdk/lib-storage": {
49
+ "optional": true
50
+ }
51
+ },
42
52
  "devDependencies": {
43
53
  "@arethetypeswrong/cli": "^0.18.4",
54
+ "@aws-sdk/client-s3": "^3.1161.0",
55
+ "@aws-sdk/lib-storage": "^3.1161.0",
44
56
  "@dbos-inc/dbos-sdk": "file:../dbos-transact-ts",
45
57
  "@eslint/js": "^9.22.0",
46
58
  "@types/jest": "^30.0.0",
47
59
  "@types/node": "^20.19.1",
48
60
  "@types/pg": "^8.11.2",
49
61
  "@types/ws": "^8.18.0",
62
+ "aws-sdk-client-mock": "^4.1.0",
50
63
  "eslint": "^9.22.0",
51
64
  "globals": "^16.0.0",
52
65
  "husky": "^9.1.7",