pipework 0.283.0 → 0.284.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/CHANGELOG.md +4 -0
- package/dist/core/config/load.d.ts +8 -0
- package/dist/core/config/load.d.ts.map +1 -1
- package/dist/core/config/load.js +4 -0
- package/dist/core/config/load.js.map +1 -1
- package/dist/core/config/namespace.d.ts +4 -0
- package/dist/core/config/namespace.d.ts.map +1 -1
- package/dist/core/config/schema.d.ts +8 -0
- package/dist/core/config/schema.d.ts.map +1 -1
- package/dist/core/config/schema.js +4 -0
- package/dist/core/config/schema.js.map +1 -1
- package/dist/core/surface/types.d.ts +4 -0
- package/dist/core/surface/types.d.ts.map +1 -1
- package/dist/data/db/namespace.d.ts +1 -1
- package/dist/data/db/namespace.d.ts.map +1 -1
- package/dist/data/db/namespace.js +1 -1
- package/dist/data/db/namespace.js.map +1 -1
- package/dist/data/db/pool.js +2 -2
- package/dist/data/db/pool.js.map +1 -1
- package/dist/data/db/query-size.d.ts +18 -0
- package/dist/data/db/query-size.d.ts.map +1 -0
- package/dist/data/db/query-size.js +68 -0
- package/dist/data/db/query-size.js.map +1 -0
- package/dist/data/db/query-watch.d.ts +16 -0
- package/dist/data/db/query-watch.d.ts.map +1 -1
- package/dist/data/db/query-watch.js +35 -4
- package/dist/data/db/query-watch.js.map +1 -1
- package/dist/test/plugin.js +3 -3
- package/dist/test/plugin.js.map +1 -1
- package/package.json +6 -2
- package/src/core/config/load.ts +12 -0
- package/src/core/config/schema.ts +4 -0
- package/src/core/surface/types.ts +4 -0
- package/src/data/db/namespace.ts +1 -1
- package/src/data/db/pool.ts +2 -2
- package/src/data/db/query-size.ts +63 -0
- package/src/data/db/query-watch.ts +47 -4
- package/src/test/plugin.ts +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.284.0
|
|
4
|
+
|
|
5
|
+
- **Added: `query:large`, a warning when a statement's size is over a budget** (#975). `query:slow` reports only time, so a 196 KB statement with ~20 MB of parameters and 300+ union arms, or a read draining 714k rows to keep 18k, went unnoticed. Four `observability` budgets, each a non-negative integer where 0 turns it off and nothing is measured for it: `largeQueryParamBytes` (estimated bind-parameter bytes: strings by UTF-8 length, buffers by byte length, arrays summed, scalars 8, objects by JSON length; default 8 MiB), `largeQuerySqlChars` (SQL text length; default 131072), `largeQueryArms` (UNION/INTERSECT/EXCEPT arms counted in the SQL text at every depth, quoted literals and identifiers skipped; default 50) and `largeQueryRows` (rows returned or affected; default 100000). A statement over any of them logs one `query:large` warning after it settles, with the label (as `query:slow` gives it), the database, `over` (the budgets exceeded) and every enabled measurement. Measuring never affects the statement.
|
|
6
|
+
|
|
3
7
|
## 0.283.0
|
|
4
8
|
|
|
5
9
|
- **Added: `observability.onStatementSettled`, a hook fired once for every statement as it settles** (#976). `onStatement` fires when a statement is written, with no duration, rows, error or label, and `query:slow` reaches only the log, above a threshold, so an app could not attribute statement time to its own phases. The new hook receives `{ label, durationMs, rows, connectionId, error? }` (`StatementSettledEvent`): `label` is the `pipe.labelled` label in effect (null when none, never the SQL text); `durationMs` comes from the same timer as `query:slow`, so the two agree; `rows` is the command-tag count (rows returned, or affected by a write without RETURNING; 0 for DDL or a failure); `connectionId` is the ordinal `onStatement` reports; `error` is name, message and SQLSTATE `code` only, never parameters. It fires for every statement through pipework's query path (`pipe()`, `pipe.*` writes, `connection.drizzle`, transactions, savepoints, the test harness), not for the driver's own BEGIN/COMMIT, the raw `client` door or the migration runner's connection. A hook that throws or rejects is logged as `statement:settled-hook-failed` and never affects the statement; unset, it costs nothing. Carrying the label to Postgres is #977; an alert source over settled statements is #978.
|
|
@@ -4,6 +4,14 @@ export interface ResolvedObservability {
|
|
|
4
4
|
readonly slowQueryMs: number;
|
|
5
5
|
/** Interval at which a still-running statement is reported; undefined = off. */
|
|
6
6
|
readonly inFlightQueryMs?: number | undefined;
|
|
7
|
+
/** Estimated bind-parameter bytes above which a statement logs `query:large`; 0 = off. */
|
|
8
|
+
readonly largeQueryParamBytes: number;
|
|
9
|
+
/** SQL text length (characters) above which a statement logs `query:large`; 0 = off. */
|
|
10
|
+
readonly largeQuerySqlChars: number;
|
|
11
|
+
/** UNION/INTERSECT/EXCEPT arms (a text count) above which a statement logs `query:large`; 0 = off. */
|
|
12
|
+
readonly largeQueryArms: number;
|
|
13
|
+
/** Rows returned (or affected) above which a statement logs `query:large`; 0 = off. */
|
|
14
|
+
readonly largeQueryRows: number;
|
|
7
15
|
readonly logAllQueries: boolean;
|
|
8
16
|
readonly poolMetricsInterval: number;
|
|
9
17
|
/** Caller-supplied per-statement observer; undefined when not configured. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../../src/core/config/load.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../../src/core/config/load.ts"],"names":[],"mappings":"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"}
|
package/dist/core/config/load.js
CHANGED
|
@@ -125,6 +125,10 @@ function buildResolved(config, environment, baseDir) {
|
|
|
125
125
|
observability: {
|
|
126
126
|
slowQueryMs: config.observability?.slowQueryMs ?? 500,
|
|
127
127
|
inFlightQueryMs: config.observability?.inFlightQueryMs,
|
|
128
|
+
largeQueryParamBytes: config.observability?.largeQueryParamBytes ?? 8_388_608,
|
|
129
|
+
largeQuerySqlChars: config.observability?.largeQuerySqlChars ?? 131_072,
|
|
130
|
+
largeQueryArms: config.observability?.largeQueryArms ?? 50,
|
|
131
|
+
largeQueryRows: config.observability?.largeQueryRows ?? 100_000,
|
|
128
132
|
logAllQueries: config.observability?.logAllQueries ?? false,
|
|
129
133
|
poolMetricsInterval: config.observability?.poolMetricsInterval ?? 0,
|
|
130
134
|
onStatement: config.observability?.onStatement,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/core/config/load.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/core/config/load.ts"],"names":[],"mappings":"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"}
|
|
@@ -262,6 +262,10 @@ export declare const config: {
|
|
|
262
262
|
}, import("zod/v4/core").$strip>>;
|
|
263
263
|
observability: import("zod/v4").ZodOptional<import("zod/v4").ZodObject<{
|
|
264
264
|
slowQueryMs: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
265
|
+
largeQueryParamBytes: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
266
|
+
largeQuerySqlChars: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
267
|
+
largeQueryArms: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
268
|
+
largeQueryRows: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
265
269
|
inFlightQueryMs: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
266
270
|
logAllQueries: import("zod/v4").ZodOptional<import("zod/v4").ZodBoolean>;
|
|
267
271
|
poolMetricsInterval: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/core/config/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAqB,WAAW,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,oGAAoG;AACpG,eAAO,MAAM,MAAM;IACjB,4FAA4F;;IAE5F,0FAA0F;;IAE1F,kFAAkF
|
|
1
|
+
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/core/config/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAqB,WAAW,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,oGAAoG;AACpG,eAAO,MAAM,MAAM;IACjB,4FAA4F;;IAE5F,0FAA0F;;IAE1F,kFAAkF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAElF,gFAAgF;;CAEjF,CAAA"}
|
|
@@ -103,6 +103,10 @@ declare const fastPathSchema: z.ZodObject<{
|
|
|
103
103
|
}, z.core.$strip>;
|
|
104
104
|
declare const observabilitySchema: z.ZodObject<{
|
|
105
105
|
slowQueryMs: z.ZodOptional<z.ZodNumber>;
|
|
106
|
+
largeQueryParamBytes: z.ZodOptional<z.ZodNumber>;
|
|
107
|
+
largeQuerySqlChars: z.ZodOptional<z.ZodNumber>;
|
|
108
|
+
largeQueryArms: z.ZodOptional<z.ZodNumber>;
|
|
109
|
+
largeQueryRows: z.ZodOptional<z.ZodNumber>;
|
|
106
110
|
inFlightQueryMs: z.ZodOptional<z.ZodNumber>;
|
|
107
111
|
logAllQueries: z.ZodOptional<z.ZodBoolean>;
|
|
108
112
|
poolMetricsInterval: z.ZodOptional<z.ZodNumber>;
|
|
@@ -624,6 +628,10 @@ export declare const trunkConfigSchema: z.ZodObject<{
|
|
|
624
628
|
}, z.core.$strip>>;
|
|
625
629
|
observability: z.ZodOptional<z.ZodObject<{
|
|
626
630
|
slowQueryMs: z.ZodOptional<z.ZodNumber>;
|
|
631
|
+
largeQueryParamBytes: z.ZodOptional<z.ZodNumber>;
|
|
632
|
+
largeQuerySqlChars: z.ZodOptional<z.ZodNumber>;
|
|
633
|
+
largeQueryArms: z.ZodOptional<z.ZodNumber>;
|
|
634
|
+
largeQueryRows: z.ZodOptional<z.ZodNumber>;
|
|
627
635
|
inFlightQueryMs: z.ZodOptional<z.ZodNumber>;
|
|
628
636
|
logAllQueries: z.ZodOptional<z.ZodBoolean>;
|
|
629
637
|
poolMetricsInterval: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAI1F,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;iBAkDlB,CAAA;AAIF,QAAA,MAAM,UAAU;;;;iBAId,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;;EAAmD,CAAA;AAE9E,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;iBA0Bd,CAAA;AAEF,QAAA,MAAM,iBAAiB;;;;EAAgD,CAAA;AAYvE,QAAA,MAAM,WAAW;;;;;;;;;;;;;iBAUf,CAAA;AAEF,QAAA,MAAM,WAAW;;;iBAGf,CAAA;AAEF,QAAA,MAAM,WAAW,gCAAe,CAAA;AAEhC,QAAA,MAAM,iBAAiB,gCAAe,CAAA;AAEtC,QAAA,MAAM,kBAAkB,gCAAe,CAAA;AAEvC,QAAA,MAAM,aAAa,gCAAe,CAAA;AAElC,QAAA,MAAM,gBAAgB,gCAAe,CAAA;AAErC,QAAA,MAAM,WAAW,gCAAe,CAAA;AAEhC,QAAA,MAAM,aAAa,gCAAe,CAAA;AAClC,QAAA,MAAM,WAAW;;iBAEf,CAAA;AACF,QAAA,MAAM,YAAY,gCAAe,CAAA;AAmBjC,QAAA,MAAM,cAAc;;;;;;;;;;iBAUlB,CAAA;AAEF,QAAA,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -124,6 +124,10 @@ const fastPathSchema = z.object({
|
|
|
124
124
|
});
|
|
125
125
|
const observabilitySchema = z.object({
|
|
126
126
|
slowQueryMs: z.number().int().positive().optional().describe('Warn when a query exceeds this duration in ms'),
|
|
127
|
+
largeQueryParamBytes: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement\'s bind parameters total more than this many bytes, estimated (default 8388608; 0 = off)'),
|
|
128
|
+
largeQuerySqlChars: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement\'s SQL text is longer than this many characters (default 131072; 0 = off)'),
|
|
129
|
+
largeQueryArms: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement\'s SQL has more than this many UNION/INTERSECT/EXCEPT arms, counted in the text (default 50; 0 = off)'),
|
|
130
|
+
largeQueryRows: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement returns (or affects) more than this many rows (default 100000; 0 = off)'),
|
|
127
131
|
inFlightQueryMs: z.number().int().positive().optional().describe('While a statement is still running, log what it is waiting on every this many ms (unset = off)'),
|
|
128
132
|
logAllQueries: z.boolean().optional().describe('Log every query at debug level'),
|
|
129
133
|
poolMetricsInterval: z.number().int().nonnegative().optional().describe('Seconds between pool metric summaries (0 = disabled)'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,10 @@ export interface SurfaceContext {
|
|
|
66
66
|
readonly observability: {
|
|
67
67
|
readonly slowQueryMs: number;
|
|
68
68
|
readonly inFlightQueryMs?: number | undefined;
|
|
69
|
+
readonly largeQueryParamBytes: number;
|
|
70
|
+
readonly largeQuerySqlChars: number;
|
|
71
|
+
readonly largeQueryArms: number;
|
|
72
|
+
readonly largeQueryRows: number;
|
|
69
73
|
readonly logAllQueries: boolean;
|
|
70
74
|
readonly poolMetricsInterval: number;
|
|
71
75
|
readonly onStatement: import('../config/statement-observer.js').StatementObserver | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/surface/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/surface/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -144,7 +144,7 @@ export declare const pipe: typeof getDb & {
|
|
|
144
144
|
readonly inList: typeof import("./in-list.js").inList;
|
|
145
145
|
readonly notInList: typeof import("./in-list.js").notInList;
|
|
146
146
|
};
|
|
147
|
-
/** Names every statement `fn` starts, in `query:slow` and `query:in-flight` log lines: `pipe.labelled('servable-footprints', async () => await ...)`. A query builder is lazy: `fn` must await it, not return it, or it runs outside the scope. */
|
|
147
|
+
/** Names every statement `fn` starts, in `query:slow`, `query:large` and `query:in-flight` log lines: `pipe.labelled('servable-footprints', async () => await ...)`. A query builder is lazy: `fn` must await it, not return it, or it runs outside the scope. */
|
|
148
148
|
labelled: typeof labelled;
|
|
149
149
|
/** Raw statement tag — for a statement pipework does not model. Interpolated values are parameters; `sql.raw` is not. Runs on the caller's connection, so inside a request it is the request transaction. Writes still go through pipe.update / insert / delete, which is what audit hooks. */
|
|
150
150
|
sql: typeof sql;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/db/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGnM,OAAO,EAAS,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAGzE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE3E,6EAA6E;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,mJAAmJ;AACnJ,eAAO,MAAM,IAAI;IACf,iQAAiQ;;IAGjQ,6QAA6Q;;IAG7Q,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG7E,
|
|
1
|
+
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/db/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGnM,OAAO,EAAS,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAGzE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE3E,6EAA6E;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,mJAAmJ;AACnJ,eAAO,MAAM,IAAI;IACf,iQAAiQ;;IAGjQ,6QAA6Q;;IAG7Q,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG7E,kQAAkQ;;IAGlQ,+RAA+R;;;;;;;;;;;;;IAkB/R,oDAAoD;;IAEpD,mDAAmD;;IAGnD,6EAA6E;;IAG7E,gFAAgF;;IAGhF,qHAAqH;;IAGrH,kHAAkH;;IAGlH,oMAAoM;;IAGpM,2GAA2G;;IAG3G,0GAA0G;;IAG1G,uVAAuV;;IAGvV,uNAAuN;;IAGvN,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;IAE9E,qMAAqM;;IAErM,6DAA6D;;IAE7D,+LAA+L;;IAG/L,2GAA2G;;IAE3G,kNAAkN;;IAElN,gHAAgH;;IAEhH,kQAAkQ;;CAElQ,CAAA"}
|
|
@@ -27,7 +27,7 @@ export const pipe = Object.assign(getDb, {
|
|
|
27
27
|
door: pipeDoor,
|
|
28
28
|
/** Query operators and aggregates — eq, gt, lt, and, or, count, sum, etc. */
|
|
29
29
|
filter,
|
|
30
|
-
/** Names every statement `fn` starts, in `query:slow` and `query:in-flight` log lines: `pipe.labelled('servable-footprints', async () => await ...)`. A query builder is lazy: `fn` must await it, not return it, or it runs outside the scope. */
|
|
30
|
+
/** Names every statement `fn` starts, in `query:slow`, `query:large` and `query:in-flight` log lines: `pipe.labelled('servable-footprints', async () => await ...)`. A query builder is lazy: `fn` must await it, not return it, or it runs outside the scope. */
|
|
31
31
|
labelled,
|
|
32
32
|
/** Raw statement tag — for a statement pipework does not model. Interpolated values are parameters; `sql.raw` is not. Runs on the caller's connection, so inside a request it is the request transaction. Writes still go through pipe.update / insert / delete, which is what audit hooks. */
|
|
33
33
|
sql,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/data/db/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAEnM,qBAAqB;AACrB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAKzE,6EAA6E;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,mJAAmJ;AACnJ,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;IACvC,iQAAiQ;IACjQ,MAAM,EAAE,UAAU;IAElB,6QAA6Q;IAC7Q,IAAI,EAAE,QAAQ;IAEd,6EAA6E;IAC7E,MAAM;IAEN,
|
|
1
|
+
{"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/data/db/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAEnM,qBAAqB;AACrB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAKzE,6EAA6E;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,mJAAmJ;AACnJ,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;IACvC,iQAAiQ;IACjQ,MAAM,EAAE,UAAU;IAElB,6QAA6Q;IAC7Q,IAAI,EAAE,QAAQ;IAEd,6EAA6E;IAC7E,MAAM;IAEN,kQAAkQ;IAClQ,QAAQ;IAER,+RAA+R;IAC/R,GAAG;IAEH,kGAAkG;IAClG,eAAe;IACf,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,YAAY;IACZ,WAAW;IACX,qBAAqB;IACrB,OAAO;IAEP,qDAAqD;IACrD,UAAU;IACV,SAAS;IACT,SAAS;IAET,oDAAoD;IACpD,OAAO,EAAE,UAAU;IACnB,mDAAmD;IACnD,UAAU;IAEV,6EAA6E;IAC7E,QAAQ;IAER,gFAAgF;IAChF,YAAY;IAEZ,qHAAqH;IACrH,eAAe;IAEf,kHAAkH;IAClH,YAAY;IAEZ,oMAAoM;IACpM,YAAY;IAEZ,2GAA2G;IAC3G,OAAO;IAEP,0GAA0G;IAC1G,MAAM;IAEN,uVAAuV;IACvV,IAAI;IAEJ,uNAAuN;IACvN,EAAE;IAEF,8EAA8E;IAC9E,KAAK;IACL,qMAAqM;IACrM,MAAM;IACN,6DAA6D;IAC7D,WAAW;IACX,+LAA+L;IAC/L,QAAQ;IAER,2GAA2G;IAC3G,MAAM;IACN,kNAAkN;IAClN,MAAM;IACN,gHAAgH;IAChH,MAAM,EAAE,MAAM;IACd,kQAAkQ;IAClQ,MAAM;CACP,CAAC,CAAA"}
|
package/dist/data/db/pool.js
CHANGED
|
@@ -4,7 +4,7 @@ import { createDebugFn, isObserverOnly } from './instrumentation.js';
|
|
|
4
4
|
import { markObservedConnection } from '../query/postgres-js/driver-error-boundary.js';
|
|
5
5
|
import { warnRawClientIsUnsanitized } from './raw-client-warning.js';
|
|
6
6
|
import { splitLargeInserts } from './insert-split.js';
|
|
7
|
-
import { createStatementWatch } from './query-watch.js';
|
|
7
|
+
import { createStatementWatch, largeQueryBudgets } from './query-watch.js';
|
|
8
8
|
/** A lazily opened single-connection client that only sends cancels. */
|
|
9
9
|
function createCanceller(url) {
|
|
10
10
|
let client;
|
|
@@ -99,7 +99,7 @@ export function tap(url, options) {
|
|
|
99
99
|
/** Builds the pooled connection for one resolved database — used by the manifold's pool manager; consumers outside a managed context use `tap()` or `pool.getOrCreate()`. */
|
|
100
100
|
export function createManagedConnection(config, onClose, observability, applicationName) {
|
|
101
101
|
const statementWatch = observability
|
|
102
|
-
? createStatementWatch({ database: config.name, url: config.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled })
|
|
102
|
+
? createStatementWatch({ database: config.name, url: config.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled, budgets: largeQueryBudgets(observability) })
|
|
103
103
|
: undefined;
|
|
104
104
|
const baseDebug = observability ? createDebugFn(observability, statementWatch?.noteConnection) : undefined;
|
|
105
105
|
const slot = baseDebug ? { current: null } : undefined;
|
package/dist/data/db/pool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/data/db/pool.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,OAAO,EAA2B,MAAM,+BAA+B,CAAA;AAGhF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/data/db/pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Estimated bytes of the bind parameters of one statement. Strings count their UTF-8 length
|
|
3
|
+
* (no copy is made), Buffers/typed arrays their byte length, arrays the sum of their elements,
|
|
4
|
+
* numbers/booleans/dates a fixed 8, null/undefined 0. A plain object is a JSON value the driver
|
|
5
|
+
* will serialise: it is measured by `JSON.stringify` length, which serialises it once more than
|
|
6
|
+
* the driver does; ORM json columns arrive already stringified (counted as strings, free), so
|
|
7
|
+
* only a raw object parameter pays that. An unserialisable object counts as one scalar.
|
|
8
|
+
*/
|
|
9
|
+
export declare function parameterBytes(parameters: unknown): number;
|
|
10
|
+
/**
|
|
11
|
+
* Arms of the set operations in a statement's SQL text: set-operator keywords + 1, 0 when there
|
|
12
|
+
* are none. This is a text count at every nesting depth (a union inside a subquery or CTE costs the
|
|
13
|
+
* planner the same as one at the top), not a parse. Pipework sends values as bind parameters, so
|
|
14
|
+
* no keyword can appear inside a string value; a literal written with `sql.raw` is skipped by
|
|
15
|
+
* the scan. Comments and dollar-quoted bodies are not understood and can over-count.
|
|
16
|
+
*/
|
|
17
|
+
export declare function setOperationArms(sqlText: string): number;
|
|
18
|
+
//# sourceMappingURL=query-size.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-size.d.ts","sourceRoot":"","sources":["../../../src/data/db/query-size.ts"],"names":[],"mappings":"AAMA;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAK1D;AA6BD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAOxD"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
// Size measurements behind `query:large`. Each runs only when its budget is enabled (> 0), after the
|
|
2
|
+
// statement has settled, so a pool with every budget at 0 never calls into this file.
|
|
3
|
+
/** Bytes assumed for a number, bigint, boolean, Date or other fixed-width scalar parameter. */
|
|
4
|
+
const SCALAR_BYTES = 8;
|
|
5
|
+
/**
|
|
6
|
+
* Estimated bytes of the bind parameters of one statement. Strings count their UTF-8 length
|
|
7
|
+
* (no copy is made), Buffers/typed arrays their byte length, arrays the sum of their elements,
|
|
8
|
+
* numbers/booleans/dates a fixed 8, null/undefined 0. A plain object is a JSON value the driver
|
|
9
|
+
* will serialise: it is measured by `JSON.stringify` length, which serialises it once more than
|
|
10
|
+
* the driver does; ORM json columns arrive already stringified (counted as strings, free), so
|
|
11
|
+
* only a raw object parameter pays that. An unserialisable object counts as one scalar.
|
|
12
|
+
*/
|
|
13
|
+
export function parameterBytes(parameters) {
|
|
14
|
+
if (!Array.isArray(parameters))
|
|
15
|
+
return 0;
|
|
16
|
+
let total = 0;
|
|
17
|
+
for (const value of parameters)
|
|
18
|
+
total += valueBytes(value);
|
|
19
|
+
return total;
|
|
20
|
+
}
|
|
21
|
+
function valueBytes(value) {
|
|
22
|
+
if (value === null || value === undefined)
|
|
23
|
+
return 0;
|
|
24
|
+
switch (typeof value) {
|
|
25
|
+
case 'string': return Buffer.byteLength(value);
|
|
26
|
+
case 'object': break;
|
|
27
|
+
default: return SCALAR_BYTES;
|
|
28
|
+
}
|
|
29
|
+
if (value instanceof Date)
|
|
30
|
+
return SCALAR_BYTES;
|
|
31
|
+
if (ArrayBuffer.isView(value))
|
|
32
|
+
return value.byteLength;
|
|
33
|
+
if (value instanceof ArrayBuffer)
|
|
34
|
+
return value.byteLength;
|
|
35
|
+
if (Array.isArray(value)) {
|
|
36
|
+
let total = 0;
|
|
37
|
+
for (const item of value)
|
|
38
|
+
total += valueBytes(item);
|
|
39
|
+
return total;
|
|
40
|
+
}
|
|
41
|
+
try {
|
|
42
|
+
const json = JSON.stringify(value);
|
|
43
|
+
return json === undefined ? 0 : json.length;
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return SCALAR_BYTES;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Single left-to-right scan: a quoted literal or quoted identifier is consumed whole, so a keyword
|
|
50
|
+
// inside one is never counted; what is left are bare UNION / INTERSECT / EXCEPT words.
|
|
51
|
+
const SET_OPERATION = /'[^']*(?:''[^']*)*'|"[^"]*(?:""[^"]*)*"|\b(?:union|intersect|except)\b/gi;
|
|
52
|
+
/**
|
|
53
|
+
* Arms of the set operations in a statement's SQL text: set-operator keywords + 1, 0 when there
|
|
54
|
+
* are none. This is a text count at every nesting depth (a union inside a subquery or CTE costs the
|
|
55
|
+
* planner the same as one at the top), not a parse. Pipework sends values as bind parameters, so
|
|
56
|
+
* no keyword can appear inside a string value; a literal written with `sql.raw` is skipped by
|
|
57
|
+
* the scan. Comments and dollar-quoted bodies are not understood and can over-count.
|
|
58
|
+
*/
|
|
59
|
+
export function setOperationArms(sqlText) {
|
|
60
|
+
let operators = 0;
|
|
61
|
+
for (const match of sqlText.matchAll(SET_OPERATION)) {
|
|
62
|
+
const first = match[0][0];
|
|
63
|
+
if (first !== "'" && first !== '"')
|
|
64
|
+
operators++;
|
|
65
|
+
}
|
|
66
|
+
return operators === 0 ? 0 : operators + 1;
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=query-size.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-size.js","sourceRoot":"","sources":["../../../src/data/db/query-size.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,sFAAsF;AAEtF,+FAA+F;AAC/F,MAAM,YAAY,GAAG,CAAC,CAAA;AAEtB;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,UAAmB;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QAAE,OAAO,CAAC,CAAA;IACxC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,KAAK,MAAM,KAAK,IAAI,UAAU;QAAE,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;IAC1D,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,CAAA;IACnD,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ,CAAC,CAAC,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAC9C,KAAK,QAAQ,CAAC,CAAC,MAAK;QACpB,OAAO,CAAC,CAAC,OAAO,YAAY,CAAA;IAC9B,CAAC;IACD,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,YAAY,CAAA;IAC9C,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,UAAU,CAAA;IACtD,IAAI,KAAK,YAAY,WAAW;QAAE,OAAO,KAAK,CAAC,UAAU,CAAA;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;QACnD,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAuB,CAAA;QACxD,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,YAAY,CAAA;IACrB,CAAC;AACH,CAAC;AAED,mGAAmG;AACnG,uFAAuF;AACvF,MAAM,aAAa,GAAG,0EAA0E,CAAA;AAEhG;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,GAAG;YAAE,SAAS,EAAE,CAAA;IACjD,CAAC;IACD,OAAO,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAA;AAC5C,CAAC"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import type { StatementWatch } from '../query/postgres-js/session.js';
|
|
2
2
|
import type { StatementSettledObserver } from '../../core/config/statement-observer.js';
|
|
3
|
+
/** `observability.largeQuery*` budgets; 0 disables a budget and nothing is measured for it. */
|
|
4
|
+
export interface LargeQueryBudgets {
|
|
5
|
+
readonly parameterBytes: number;
|
|
6
|
+
readonly sqlChars: number;
|
|
7
|
+
readonly arms: number;
|
|
8
|
+
readonly rows: number;
|
|
9
|
+
}
|
|
10
|
+
/** The budgets of a resolved `observability` section. */
|
|
11
|
+
export declare function largeQueryBudgets(o: {
|
|
12
|
+
readonly largeQueryParamBytes: number;
|
|
13
|
+
readonly largeQuerySqlChars: number;
|
|
14
|
+
readonly largeQueryArms: number;
|
|
15
|
+
readonly largeQueryRows: number;
|
|
16
|
+
}): LargeQueryBudgets;
|
|
3
17
|
/** What a pool's watch needs: where it logs, how slow is slow, and how to reach the server for a wait-event sample. */
|
|
4
18
|
export interface StatementWatchOptions {
|
|
5
19
|
readonly database: string;
|
|
@@ -9,6 +23,8 @@ export interface StatementWatchOptions {
|
|
|
9
23
|
readonly inFlightQueryMs: number | undefined;
|
|
10
24
|
/** `observability.onStatementSettled`; undefined: nothing extra is tracked or fired. */
|
|
11
25
|
readonly onSettled?: StatementSettledObserver | undefined;
|
|
26
|
+
/** Undefined: no `query:large` check. */
|
|
27
|
+
readonly budgets?: LargeQueryBudgets | undefined;
|
|
12
28
|
}
|
|
13
29
|
export interface StatementWatchHandle {
|
|
14
30
|
readonly watch: StatementWatch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-watch.d.ts","sourceRoot":"","sources":["../../../src/data/db/query-watch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query-watch.d.ts","sourceRoot":"","sources":["../../../src/data/db/query-watch.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AACrE,OAAO,KAAK,EAAyB,wBAAwB,EAAE,MAAM,yCAAyC,CAAA;AAe9G,+FAA+F;AAC/F,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,yDAAyD;AACzD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IACnC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAA;IACrC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC,GAAG,iBAAiB,CAEpB;AAED,uHAAuH;AACvH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,wFAAwF;IACxF,QAAQ,CAAC,SAAS,CAAC,EAAE,wBAAwB,GAAG,SAAS,CAAA;IACzD,yCAAyC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;CACjD;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;IAC9B;;;OAGG;IACH,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,OAAO,EAAE,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACrG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AA4BD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,oBAAoB,CAqIzF"}
|
|
@@ -2,10 +2,15 @@ import postgres from 'postgres';
|
|
|
2
2
|
import { getLogger } from '../../core/logging/logger.js';
|
|
3
3
|
import { currentQueryLabel } from './query-label.js';
|
|
4
4
|
import { DrizzleQueryError } from '../query/errors.js';
|
|
5
|
+
import { parameterBytes, setOperationArms } from './query-size.js';
|
|
5
6
|
const LABEL_SQL_CHARS = 120;
|
|
6
7
|
const SAMPLE_TIMEOUT_MS = 2_000;
|
|
7
8
|
const PG_TRUNCATED_QUERY_LENGTH = 1_000;
|
|
8
9
|
const UNKNOWN_BACKEND = { pid: null, state: null, waitEventType: null, waitEvent: null };
|
|
10
|
+
/** The budgets of a resolved `observability` section. */
|
|
11
|
+
export function largeQueryBudgets(o) {
|
|
12
|
+
return { parameterBytes: o.largeQueryParamBytes, sqlChars: o.largeQuerySqlChars, arms: o.largeQueryArms, rows: o.largeQueryRows };
|
|
13
|
+
}
|
|
9
14
|
/** Rows a settled statement returned, or affected for a write: the driver's command-tag count, else the row count. */
|
|
10
15
|
function rowsOf(result) {
|
|
11
16
|
if (typeof result !== 'object' || result === null)
|
|
@@ -40,7 +45,9 @@ function labelFor(sqlText) {
|
|
|
40
45
|
* dedicated connection, never the statement's own and never the app pool.
|
|
41
46
|
*/
|
|
42
47
|
export function createStatementWatch(options) {
|
|
43
|
-
const { database, url, slowQueryMs, inFlightQueryMs, onSettled } = options;
|
|
48
|
+
const { database, url, slowQueryMs, inFlightQueryMs, onSettled, budgets } = options;
|
|
49
|
+
const watchesSize = budgets !== undefined && (budgets.parameterBytes > 0 || budgets.sqlChars > 0 || budgets.arms > 0 || budgets.rows > 0);
|
|
50
|
+
const needsOutcome = onSettled !== undefined || (budgets?.rows ?? 0) > 0;
|
|
44
51
|
// Keyed on the parameter array the driver builds for a statement: the same array reaches the
|
|
45
52
|
// debug hook (with the connection ordinal) and sits on the pending query the session hands us.
|
|
46
53
|
const connections = onSettled ? new WeakMap() : undefined;
|
|
@@ -85,6 +92,28 @@ export function createStatementWatch(options) {
|
|
|
85
92
|
failed(err);
|
|
86
93
|
}
|
|
87
94
|
}
|
|
95
|
+
/** One `query:large` per statement over any enabled budget, carrying every enabled measurement. Never throws. */
|
|
96
|
+
function warnIfLarge(sqlText, parameters, outcome, b) {
|
|
97
|
+
try {
|
|
98
|
+
const measured = {};
|
|
99
|
+
const over = [];
|
|
100
|
+
const check = (name, budget, measure) => {
|
|
101
|
+
if (budget <= 0)
|
|
102
|
+
return;
|
|
103
|
+
const value = measure();
|
|
104
|
+
measured[name] = value;
|
|
105
|
+
if (value > budget)
|
|
106
|
+
over.push(name);
|
|
107
|
+
};
|
|
108
|
+
check('parameterBytes', b.parameterBytes, () => parameterBytes(parameters));
|
|
109
|
+
check('sqlChars', b.sqlChars, () => sqlText.length);
|
|
110
|
+
check('arms', b.arms, () => setOperationArms(sqlText));
|
|
111
|
+
check('rows', b.rows, () => (outcome !== undefined && 'result' in outcome ? rowsOf(outcome.result) : 0));
|
|
112
|
+
if (over.length > 0)
|
|
113
|
+
getLogger().warn({ label: labelFor(sqlText), database, over, ...measured }, 'query:large');
|
|
114
|
+
}
|
|
115
|
+
catch { /* a measurement must never affect the statement */ }
|
|
116
|
+
}
|
|
88
117
|
const watch = async (sqlText, run) => {
|
|
89
118
|
const startedMs = Date.now();
|
|
90
119
|
let pendingQuery;
|
|
@@ -111,12 +140,12 @@ export function createStatementWatch(options) {
|
|
|
111
140
|
}
|
|
112
141
|
try {
|
|
113
142
|
const result = await run(seen);
|
|
114
|
-
if (
|
|
143
|
+
if (needsOutcome)
|
|
115
144
|
outcome = { result };
|
|
116
145
|
return result;
|
|
117
146
|
}
|
|
118
147
|
catch (err) {
|
|
119
|
-
if (
|
|
148
|
+
if (needsOutcome)
|
|
120
149
|
outcome = { error: err };
|
|
121
150
|
throw err;
|
|
122
151
|
}
|
|
@@ -128,8 +157,10 @@ export function createStatementWatch(options) {
|
|
|
128
157
|
if (slowQueryMs > 0 && durationMs > slowQueryMs) {
|
|
129
158
|
getLogger().warn({ label: labelFor(sqlText), durationMs, database }, 'query:slow');
|
|
130
159
|
}
|
|
160
|
+
const parameters = pendingQuery === undefined ? undefined : pendingQuery.parameters;
|
|
161
|
+
if (watchesSize)
|
|
162
|
+
warnIfLarge(sqlText, parameters, outcome, budgets);
|
|
131
163
|
if (onSettled && outcome !== undefined) {
|
|
132
|
-
const parameters = pendingQuery === undefined ? undefined : pendingQuery.parameters;
|
|
133
164
|
const connectionId = typeof parameters === 'object' && parameters !== null ? connections?.get(parameters) ?? null : null;
|
|
134
165
|
fireSettled({
|
|
135
166
|
label: currentQueryLabel() ?? null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-watch.js","sourceRoot":"","sources":["../../../src/data/db/query-watch.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"query-watch.js","sourceRoot":"","sources":["../../../src/data/db/query-watch.ts"],"names":[],"mappings":"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"}
|
package/dist/test/plugin.js
CHANGED
|
@@ -6,7 +6,7 @@ import { createTestContext as createCtx } from '../request/context/create.js';
|
|
|
6
6
|
import { runInContext } from '../request/context/store.js';
|
|
7
7
|
import { randomUUID } from 'node:crypto';
|
|
8
8
|
import { createDebugFn, isObserverOnly } from '../data/db/instrumentation.js';
|
|
9
|
-
import { createStatementWatch } from '../data/db/query-watch.js';
|
|
9
|
+
import { createStatementWatch, largeQueryBudgets } from '../data/db/query-watch.js';
|
|
10
10
|
import { markObservedConnection } from '../data/query/postgres-js/driver-error-boundary.js';
|
|
11
11
|
import { collapseTransactionsToSavepoints } from './savepoints.js';
|
|
12
12
|
import { splitLargeInserts } from '../data/db/insert-split.js';
|
|
@@ -80,7 +80,7 @@ export async function endTestIsolation(instance, ctx) {
|
|
|
80
80
|
instance.isolation.markEnd();
|
|
81
81
|
}
|
|
82
82
|
async function createIsolatedConnection(testDb, connections, name, observability, withSystem) {
|
|
83
|
-
const watch = createStatementWatch({ database: name, url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled });
|
|
83
|
+
const watch = createStatementWatch({ database: name, url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled, budgets: largeQueryBudgets(observability) });
|
|
84
84
|
const debug = createDebugFn(observability, watch.noteConnection);
|
|
85
85
|
const client = postgres(testDb.url, { max: 1, onnotice: () => { }, ...(debug ? { debug } : {}) });
|
|
86
86
|
if (isObserverOnly(observability))
|
|
@@ -120,7 +120,7 @@ export async function propagateTestSessionVars(instance, testConnections, tenant
|
|
|
120
120
|
}
|
|
121
121
|
export function createSetupConnection(testDb, observability) {
|
|
122
122
|
const watch = observability
|
|
123
|
-
? createStatementWatch({ database: 'setup', url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled })
|
|
123
|
+
? createStatementWatch({ database: 'setup', url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled, budgets: largeQueryBudgets(observability) })
|
|
124
124
|
: undefined;
|
|
125
125
|
const debug = observability ? createDebugFn(observability, watch?.noteConnection) : undefined;
|
|
126
126
|
const client = postgres(testDb.url, { max: 1, onnotice: () => { }, ...(debug ? { debug } : {}) });
|
package/dist/test/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/test/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,OAAO,EAA2B,MAAM,oCAAoC,CAAA;AACrF,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAE5C,OAAO,EAAE,eAAe,EAAqB,MAAM,YAAY,CAAA;AAC/D,OAAO,EAAE,iBAAiB,IAAI,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/test/plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pipework",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.284.0",
|
|
4
4
|
"description": "TypeScript framework for multi-tenant SaaS applications. PostgreSQL-only.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -203,6 +203,10 @@
|
|
|
203
203
|
"test:stress": "vitest run --config vitest.stress.config.ts",
|
|
204
204
|
"test:packages": "pnpm -r --filter='./packages/*' test",
|
|
205
205
|
"test:all": "pnpm test:packages && vitest run && vitest run --config vitest.isolation.config.ts && vitest run --config vitest.property.config.ts && vitest run --config vitest.stress.config.ts",
|
|
206
|
-
"mutate": "stryker run"
|
|
206
|
+
"mutate": "stryker run",
|
|
207
|
+
"rust:fmt": "cargo fmt --all --check",
|
|
208
|
+
"rust:clippy": "cargo clippy --workspace --all-targets -- -D warnings && cargo clippy -p pipework-query --all-targets --no-default-features --features all-types,audit,hashable-value,serde,thread-safe,postgres-driver -- -D warnings",
|
|
209
|
+
"rust:test": "cargo test --workspace && cargo test -p pipework-query --features all-types,hashable-value,serde",
|
|
210
|
+
"rust:check": "pnpm rust:fmt && pnpm rust:clippy && pnpm rust:test"
|
|
207
211
|
}
|
|
208
212
|
}
|
package/src/core/config/load.ts
CHANGED
|
@@ -10,6 +10,14 @@ export interface ResolvedObservability {
|
|
|
10
10
|
readonly slowQueryMs: number
|
|
11
11
|
/** Interval at which a still-running statement is reported; undefined = off. */
|
|
12
12
|
readonly inFlightQueryMs?: number | undefined
|
|
13
|
+
/** Estimated bind-parameter bytes above which a statement logs `query:large`; 0 = off. */
|
|
14
|
+
readonly largeQueryParamBytes: number
|
|
15
|
+
/** SQL text length (characters) above which a statement logs `query:large`; 0 = off. */
|
|
16
|
+
readonly largeQuerySqlChars: number
|
|
17
|
+
/** UNION/INTERSECT/EXCEPT arms (a text count) above which a statement logs `query:large`; 0 = off. */
|
|
18
|
+
readonly largeQueryArms: number
|
|
19
|
+
/** Rows returned (or affected) above which a statement logs `query:large`; 0 = off. */
|
|
20
|
+
readonly largeQueryRows: number
|
|
13
21
|
readonly logAllQueries: boolean
|
|
14
22
|
readonly poolMetricsInterval: number
|
|
15
23
|
/** Caller-supplied per-statement observer; undefined when not configured. */
|
|
@@ -246,6 +254,10 @@ function buildResolved(config: Blueprint, environment: Environment, baseDir: str
|
|
|
246
254
|
observability: {
|
|
247
255
|
slowQueryMs: config.observability?.slowQueryMs ?? 500,
|
|
248
256
|
inFlightQueryMs: config.observability?.inFlightQueryMs,
|
|
257
|
+
largeQueryParamBytes: config.observability?.largeQueryParamBytes ?? 8_388_608,
|
|
258
|
+
largeQuerySqlChars: config.observability?.largeQuerySqlChars ?? 131_072,
|
|
259
|
+
largeQueryArms: config.observability?.largeQueryArms ?? 50,
|
|
260
|
+
largeQueryRows: config.observability?.largeQueryRows ?? 100_000,
|
|
249
261
|
logAllQueries: config.observability?.logAllQueries ?? false,
|
|
250
262
|
poolMetricsInterval: config.observability?.poolMetricsInterval ?? 0,
|
|
251
263
|
onStatement: config.observability?.onStatement,
|
|
@@ -171,6 +171,10 @@ const fastPathSchema = z.object({
|
|
|
171
171
|
|
|
172
172
|
const observabilitySchema = z.object({
|
|
173
173
|
slowQueryMs: z.number().int().positive().optional().describe('Warn when a query exceeds this duration in ms'),
|
|
174
|
+
largeQueryParamBytes: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement\'s bind parameters total more than this many bytes, estimated (default 8388608; 0 = off)'),
|
|
175
|
+
largeQuerySqlChars: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement\'s SQL text is longer than this many characters (default 131072; 0 = off)'),
|
|
176
|
+
largeQueryArms: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement\'s SQL has more than this many UNION/INTERSECT/EXCEPT arms, counted in the text (default 50; 0 = off)'),
|
|
177
|
+
largeQueryRows: z.number().int().nonnegative().optional().describe('Log `query:large` when a statement returns (or affects) more than this many rows (default 100000; 0 = off)'),
|
|
174
178
|
inFlightQueryMs: z.number().int().positive().optional().describe('While a statement is still running, log what it is waiting on every this many ms (unset = off)'),
|
|
175
179
|
logAllQueries: z.boolean().optional().describe('Log every query at debug level'),
|
|
176
180
|
poolMetricsInterval: z.number().int().nonnegative().optional().describe('Seconds between pool metric summaries (0 = disabled)'),
|
|
@@ -70,6 +70,10 @@ export interface SurfaceContext {
|
|
|
70
70
|
readonly observability: {
|
|
71
71
|
readonly slowQueryMs: number
|
|
72
72
|
readonly inFlightQueryMs?: number | undefined
|
|
73
|
+
readonly largeQueryParamBytes: number
|
|
74
|
+
readonly largeQuerySqlChars: number
|
|
75
|
+
readonly largeQueryArms: number
|
|
76
|
+
readonly largeQueryRows: number
|
|
73
77
|
readonly logAllQueries: boolean
|
|
74
78
|
readonly poolMetricsInterval: number
|
|
75
79
|
readonly onStatement: import('../config/statement-observer.js').StatementObserver | undefined
|
package/src/data/db/namespace.ts
CHANGED
|
@@ -38,7 +38,7 @@ export const pipe = Object.assign(getDb, {
|
|
|
38
38
|
/** Query operators and aggregates — eq, gt, lt, and, or, count, sum, etc. */
|
|
39
39
|
filter,
|
|
40
40
|
|
|
41
|
-
/** Names every statement `fn` starts, in `query:slow` and `query:in-flight` log lines: `pipe.labelled('servable-footprints', async () => await ...)`. A query builder is lazy: `fn` must await it, not return it, or it runs outside the scope. */
|
|
41
|
+
/** Names every statement `fn` starts, in `query:slow`, `query:large` and `query:in-flight` log lines: `pipe.labelled('servable-footprints', async () => await ...)`. A query builder is lazy: `fn` must await it, not return it, or it runs outside the scope. */
|
|
42
42
|
labelled,
|
|
43
43
|
|
|
44
44
|
/** Raw statement tag — for a statement pipework does not model. Interpolated values are parameters; `sql.raw` is not. Runs on the caller's connection, so inside a request it is the request transaction. Writes still go through pipe.update / insert / delete, which is what audit hooks. */
|
package/src/data/db/pool.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { createDebugFn, isObserverOnly } from './instrumentation.js'
|
|
|
6
6
|
import { markObservedConnection } from '../query/postgres-js/driver-error-boundary.js'
|
|
7
7
|
import { warnRawClientIsUnsanitized } from './raw-client-warning.js'
|
|
8
8
|
import { splitLargeInserts } from './insert-split.js'
|
|
9
|
-
import { createStatementWatch } from './query-watch.js'
|
|
9
|
+
import { createStatementWatch, largeQueryBudgets } from './query-watch.js'
|
|
10
10
|
|
|
11
11
|
/** Which database role a pooled connection authenticates as. `owner` runs migrations/bootstrap and owns tables (bypasses RLS); `app` is the non-owner, non-BYPASSRLS runtime role that RLS policies enforce against; `system` is the platform role (`rls.platformRole`, via `systemUrl`), which reaches a tenant table only through a declared door. */
|
|
12
12
|
export type ConnectionRole = 'owner' | 'app' | 'system'
|
|
@@ -167,7 +167,7 @@ export function createManagedConnection(
|
|
|
167
167
|
applicationName?: string,
|
|
168
168
|
): ManagedConnection {
|
|
169
169
|
const statementWatch = observability
|
|
170
|
-
? createStatementWatch({ database: config.name, url: config.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled })
|
|
170
|
+
? createStatementWatch({ database: config.name, url: config.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled, budgets: largeQueryBudgets(observability) })
|
|
171
171
|
: undefined
|
|
172
172
|
const baseDebug = observability ? createDebugFn(observability, statementWatch?.noteConnection) : undefined
|
|
173
173
|
const slot: ProbeSlot | undefined = baseDebug ? { current: null } : undefined
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// Size measurements behind `query:large`. Each runs only when its budget is enabled (> 0), after the
|
|
2
|
+
// statement has settled, so a pool with every budget at 0 never calls into this file.
|
|
3
|
+
|
|
4
|
+
/** Bytes assumed for a number, bigint, boolean, Date or other fixed-width scalar parameter. */
|
|
5
|
+
const SCALAR_BYTES = 8
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Estimated bytes of the bind parameters of one statement. Strings count their UTF-8 length
|
|
9
|
+
* (no copy is made), Buffers/typed arrays their byte length, arrays the sum of their elements,
|
|
10
|
+
* numbers/booleans/dates a fixed 8, null/undefined 0. A plain object is a JSON value the driver
|
|
11
|
+
* will serialise: it is measured by `JSON.stringify` length, which serialises it once more than
|
|
12
|
+
* the driver does; ORM json columns arrive already stringified (counted as strings, free), so
|
|
13
|
+
* only a raw object parameter pays that. An unserialisable object counts as one scalar.
|
|
14
|
+
*/
|
|
15
|
+
export function parameterBytes(parameters: unknown): number {
|
|
16
|
+
if (!Array.isArray(parameters)) return 0
|
|
17
|
+
let total = 0
|
|
18
|
+
for (const value of parameters) total += valueBytes(value)
|
|
19
|
+
return total
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function valueBytes(value: unknown): number {
|
|
23
|
+
if (value === null || value === undefined) return 0
|
|
24
|
+
switch (typeof value) {
|
|
25
|
+
case 'string': return Buffer.byteLength(value)
|
|
26
|
+
case 'object': break
|
|
27
|
+
default: return SCALAR_BYTES
|
|
28
|
+
}
|
|
29
|
+
if (value instanceof Date) return SCALAR_BYTES
|
|
30
|
+
if (ArrayBuffer.isView(value)) return value.byteLength
|
|
31
|
+
if (value instanceof ArrayBuffer) return value.byteLength
|
|
32
|
+
if (Array.isArray(value)) {
|
|
33
|
+
let total = 0
|
|
34
|
+
for (const item of value) total += valueBytes(item)
|
|
35
|
+
return total
|
|
36
|
+
}
|
|
37
|
+
try {
|
|
38
|
+
const json = JSON.stringify(value) as string | undefined
|
|
39
|
+
return json === undefined ? 0 : json.length
|
|
40
|
+
} catch {
|
|
41
|
+
return SCALAR_BYTES
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Single left-to-right scan: a quoted literal or quoted identifier is consumed whole, so a keyword
|
|
46
|
+
// inside one is never counted; what is left are bare UNION / INTERSECT / EXCEPT words.
|
|
47
|
+
const SET_OPERATION = /'[^']*(?:''[^']*)*'|"[^"]*(?:""[^"]*)*"|\b(?:union|intersect|except)\b/gi
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Arms of the set operations in a statement's SQL text: set-operator keywords + 1, 0 when there
|
|
51
|
+
* are none. This is a text count at every nesting depth (a union inside a subquery or CTE costs the
|
|
52
|
+
* planner the same as one at the top), not a parse. Pipework sends values as bind parameters, so
|
|
53
|
+
* no keyword can appear inside a string value; a literal written with `sql.raw` is skipped by
|
|
54
|
+
* the scan. Comments and dollar-quoted bodies are not understood and can over-count.
|
|
55
|
+
*/
|
|
56
|
+
export function setOperationArms(sqlText: string): number {
|
|
57
|
+
let operators = 0
|
|
58
|
+
for (const match of sqlText.matchAll(SET_OPERATION)) {
|
|
59
|
+
const first = match[0][0]
|
|
60
|
+
if (first !== "'" && first !== '"') operators++
|
|
61
|
+
}
|
|
62
|
+
return operators === 0 ? 0 : operators + 1
|
|
63
|
+
}
|
|
@@ -2,6 +2,7 @@ import postgres from 'postgres'
|
|
|
2
2
|
import { getLogger } from '../../core/logging/logger.js'
|
|
3
3
|
import { currentQueryLabel } from './query-label.js'
|
|
4
4
|
import { DrizzleQueryError } from '../query/errors.js'
|
|
5
|
+
import { parameterBytes, setOperationArms } from './query-size.js'
|
|
5
6
|
import type { StatementWatch } from '../query/postgres-js/session.js'
|
|
6
7
|
import type { StatementSettledError, StatementSettledObserver } from '../../core/config/statement-observer.js'
|
|
7
8
|
|
|
@@ -18,6 +19,24 @@ interface BackendSample {
|
|
|
18
19
|
|
|
19
20
|
const UNKNOWN_BACKEND: BackendSample = { pid: null, state: null, waitEventType: null, waitEvent: null }
|
|
20
21
|
|
|
22
|
+
/** `observability.largeQuery*` budgets; 0 disables a budget and nothing is measured for it. */
|
|
23
|
+
export interface LargeQueryBudgets {
|
|
24
|
+
readonly parameterBytes: number
|
|
25
|
+
readonly sqlChars: number
|
|
26
|
+
readonly arms: number
|
|
27
|
+
readonly rows: number
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/** The budgets of a resolved `observability` section. */
|
|
31
|
+
export function largeQueryBudgets(o: {
|
|
32
|
+
readonly largeQueryParamBytes: number
|
|
33
|
+
readonly largeQuerySqlChars: number
|
|
34
|
+
readonly largeQueryArms: number
|
|
35
|
+
readonly largeQueryRows: number
|
|
36
|
+
}): LargeQueryBudgets {
|
|
37
|
+
return { parameterBytes: o.largeQueryParamBytes, sqlChars: o.largeQuerySqlChars, arms: o.largeQueryArms, rows: o.largeQueryRows }
|
|
38
|
+
}
|
|
39
|
+
|
|
21
40
|
/** What a pool's watch needs: where it logs, how slow is slow, and how to reach the server for a wait-event sample. */
|
|
22
41
|
export interface StatementWatchOptions {
|
|
23
42
|
readonly database: string
|
|
@@ -27,6 +46,8 @@ export interface StatementWatchOptions {
|
|
|
27
46
|
readonly inFlightQueryMs: number | undefined
|
|
28
47
|
/** `observability.onStatementSettled`; undefined: nothing extra is tracked or fired. */
|
|
29
48
|
readonly onSettled?: StatementSettledObserver | undefined
|
|
49
|
+
/** Undefined: no `query:large` check. */
|
|
50
|
+
readonly budgets?: LargeQueryBudgets | undefined
|
|
30
51
|
}
|
|
31
52
|
|
|
32
53
|
export interface StatementWatchHandle {
|
|
@@ -72,7 +93,9 @@ function labelFor(sqlText: string): string {
|
|
|
72
93
|
* dedicated connection, never the statement's own and never the app pool.
|
|
73
94
|
*/
|
|
74
95
|
export function createStatementWatch(options: StatementWatchOptions): StatementWatchHandle {
|
|
75
|
-
const { database, url, slowQueryMs, inFlightQueryMs, onSettled } = options
|
|
96
|
+
const { database, url, slowQueryMs, inFlightQueryMs, onSettled, budgets } = options
|
|
97
|
+
const watchesSize = budgets !== undefined && (budgets.parameterBytes > 0 || budgets.sqlChars > 0 || budgets.arms > 0 || budgets.rows > 0)
|
|
98
|
+
const needsOutcome = onSettled !== undefined || (budgets?.rows ?? 0) > 0
|
|
76
99
|
// Keyed on the parameter array the driver builds for a statement: the same array reaches the
|
|
77
100
|
// debug hook (with the connection ordinal) and sits on the pending query the session hands us.
|
|
78
101
|
const connections = onSettled ? new WeakMap<object, number>() : undefined
|
|
@@ -119,6 +142,25 @@ export function createStatementWatch(options: StatementWatchOptions): StatementW
|
|
|
119
142
|
}
|
|
120
143
|
}
|
|
121
144
|
|
|
145
|
+
/** One `query:large` per statement over any enabled budget, carrying every enabled measurement. Never throws. */
|
|
146
|
+
function warnIfLarge(sqlText: string, parameters: unknown, outcome: { result: unknown } | { error: unknown } | undefined, b: LargeQueryBudgets): void {
|
|
147
|
+
try {
|
|
148
|
+
const measured: Record<string, number> = {}
|
|
149
|
+
const over: string[] = []
|
|
150
|
+
const check = (name: string, budget: number, measure: () => number): void => {
|
|
151
|
+
if (budget <= 0) return
|
|
152
|
+
const value = measure()
|
|
153
|
+
measured[name] = value
|
|
154
|
+
if (value > budget) over.push(name)
|
|
155
|
+
}
|
|
156
|
+
check('parameterBytes', b.parameterBytes, () => parameterBytes(parameters))
|
|
157
|
+
check('sqlChars', b.sqlChars, () => sqlText.length)
|
|
158
|
+
check('arms', b.arms, () => setOperationArms(sqlText))
|
|
159
|
+
check('rows', b.rows, () => (outcome !== undefined && 'result' in outcome ? rowsOf(outcome.result) : 0))
|
|
160
|
+
if (over.length > 0) getLogger().warn({ label: labelFor(sqlText), database, over, ...measured }, 'query:large')
|
|
161
|
+
} catch { /* a measurement must never affect the statement */ }
|
|
162
|
+
}
|
|
163
|
+
|
|
122
164
|
const watch: StatementWatch = async <T>(sqlText: string, run: (seen: (pending: object) => void) => Promise<T>): Promise<T> => {
|
|
123
165
|
const startedMs = Date.now()
|
|
124
166
|
let pendingQuery: object | undefined
|
|
@@ -144,10 +186,10 @@ export function createStatementWatch(options: StatementWatchOptions): StatementW
|
|
|
144
186
|
}
|
|
145
187
|
try {
|
|
146
188
|
const result = await run(seen)
|
|
147
|
-
if (
|
|
189
|
+
if (needsOutcome) outcome = { result }
|
|
148
190
|
return result
|
|
149
191
|
} catch (err) {
|
|
150
|
-
if (
|
|
192
|
+
if (needsOutcome) outcome = { error: err }
|
|
151
193
|
throw err
|
|
152
194
|
} finally {
|
|
153
195
|
settled = true
|
|
@@ -156,8 +198,9 @@ export function createStatementWatch(options: StatementWatchOptions): StatementW
|
|
|
156
198
|
if (slowQueryMs > 0 && durationMs > slowQueryMs) {
|
|
157
199
|
getLogger().warn({ label: labelFor(sqlText), durationMs, database }, 'query:slow')
|
|
158
200
|
}
|
|
201
|
+
const parameters = pendingQuery === undefined ? undefined : (pendingQuery as { parameters?: unknown }).parameters
|
|
202
|
+
if (watchesSize) warnIfLarge(sqlText, parameters, outcome, budgets)
|
|
159
203
|
if (onSettled && outcome !== undefined) {
|
|
160
|
-
const parameters = pendingQuery === undefined ? undefined : (pendingQuery as { parameters?: unknown }).parameters
|
|
161
204
|
const connectionId = typeof parameters === 'object' && parameters !== null ? connections?.get(parameters) ?? null : null
|
|
162
205
|
fireSettled({
|
|
163
206
|
label: currentQueryLabel() ?? null,
|
package/src/test/plugin.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { runInContext } from '../request/context/store.js'
|
|
|
8
8
|
import type { Flow } from '../request/context/types.js'
|
|
9
9
|
import { randomUUID } from 'node:crypto'
|
|
10
10
|
import { createDebugFn, isObserverOnly } from '../data/db/instrumentation.js'
|
|
11
|
-
import { createStatementWatch } from '../data/db/query-watch.js'
|
|
11
|
+
import { createStatementWatch, largeQueryBudgets } from '../data/db/query-watch.js'
|
|
12
12
|
import { markObservedConnection } from '../data/query/postgres-js/driver-error-boundary.js'
|
|
13
13
|
import type { ResolvedObservability } from '../core/config/load.js'
|
|
14
14
|
import { collapseTransactionsToSavepoints } from './savepoints.js'
|
|
@@ -127,7 +127,7 @@ async function createIsolatedConnection(
|
|
|
127
127
|
observability: ResolvedObservability,
|
|
128
128
|
withSystem: boolean,
|
|
129
129
|
): Promise<PostgresJsDatabase> {
|
|
130
|
-
const watch = createStatementWatch({ database: name, url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled })
|
|
130
|
+
const watch = createStatementWatch({ database: name, url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled, budgets: largeQueryBudgets(observability) })
|
|
131
131
|
const debug = createDebugFn(observability, watch.noteConnection)
|
|
132
132
|
const client = postgres(testDb.url, { max: 1, onnotice: () => {}, ...(debug ? { debug } : {}) })
|
|
133
133
|
if (isObserverOnly(observability)) markObservedConnection(client)
|
|
@@ -178,7 +178,7 @@ export function createSetupConnection(
|
|
|
178
178
|
observability?: ResolvedObservability,
|
|
179
179
|
): { drizzle: PostgresJsDatabase; close: () => Promise<void> } {
|
|
180
180
|
const watch = observability
|
|
181
|
-
? createStatementWatch({ database: 'setup', url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled })
|
|
181
|
+
? createStatementWatch({ database: 'setup', url: testDb.url, slowQueryMs: observability.slowQueryMs, inFlightQueryMs: observability.inFlightQueryMs, onSettled: observability.onStatementSettled, budgets: largeQueryBudgets(observability) })
|
|
182
182
|
: undefined
|
|
183
183
|
const debug = observability ? createDebugFn(observability, watch?.noteConnection) : undefined
|
|
184
184
|
const client = postgres(testDb.url, { max: 1, onnotice: () => {}, ...(debug ? { debug } : {}) })
|