next.js
67618814 - perf(turbo-tasks): Optionally schedule ResolveNative/ResolveTrait tasks as local tasks (#69126)

Commit
1 year ago
perf(turbo-tasks): Optionally schedule ResolveNative/ResolveTrait tasks as local tasks (#69126) When calling a turbo tasks function with unresolved arguments, we create a wrapper `CachedTaskType::ResolveNative` or `ResolveTrait` task. These are quite frequently created, and their behavior is constrained and well-defined, so we should turn them into local tasks that aren't cached in the backend. This logic is gated behind `--features turbo-tasks/local_resolution`, as it has some known issues. ## Known Issues A `RawVc::LocalOutput` can currently only be resolved within it's parent task. The long-term plan is for everything to use `ResolvedVc`, so that this assumption is safe. The short-term plan is to store local outputs more globally. Design here: https://www.notion.so/vercel/RawVc-LocalOutput-aede5f463f594ca58396eb3fdaffd865?pvs=4#02af94e3b9b64a3690f3e467abc0a47e ## Test Plan ``` cargo nextest r --features turbo-tasks/local_resolution -p turbo-tasks -p turbo-tasks-memory ```
Author
bgw bgw
Parents
Loading