Specification
After refactoring the git domain in #709 and simpifying the git code significantly. I noticed that the performance when cloning wasn't that much improved. This was purely a vibes based observation so we need to add benchmarks to for the git domain to determine performance changes later down the line. This is very important so we can compare improvements when updating the efs and js-db repos to be more performant.
Benchmarks will be added for each git/http.ts and git/utils.ts function to get an idea of which parts do the most processing. We will also add a full integration benchmark for doing an clone and pull example using isomorphic-git.
Each benchmark will compare the following where apropriate.
- Running using
fs.
- Running using
efs.
- Running over the
RPC.
- Running over
RPC AND efs.
We may not need to cover every function or example but being able to compare baseline fs with efs and rpc examples would be good for determining where the slowdowns are. I'm already pretty sure it's the db and efs being the core source of the slowdown.
Additional context
Tasks
- Create benchmarks for each relevant
git domain function and generator.
- Ensure we test each case of using the
fs, efs rpc and the combo of efs+rpc.
Specification
After refactoring the git domain in #709 and simpifying the git code significantly. I noticed that the performance when cloning wasn't that much improved. This was purely a vibes based observation so we need to add benchmarks to for the git domain to determine performance changes later down the line. This is very important so we can compare improvements when updating the
efsandjs-dbrepos to be more performant.Benchmarks will be added for each
git/http.tsandgit/utils.tsfunction to get an idea of which parts do the most processing. We will also add a full integration benchmark for doing an clone and pull example usingisomorphic-git.Each benchmark will compare the following where apropriate.
fs.efs.RPC.RPCANDefs.We may not need to cover every function or example but being able to compare baseline
fswithefsandrpcexamples would be good for determining where the slowdowns are. I'm already pretty sure it's thedbandefsbeing the core source of the slowdown.Additional context
git/utils.tsfor Serving Vault Git Repositories #298gitdomain to use async generators, remove readable-stream, simplify utilities #709Tasks
gitdomain function and generator.fs,efsrpcand the combo ofefs+rpc.