@query-doctor/core 0.4.0 → 0.4.1
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/explain/rewriter.d.ts +4 -0
- package/dist/explain/rewriter.d.ts.map +1 -0
- package/dist/explain/traverse.d.ts +3 -0
- package/dist/explain/traverse.d.ts.map +1 -0
- package/dist/explain/tree.d.ts +73 -0
- package/dist/explain/tree.d.ts.map +1 -0
- package/dist/index.cjs +58 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +58 -22
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +25333 -0
- package/dist/index.mjs.map +1 -0
- package/dist/optimizer/genalgo.test.d.ts +2 -0
- package/dist/optimizer/genalgo.test.d.ts.map +1 -0
- package/dist/optimizer/index-candidate.d.ts +23 -0
- package/dist/optimizer/index-candidate.d.ts.map +1 -0
- package/dist/optimizer/index-shrinker.d.ts +10 -0
- package/dist/optimizer/index-shrinker.d.ts.map +1 -0
- package/dist/optimizer/index-shrinker.test.d.ts +2 -0
- package/dist/optimizer/index-shrinker.test.d.ts.map +1 -0
- package/dist/optimizer/index-tester.d.ts +2 -0
- package/dist/optimizer/index-tester.d.ts.map +1 -0
- package/dist/optimizer/pss-rewriter.test.d.ts +2 -0
- package/dist/optimizer/pss-rewriter.test.d.ts.map +1 -0
- package/dist/sql/analyzer.test.d.ts +2 -0
- package/dist/sql/analyzer.test.d.ts.map +1 -0
- package/dist/sql/builder.test.d.ts +2 -0
- package/dist/sql/builder.test.d.ts.map +1 -0
- package/dist/sql/nudges.d.ts +1 -0
- package/dist/sql/nudges.d.ts.map +1 -1
- package/dist/sql/permutations.test.d.ts +2 -0
- package/dist/sql/permutations.test.d.ts.map +1 -0
- package/dist/sql/pg-identifier.test.d.ts +2 -0
- package/dist/sql/pg-identifier.test.d.ts.map +1 -0
- package/dist/sql/walker.d.ts +2 -1
- package/dist/sql/walker.d.ts.map +1 -1
- package/dist/sql/walker.test.d.ts +2 -0
- package/dist/sql/walker.test.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"genalgo.test.d.ts","sourceRoot":"","sources":["../../src/optimizer/genalgo.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { PgIdentifier } from "../sql/pg-identifier";
|
|
2
|
+
import type { RootIndexCandidate } from "./genalgo";
|
|
3
|
+
export declare class IndexCandidate {
|
|
4
|
+
readonly schema: PgIdentifier;
|
|
5
|
+
readonly table: PgIdentifier;
|
|
6
|
+
private _columns;
|
|
7
|
+
readonly name: PgIdentifier;
|
|
8
|
+
constructor(schema: PgIdentifier, table: PgIdentifier, _columns: RootIndexCandidate[], name: PgIdentifier);
|
|
9
|
+
get columns(): readonly RootIndexCandidate[];
|
|
10
|
+
toJSON(): {
|
|
11
|
+
schema: string;
|
|
12
|
+
table: string;
|
|
13
|
+
columns: RootIndexCandidate[];
|
|
14
|
+
name: string;
|
|
15
|
+
};
|
|
16
|
+
definition(): string;
|
|
17
|
+
fullyQualifiedTarget(): PgIdentifier;
|
|
18
|
+
withColumns(columns: RootIndexCandidate[]): IndexCandidate;
|
|
19
|
+
private columnDefinition;
|
|
20
|
+
private static nullsOrder;
|
|
21
|
+
private static sortDirection;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=index-candidate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-candidate.d.ts","sourceRoot":"","sources":["../../src/optimizer/index-candidate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEpD,qBAAa,cAAc;IAEvB,QAAQ,CAAC,MAAM,EAAE,YAAY;IAC7B,QAAQ,CAAC,KAAK,EAAE,YAAY;IAC5B,OAAO,CAAC,QAAQ;IAChB,QAAQ,CAAC,IAAI,EAAE,YAAY;gBAHlB,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,EACpB,QAAQ,EAAE,kBAAkB,EAAE,EAC7B,IAAI,EAAE,YAAY;IAG7B,IAAI,OAAO,IAAI,SAAS,kBAAkB,EAAE,CAE3C;IAED,MAAM;;;;;;IASN,UAAU,IAAI,MAAM;IASpB,oBAAoB,IAAI,YAAY;IAQpC,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,cAAc;IAI1D,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,MAAM,CAAC,UAAU;IAezB,OAAO,CAAC,MAAM,CAAC,aAAa;CAe7B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IndexCandidate } from "./index-candidate.js";
|
|
2
|
+
export declare class IndexShrinker {
|
|
3
|
+
private readonly indexes;
|
|
4
|
+
constructor(indexes: readonly IndexCandidate[]);
|
|
5
|
+
start(optimizedCost: number): Generator<IndexCandidate[], IndexCandidate[], PlanCost>;
|
|
6
|
+
private canShrink;
|
|
7
|
+
private shrink;
|
|
8
|
+
}
|
|
9
|
+
export type PlanCost = number;
|
|
10
|
+
//# sourceMappingURL=index-shrinker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-shrinker.d.ts","sourceRoot":"","sources":["../../src/optimizer/index-shrinker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,SAAS,cAAc,EAAE;IAE9D,KAAK,CACJ,aAAa,EAAE,MAAM,GACpB,SAAS,CAAC,cAAc,EAAE,EAAE,cAAc,EAAE,EAAE,QAAQ,CAAC;IA4B1D,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,MAAM;CAMf;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-shrinker.test.d.ts","sourceRoot":"","sources":["../../src/optimizer/index-shrinker.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-tester.d.ts","sourceRoot":"","sources":["../../src/optimizer/index-tester.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pss-rewriter.test.d.ts","sourceRoot":"","sources":["../../src/optimizer/pss-rewriter.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzer.test.d.ts","sourceRoot":"","sources":["../../src/sql/analyzer.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.test.d.ts","sourceRoot":"","sources":["../../src/sql/builder.test.ts"],"names":[],"mappings":""}
|
package/dist/sql/nudges.d.ts
CHANGED
package/dist/sql/nudges.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nudges.d.ts","sourceRoot":"","sources":["../../src/sql/nudges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"nudges.d.ts","sourceRoot":"","sources":["../../src/sql/nudges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,IAAI,EAAa,MAAM,cAAc,CAAC;AAEnE,KAAK,SAAS,GACV,yBAAyB,GACzB,yBAAyB,GACzB,mBAAmB,GACnB,qCAAqC,GACrC,sBAAsB,GACtB,sBAAsB,GACtB,wBAAwB,GACxB,+BAA+B,GAC/B,wBAAwB,GACxB,6BAA6B,GAC7B,iCAAiC,GACjC,uCAAuC,CAAC;AAE5C,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC;AAiBpD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE,GACpC,KAAK,EAAE,CA+NT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permutations.test.d.ts","sourceRoot":"","sources":["../../src/sql/permutations.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pg-identifier.test.d.ts","sourceRoot":"","sources":["../../src/sql/pg-identifier.test.ts"],"names":[],"mappings":""}
|
package/dist/sql/walker.d.ts
CHANGED
|
@@ -30,7 +30,8 @@ export declare class Walker {
|
|
|
30
30
|
nudges: Nudge[];
|
|
31
31
|
};
|
|
32
32
|
private add;
|
|
33
|
-
static traverse(node:
|
|
33
|
+
static traverse(node: Node, callback: (node: Node, stack: (KeysOfUnion<Node> | string)[]) => void): void;
|
|
34
|
+
private static doTraverse;
|
|
34
35
|
}
|
|
35
36
|
export type ColumnReferencePart = {
|
|
36
37
|
schema?: string;
|
package/dist/sql/walker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walker.d.ts","sourceRoot":"","sources":["../../src/sql/walker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAgB,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,wDAAwD;AACxD,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAG7D;;;;GAIG;AACH,qBAAa,MAAM;IAaL,OAAO,CAAC,QAAQ,CAAC,KAAK;IAZlC,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,kBAAkB,CAAqB;IAG/C,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,MAAM,CAAe;gBAEA,KAAK,EAAE,MAAM;IAE1C,IAAI,CAAC,IAAI,EAAE,IAAI;;;;;;;;;IAsNf,OAAO,CAAC,GAAG;IAiFX,MAAM,CAAC,QAAQ,CACb,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"walker.d.ts","sourceRoot":"","sources":["../../src/sql/walker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAgB,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,wDAAwD;AACxD,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAG7D;;;;GAIG;AACH,qBAAa,MAAM;IAaL,OAAO,CAAC,QAAQ,CAAC,KAAK;IAZlC,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,kBAAkB,CAAqB;IAG/C,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,MAAM,CAAe;gBAEA,KAAK,EAAE,MAAM;IAE1C,IAAI,CAAC,IAAI,EAAE,IAAI;;;;;;;;;IAsNf,OAAO,CAAC,GAAG;IAiFX,MAAM,CAAC,QAAQ,CACb,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE,KAAK,IAAI;IAKvE,OAAO,CAAC,MAAM,CAAC,UAAU;CA+B1B;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walker.test.d.ts","sourceRoot":"","sources":["../../src/sql/walker.test.ts"],"names":[],"mappings":""}
|