@dbos-inc/dbos-enterprise 5.5.2-preview → 5.5.4-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"}