@s2-dev/streamstore 0.17.6 → 0.18.0
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/README.md +69 -1
- package/dist/cjs/accessTokens.d.ts +3 -2
- package/dist/cjs/accessTokens.d.ts.map +1 -1
- package/dist/cjs/accessTokens.js +22 -37
- package/dist/cjs/accessTokens.js.map +1 -1
- package/dist/cjs/basin.d.ts +4 -3
- package/dist/cjs/basin.d.ts.map +1 -1
- package/dist/cjs/basin.js +7 -5
- package/dist/cjs/basin.js.map +1 -1
- package/dist/cjs/basins.d.ts +10 -10
- package/dist/cjs/basins.d.ts.map +1 -1
- package/dist/cjs/basins.js +36 -64
- package/dist/cjs/basins.js.map +1 -1
- package/dist/cjs/batch-transform.d.ts +1 -1
- package/dist/cjs/batch-transform.d.ts.map +1 -1
- package/dist/cjs/batch-transform.js +36 -5
- package/dist/cjs/batch-transform.js.map +1 -1
- package/dist/cjs/common.d.ts +42 -0
- package/dist/cjs/common.d.ts.map +1 -1
- package/dist/cjs/error.d.ts +40 -2
- package/dist/cjs/error.d.ts.map +1 -1
- package/dist/cjs/error.js +268 -2
- package/dist/cjs/error.js.map +1 -1
- package/dist/cjs/generated/client/types.gen.d.ts +7 -0
- package/dist/cjs/generated/client/types.gen.d.ts.map +1 -1
- package/dist/cjs/generated/client/utils.gen.d.ts +1 -0
- package/dist/cjs/generated/client/utils.gen.d.ts.map +1 -1
- package/dist/cjs/generated/client/utils.gen.js.map +1 -1
- package/dist/cjs/generated/core/types.gen.d.ts +2 -0
- package/dist/cjs/generated/core/types.gen.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +46 -3
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +28 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/result.d.ts +57 -0
- package/dist/cjs/lib/result.d.ts.map +1 -0
- package/dist/cjs/lib/result.js +43 -0
- package/dist/cjs/lib/result.js.map +1 -0
- package/dist/cjs/lib/retry.d.ts +151 -0
- package/dist/cjs/lib/retry.d.ts.map +1 -0
- package/dist/cjs/lib/retry.js +839 -0
- package/dist/cjs/lib/retry.js.map +1 -0
- package/dist/cjs/lib/stream/factory.d.ts +0 -1
- package/dist/cjs/lib/stream/factory.d.ts.map +1 -1
- package/dist/cjs/lib/stream/factory.js +0 -1
- package/dist/cjs/lib/stream/factory.js.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/index.d.ts +24 -32
- package/dist/cjs/lib/stream/transport/fetch/index.d.ts.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/index.js +247 -187
- package/dist/cjs/lib/stream/transport/fetch/index.js.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/shared.d.ts +1 -2
- package/dist/cjs/lib/stream/transport/fetch/shared.d.ts.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/shared.js +49 -72
- package/dist/cjs/lib/stream/transport/fetch/shared.js.map +1 -1
- package/dist/cjs/lib/stream/transport/s2s/index.d.ts +0 -1
- package/dist/cjs/lib/stream/transport/s2s/index.d.ts.map +1 -1
- package/dist/cjs/lib/stream/transport/s2s/index.js +309 -352
- package/dist/cjs/lib/stream/transport/s2s/index.js.map +1 -1
- package/dist/cjs/lib/stream/types.d.ts +102 -8
- package/dist/cjs/lib/stream/types.d.ts.map +1 -1
- package/dist/cjs/metrics.d.ts +3 -2
- package/dist/cjs/metrics.d.ts.map +1 -1
- package/dist/cjs/metrics.js +24 -39
- package/dist/cjs/metrics.js.map +1 -1
- package/dist/cjs/s2.d.ts +1 -0
- package/dist/cjs/s2.d.ts.map +1 -1
- package/dist/cjs/s2.js +14 -3
- package/dist/cjs/s2.js.map +1 -1
- package/dist/cjs/stream.d.ts +5 -3
- package/dist/cjs/stream.d.ts.map +1 -1
- package/dist/cjs/stream.js +29 -18
- package/dist/cjs/stream.js.map +1 -1
- package/dist/cjs/streams.d.ts +10 -10
- package/dist/cjs/streams.d.ts.map +1 -1
- package/dist/cjs/streams.js +36 -64
- package/dist/cjs/streams.js.map +1 -1
- package/dist/cjs/utils.d.ts +3 -3
- package/dist/cjs/utils.d.ts.map +1 -1
- package/dist/cjs/utils.js +3 -3
- package/dist/cjs/utils.js.map +1 -1
- package/dist/esm/accessTokens.d.ts +3 -2
- package/dist/esm/accessTokens.d.ts.map +1 -1
- package/dist/esm/accessTokens.js +23 -38
- package/dist/esm/accessTokens.js.map +1 -1
- package/dist/esm/basin.d.ts +4 -3
- package/dist/esm/basin.d.ts.map +1 -1
- package/dist/esm/basin.js +7 -5
- package/dist/esm/basin.js.map +1 -1
- package/dist/esm/basins.d.ts +10 -10
- package/dist/esm/basins.d.ts.map +1 -1
- package/dist/esm/basins.js +37 -65
- package/dist/esm/basins.js.map +1 -1
- package/dist/esm/batch-transform.d.ts +1 -1
- package/dist/esm/batch-transform.d.ts.map +1 -1
- package/dist/esm/batch-transform.js +37 -6
- package/dist/esm/batch-transform.js.map +1 -1
- package/dist/esm/common.d.ts +42 -0
- package/dist/esm/common.d.ts.map +1 -1
- package/dist/esm/error.d.ts +40 -2
- package/dist/esm/error.d.ts.map +1 -1
- package/dist/esm/error.js +260 -2
- package/dist/esm/error.js.map +1 -1
- package/dist/esm/generated/client/types.gen.d.ts +7 -0
- package/dist/esm/generated/client/types.gen.d.ts.map +1 -1
- package/dist/esm/generated/client/utils.gen.d.ts +1 -0
- package/dist/esm/generated/client/utils.gen.d.ts.map +1 -1
- package/dist/esm/generated/client/utils.gen.js.map +1 -1
- package/dist/esm/generated/core/types.gen.d.ts +2 -0
- package/dist/esm/generated/core/types.gen.d.ts.map +1 -1
- package/dist/esm/index.d.ts +46 -3
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +23 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/result.d.ts +57 -0
- package/dist/esm/lib/result.d.ts.map +1 -0
- package/dist/esm/lib/result.js +37 -0
- package/dist/esm/lib/result.js.map +1 -0
- package/dist/esm/lib/retry.d.ts +151 -0
- package/dist/esm/lib/retry.d.ts.map +1 -0
- package/dist/esm/lib/retry.js +830 -0
- package/dist/esm/lib/retry.js.map +1 -0
- package/dist/esm/lib/stream/factory.d.ts +0 -1
- package/dist/esm/lib/stream/factory.d.ts.map +1 -1
- package/dist/esm/lib/stream/factory.js +0 -1
- package/dist/esm/lib/stream/factory.js.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/index.d.ts +24 -32
- package/dist/esm/lib/stream/transport/fetch/index.d.ts.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/index.js +247 -187
- package/dist/esm/lib/stream/transport/fetch/index.js.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/shared.d.ts +1 -2
- package/dist/esm/lib/stream/transport/fetch/shared.d.ts.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/shared.js +51 -74
- package/dist/esm/lib/stream/transport/fetch/shared.js.map +1 -1
- package/dist/esm/lib/stream/transport/s2s/index.d.ts +0 -1
- package/dist/esm/lib/stream/transport/s2s/index.d.ts.map +1 -1
- package/dist/esm/lib/stream/transport/s2s/index.js +310 -353
- package/dist/esm/lib/stream/transport/s2s/index.js.map +1 -1
- package/dist/esm/lib/stream/types.d.ts +102 -8
- package/dist/esm/lib/stream/types.d.ts.map +1 -1
- package/dist/esm/metrics.d.ts +3 -2
- package/dist/esm/metrics.d.ts.map +1 -1
- package/dist/esm/metrics.js +25 -40
- package/dist/esm/metrics.js.map +1 -1
- package/dist/esm/s2.d.ts +1 -0
- package/dist/esm/s2.d.ts.map +1 -1
- package/dist/esm/s2.js +14 -3
- package/dist/esm/s2.js.map +1 -1
- package/dist/esm/stream.d.ts +5 -3
- package/dist/esm/stream.d.ts.map +1 -1
- package/dist/esm/stream.js +30 -19
- package/dist/esm/stream.js.map +1 -1
- package/dist/esm/streams.d.ts +10 -10
- package/dist/esm/streams.d.ts.map +1 -1
- package/dist/esm/streams.js +37 -65
- package/dist/esm/streams.js.map +1 -1
- package/dist/esm/utils.d.ts +3 -3
- package/dist/esm/utils.d.ts.map +1 -1
- package/dist/esm/utils.js +2 -2
- package/dist/esm/utils.js.map +1 -1
- package/package.json +4 -2
|
@@ -1,53 +1,103 @@
|
|
|
1
|
+
import createDebug from "debug";
|
|
1
2
|
import { RangeNotSatisfiableError, S2Error } from "../../../../error.js";
|
|
2
3
|
import { createClient, createConfig, } from "../../../../generated/client/index.js";
|
|
3
4
|
import { read } from "../../../../generated/index.js";
|
|
4
|
-
import {
|
|
5
|
+
import { meteredBytes } from "../../../../utils.js";
|
|
5
6
|
import { decodeFromBase64 } from "../../../base64.js";
|
|
6
7
|
import { EventStream } from "../../../event-stream.js";
|
|
7
8
|
import * as Redacted from "../../../redacted.js";
|
|
9
|
+
import { err, errClose, ok, okClose } from "../../../result.js";
|
|
10
|
+
import { RetryAppendSession as AppendSessionImpl, RetryReadSession as ReadSessionImpl, } from "../../../retry.js";
|
|
8
11
|
import { streamAppend } from "./shared.js";
|
|
9
|
-
|
|
12
|
+
const debug = createDebug("s2:fetch");
|
|
13
|
+
export class FetchReadSession extends ReadableStream {
|
|
10
14
|
static async create(client, name, args, options) {
|
|
15
|
+
debug("FetchReadSession.create stream=%s args=%o", name, args);
|
|
11
16
|
const { as, ...queryParams } = args ?? {};
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
if (
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
17
|
+
try {
|
|
18
|
+
const response = await read({
|
|
19
|
+
client,
|
|
20
|
+
path: {
|
|
21
|
+
stream: name,
|
|
22
|
+
},
|
|
23
|
+
headers: {
|
|
24
|
+
accept: "text/event-stream",
|
|
25
|
+
...(as === "bytes" ? { "s2-format": "base64" } : {}),
|
|
26
|
+
},
|
|
27
|
+
query: queryParams,
|
|
28
|
+
parseAs: "stream",
|
|
29
|
+
...options,
|
|
30
|
+
});
|
|
31
|
+
if (response.error) {
|
|
32
|
+
// Convert error to S2Error and return error session
|
|
33
|
+
const status = response.response.status;
|
|
34
|
+
const error = "message" in response.error
|
|
35
|
+
? new S2Error({
|
|
36
|
+
message: response.error.message,
|
|
37
|
+
code: response.error.code ?? undefined,
|
|
38
|
+
status,
|
|
39
|
+
})
|
|
40
|
+
: status === 416
|
|
41
|
+
? new RangeNotSatisfiableError({
|
|
42
|
+
status,
|
|
43
|
+
})
|
|
44
|
+
: new S2Error({
|
|
45
|
+
message: response.response.statusText ?? "Request failed",
|
|
46
|
+
status,
|
|
47
|
+
});
|
|
48
|
+
return FetchReadSession.createErrorSession(error);
|
|
32
49
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
50
|
+
if (!response.response.body) {
|
|
51
|
+
const error = new S2Error({
|
|
52
|
+
message: "No body in SSE response",
|
|
53
|
+
code: "INVALID_RESPONSE",
|
|
54
|
+
status: 502,
|
|
55
|
+
origin: "sdk",
|
|
37
56
|
});
|
|
57
|
+
return FetchReadSession.createErrorSession(error);
|
|
38
58
|
}
|
|
59
|
+
const format = (args?.as ?? "string");
|
|
60
|
+
return new FetchReadSession(response.response.body, format);
|
|
39
61
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
62
|
+
catch (error) {
|
|
63
|
+
// Catch any thrown errors (network failures, DNS errors, etc.)
|
|
64
|
+
const s2Error = error instanceof S2Error
|
|
65
|
+
? error
|
|
66
|
+
: new S2Error({
|
|
67
|
+
message: String(error),
|
|
68
|
+
status: 502, // Bad Gateway - network/fetch failure
|
|
69
|
+
});
|
|
70
|
+
return FetchReadSession.createErrorSession(s2Error);
|
|
44
71
|
}
|
|
45
|
-
const format = (args?.as ?? "string");
|
|
46
|
-
return new FetchReadSession(response.response.body, format);
|
|
47
72
|
}
|
|
48
|
-
|
|
73
|
+
/**
|
|
74
|
+
* Create a session that immediately emits an error result and closes.
|
|
75
|
+
* Used when errors occur during session creation.
|
|
76
|
+
*/
|
|
77
|
+
static createErrorSession(error) {
|
|
78
|
+
// Create a custom instance that extends ReadableStream and emits error immediately
|
|
79
|
+
const stream = new ReadableStream({
|
|
80
|
+
start(controller) {
|
|
81
|
+
controller.enqueue({ ok: false, error });
|
|
82
|
+
controller.close();
|
|
83
|
+
},
|
|
84
|
+
});
|
|
85
|
+
// Copy methods from stream to create a proper FetchReadSession
|
|
86
|
+
const session = Object.assign(Object.create(FetchReadSession.prototype), stream);
|
|
87
|
+
session._nextReadPosition = undefined;
|
|
88
|
+
session._lastObservedTail = undefined;
|
|
89
|
+
return session;
|
|
90
|
+
}
|
|
91
|
+
_nextReadPosition = undefined;
|
|
92
|
+
_lastObservedTail = undefined;
|
|
49
93
|
constructor(stream, format) {
|
|
50
|
-
|
|
94
|
+
// Track error from parser
|
|
95
|
+
let parserError = null;
|
|
96
|
+
// Track last ping time for timeout detection (20s without a ping = timeout)
|
|
97
|
+
let lastPingTimeMs = performance.now();
|
|
98
|
+
const PING_TIMEOUT_MS = 20000; // 20 seconds
|
|
99
|
+
// Create EventStream that parses SSE and yields records
|
|
100
|
+
const eventStream = new EventStream(stream, (msg) => {
|
|
51
101
|
// Parse SSE events according to the S2 protocol
|
|
52
102
|
if (msg.event === "batch" && msg.data) {
|
|
53
103
|
const rawBatch = JSON.parse(msg.data);
|
|
@@ -76,34 +126,106 @@ export class FetchReadSession extends EventStream {
|
|
|
76
126
|
}
|
|
77
127
|
})();
|
|
78
128
|
if (batch.tail) {
|
|
79
|
-
this.
|
|
129
|
+
this._lastObservedTail = batch.tail;
|
|
130
|
+
}
|
|
131
|
+
let lastRecord = batch.records?.at(-1);
|
|
132
|
+
if (lastRecord) {
|
|
133
|
+
this._nextReadPosition = {
|
|
134
|
+
seq_num: lastRecord.seq_num + 1,
|
|
135
|
+
timestamp: lastRecord.timestamp,
|
|
136
|
+
};
|
|
80
137
|
}
|
|
81
138
|
return { done: false, batch: true, value: batch.records ?? [] };
|
|
82
139
|
}
|
|
83
140
|
if (msg.event === "error") {
|
|
84
|
-
//
|
|
85
|
-
|
|
141
|
+
// Store error and signal end of stream
|
|
142
|
+
// SSE error events are server errors - treat as 503 (Service Unavailable) for retry logic
|
|
143
|
+
debug("parse event error");
|
|
144
|
+
parserError = new S2Error({
|
|
145
|
+
message: msg.data ?? "Unknown error",
|
|
146
|
+
status: 503,
|
|
147
|
+
});
|
|
148
|
+
return { done: true };
|
|
86
149
|
}
|
|
150
|
+
lastPingTimeMs = performance.now();
|
|
87
151
|
// Skip ping events and other events
|
|
88
152
|
return { done: false };
|
|
89
153
|
});
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
class AcksStream extends ReadableStream {
|
|
96
|
-
constructor(setController) {
|
|
154
|
+
// Wrap the EventStream to convert records to ReadResult and check for errors
|
|
155
|
+
const reader = eventStream.getReader();
|
|
156
|
+
let done = false;
|
|
97
157
|
super({
|
|
98
|
-
|
|
99
|
-
|
|
158
|
+
pull: async (controller) => {
|
|
159
|
+
if (done) {
|
|
160
|
+
controller.close();
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
// Check for ping timeout before reading
|
|
164
|
+
const now = performance.now();
|
|
165
|
+
const timeSinceLastPingMs = now - lastPingTimeMs;
|
|
166
|
+
if (timeSinceLastPingMs > PING_TIMEOUT_MS) {
|
|
167
|
+
const timeoutError = new S2Error({
|
|
168
|
+
message: `No ping received for ${Math.floor(timeSinceLastPingMs / 1000)}s (timeout: ${PING_TIMEOUT_MS / 1000}s)`,
|
|
169
|
+
status: 408, // Request Timeout
|
|
170
|
+
code: "TIMEOUT",
|
|
171
|
+
});
|
|
172
|
+
debug("ping timeout detected, elapsed=%dms", timeSinceLastPingMs);
|
|
173
|
+
controller.enqueue({ ok: false, error: timeoutError });
|
|
174
|
+
done = true;
|
|
175
|
+
controller.close();
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
try {
|
|
179
|
+
// Calculate remaining time until timeout
|
|
180
|
+
const remainingTimeMs = PING_TIMEOUT_MS - timeSinceLastPingMs;
|
|
181
|
+
// Race reader.read() against timeout
|
|
182
|
+
// This ensures we don't wait forever if server stops sending events
|
|
183
|
+
const result = await Promise.race([
|
|
184
|
+
reader.read(),
|
|
185
|
+
new Promise((_, reject) => setTimeout(() => {
|
|
186
|
+
const elapsed = performance.now() - lastPingTimeMs;
|
|
187
|
+
reject(new S2Error({
|
|
188
|
+
message: `No ping received for ${Math.floor(elapsed / 1000)}s (timeout: ${PING_TIMEOUT_MS / 1000}s)`,
|
|
189
|
+
status: 408,
|
|
190
|
+
code: "TIMEOUT",
|
|
191
|
+
}));
|
|
192
|
+
}, remainingTimeMs)),
|
|
193
|
+
]);
|
|
194
|
+
if (result.done) {
|
|
195
|
+
done = true;
|
|
196
|
+
// Check if stream ended due to error
|
|
197
|
+
if (parserError) {
|
|
198
|
+
controller.enqueue({ ok: false, error: parserError });
|
|
199
|
+
}
|
|
200
|
+
controller.close();
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
// Emit successful result
|
|
204
|
+
controller.enqueue({ ok: true, value: result.value });
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
catch (error) {
|
|
208
|
+
// Convert unexpected errors to S2Error and emit as error result
|
|
209
|
+
const s2Err = error instanceof S2Error
|
|
210
|
+
? error
|
|
211
|
+
: new S2Error({ message: String(error), status: 500 });
|
|
212
|
+
controller.enqueue({ ok: false, error: s2Err });
|
|
213
|
+
done = true;
|
|
214
|
+
controller.close();
|
|
215
|
+
}
|
|
216
|
+
},
|
|
217
|
+
cancel: async () => {
|
|
218
|
+
await eventStream.cancel();
|
|
100
219
|
},
|
|
101
220
|
});
|
|
102
221
|
}
|
|
103
|
-
|
|
104
|
-
|
|
222
|
+
nextReadPosition() {
|
|
223
|
+
return this._nextReadPosition;
|
|
224
|
+
}
|
|
225
|
+
lastObservedTail() {
|
|
226
|
+
return this._lastObservedTail;
|
|
105
227
|
}
|
|
106
|
-
//
|
|
228
|
+
// Implement AsyncIterable (for await...of support)
|
|
107
229
|
[Symbol.asyncIterator]() {
|
|
108
230
|
const fn = ReadableStream.prototype[Symbol.asyncIterator];
|
|
109
231
|
if (typeof fn === "function")
|
|
@@ -112,177 +234,125 @@ class AcksStream extends ReadableStream {
|
|
|
112
234
|
return {
|
|
113
235
|
next: async () => {
|
|
114
236
|
const r = await reader.read();
|
|
115
|
-
if (r.done)
|
|
116
|
-
reader.releaseLock();
|
|
237
|
+
if (r.done)
|
|
117
238
|
return { done: true, value: undefined };
|
|
118
|
-
}
|
|
119
239
|
return { done: false, value: r.value };
|
|
120
240
|
},
|
|
121
|
-
|
|
122
|
-
await reader.cancel(e);
|
|
241
|
+
return: async (value) => {
|
|
123
242
|
reader.releaseLock();
|
|
124
|
-
return { done: true, value
|
|
243
|
+
return { done: true, value };
|
|
125
244
|
},
|
|
126
|
-
|
|
127
|
-
await reader.cancel("done");
|
|
245
|
+
throw: async (e) => {
|
|
128
246
|
reader.releaseLock();
|
|
129
|
-
|
|
247
|
+
throw e;
|
|
130
248
|
},
|
|
131
249
|
[Symbol.asyncIterator]() {
|
|
132
250
|
return this;
|
|
133
251
|
},
|
|
134
252
|
};
|
|
135
253
|
}
|
|
254
|
+
// Implement AsyncDisposable
|
|
255
|
+
async [Symbol.asyncDispose]() {
|
|
256
|
+
await this.cancel();
|
|
257
|
+
}
|
|
136
258
|
}
|
|
259
|
+
// Removed AcksStream - transport sessions no longer expose streams
|
|
137
260
|
/**
|
|
138
|
-
*
|
|
139
|
-
* Queues append requests and ensures only one is in-flight at a time.
|
|
261
|
+
* Fetch-based transport session for appending records via HTTP/1.1.
|
|
262
|
+
* Queues append requests and ensures only one is in-flight at a time (single-flight).
|
|
263
|
+
* No backpressure, no retry logic, no streams - just submit/close with value-encoded errors.
|
|
140
264
|
*/
|
|
141
265
|
export class FetchAppendSession {
|
|
142
|
-
_lastAckedPosition = undefined;
|
|
143
266
|
queue = [];
|
|
144
267
|
pendingResolvers = [];
|
|
145
268
|
inFlight = false;
|
|
146
269
|
options;
|
|
147
270
|
stream;
|
|
148
|
-
acksController;
|
|
149
|
-
_readable;
|
|
150
|
-
_writable;
|
|
151
271
|
closed = false;
|
|
152
272
|
processingPromise = null;
|
|
153
|
-
queuedBytes = 0;
|
|
154
|
-
maxQueuedBytes;
|
|
155
|
-
waitingForCapacity = [];
|
|
156
273
|
client;
|
|
157
|
-
readable;
|
|
158
|
-
writable;
|
|
159
274
|
static async create(stream, transportConfig, sessionOptions, requestOptions) {
|
|
160
275
|
return new FetchAppendSession(stream, transportConfig, sessionOptions, requestOptions);
|
|
161
276
|
}
|
|
162
277
|
constructor(stream, transportConfig, sessionOptions, requestOptions) {
|
|
163
278
|
this.options = requestOptions;
|
|
164
279
|
this.stream = stream;
|
|
165
|
-
this.maxQueuedBytes = sessionOptions?.maxQueuedBytes ?? 10 * 1024 * 1024; // 10 MiB default
|
|
166
280
|
this.client = createClient(createConfig({
|
|
167
281
|
baseUrl: transportConfig.baseUrl,
|
|
168
282
|
auth: () => Redacted.value(transportConfig.accessToken),
|
|
283
|
+
headers: transportConfig.basinName
|
|
284
|
+
? { "s2-basin": transportConfig.basinName }
|
|
285
|
+
: {},
|
|
169
286
|
}));
|
|
170
|
-
// Create the readable stream for acks
|
|
171
|
-
this._readable = new AcksStream((controller) => {
|
|
172
|
-
this.acksController = controller;
|
|
173
|
-
});
|
|
174
|
-
this.readable = this._readable;
|
|
175
|
-
// Create the writable stream
|
|
176
|
-
let writableController;
|
|
177
|
-
this._writable = new WritableStream({
|
|
178
|
-
start: (controller) => {
|
|
179
|
-
writableController = controller;
|
|
180
|
-
},
|
|
181
|
-
write: async (chunk) => {
|
|
182
|
-
// Calculate batch size
|
|
183
|
-
let batchMeteredSize = 0;
|
|
184
|
-
for (const record of chunk.records) {
|
|
185
|
-
batchMeteredSize += meteredSizeBytes(record);
|
|
186
|
-
}
|
|
187
|
-
// Wait for capacity if needed
|
|
188
|
-
while (this.queuedBytes + batchMeteredSize > this.maxQueuedBytes &&
|
|
189
|
-
!this.closed) {
|
|
190
|
-
await new Promise((resolve) => {
|
|
191
|
-
this.waitingForCapacity.push(resolve);
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
// Submit the batch
|
|
195
|
-
this.submit(chunk.records, {
|
|
196
|
-
fencing_token: chunk.fencing_token ?? undefined,
|
|
197
|
-
match_seq_num: chunk.match_seq_num ?? undefined,
|
|
198
|
-
}, batchMeteredSize);
|
|
199
|
-
},
|
|
200
|
-
close: async () => {
|
|
201
|
-
this.closed = true;
|
|
202
|
-
await this.waitForDrain();
|
|
203
|
-
},
|
|
204
|
-
abort: async (reason) => {
|
|
205
|
-
this.closed = true;
|
|
206
|
-
this.queue = [];
|
|
207
|
-
this.queuedBytes = 0;
|
|
208
|
-
// Reject all pending promises
|
|
209
|
-
const error = new S2Error({
|
|
210
|
-
message: `AppendSession was aborted: ${reason}`,
|
|
211
|
-
});
|
|
212
|
-
for (const resolver of this.pendingResolvers) {
|
|
213
|
-
resolver.reject(error);
|
|
214
|
-
}
|
|
215
|
-
this.pendingResolvers = [];
|
|
216
|
-
// Reject all waiting for capacity
|
|
217
|
-
for (const resolver of this.waitingForCapacity) {
|
|
218
|
-
resolver();
|
|
219
|
-
}
|
|
220
|
-
this.waitingForCapacity = [];
|
|
221
|
-
},
|
|
222
|
-
});
|
|
223
|
-
this.writable = this._writable;
|
|
224
|
-
}
|
|
225
|
-
async [Symbol.asyncDispose]() {
|
|
226
|
-
await this.close();
|
|
227
|
-
}
|
|
228
|
-
/**
|
|
229
|
-
* Get a stream of acknowledgements for appends.
|
|
230
|
-
*/
|
|
231
|
-
acks() {
|
|
232
|
-
return this._readable;
|
|
233
287
|
}
|
|
234
288
|
/**
|
|
235
289
|
* Close the append session.
|
|
236
290
|
* Waits for all pending appends to complete before resolving.
|
|
291
|
+
* Never throws - returns CloseResult.
|
|
237
292
|
*/
|
|
238
293
|
async close() {
|
|
239
|
-
|
|
294
|
+
try {
|
|
295
|
+
this.closed = true;
|
|
296
|
+
await this.waitForDrain();
|
|
297
|
+
return okClose();
|
|
298
|
+
}
|
|
299
|
+
catch (error) {
|
|
300
|
+
const s2Err = error instanceof S2Error
|
|
301
|
+
? error
|
|
302
|
+
: new S2Error({ message: String(error), status: 500 });
|
|
303
|
+
return errClose(s2Err);
|
|
304
|
+
}
|
|
240
305
|
}
|
|
241
306
|
/**
|
|
242
307
|
* Submit an append request to the session.
|
|
243
308
|
* The request will be queued and sent when no other request is in-flight.
|
|
244
|
-
*
|
|
309
|
+
* Never throws - returns AppendResult discriminated union.
|
|
245
310
|
*/
|
|
246
|
-
submit(records, args
|
|
311
|
+
submit(records, args) {
|
|
312
|
+
// Validate closed state
|
|
247
313
|
if (this.closed) {
|
|
248
|
-
return Promise.
|
|
314
|
+
return Promise.resolve(err(new S2Error({ message: "AppendSession is closed", status: 400 })));
|
|
249
315
|
}
|
|
250
316
|
const recordsArray = Array.isArray(records) ? records : [records];
|
|
251
|
-
// Validate batch size limits
|
|
317
|
+
// Validate batch size limits (non-retryable 400-level error)
|
|
252
318
|
if (recordsArray.length > 1000) {
|
|
253
|
-
return Promise.
|
|
319
|
+
return Promise.resolve(err(new S2Error({
|
|
254
320
|
message: `Batch of ${recordsArray.length} exceeds maximum batch size of 1000 records`,
|
|
255
|
-
|
|
321
|
+
status: 400,
|
|
322
|
+
code: "INVALID_ARGUMENT",
|
|
323
|
+
})));
|
|
256
324
|
}
|
|
257
325
|
// Validate metered size (use precalculated if provided)
|
|
258
|
-
let batchMeteredSize = precalculatedSize ?? 0;
|
|
326
|
+
let batchMeteredSize = args?.precalculatedSize ?? 0;
|
|
259
327
|
if (batchMeteredSize === 0) {
|
|
260
328
|
for (const record of recordsArray) {
|
|
261
|
-
batchMeteredSize +=
|
|
329
|
+
batchMeteredSize += meteredBytes(record);
|
|
262
330
|
}
|
|
263
331
|
}
|
|
264
332
|
if (batchMeteredSize > 1024 * 1024) {
|
|
265
|
-
return Promise.
|
|
333
|
+
return Promise.resolve(err(new S2Error({
|
|
266
334
|
message: `Batch size ${batchMeteredSize} bytes exceeds maximum of 1 MiB (1048576 bytes)`,
|
|
267
|
-
|
|
335
|
+
status: 400,
|
|
336
|
+
code: "INVALID_ARGUMENT",
|
|
337
|
+
})));
|
|
268
338
|
}
|
|
269
|
-
return new Promise((resolve
|
|
339
|
+
return new Promise((resolve) => {
|
|
270
340
|
this.queue.push({
|
|
271
341
|
records: recordsArray,
|
|
272
342
|
fencing_token: args?.fencing_token,
|
|
273
343
|
match_seq_num: args?.match_seq_num,
|
|
274
|
-
meteredSize: batchMeteredSize,
|
|
275
344
|
});
|
|
276
|
-
this.
|
|
277
|
-
this.pendingResolvers.push({ resolve, reject });
|
|
345
|
+
this.pendingResolvers.push({ resolve });
|
|
278
346
|
// Start processing if not already running
|
|
279
347
|
if (!this.processingPromise) {
|
|
280
|
-
|
|
348
|
+
// Attach a catch to avoid unhandled rejection warnings on hard failures
|
|
349
|
+
this.processingPromise = this.processLoop().catch(() => { });
|
|
281
350
|
}
|
|
282
351
|
});
|
|
283
352
|
}
|
|
284
353
|
/**
|
|
285
354
|
* Main processing loop that sends queued requests one at a time.
|
|
355
|
+
* Single-flight: only one request in progress at a time.
|
|
286
356
|
*/
|
|
287
357
|
async processLoop() {
|
|
288
358
|
while (this.queue.length > 0) {
|
|
@@ -294,41 +364,27 @@ export class FetchAppendSession {
|
|
|
294
364
|
fencing_token: args.fencing_token,
|
|
295
365
|
match_seq_num: args.match_seq_num,
|
|
296
366
|
}, this.options);
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
if (this.acksController) {
|
|
300
|
-
this.acksController.enqueue(ack);
|
|
301
|
-
}
|
|
302
|
-
// Resolve the promise for this request
|
|
303
|
-
resolver.resolve(ack);
|
|
304
|
-
// Release capacity and wake up waiting writers
|
|
305
|
-
this.queuedBytes -= args.meteredSize;
|
|
306
|
-
while (this.waitingForCapacity.length > 0) {
|
|
307
|
-
const waiter = this.waitingForCapacity.shift();
|
|
308
|
-
waiter();
|
|
309
|
-
// Only wake one at a time - let them check capacity again
|
|
310
|
-
break;
|
|
311
|
-
}
|
|
367
|
+
// Resolve with success result
|
|
368
|
+
resolver.resolve(ok(ack));
|
|
312
369
|
}
|
|
313
370
|
catch (error) {
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
//
|
|
371
|
+
// Convert error to S2Error and resolve with error result
|
|
372
|
+
const s2Err = error instanceof S2Error
|
|
373
|
+
? error
|
|
374
|
+
: new S2Error({ message: String(error), status: 502 });
|
|
375
|
+
// Resolve this request with error
|
|
376
|
+
resolver.resolve(err(s2Err));
|
|
377
|
+
// Resolve all remaining pending promises with the same error
|
|
378
|
+
// (transport failure affects all queued requests)
|
|
319
379
|
for (const pendingResolver of this.pendingResolvers) {
|
|
320
|
-
pendingResolver.
|
|
380
|
+
pendingResolver.resolve(err(s2Err));
|
|
321
381
|
}
|
|
322
382
|
this.pendingResolvers = [];
|
|
323
|
-
// Clear the queue
|
|
383
|
+
// Clear the queue
|
|
324
384
|
this.queue = [];
|
|
325
|
-
this.
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
waiter();
|
|
329
|
-
}
|
|
330
|
-
this.waitingForCapacity = [];
|
|
331
|
-
// Do not rethrow here to avoid unhandled rejection; callers already received rejection
|
|
385
|
+
this.inFlight = false;
|
|
386
|
+
this.processingPromise = null;
|
|
387
|
+
return;
|
|
332
388
|
}
|
|
333
389
|
this.inFlight = false;
|
|
334
390
|
}
|
|
@@ -343,13 +399,6 @@ export class FetchAppendSession {
|
|
|
343
399
|
while (this.queue.length > 0 || this.inFlight) {
|
|
344
400
|
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
345
401
|
}
|
|
346
|
-
// Close the acks stream if it exists
|
|
347
|
-
if (this.acksController) {
|
|
348
|
-
this.acksController.close();
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
lastAckedPosition() {
|
|
352
|
-
return this._lastAckedPosition;
|
|
353
402
|
}
|
|
354
403
|
}
|
|
355
404
|
/**
|
|
@@ -363,14 +412,25 @@ export class FetchTransport {
|
|
|
363
412
|
this.client = createClient(createConfig({
|
|
364
413
|
baseUrl: config.baseUrl,
|
|
365
414
|
auth: () => Redacted.value(config.accessToken),
|
|
415
|
+
headers: config.basinName ? { "s2-basin": config.basinName } : {},
|
|
366
416
|
}));
|
|
367
417
|
this.transportConfig = config;
|
|
368
418
|
}
|
|
369
419
|
async makeAppendSession(stream, sessionOptions, requestOptions) {
|
|
370
|
-
|
|
420
|
+
// Fetch transport intentionally enforces single-flight submission (HTTP/1.1)
|
|
421
|
+
// This ensures only one batch is in-flight at a time, regardless of user setting.
|
|
422
|
+
const opts = {
|
|
423
|
+
...sessionOptions,
|
|
424
|
+
maxInflightBatches: 1,
|
|
425
|
+
};
|
|
426
|
+
return AppendSessionImpl.create((myOptions) => {
|
|
427
|
+
return FetchAppendSession.create(stream, this.transportConfig, myOptions, requestOptions);
|
|
428
|
+
}, opts, this.transportConfig.retry);
|
|
371
429
|
}
|
|
372
430
|
async makeReadSession(stream, args, options) {
|
|
373
|
-
return
|
|
431
|
+
return ReadSessionImpl.create((myArgs) => {
|
|
432
|
+
return FetchReadSession.create(this.client, stream, myArgs, options);
|
|
433
|
+
}, args, this.transportConfig.retry);
|
|
374
434
|
}
|
|
375
435
|
}
|
|
376
436
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/fetch/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/fetch/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { S2RequestOptions } from "../../../../common.js";
|
|
2
2
|
import type { Client } from "../../../../generated/client/index.js";
|
|
3
|
-
import { type AppendAck } from "../../../../generated/index.js";
|
|
4
3
|
import type { AppendArgs, AppendRecord, ReadArgs, ReadBatch } from "../../types.js";
|
|
5
4
|
export declare function streamRead<Format extends "string" | "bytes" = "string">(stream: string, client: Client, args?: ReadArgs<Format>, options?: S2RequestOptions): Promise<ReadBatch<Format>>;
|
|
6
|
-
export declare function streamAppend(stream: string, client: Client, records: AppendRecord | AppendRecord[], args?: Omit<AppendArgs, "records">, options?: S2RequestOptions): Promise<
|
|
5
|
+
export declare function streamAppend(stream: string, client: Client, records: AppendRecord | AppendRecord[], args?: Omit<AppendArgs, "records">, options?: S2RequestOptions): Promise<any>;
|
|
7
6
|
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/fetch/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/fetch/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAQ9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAepE,OAAO,KAAK,EACX,UAAU,EAEV,YAAY,EAEZ,QAAQ,EACR,SAAS,EACT,MAAM,gBAAgB,CAAC;AAExB,wBAAsB,UAAU,CAAC,MAAM,SAAS,QAAQ,GAAG,OAAO,GAAG,QAAQ,EAC5E,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,OAAO,CAAC,EAAE,gBAAgB,8BA8D1B;AAED,wBAAsB,YAAY,CACjC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,GAAG,YAAY,EAAE,EACtC,IAAI,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAClC,OAAO,CAAC,EAAE,gBAAgB,gBAqG1B"}
|