litedbmodel 2.0.2 → 2.2.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 +7 -0
- package/dist/DBConditions.d.ts.map +1 -1
- package/dist/DBConditions.js +16 -1
- package/dist/DBConditions.js.map +1 -1
- package/dist/DBHandler.d.ts.map +1 -1
- package/dist/DBHandler.js +6 -0
- package/dist/DBHandler.js.map +1 -1
- package/dist/DBModel.d.ts +84 -2
- package/dist/DBModel.d.ts.map +1 -1
- package/dist/DBModel.js +312 -29
- package/dist/DBModel.js.map +1 -1
- package/dist/decorators.d.ts +52 -0
- package/dist/decorators.d.ts.map +1 -1
- package/dist/decorators.js +127 -24
- package/dist/decorators.js.map +1 -1
- package/dist/drivers/mysql.d.ts.map +1 -1
- package/dist/drivers/mysql.js +12 -2
- package/dist/drivers/mysql.js.map +1 -1
- package/dist/drivers/postgres.d.ts.map +1 -1
- package/dist/drivers/postgres.js +13 -2
- package/dist/drivers/postgres.js.map +1 -1
- package/dist/drivers/sqlite.d.ts +2 -0
- package/dist/drivers/sqlite.d.ts.map +1 -1
- package/dist/drivers/sqlite.js +49 -4
- package/dist/drivers/sqlite.js.map +1 -1
- package/dist/index.cjs +10741 -0
- package/dist/index.d.cts +1 -0
- package/dist/scp/coltype.d.ts +108 -0
- package/dist/scp/coltype.d.ts.map +1 -1
- package/dist/scp/coltype.js +293 -6
- package/dist/scp/coltype.js.map +1 -1
- package/dist/scp/connection-routing.d.ts +312 -0
- package/dist/scp/connection-routing.d.ts.map +1 -0
- package/dist/scp/connection-routing.js +394 -0
- package/dist/scp/connection-routing.js.map +1 -0
- package/dist/scp/dbmodel-runtime.d.ts +101 -0
- package/dist/scp/dbmodel-runtime.d.ts.map +1 -0
- package/dist/scp/dbmodel-runtime.js +174 -0
- package/dist/scp/dbmodel-runtime.js.map +1 -0
- package/dist/scp/decorator-adapter.d.ts +196 -0
- package/dist/scp/decorator-adapter.d.ts.map +1 -0
- package/dist/scp/decorator-adapter.js +286 -0
- package/dist/scp/decorator-adapter.js.map +1 -0
- package/dist/scp/emit/emitter.d.ts +108 -0
- package/dist/scp/emit/emitter.d.ts.map +1 -0
- package/dist/scp/emit/emitter.js +782 -0
- package/dist/scp/emit/emitter.js.map +1 -0
- package/dist/scp/emit/endpoint.d.ts +248 -0
- package/dist/scp/emit/endpoint.d.ts.map +1 -0
- package/dist/scp/emit/endpoint.js +20 -0
- package/dist/scp/emit/endpoint.js.map +1 -0
- package/dist/scp/emit/index.d.ts +11 -0
- package/dist/scp/emit/index.d.ts.map +1 -0
- package/dist/scp/emit/index.js +13 -0
- package/dist/scp/emit/index.js.map +1 -0
- package/dist/scp/errors.d.ts +45 -1
- package/dist/scp/errors.d.ts.map +1 -1
- package/dist/scp/errors.js +47 -1
- package/dist/scp/errors.js.map +1 -1
- package/dist/scp/exec-context.d.ts +390 -0
- package/dist/scp/exec-context.d.ts.map +1 -0
- package/dist/scp/exec-context.js +540 -0
- package/dist/scp/exec-context.js.map +1 -0
- package/dist/scp/grouping.d.ts +32 -0
- package/dist/scp/grouping.d.ts.map +1 -0
- package/dist/scp/grouping.js +0 -0
- package/dist/scp/grouping.js.map +1 -0
- package/dist/scp/index.cjs +6432 -17579
- package/dist/scp/index.d.cts +1 -0
- package/dist/scp/index.d.mts +1 -0
- package/dist/scp/index.d.ts +51 -52
- package/dist/scp/index.d.ts.map +1 -1
- package/dist/scp/index.js +189 -152
- package/dist/scp/index.js.map +1 -1
- package/dist/scp/index.mjs +6067 -3659
- package/dist/scp/leaf-transport.d.ts +50 -0
- package/dist/scp/leaf-transport.d.ts.map +1 -0
- package/dist/scp/leaf-transport.js +92 -0
- package/dist/scp/leaf-transport.js.map +1 -0
- package/dist/scp/leaves.d.ts +174 -0
- package/dist/scp/leaves.d.ts.map +1 -0
- package/dist/scp/leaves.js +287 -0
- package/dist/scp/leaves.js.map +1 -0
- package/dist/scp/limit-config.d.ts +118 -0
- package/dist/scp/limit-config.d.ts.map +1 -0
- package/dist/scp/limit-config.js +126 -0
- package/dist/scp/limit-config.js.map +1 -0
- package/dist/scp/makesql/compile-relation.d.ts +49 -23
- package/dist/scp/makesql/compile-relation.d.ts.map +1 -1
- package/dist/scp/makesql/compile-relation.js +101 -76
- package/dist/scp/makesql/compile-relation.js.map +1 -1
- package/dist/scp/makesql/compile-select.d.ts +45 -10
- package/dist/scp/makesql/compile-select.d.ts.map +1 -1
- package/dist/scp/makesql/compile-select.js +50 -10
- package/dist/scp/makesql/compile-select.js.map +1 -1
- package/dist/scp/makesql/handler.d.ts +1 -1
- package/dist/scp/makesql/handler.d.ts.map +1 -1
- package/dist/scp/makesql/index.d.ts +7 -10
- package/dist/scp/makesql/index.d.ts.map +1 -1
- package/dist/scp/makesql/index.js +19 -30
- package/dist/scp/makesql/index.js.map +1 -1
- package/dist/scp/makesql/json-array.d.ts +65 -0
- package/dist/scp/makesql/json-array.d.ts.map +1 -1
- package/dist/scp/makesql/json-array.js +99 -10
- package/dist/scp/makesql/json-array.js.map +1 -1
- package/dist/scp/makesql/json-batch.d.ts.map +1 -1
- package/dist/scp/makesql/json-batch.js +21 -19
- package/dist/scp/makesql/json-batch.js.map +1 -1
- package/dist/scp/makesql/makesql.d.ts +1 -1
- package/dist/scp/makesql/makesql.d.ts.map +1 -1
- package/dist/scp/makesql/mysql-returning.d.ts +93 -0
- package/dist/scp/makesql/mysql-returning.d.ts.map +1 -0
- package/dist/scp/makesql/mysql-returning.js +215 -0
- package/dist/scp/makesql/mysql-returning.js.map +1 -0
- package/dist/scp/makesql/outtype.d.ts +75 -34
- package/dist/scp/makesql/outtype.d.ts.map +1 -1
- package/dist/scp/makesql/outtype.js +91 -118
- package/dist/scp/makesql/outtype.js.map +1 -1
- package/dist/scp/makesql/pool-executor.d.ts +135 -13
- package/dist/scp/makesql/pool-executor.d.ts.map +1 -1
- package/dist/scp/makesql/pool-executor.js +229 -21
- package/dist/scp/makesql/pool-executor.js.map +1 -1
- package/dist/scp/makesql/tx.d.ts +107 -22
- package/dist/scp/makesql/tx.d.ts.map +1 -1
- package/dist/scp/makesql/tx.js +451 -97
- package/dist/scp/makesql/tx.js.map +1 -1
- package/dist/scp/makesql/writeouttype.d.ts +7 -8
- package/dist/scp/makesql/writeouttype.d.ts.map +1 -1
- package/dist/scp/makesql/writeouttype.js +8 -7
- package/dist/scp/makesql/writeouttype.js.map +1 -1
- package/dist/scp/middleware.d.ts +287 -0
- package/dist/scp/middleware.d.ts.map +1 -0
- package/dist/scp/middleware.js +358 -0
- package/dist/scp/middleware.js.map +1 -0
- package/dist/scp/relation.d.ts +80 -9
- package/dist/scp/relation.d.ts.map +1 -1
- package/dist/scp/relation.js +198 -78
- package/dist/scp/relation.js.map +1 -1
- package/dist/scp/tx-options.d.ts +136 -0
- package/dist/scp/tx-options.d.ts.map +1 -0
- package/dist/scp/tx-options.js +184 -0
- package/dist/scp/tx-options.js.map +1 -0
- package/dist/scp/write-bundle.d.ts +131 -0
- package/dist/scp/write-bundle.d.ts.map +1 -0
- package/dist/scp/write-bundle.js +160 -0
- package/dist/scp/write-bundle.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/docs/BENCHMARK.md +58 -56
- package/docs/benchmark-chart.svg +166 -166
- package/docs/design/phase-a-execution-context.md +139 -0
- package/package.json +16 -9
- package/dist/scp/authoring-sql.d.ts +0 -134
- package/dist/scp/authoring-sql.d.ts.map +0 -1
- package/dist/scp/authoring-sql.js +0 -191
- package/dist/scp/authoring-sql.js.map +0 -1
- package/dist/scp/authoring.d.ts +0 -155
- package/dist/scp/authoring.d.ts.map +0 -1
- package/dist/scp/authoring.js +0 -162
- package/dist/scp/authoring.js.map +0 -1
- package/dist/scp/catalog.d.ts +0 -94
- package/dist/scp/catalog.d.ts.map +0 -1
- package/dist/scp/catalog.js +0 -234
- package/dist/scp/catalog.js.map +0 -1
- package/dist/scp/codegen.d.ts +0 -189
- package/dist/scp/codegen.d.ts.map +0 -1
- package/dist/scp/codegen.js +0 -421
- package/dist/scp/codegen.js.map +0 -1
- package/dist/scp/find-filter-guard.d.ts +0 -68
- package/dist/scp/find-filter-guard.d.ts.map +0 -1
- package/dist/scp/find-filter-guard.js +0 -88
- package/dist/scp/find-filter-guard.js.map +0 -1
- package/dist/scp/guard.d.ts +0 -43
- package/dist/scp/guard.d.ts.map +0 -1
- package/dist/scp/guard.js +0 -134
- package/dist/scp/guard.js.map +0 -1
- package/dist/scp/makesql/authoring-compile.d.ts +0 -90
- package/dist/scp/makesql/authoring-compile.d.ts.map +0 -1
- package/dist/scp/makesql/authoring-compile.js +0 -494
- package/dist/scp/makesql/authoring-compile.js.map +0 -1
- package/dist/scp/makesql/ir.d.ts +0 -42
- package/dist/scp/makesql/ir.d.ts.map +0 -1
- package/dist/scp/makesql/ir.js +0 -66
- package/dist/scp/makesql/ir.js.map +0 -1
- package/dist/scp/makesql/static-bundle.d.ts +0 -187
- package/dist/scp/makesql/static-bundle.d.ts.map +0 -1
- package/dist/scp/makesql/static-bundle.js +0 -1113
- package/dist/scp/makesql/static-bundle.js.map +0 -1
- package/dist/scp/runtime.d.ts +0 -242
- package/dist/scp/runtime.d.ts.map +0 -1
- package/dist/scp/runtime.js +0 -400
- package/dist/scp/runtime.js.map +0 -1
package/docs/benchmark-chart.svg
CHANGED
|
@@ -48,218 +48,218 @@
|
|
|
48
48
|
<line x1="80" y1="-5" x2="80" y2="1975" class="baseline" />
|
|
49
49
|
<text x="-10" y="40" text-anchor="end" dominant-baseline="middle" class="op-label">Find all (limit 100)</text>
|
|
50
50
|
<rect x="0" y="0" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
51
|
-
<text x="85" y="7" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
52
|
-
<rect x="0" y="16" width="
|
|
53
|
-
<text x="
|
|
54
|
-
<rect x="0" y="32" width="
|
|
55
|
-
<text x="
|
|
56
|
-
<rect x="0" y="48" width="
|
|
57
|
-
<text x="
|
|
58
|
-
<rect x="0" y="64" width="
|
|
59
|
-
<text x="
|
|
51
|
+
<text x="85" y="7" dominant-baseline="middle" class="value-label">1.00x (0.48ms)</text>
|
|
52
|
+
<rect x="0" y="16" width="91.66666666666667" height="12" fill="#22c55e" rx="2" />
|
|
53
|
+
<text x="96.66666666666667" y="23" dominant-baseline="middle" class="value-label">1.15x (0.55ms)</text>
|
|
54
|
+
<rect x="0" y="32" width="96.66666666666666" height="12" fill="#f59e0b" rx="2" />
|
|
55
|
+
<text x="101.66666666666666" y="39" dominant-baseline="middle" class="value-label">1.21x (0.58ms)</text>
|
|
56
|
+
<rect x="0" y="48" width="106.66666666666669" height="12" fill="#ef4444" rx="2" />
|
|
57
|
+
<text x="111.66666666666669" y="55" dominant-baseline="middle" class="value-label">1.33x (0.64ms)</text>
|
|
58
|
+
<rect x="0" y="64" width="161.66666666666666" height="12" fill="#8b5cf6" rx="2" />
|
|
59
|
+
<text x="166.66666666666666" y="71" dominant-baseline="middle" class="value-label">2.02x (0.97ms)</text>
|
|
60
60
|
<text x="-10" y="145" text-anchor="end" dominant-baseline="middle" class="op-label">Filter, paginate & sort</text>
|
|
61
61
|
<rect x="0" y="105" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
62
|
-
<text x="85" y="112" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
63
|
-
<rect x="0" y="121" width="
|
|
64
|
-
<text x="
|
|
65
|
-
<rect x="0" y="137" width="
|
|
66
|
-
<text x="
|
|
67
|
-
<rect x="0" y="153" width="
|
|
68
|
-
<text x="
|
|
69
|
-
<rect x="0" y="169" width="
|
|
70
|
-
<text x="
|
|
62
|
+
<text x="85" y="112" dominant-baseline="middle" class="value-label">1.00x (0.52ms)</text>
|
|
63
|
+
<rect x="0" y="121" width="87.69230769230768" height="12" fill="#22c55e" rx="2" />
|
|
64
|
+
<text x="92.69230769230768" y="128" dominant-baseline="middle" class="value-label">1.10x (0.57ms)</text>
|
|
65
|
+
<rect x="0" y="137" width="92.3076923076923" height="12" fill="#f59e0b" rx="2" />
|
|
66
|
+
<text x="97.3076923076923" y="144" dominant-baseline="middle" class="value-label">1.15x (0.60ms)</text>
|
|
67
|
+
<rect x="0" y="153" width="98.46153846153847" height="12" fill="#ef4444" rx="2" />
|
|
68
|
+
<text x="103.46153846153847" y="160" dominant-baseline="middle" class="value-label">1.23x (0.64ms)</text>
|
|
69
|
+
<rect x="0" y="169" width="123.07692307692308" height="12" fill="#8b5cf6" rx="2" />
|
|
70
|
+
<text x="128.0769230769231" y="176" dominant-baseline="middle" class="value-label">1.54x (0.80ms)</text>
|
|
71
71
|
<text x="-10" y="250" text-anchor="end" dominant-baseline="middle" class="op-label">Nested find all (include posts)</text>
|
|
72
72
|
<rect x="0" y="210" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
73
|
-
<text x="85" y="217" dominant-baseline="middle" class="value-label">1.00x (
|
|
74
|
-
<rect x="0" y="226" width="
|
|
75
|
-
<text x="
|
|
76
|
-
<rect x="0" y="242" width="
|
|
77
|
-
<text x="
|
|
78
|
-
<rect x="0" y="258" width="
|
|
79
|
-
<text x="
|
|
80
|
-
<rect x="0" y="274" width="
|
|
81
|
-
<text x="
|
|
73
|
+
<text x="85" y="217" dominant-baseline="middle" class="value-label">1.00x (2.16ms)</text>
|
|
74
|
+
<rect x="0" y="226" width="113.70370370370368" height="12" fill="#22c55e" rx="2" />
|
|
75
|
+
<text x="118.70370370370368" y="233" dominant-baseline="middle" class="value-label">1.42x (3.07ms)</text>
|
|
76
|
+
<rect x="0" y="242" width="161.85185185185182" height="12" fill="#f59e0b" rx="2" />
|
|
77
|
+
<text x="166.85185185185182" y="249" dominant-baseline="middle" class="value-label">2.02x (4.37ms)</text>
|
|
78
|
+
<rect x="0" y="258" width="218.5185185185185" height="12" fill="#ef4444" rx="2" />
|
|
79
|
+
<text x="223.5185185185185" y="265" dominant-baseline="middle" class="value-label">2.73x (5.90ms)</text>
|
|
80
|
+
<rect x="0" y="274" width="272.96296296296293" height="12" fill="#8b5cf6" rx="2" />
|
|
81
|
+
<text x="277.96296296296293" y="281" dominant-baseline="middle" class="value-label">3.41x (7.37ms)</text>
|
|
82
82
|
<text x="-10" y="355" text-anchor="end" dominant-baseline="middle" class="op-label">Find first</text>
|
|
83
83
|
<rect x="0" y="315" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
84
|
-
<text x="85" y="322" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
85
|
-
<rect x="0" y="331" width="
|
|
86
|
-
<text x="
|
|
87
|
-
<rect x="0" y="347" width="
|
|
88
|
-
<text x="
|
|
89
|
-
<rect x="0" y="363" width="
|
|
90
|
-
<text x="
|
|
91
|
-
<rect x="0" y="379" width="
|
|
92
|
-
<text x="
|
|
84
|
+
<text x="85" y="322" dominant-baseline="middle" class="value-label">1.00x (0.31ms)</text>
|
|
85
|
+
<rect x="0" y="331" width="82.58064516129032" height="12" fill="#22c55e" rx="2" />
|
|
86
|
+
<text x="87.58064516129032" y="338" dominant-baseline="middle" class="value-label">1.03x (0.32ms)</text>
|
|
87
|
+
<rect x="0" y="347" width="74.83870967741935" height="12" fill="#f59e0b" rx="2" />
|
|
88
|
+
<text x="79.83870967741935" y="354" dominant-baseline="middle" class="value-label">0.94x (0.29ms)</text>
|
|
89
|
+
<rect x="0" y="363" width="85.16129032258067" height="12" fill="#ef4444" rx="2" />
|
|
90
|
+
<text x="90.16129032258067" y="370" dominant-baseline="middle" class="value-label">1.06x (0.33ms)</text>
|
|
91
|
+
<rect x="0" y="379" width="126.4516129032258" height="12" fill="#8b5cf6" rx="2" />
|
|
92
|
+
<text x="131.4516129032258" y="386" dominant-baseline="middle" class="value-label">1.58x (0.49ms)</text>
|
|
93
93
|
<text x="-10" y="460" text-anchor="end" dominant-baseline="middle" class="op-label">Nested find first (include posts)</text>
|
|
94
94
|
<rect x="0" y="420" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
95
|
-
<text x="85" y="427" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
96
|
-
<rect x="0" y="436" width="
|
|
97
|
-
<text x="
|
|
98
|
-
<rect x="0" y="452" width="87.
|
|
99
|
-
<text x="92.
|
|
100
|
-
<rect x="0" y="468" width="
|
|
101
|
-
<text x="
|
|
102
|
-
<rect x="0" y="484" width="
|
|
103
|
-
<text x="
|
|
95
|
+
<text x="85" y="427" dominant-baseline="middle" class="value-label">1.00x (0.51ms)</text>
|
|
96
|
+
<rect x="0" y="436" width="80" height="12" fill="#22c55e" rx="2" />
|
|
97
|
+
<text x="85" y="443" dominant-baseline="middle" class="value-label">1.00x (0.51ms)</text>
|
|
98
|
+
<rect x="0" y="452" width="87.84313725490198" height="12" fill="#f59e0b" rx="2" />
|
|
99
|
+
<text x="92.84313725490198" y="459" dominant-baseline="middle" class="value-label">1.10x (0.56ms)</text>
|
|
100
|
+
<rect x="0" y="468" width="73.72549019607843" height="12" fill="#ef4444" rx="2" />
|
|
101
|
+
<text x="78.72549019607843" y="475" dominant-baseline="middle" class="value-label">0.92x (0.47ms)</text>
|
|
102
|
+
<rect x="0" y="484" width="116.078431372549" height="12" fill="#8b5cf6" rx="2" />
|
|
103
|
+
<text x="121.078431372549" y="491" dominant-baseline="middle" class="value-label">1.45x (0.74ms)</text>
|
|
104
104
|
<text x="-10" y="565" text-anchor="end" dominant-baseline="middle" class="op-label">Find unique (by email)</text>
|
|
105
105
|
<rect x="0" y="525" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
106
|
-
<text x="85" y="532" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
107
|
-
<rect x="0" y="541" width="
|
|
108
|
-
<text x="
|
|
109
|
-
<rect x="0" y="557" width="
|
|
110
|
-
<text x="
|
|
111
|
-
<rect x="0" y="573" width="
|
|
112
|
-
<text x="
|
|
113
|
-
<rect x="0" y="589" width="
|
|
114
|
-
<text x="
|
|
106
|
+
<text x="85" y="532" dominant-baseline="middle" class="value-label">1.00x (0.27ms)</text>
|
|
107
|
+
<rect x="0" y="541" width="80" height="12" fill="#22c55e" rx="2" />
|
|
108
|
+
<text x="85" y="548" dominant-baseline="middle" class="value-label">1.00x (0.27ms)</text>
|
|
109
|
+
<rect x="0" y="557" width="85.92592592592592" height="12" fill="#f59e0b" rx="2" />
|
|
110
|
+
<text x="90.92592592592592" y="564" dominant-baseline="middle" class="value-label">1.07x (0.29ms)</text>
|
|
111
|
+
<rect x="0" y="573" width="94.81481481481481" height="12" fill="#ef4444" rx="2" />
|
|
112
|
+
<text x="99.81481481481481" y="580" dominant-baseline="middle" class="value-label">1.19x (0.32ms)</text>
|
|
113
|
+
<rect x="0" y="589" width="130.37037037037035" height="12" fill="#8b5cf6" rx="2" />
|
|
114
|
+
<text x="135.37037037037035" y="596" dominant-baseline="middle" class="value-label">1.63x (0.44ms)</text>
|
|
115
115
|
<text x="-10" y="670" text-anchor="end" dominant-baseline="middle" class="op-label">Nested find unique (include posts)</text>
|
|
116
116
|
<rect x="0" y="630" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
117
|
-
<text x="85" y="637" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
118
|
-
<rect x="0" y="646" width="
|
|
119
|
-
<text x="
|
|
120
|
-
<rect x="0" y="662" width="
|
|
121
|
-
<text x="
|
|
122
|
-
<rect x="0" y="678" width="
|
|
123
|
-
<text x="
|
|
124
|
-
<rect x="0" y="694" width="
|
|
125
|
-
<text x="
|
|
117
|
+
<text x="85" y="637" dominant-baseline="middle" class="value-label">1.00x (0.54ms)</text>
|
|
118
|
+
<rect x="0" y="646" width="72.59259259259258" height="12" fill="#22c55e" rx="2" />
|
|
119
|
+
<text x="77.59259259259258" y="653" dominant-baseline="middle" class="value-label">0.91x (0.49ms)</text>
|
|
120
|
+
<rect x="0" y="662" width="80" height="12" fill="#f59e0b" rx="2" />
|
|
121
|
+
<text x="85" y="669" dominant-baseline="middle" class="value-label">1.00x (0.54ms)</text>
|
|
122
|
+
<rect x="0" y="678" width="143.7037037037037" height="12" fill="#ef4444" rx="2" />
|
|
123
|
+
<text x="148.7037037037037" y="685" dominant-baseline="middle" class="value-label">1.80x (0.97ms)</text>
|
|
124
|
+
<rect x="0" y="694" width="106.66666666666667" height="12" fill="#8b5cf6" rx="2" />
|
|
125
|
+
<text x="111.66666666666667" y="701" dominant-baseline="middle" class="value-label">1.33x (0.72ms)</text>
|
|
126
126
|
<text x="-10" y="775" text-anchor="end" dominant-baseline="middle" class="op-label">Create</text>
|
|
127
127
|
<rect x="0" y="735" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
128
|
-
<text x="85" y="742" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
129
|
-
<rect x="0" y="751" width="
|
|
130
|
-
<text x="
|
|
131
|
-
<rect x="0" y="767" width="
|
|
132
|
-
<text x="
|
|
133
|
-
<rect x="0" y="783" width="
|
|
134
|
-
<text x="
|
|
135
|
-
<rect x="0" y="799" width="
|
|
136
|
-
<text x="
|
|
128
|
+
<text x="85" y="742" dominant-baseline="middle" class="value-label">1.00x (0.70ms)</text>
|
|
129
|
+
<rect x="0" y="751" width="77.71428571428572" height="12" fill="#22c55e" rx="2" />
|
|
130
|
+
<text x="82.71428571428572" y="758" dominant-baseline="middle" class="value-label">0.97x (0.68ms)</text>
|
|
131
|
+
<rect x="0" y="767" width="81.14285714285714" height="12" fill="#f59e0b" rx="2" />
|
|
132
|
+
<text x="86.14285714285714" y="774" dominant-baseline="middle" class="value-label">1.01x (0.71ms)</text>
|
|
133
|
+
<rect x="0" y="783" width="86.85714285714286" height="12" fill="#ef4444" rx="2" />
|
|
134
|
+
<text x="91.85714285714286" y="790" dominant-baseline="middle" class="value-label">1.09x (0.76ms)</text>
|
|
135
|
+
<rect x="0" y="799" width="106.28571428571429" height="12" fill="#8b5cf6" rx="2" />
|
|
136
|
+
<text x="111.28571428571429" y="806" dominant-baseline="middle" class="value-label">1.33x (0.93ms)</text>
|
|
137
137
|
<text x="-10" y="880" text-anchor="end" dominant-baseline="middle" class="op-label">Nested create (with post)</text>
|
|
138
138
|
<rect x="0" y="840" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
139
|
-
<text x="85" y="847" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
140
|
-
<rect x="0" y="856" width="
|
|
141
|
-
<text x="
|
|
142
|
-
<rect x="0" y="872" width="
|
|
143
|
-
<text x="
|
|
144
|
-
<rect x="0" y="888" width="
|
|
145
|
-
<text x="
|
|
146
|
-
<rect x="0" y="904" width="
|
|
147
|
-
<text x="
|
|
139
|
+
<text x="85" y="847" dominant-baseline="middle" class="value-label">1.00x (0.82ms)</text>
|
|
140
|
+
<rect x="0" y="856" width="86.82926829268294" height="12" fill="#22c55e" rx="2" />
|
|
141
|
+
<text x="91.82926829268294" y="863" dominant-baseline="middle" class="value-label">1.09x (0.89ms)</text>
|
|
142
|
+
<rect x="0" y="872" width="88.78048780487806" height="12" fill="#f59e0b" rx="2" />
|
|
143
|
+
<text x="93.78048780487806" y="879" dominant-baseline="middle" class="value-label">1.11x (0.91ms)</text>
|
|
144
|
+
<rect x="0" y="888" width="106.34146341463415" height="12" fill="#ef4444" rx="2" />
|
|
145
|
+
<text x="111.34146341463415" y="895" dominant-baseline="middle" class="value-label">1.33x (1.09ms)</text>
|
|
146
|
+
<rect x="0" y="904" width="139.5121951219512" height="12" fill="#8b5cf6" rx="2" />
|
|
147
|
+
<text x="144.5121951219512" y="911" dominant-baseline="middle" class="value-label">1.74x (1.43ms)</text>
|
|
148
148
|
<text x="-10" y="985" text-anchor="end" dominant-baseline="middle" class="op-label">Update</text>
|
|
149
149
|
<rect x="0" y="945" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
150
|
-
<text x="85" y="952" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
151
|
-
<rect x="0" y="961" width="
|
|
152
|
-
<text x="
|
|
153
|
-
<rect x="0" y="977" width="
|
|
154
|
-
<text x="
|
|
155
|
-
<rect x="0" y="993" width="
|
|
156
|
-
<text x="
|
|
157
|
-
<rect x="0" y="1009" width="
|
|
158
|
-
<text x="
|
|
150
|
+
<text x="85" y="952" dominant-baseline="middle" class="value-label">1.00x (0.61ms)</text>
|
|
151
|
+
<rect x="0" y="961" width="85.24590163934427" height="12" fill="#22c55e" rx="2" />
|
|
152
|
+
<text x="90.24590163934427" y="968" dominant-baseline="middle" class="value-label">1.07x (0.65ms)</text>
|
|
153
|
+
<rect x="0" y="977" width="86.55737704918035" height="12" fill="#f59e0b" rx="2" />
|
|
154
|
+
<text x="91.55737704918035" y="984" dominant-baseline="middle" class="value-label">1.08x (0.66ms)</text>
|
|
155
|
+
<rect x="0" y="993" width="97.04918032786885" height="12" fill="#ef4444" rx="2" />
|
|
156
|
+
<text x="102.04918032786885" y="1000" dominant-baseline="middle" class="value-label">1.21x (0.74ms)</text>
|
|
157
|
+
<rect x="0" y="1009" width="136.39344262295083" height="12" fill="#8b5cf6" rx="2" />
|
|
158
|
+
<text x="141.39344262295083" y="1016" dominant-baseline="middle" class="value-label">1.70x (1.04ms)</text>
|
|
159
159
|
<text x="-10" y="1090" text-anchor="end" dominant-baseline="middle" class="op-label">Nested update (update user + post)</text>
|
|
160
160
|
<rect x="0" y="1050" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
161
|
-
<text x="85" y="1057" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
162
|
-
<rect x="0" y="1066" width="85.
|
|
163
|
-
<text x="90.
|
|
164
|
-
<rect x="0" y="1082" width="
|
|
165
|
-
<text x="
|
|
166
|
-
<rect x="0" y="1098" width="
|
|
167
|
-
<text x="
|
|
168
|
-
<rect x="0" y="1114" width="
|
|
169
|
-
<text x="
|
|
161
|
+
<text x="85" y="1057" dominant-baseline="middle" class="value-label">1.00x (0.89ms)</text>
|
|
162
|
+
<rect x="0" y="1066" width="85.39325842696628" height="12" fill="#22c55e" rx="2" />
|
|
163
|
+
<text x="90.39325842696628" y="1073" dominant-baseline="middle" class="value-label">1.07x (0.95ms)</text>
|
|
164
|
+
<rect x="0" y="1082" width="83.59550561797754" height="12" fill="#f59e0b" rx="2" />
|
|
165
|
+
<text x="88.59550561797754" y="1089" dominant-baseline="middle" class="value-label">1.04x (0.93ms)</text>
|
|
166
|
+
<rect x="0" y="1098" width="90.78651685393257" height="12" fill="#ef4444" rx="2" />
|
|
167
|
+
<text x="95.78651685393257" y="1105" dominant-baseline="middle" class="value-label">1.13x (1.01ms)</text>
|
|
168
|
+
<rect x="0" y="1114" width="186.06741573033705" height="12" fill="#8b5cf6" rx="2" />
|
|
169
|
+
<text x="191.06741573033705" y="1121" dominant-baseline="middle" class="value-label">2.33x (2.07ms)</text>
|
|
170
170
|
<text x="-10" y="1195" text-anchor="end" dominant-baseline="middle" class="op-label">Upsert</text>
|
|
171
171
|
<rect x="0" y="1155" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
172
|
-
<text x="85" y="1162" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
173
|
-
<rect x="0" y="1171" width="
|
|
174
|
-
<text x="
|
|
175
|
-
<rect x="0" y="1187" width="
|
|
176
|
-
<text x="
|
|
177
|
-
<rect x="0" y="1203" width="
|
|
178
|
-
<text x="
|
|
179
|
-
<rect x="0" y="1219" width="
|
|
180
|
-
<text x="
|
|
172
|
+
<text x="85" y="1162" dominant-baseline="middle" class="value-label">1.00x (0.65ms)</text>
|
|
173
|
+
<rect x="0" y="1171" width="78.76923076923077" height="12" fill="#22c55e" rx="2" />
|
|
174
|
+
<text x="83.76923076923077" y="1178" dominant-baseline="middle" class="value-label">0.98x (0.64ms)</text>
|
|
175
|
+
<rect x="0" y="1187" width="86.15384615384615" height="12" fill="#f59e0b" rx="2" />
|
|
176
|
+
<text x="91.15384615384615" y="1194" dominant-baseline="middle" class="value-label">1.08x (0.70ms)</text>
|
|
177
|
+
<rect x="0" y="1203" width="89.84615384615384" height="12" fill="#ef4444" rx="2" />
|
|
178
|
+
<text x="94.84615384615384" y="1210" dominant-baseline="middle" class="value-label">1.12x (0.73ms)</text>
|
|
179
|
+
<rect x="0" y="1219" width="188.30769230769232" height="12" fill="#8b5cf6" rx="2" />
|
|
180
|
+
<text x="193.30769230769232" y="1226" dominant-baseline="middle" class="value-label">2.35x (1.53ms)</text>
|
|
181
181
|
<text x="-10" y="1300" text-anchor="end" dominant-baseline="middle" class="op-label">Nested upsert (user + post)</text>
|
|
182
182
|
<rect x="0" y="1260" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
183
|
-
<text x="85" y="1267" dominant-baseline="middle" class="value-label">1.00x (
|
|
184
|
-
<rect x="0" y="1276" width="
|
|
185
|
-
<text x="
|
|
186
|
-
<rect x="0" y="1292" width="
|
|
187
|
-
<text x="
|
|
188
|
-
<rect x="0" y="1308" width="
|
|
189
|
-
<text x="
|
|
190
|
-
<rect x="0" y="1324" width="
|
|
191
|
-
<text x="
|
|
183
|
+
<text x="85" y="1267" dominant-baseline="middle" class="value-label">1.00x (0.85ms)</text>
|
|
184
|
+
<rect x="0" y="1276" width="102.58823529411765" height="12" fill="#22c55e" rx="2" />
|
|
185
|
+
<text x="107.58823529411765" y="1283" dominant-baseline="middle" class="value-label">1.28x (1.09ms)</text>
|
|
186
|
+
<rect x="0" y="1292" width="102.58823529411765" height="12" fill="#f59e0b" rx="2" />
|
|
187
|
+
<text x="107.58823529411765" y="1299" dominant-baseline="middle" class="value-label">1.28x (1.09ms)</text>
|
|
188
|
+
<rect x="0" y="1308" width="103.5294117647059" height="12" fill="#ef4444" rx="2" />
|
|
189
|
+
<text x="108.5294117647059" y="1315" dominant-baseline="middle" class="value-label">1.29x (1.10ms)</text>
|
|
190
|
+
<rect x="0" y="1324" width="177.88235294117646" height="12" fill="#8b5cf6" rx="2" />
|
|
191
|
+
<text x="182.88235294117646" y="1331" dominant-baseline="middle" class="value-label">2.22x (1.89ms)</text>
|
|
192
192
|
<text x="-10" y="1405" text-anchor="end" dominant-baseline="middle" class="op-label">Delete</text>
|
|
193
193
|
<rect x="0" y="1365" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
194
|
-
<text x="85" y="1372" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
195
|
-
<rect x="0" y="1381" width="
|
|
196
|
-
<text x="
|
|
197
|
-
<rect x="0" y="1397" width="
|
|
198
|
-
<text x="
|
|
199
|
-
<rect x="0" y="1413" width="
|
|
200
|
-
<text x="
|
|
201
|
-
<rect x="0" y="1429" width="
|
|
202
|
-
<text x="
|
|
194
|
+
<text x="85" y="1372" dominant-baseline="middle" class="value-label">1.00x (0.83ms)</text>
|
|
195
|
+
<rect x="0" y="1381" width="91.56626506024097" height="12" fill="#22c55e" rx="2" />
|
|
196
|
+
<text x="96.56626506024097" y="1388" dominant-baseline="middle" class="value-label">1.14x (0.95ms)</text>
|
|
197
|
+
<rect x="0" y="1397" width="93.49397590361447" height="12" fill="#f59e0b" rx="2" />
|
|
198
|
+
<text x="98.49397590361447" y="1404" dominant-baseline="middle" class="value-label">1.17x (0.97ms)</text>
|
|
199
|
+
<rect x="0" y="1413" width="104.09638554216869" height="12" fill="#ef4444" rx="2" />
|
|
200
|
+
<text x="109.09638554216869" y="1420" dominant-baseline="middle" class="value-label">1.30x (1.08ms)</text>
|
|
201
|
+
<rect x="0" y="1429" width="115.66265060240963" height="12" fill="#8b5cf6" rx="2" />
|
|
202
|
+
<text x="120.66265060240963" y="1436" dominant-baseline="middle" class="value-label">1.45x (1.20ms)</text>
|
|
203
203
|
<text x="-10" y="1510" text-anchor="end" dominant-baseline="middle" class="op-label">Create Many (10 records)</text>
|
|
204
204
|
<rect x="0" y="1470" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
205
|
-
<text x="85" y="1477" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
206
|
-
<rect x="0" y="1486" width="
|
|
207
|
-
<text x="
|
|
208
|
-
<rect x="0" y="1502" width="
|
|
209
|
-
<text x="
|
|
210
|
-
<rect x="0" y="1518" width="103.
|
|
211
|
-
<text x="108.
|
|
212
|
-
<rect x="0" y="1534" width="
|
|
213
|
-
<text x="
|
|
205
|
+
<text x="85" y="1477" dominant-baseline="middle" class="value-label">1.00x (0.72ms)</text>
|
|
206
|
+
<rect x="0" y="1486" width="83.33333333333334" height="12" fill="#22c55e" rx="2" />
|
|
207
|
+
<text x="88.33333333333334" y="1493" dominant-baseline="middle" class="value-label">1.04x (0.75ms)</text>
|
|
208
|
+
<rect x="0" y="1502" width="96.66666666666669" height="12" fill="#f59e0b" rx="2" />
|
|
209
|
+
<text x="101.66666666666669" y="1509" dominant-baseline="middle" class="value-label">1.21x (0.87ms)</text>
|
|
210
|
+
<rect x="0" y="1518" width="103.33333333333334" height="12" fill="#ef4444" rx="2" />
|
|
211
|
+
<text x="108.33333333333334" y="1525" dominant-baseline="middle" class="value-label">1.29x (0.93ms)</text>
|
|
212
|
+
<rect x="0" y="1534" width="116.66666666666667" height="12" fill="#8b5cf6" rx="2" />
|
|
213
|
+
<text x="121.66666666666667" y="1541" dominant-baseline="middle" class="value-label">1.46x (1.05ms)</text>
|
|
214
214
|
<text x="-10" y="1615" text-anchor="end" dominant-baseline="middle" class="op-label">Upsert Many (10 records)</text>
|
|
215
215
|
<rect x="0" y="1575" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
216
|
-
<text x="85" y="1582" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
217
|
-
<rect x="0" y="1591" width="
|
|
218
|
-
<text x="
|
|
219
|
-
<rect x="0" y="1607" width="
|
|
220
|
-
<text x="
|
|
221
|
-
<rect x="0" y="1623" width="
|
|
222
|
-
<text x="
|
|
216
|
+
<text x="85" y="1582" dominant-baseline="middle" class="value-label">1.00x (0.76ms)</text>
|
|
217
|
+
<rect x="0" y="1591" width="90.52631578947367" height="12" fill="#22c55e" rx="2" />
|
|
218
|
+
<text x="95.52631578947367" y="1598" dominant-baseline="middle" class="value-label">1.13x (0.86ms)</text>
|
|
219
|
+
<rect x="0" y="1607" width="113.68421052631578" height="12" fill="#f59e0b" rx="2" />
|
|
220
|
+
<text x="118.68421052631578" y="1614" dominant-baseline="middle" class="value-label">1.42x (1.08ms)</text>
|
|
221
|
+
<rect x="0" y="1623" width="114.73684210526316" height="12" fill="#ef4444" rx="2" />
|
|
222
|
+
<text x="119.73684210526316" y="1630" dominant-baseline="middle" class="value-label">1.43x (1.09ms)</text>
|
|
223
223
|
<rect x="0" y="1639" width="400" height="12" fill="#8b5cf6" rx="2" />
|
|
224
224
|
<line x1="397" y1="1639" x2="400" y2="1651" class="overflow-line" />
|
|
225
225
|
<line x1="394" y1="1639" x2="397" y2="1651" class="overflow-line" />
|
|
226
|
-
<text x="405" y="1646" dominant-baseline="middle" class="value-overflow">⚠️ 13.
|
|
226
|
+
<text x="405" y="1646" dominant-baseline="middle" class="value-overflow">⚠️ 13.08x (9.94ms)</text>
|
|
227
227
|
<text x="-10" y="1720" text-anchor="end" dominant-baseline="middle" class="op-label">Update Many (10 different values)</text>
|
|
228
228
|
<rect x="0" y="1680" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
229
|
-
<text x="85" y="1687" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
230
|
-
<rect x="0" y="1696" width="
|
|
231
|
-
<text x="
|
|
232
|
-
<rect x="0" y="1712" width="
|
|
233
|
-
<text x="
|
|
234
|
-
<rect x="0" y="1728" width="
|
|
235
|
-
<text x="
|
|
229
|
+
<text x="85" y="1687" dominant-baseline="middle" class="value-label">1.00x (0.67ms)</text>
|
|
230
|
+
<rect x="0" y="1696" width="325.9701492537313" height="12" fill="#22c55e" rx="2" />
|
|
231
|
+
<text x="330.9701492537313" y="1703" dominant-baseline="middle" class="value-label">4.07x (2.73ms)</text>
|
|
232
|
+
<rect x="0" y="1712" width="308.0597014925373" height="12" fill="#f59e0b" rx="2" />
|
|
233
|
+
<text x="313.0597014925373" y="1719" dominant-baseline="middle" class="value-label">3.85x (2.58ms)</text>
|
|
234
|
+
<rect x="0" y="1728" width="331.9402985074626" height="12" fill="#ef4444" rx="2" />
|
|
235
|
+
<text x="336.9402985074626" y="1735" dominant-baseline="middle" class="value-label">4.15x (2.78ms)</text>
|
|
236
236
|
<rect x="0" y="1744" width="400" height="12" fill="#8b5cf6" rx="2" />
|
|
237
237
|
<line x1="397" y1="1744" x2="400" y2="1756" class="overflow-line" />
|
|
238
238
|
<line x1="394" y1="1744" x2="397" y2="1756" class="overflow-line" />
|
|
239
|
-
<text x="405" y="1751" dominant-baseline="middle" class="value-overflow">⚠️
|
|
239
|
+
<text x="405" y="1751" dominant-baseline="middle" class="value-overflow">⚠️ 6.55x (4.39ms)</text>
|
|
240
240
|
<text x="-10" y="1825" text-anchor="end" dominant-baseline="middle" class="op-label">Nested relations (100→1000→10000)</text>
|
|
241
241
|
<rect x="0" y="1785" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
242
|
-
<text x="85" y="1792" dominant-baseline="middle" class="value-label">1.00x (
|
|
243
|
-
<rect x="0" y="1801" width="
|
|
244
|
-
<text x="
|
|
245
|
-
<rect x="0" y="1817" width="
|
|
246
|
-
<text x="
|
|
247
|
-
<rect x="0" y="1833" width="
|
|
248
|
-
<text x="
|
|
249
|
-
<rect x="0" y="1849" width="
|
|
250
|
-
<text x="
|
|
242
|
+
<text x="85" y="1792" dominant-baseline="middle" class="value-label">1.00x (12.18ms)</text>
|
|
243
|
+
<rect x="0" y="1801" width="106.5353037766831" height="12" fill="#22c55e" rx="2" />
|
|
244
|
+
<text x="111.5353037766831" y="1808" dominant-baseline="middle" class="value-label">1.33x (16.22ms)</text>
|
|
245
|
+
<rect x="0" y="1817" width="127.0279146141215" height="12" fill="#f59e0b" rx="2" />
|
|
246
|
+
<text x="132.0279146141215" y="1824" dominant-baseline="middle" class="value-label">1.59x (19.34ms)</text>
|
|
247
|
+
<rect x="0" y="1833" width="360.7881773399015" height="12" fill="#ef4444" rx="2" />
|
|
248
|
+
<text x="365.7881773399015" y="1840" dominant-baseline="middle" class="value-label">4.51x (54.93ms)</text>
|
|
249
|
+
<rect x="0" y="1849" width="394.54844006568146" height="12" fill="#8b5cf6" rx="2" />
|
|
250
|
+
<text x="399.54844006568146" y="1856" dominant-baseline="middle" class="value-label">4.93x (60.07ms)</text>
|
|
251
251
|
<text x="-10" y="1930" text-anchor="end" dominant-baseline="middle" class="op-label">Nested relations (composite key, 5 tenants)</text>
|
|
252
252
|
<rect x="0" y="1890" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
253
|
-
<text x="85" y="1897" dominant-baseline="middle" class="value-label">1.00x (
|
|
253
|
+
<text x="85" y="1897" dominant-baseline="middle" class="value-label">1.00x (14.62ms)</text>
|
|
254
254
|
<text x="5" y="1913" dominant-baseline="middle" class="na-text">N/A</text>
|
|
255
|
-
<rect x="0" y="1922" width="
|
|
256
|
-
<text x="
|
|
257
|
-
<rect x="0" y="1938" width="
|
|
258
|
-
<text x="
|
|
255
|
+
<rect x="0" y="1922" width="77.92065663474693" height="12" fill="#f59e0b" rx="2" />
|
|
256
|
+
<text x="82.92065663474693" y="1929" dominant-baseline="middle" class="value-label">0.97x (14.24ms)</text>
|
|
257
|
+
<rect x="0" y="1938" width="159.8358413132695" height="12" fill="#ef4444" rx="2" />
|
|
258
|
+
<text x="164.8358413132695" y="1945" dominant-baseline="middle" class="value-label">2.00x (29.21ms)</text>
|
|
259
259
|
<rect x="0" y="1954" width="400" height="12" fill="#8b5cf6" rx="2" />
|
|
260
260
|
<line x1="397" y1="1954" x2="400" y2="1966" class="overflow-line" />
|
|
261
261
|
<line x1="394" y1="1954" x2="397" y2="1966" class="overflow-line" />
|
|
262
|
-
<text x="405" y="1961" dominant-baseline="middle" class="value-overflow">⚠️
|
|
262
|
+
<text x="405" y="1961" dominant-baseline="middle" class="value-overflow">⚠️ 13.39x (195.74ms)</text>
|
|
263
263
|
</g>
|
|
264
264
|
|
|
265
265
|
<!-- Legend -->
|