perf(client): Pre-index DMMF datamodel during generation(#18861)

Merged
Merging
integration/keyed-dmmf
into
main
+6%
IMPROVEMENTS
0
REGRESSIONS
0
UNTOUCHED
3
NEW
0
DROPPED
0

Benchmarks

client generation ~50 Models
packages/client/src/__tests__/benchmarks/huge-schema/huge-schema.bench.ts::typescript::client generation ~50 Models
+4%
6.7 s
6.4 s
typescript compilation ~50 Models
packages/client/src/__tests__/benchmarks/huge-schema/huge-schema.bench.ts::typescript::typescript compilation ~50 Models
+7%
67.6 ms
62.9 ms
client generation 100 models with relations
packages/client/src/__tests__/benchmarks/lots-of-relations/lots-of-relations.bench.ts::typescript::client generation 100 models with relations
+6%
43.3 s
41 s

Commits

Click on a commit to change the comparison range
refactor: remove unimplemented `all-exist` test from packages/engines (#18453) * refactor: remove unimplemented `all-exist` test from packages/engines The functionality that it was probably attempting to test judging from its name is already tested elsewhere (we have relevant tests in `fetch-engine` and `internals`). * fix: allow no tests
base
bc420dc
7 months ago by aqrln
-30%
perf(client): Pre-index DMMF datamodel during generation In the constructor, we spend some time indexing all models and types by their name, which on a larger schemas has an impact on startup performance. This PR replaces base-dmmf with a set of 3 pre-indexed maps. For backward compatibility, `Prisma.dmmf` export will be lazily computed using runtime datamodel if requested. Close prisma/client-planning#321
f492893
8 months ago by SevInf
-1%
perf(client): Pre-index DMMF datamodel during generation In the constructor, we spend some time indexing all models and types by their name, which on a larger schemas has an impact on startup performance. This PR replaces base-dmmf with a set of 3 pre-indexed maps. For backward compatibility, `Prisma.dmmf` export will be lazily computed using runtime datamodel if requested. Close prisma/client-planning#321
553f71c
8 months ago by SevInf
+51%
perf(client): Pre-index DMMF datamodel during generation In the constructor, we spend some time indexing all models and types by their name, which on a larger schemas has an impact on startup performance. This PR replaces base-dmmf with a set of 3 pre-indexed maps. For backward compatibility, `Prisma.dmmf` export will be lazily computed using runtime datamodel if requested. Close prisma/client-planning#321
8f67e07
8 months ago by SevInf
-6%
perf(client): Pre-index DMMF datamodel during generation In the constructor, we spend some time indexing all models and types by their name, which on a larger schemas has an impact on startup performance. This PR replaces base-dmmf with a set of 3 pre-indexed maps. For backward compatibility, `Prisma.dmmf` export will be lazily computed using runtime datamodel if requested. Close prisma/client-planning#321
3d87134
8 months ago by SevInf
-29%
Fix circular references
4ad122b
8 months ago by SevInf
+48%
Fix studio
51af15c
8 months ago by SevInf
-59%
Fix studio
2d1314e
8 months ago by SevInf
-64%
Fix dataproxy + GraphQL
d8251e8
8 months ago by SevInf
+95%
Fix legacy tests
6594d8f
8 months ago by SevInf
ResourcesHomePricingDocsBlogGitHub
Copyright © 2023 CodSpeed Technology SAS. All rights reserved.