@workflow/world-postgres 4.1.0-beta.46 → 4.1.0-beta.48

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.
package/dist/streamer.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { EventEmitter } from 'node:events';
2
- import { and, eq } from 'drizzle-orm';
2
+ import { and, asc, eq, gt, sql } from 'drizzle-orm';
3
+ import { Client } from 'pg';
3
4
  import { monotonicFactory } from 'ulid';
4
5
  import * as z from 'zod';
5
6
  import { Schema } from './drizzle/index.js';
@@ -30,7 +31,37 @@ class Rc {
30
31
  }
31
32
  }
32
33
  }
33
- export function createStreamer(postgres, drizzle) {
34
+ /**
35
+ * Subscribe to a PostgreSQL NOTIFY channel using a dedicated client created
36
+ * from the pool's connection options. `channel` must be a trusted identifier.
37
+ */
38
+ export const listenChannel = async (pool, channel, onPayload) => {
39
+ const client = new Client(pool.options);
40
+ try {
41
+ await client.connect();
42
+ await client.query(`LISTEN ${channel}`);
43
+ }
44
+ catch (err) {
45
+ await client.end().catch(() => { });
46
+ throw err;
47
+ }
48
+ const onNotification = (msg) => {
49
+ onPayload(msg.payload ?? '').catch(() => { });
50
+ };
51
+ client.on('notification', onNotification);
52
+ return {
53
+ close: async () => {
54
+ client.removeListener('notification', onNotification);
55
+ try {
56
+ await client.query(`UNLISTEN ${channel}`);
57
+ }
58
+ finally {
59
+ await client.end();
60
+ }
61
+ },
62
+ };
63
+ };
64
+ export function createStreamer(pool, drizzle) {
34
65
  const ulid = monotonicFactory();
35
66
  const events = new EventEmitter();
36
67
  const { streams } = Schema;
@@ -48,7 +79,7 @@ export function createStreamer(postgres, drizzle) {
48
79
  return mutex.acquire();
49
80
  };
50
81
  const STREAM_TOPIC = 'workflow_event_chunk';
51
- const listenSubscription = postgres.listen(STREAM_TOPIC, async (msg) => {
82
+ const listenSubscription = listenChannel(pool, STREAM_TOPIC, async (msg) => {
52
83
  const parsed = StreamPublishMessage.parse(JSON.parse(msg));
53
84
  const key = `strm:${parsed.streamId}`;
54
85
  if (!events.listenerCount(key)) {
@@ -67,6 +98,9 @@ export function createStreamer(postgres, drizzle) {
67
98
  events.emit(key, { id: parsed.chunkId, data, eof });
68
99
  });
69
100
  });
101
+ const notifyStream = async (payload) => {
102
+ await pool.query('SELECT pg_notify($1, $2)', [STREAM_TOPIC, payload]);
103
+ };
70
104
  // Helper to convert chunk to Buffer
71
105
  const toBuffer = (chunk) => !Buffer.isBuffer(chunk) ? Buffer.from(chunk) : chunk;
72
106
  return {
@@ -81,7 +115,7 @@ export function createStreamer(postgres, drizzle) {
81
115
  chunkData: toBuffer(chunk),
82
116
  eof: false,
83
117
  });
84
- await postgres.notify(STREAM_TOPIC, JSON.stringify(StreamPublishMessage.encode({
118
+ await notifyStream(JSON.stringify(StreamPublishMessage.encode({
85
119
  chunkId,
86
120
  streamId: name,
87
121
  })));
@@ -103,7 +137,7 @@ export function createStreamer(postgres, drizzle) {
103
137
  })));
104
138
  // Notify for each chunk (could be batched in future if needed)
105
139
  for (const chunkId of chunkIds) {
106
- await postgres.notify(STREAM_TOPIC, JSON.stringify(StreamPublishMessage.encode({
140
+ await notifyStream(JSON.stringify(StreamPublishMessage.encode({
107
141
  chunkId,
108
142
  streamId: name,
109
143
  })));
@@ -120,11 +154,99 @@ export function createStreamer(postgres, drizzle) {
120
154
  chunkData: Buffer.from([]),
121
155
  eof: true,
122
156
  });
123
- await postgres.notify('workflow_event_chunk', JSON.stringify(StreamPublishMessage.encode({
157
+ await notifyStream(JSON.stringify(StreamPublishMessage.encode({
124
158
  streamId: name,
125
159
  chunkId,
126
160
  })));
127
161
  },
162
+ async getStreamChunks(name, _runId, options) {
163
+ const limit = options?.limit ?? 100;
164
+ // Decode cursor to get the last seen chunkId
165
+ let cursorChunkId = null;
166
+ if (options?.cursor) {
167
+ try {
168
+ const decoded = JSON.parse(Buffer.from(options.cursor, 'base64').toString('utf-8'));
169
+ cursorChunkId = decoded.c;
170
+ }
171
+ catch {
172
+ // Invalid cursor, start from beginning
173
+ }
174
+ }
175
+ // Fetch only data rows (exclude EOF) with limit + 1 to detect hasMore.
176
+ // Filtering EOF here avoids the edge case where an EOF row sorting
177
+ // mid-batch (e.g. due to clock skew) silently drops data rows.
178
+ const rows = await drizzle
179
+ .select({
180
+ chunkId: streams.chunkId,
181
+ data: streams.chunkData,
182
+ })
183
+ .from(streams)
184
+ .where(and(eq(streams.streamId, name), eq(streams.eof, false), ...(cursorChunkId
185
+ ? [gt(streams.chunkId, cursorChunkId)]
186
+ : [])))
187
+ .orderBy(asc(streams.chunkId))
188
+ .limit(limit + 1);
189
+ const hasMore = rows.length > limit;
190
+ const pageRows = rows.slice(0, limit);
191
+ // Check if stream is complete via a separate EOF query
192
+ let streamDone = false;
193
+ const [eofRow] = await drizzle
194
+ .select({ eof: streams.eof })
195
+ .from(streams)
196
+ .where(and(eq(streams.streamId, name), eq(streams.eof, true)))
197
+ .limit(1);
198
+ if (eofRow) {
199
+ streamDone = true;
200
+ }
201
+ // Build the cursor index: we need a running index across pages.
202
+ // Decode the current start index from the cursor.
203
+ let baseIndex = 0;
204
+ if (options?.cursor) {
205
+ try {
206
+ const decoded = JSON.parse(Buffer.from(options.cursor, 'base64').toString('utf-8'));
207
+ if (typeof decoded.i === 'number') {
208
+ baseIndex = decoded.i;
209
+ }
210
+ }
211
+ catch {
212
+ // Invalid cursor
213
+ }
214
+ }
215
+ const chunks = pageRows.map((row, i) => ({
216
+ index: baseIndex + i,
217
+ data: new Uint8Array(row.data),
218
+ }));
219
+ const nextCursor = hasMore && pageRows.length > 0
220
+ ? Buffer.from(JSON.stringify({
221
+ c: pageRows[pageRows.length - 1].chunkId,
222
+ i: baseIndex + pageRows.length,
223
+ })).toString('base64')
224
+ : null;
225
+ return {
226
+ data: chunks,
227
+ cursor: nextCursor,
228
+ hasMore,
229
+ done: streamDone,
230
+ };
231
+ },
232
+ async getStreamInfo(name, _runId) {
233
+ // Use COUNT(*) instead of fetching all rows into memory
234
+ const [countResult] = await drizzle
235
+ .select({ count: sql `count(*)` })
236
+ .from(streams)
237
+ .where(and(eq(streams.streamId, name), eq(streams.eof, false)));
238
+ const dataCount = Number(countResult?.count ?? 0);
239
+ // Check for EOF
240
+ const [eofRow] = await drizzle
241
+ .select({ eof: streams.eof })
242
+ .from(streams)
243
+ .where(and(eq(streams.streamId, name), eq(streams.eof, true)))
244
+ .limit(1);
245
+ return {
246
+ tailIndex: dataCount - 1,
247
+ done: !!eofRow,
248
+ };
249
+ },
128
250
  async readFromStream(name, startIndex) {
129
251
  const cleanups = [];
130
252
  return new ReadableStream({
@@ -171,13 +293,21 @@ export function createStreamer(postgres, drizzle) {
171
293
  .from(streams)
172
294
  .where(and(eq(streams.streamId, name)))
173
295
  .orderBy(streams.chunkId);
296
+ // Resolve negative offset relative to the data chunk count
297
+ // (excluding the trailing EOF marker, if present)
298
+ if (typeof offset === 'number' && offset < 0) {
299
+ const dataCount = chunks.length > 0 && chunks[chunks.length - 1].eof
300
+ ? chunks.length - 1
301
+ : chunks.length;
302
+ offset = Math.max(0, dataCount + offset);
303
+ }
174
304
  for (const chunk of [...chunks, ...(buffer ?? [])]) {
175
305
  enqueue(chunk);
176
306
  }
177
307
  buffer = null;
178
308
  },
179
309
  cancel() {
180
- cleanups.forEach((fn) => fn());
310
+ cleanups.forEach((fn) => void fn());
181
311
  },
182
312
  });
183
313
  },
@@ -190,8 +320,9 @@ export function createStreamer(postgres, drizzle) {
190
320
  return results.map((r) => r.streamId);
191
321
  },
192
322
  async close() {
193
- const sub = await listenSubscription;
194
- await sub.unlisten();
323
+ const sub = await listenSubscription.catch(() => undefined);
324
+ if (sub)
325
+ await sub.close();
195
326
  },
196
327
  };
197
328
  }
@@ -1 +1 @@
1
- {"version":3,"file":"streamer.js","sourceRoot":"","sources":["../src/streamer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamer.js","sourceRoot":"","sources":["../src/streamer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workflow/world-postgres",
3
- "version": "4.1.0-beta.46",
3
+ "version": "4.1.0-beta.48",
4
4
  "description": "A reference World implementation based on PostgreSQL",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -42,22 +42,23 @@
42
42
  "dotenv": "17.3.1",
43
43
  "drizzle-orm": "0.45.1",
44
44
  "graphile-worker": "0.16.6",
45
- "postgres": "3.4.8",
45
+ "pg": "8.20.0",
46
46
  "ulid": "~3.0.1",
47
47
  "zod": "4.3.6",
48
- "@workflow/errors": "4.1.0-beta.18",
48
+ "@workflow/errors": "4.1.0-beta.19",
49
49
  "@workflow/utils": "4.1.0-beta.13",
50
- "@workflow/world": "4.1.0-beta.13",
51
- "@workflow/world-local": "4.1.0-beta.44"
50
+ "@workflow/world": "4.1.0-beta.14",
51
+ "@workflow/world-local": "4.1.0-beta.46"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@testcontainers/postgresql": "11.12.0",
55
55
  "@types/node": "22.19.0",
56
+ "@types/pg": "8.20.0",
56
57
  "drizzle-kit": "0.31.9",
57
58
  "vitest": "^4.0.18",
58
- "@workflow/errors": "4.1.0-beta.18",
59
+ "@workflow/errors": "4.1.0-beta.19",
59
60
  "@workflow/tsconfig": "4.0.1-beta.0",
60
- "@workflow/world-testing": "4.1.0-beta.72"
61
+ "@workflow/world-testing": "4.1.0-beta.74"
61
62
  },
62
63
  "keywords": [],
63
64
  "author": "",