@mastra/duckdb 1.10.0-alpha.2 → 1.10.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/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/{observability-VRBKtkKz.js → observability-D3311DPa.js} +40 -4
- package/dist/observability-D3311DPa.js.map +1 -0
- package/dist/{observability-CCPCADER.cjs → observability-POEhuHwk.cjs} +40 -4
- package/dist/observability-POEhuHwk.cjs.map +1 -0
- package/dist/storage/domains/observability/trace-query.d.ts.map +1 -1
- package/package.json +5 -5
- package/dist/observability-CCPCADER.cjs.map +0 -1
- package/dist/observability-VRBKtkKz.js.map +0 -1
package/dist/docs/SKILL.md
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -532,7 +532,7 @@ var ObservabilityStorageDuckDB = class extends _mastra_core_storage.Observabilit
|
|
|
532
532
|
async loadDelegate() {
|
|
533
533
|
if (this.delegate) return this.delegate;
|
|
534
534
|
if (this.unavailableError) return null;
|
|
535
|
-
if (!this.loadPromise) this.loadPromise = Promise.resolve().then(() => require("./observability-
|
|
535
|
+
if (!this.loadPromise) this.loadPromise = Promise.resolve().then(() => require("./observability-POEhuHwk.cjs")).then(({ ObservabilityStorageDuckDB }) => {
|
|
536
536
|
const delegate = new ObservabilityStorageDuckDB({ db: this.db });
|
|
537
537
|
this.delegate = delegate;
|
|
538
538
|
return delegate;
|
package/dist/index.js
CHANGED
|
@@ -531,7 +531,7 @@ var ObservabilityStorageDuckDB = class extends ObservabilityStorage {
|
|
|
531
531
|
async loadDelegate() {
|
|
532
532
|
if (this.delegate) return this.delegate;
|
|
533
533
|
if (this.unavailableError) return null;
|
|
534
|
-
if (!this.loadPromise) this.loadPromise = import("./observability-
|
|
534
|
+
if (!this.loadPromise) this.loadPromise = import("./observability-D3311DPa.js").then(({ ObservabilityStorageDuckDB }) => {
|
|
535
535
|
const delegate = new ObservabilityStorageDuckDB({ db: this.db });
|
|
536
536
|
this.delegate = delegate;
|
|
537
537
|
return delegate;
|
|
@@ -3166,7 +3166,7 @@ function compileDuckDBTraceQuery(plan) {
|
|
|
3166
3166
|
}
|
|
3167
3167
|
const ctes = compileDuckDBTraceScope(collectRelatedCollections(plan.where));
|
|
3168
3168
|
ctes.push(`candidates AS (
|
|
3169
|
-
SELECT ${TRACE_SELECT}
|
|
3169
|
+
SELECT ${TRACE_SELECT}${plan.paginationMode === "delta" ? ", r.cursorId AS deltaWatermark" : ""}
|
|
3170
3170
|
FROM root_scope r
|
|
3171
3171
|
WHERE ${conditions.slice(3).join("\n AND ") || "TRUE"}
|
|
3172
3172
|
)`);
|
|
@@ -3186,6 +3186,26 @@ LIMIT ?`,
|
|
|
3186
3186
|
values
|
|
3187
3187
|
};
|
|
3188
3188
|
}
|
|
3189
|
+
if (plan.paginationMode === "delta") {
|
|
3190
|
+
const watermark = coreStorage.getTraceQueryDeltaWatermark(plan, "duckdb");
|
|
3191
|
+
if (watermark !== void 0 && (!/^\d+$/.test(watermark) || BigInt(watermark) > 9223372036854775807n)) throw new coreStorage.TraceQueryCursorError("TRACE_QUERY_CURSOR_MALFORMED");
|
|
3192
|
+
values.push(watermark ?? "0", plan.limit + 1);
|
|
3193
|
+
return {
|
|
3194
|
+
sql: `${candidates},
|
|
3195
|
+
delta_head AS (SELECT coalesce(max(cursorId), 0) AS streamHead FROM root_events),
|
|
3196
|
+
delta_rows AS (
|
|
3197
|
+
SELECT * FROM candidates
|
|
3198
|
+
WHERE deltaWatermark > CAST(? AS BIGINT) ${watermark === void 0 ? "AND FALSE" : ""}
|
|
3199
|
+
ORDER BY deltaWatermark ASC, traceId ASC
|
|
3200
|
+
LIMIT ?
|
|
3201
|
+
)
|
|
3202
|
+
SELECT delta_rows.*, delta_head.streamHead
|
|
3203
|
+
FROM delta_head
|
|
3204
|
+
LEFT JOIN delta_rows ON TRUE
|
|
3205
|
+
ORDER BY delta_rows.deltaWatermark ASC NULLS LAST, delta_rows.traceId ASC`,
|
|
3206
|
+
values
|
|
3207
|
+
};
|
|
3208
|
+
}
|
|
3189
3209
|
const orderField = plan.orderBy.field;
|
|
3190
3210
|
const direction = plan.orderBy.direction === "asc" ? "ASC" : "DESC";
|
|
3191
3211
|
if (plan.paginationMode === "page") {
|
|
@@ -3202,7 +3222,7 @@ LIMIT ?`,
|
|
|
3202
3222
|
SELECT COUNT(*) AS total
|
|
3203
3223
|
FROM candidates
|
|
3204
3224
|
)
|
|
3205
|
-
SELECT page_rows.*, page_total.total
|
|
3225
|
+
SELECT page_rows.*, page_total.total${deltaPollingFeatureEnabled() ? ", (SELECT coalesce(max(cursorId), 0) FROM root_events) AS streamHead" : ""}
|
|
3206
3226
|
FROM page_total
|
|
3207
3227
|
LEFT JOIN page_rows ON TRUE
|
|
3208
3228
|
ORDER BY page_rows.__row_position ASC NULLS LAST`,
|
|
@@ -3371,6 +3391,7 @@ function asIsoTimestamp(value) {
|
|
|
3371
3391
|
return value instanceof Date ? value.toISOString() : new Date(value).toISOString();
|
|
3372
3392
|
}
|
|
3373
3393
|
async function queryTraces(db, plan) {
|
|
3394
|
+
if (plan.paginationMode === "delta") assertDeltaPollingEnabled();
|
|
3374
3395
|
if (plan.paginationMode === "page") {
|
|
3375
3396
|
const query = compileDuckDBTraceQuery(plan);
|
|
3376
3397
|
const rows = await db.query(query.sql, query.values);
|
|
@@ -3395,6 +3416,7 @@ async function queryTraces(db, plan) {
|
|
|
3395
3416
|
}));
|
|
3396
3417
|
return coreStorage.traceQueryResponseSchema.parse({
|
|
3397
3418
|
traces,
|
|
3419
|
+
...deltaPollingFeatureEnabled() && typeof coreStorage.encodeTraceQueryDeltaCursor === "function" ? { deltaCursor: coreStorage.encodeTraceQueryDeltaCursor(plan, "duckdb", String(rows[0]?.streamHead ?? 0)) } : {},
|
|
3398
3420
|
pagination: {
|
|
3399
3421
|
total,
|
|
3400
3422
|
page: plan.page,
|
|
@@ -3405,7 +3427,8 @@ async function queryTraces(db, plan) {
|
|
|
3405
3427
|
}
|
|
3406
3428
|
const query = compileDuckDBTraceQuery(plan);
|
|
3407
3429
|
const rows = await db.query(query.sql, query.values);
|
|
3408
|
-
const
|
|
3430
|
+
const matchingRows = plan.paginationMode === "delta" ? rows.filter((row) => row.traceId != null) : rows;
|
|
3431
|
+
const visibleRows = matchingRows.slice(0, plan.limit);
|
|
3409
3432
|
if (plan.result === "groups") {
|
|
3410
3433
|
const groups = visibleRows.map((row) => ({ threadId: String(row.threadId) }));
|
|
3411
3434
|
const last = groups.at(-1);
|
|
@@ -3435,6 +3458,19 @@ async function queryTraces(db, plan) {
|
|
|
3435
3458
|
environment: row.environment == null ? null : String(row.environment),
|
|
3436
3459
|
status: row.status
|
|
3437
3460
|
}));
|
|
3461
|
+
if (plan.paginationMode === "delta") {
|
|
3462
|
+
const previous = coreStorage.getTraceQueryDeltaWatermark(plan, "duckdb") ?? "0";
|
|
3463
|
+
const head = String(rows[0]?.streamHead ?? 0);
|
|
3464
|
+
const watermark = visibleRows.length ? String(visibleRows.at(-1).deltaWatermark) : BigInt(head) > BigInt(previous) ? head : previous;
|
|
3465
|
+
return coreStorage.traceQueryResponseSchema.parse({
|
|
3466
|
+
traces,
|
|
3467
|
+
delta: {
|
|
3468
|
+
limit: plan.limit,
|
|
3469
|
+
hasMore: matchingRows.length > plan.limit
|
|
3470
|
+
},
|
|
3471
|
+
deltaCursor: coreStorage.encodeTraceQueryDeltaCursor(plan, "duckdb", watermark)
|
|
3472
|
+
});
|
|
3473
|
+
}
|
|
3438
3474
|
const last = traces.at(-1);
|
|
3439
3475
|
return coreStorage.traceQueryResponseSchema.parse({
|
|
3440
3476
|
traces,
|
|
@@ -4909,4 +4945,4 @@ var ObservabilityStorageDuckDB = class ObservabilityStorageDuckDB extends Observ
|
|
|
4909
4945
|
//#endregion
|
|
4910
4946
|
export { ObservabilityStorageDuckDB };
|
|
4911
4947
|
|
|
4912
|
-
//# sourceMappingURL=observability-
|
|
4948
|
+
//# sourceMappingURL=observability-D3311DPa.js.map
|