Skip to content

Commit 0b35f0d

Browse files
committed
Turbopack: flatten trace when it reaches cut off depth
1 parent 7df889b commit 0b35f0d

File tree

1 file changed

+12
-4
lines changed
  • turbopack/crates/turbopack-trace-server/src

1 file changed

+12
-4
lines changed

turbopack/crates/turbopack-trace-server/src/store.rs

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ use crate::{
1616

1717
pub type SpanId = NonZeroUsize;
1818

19-
const CUT_OFF_DEPTH: u32 = 150;
19+
const CUT_OFF_DEPTH: u32 = 80;
2020

2121
pub struct Store {
2222
pub(crate) spans: Vec<Span>,
@@ -110,17 +110,25 @@ impl Store {
110110
extra: OnceLock::new(),
111111
names: OnceLock::new(),
112112
});
113-
let parent = if let Some(parent) = parent {
113+
let mut parent = if let Some(parent) = parent {
114114
outdated_spans.insert(parent);
115115
&mut self.spans[parent.get()]
116116
} else {
117117
&mut self.spans[0]
118118
};
119-
parent.start = min(parent.start, start);
120-
let depth = parent.depth + 1;
119+
let mut depth = parent.depth + 1;
120+
if depth >= CUT_OFF_DEPTH
121+
&& let Some(parent_of_parent) = parent.parent
122+
{
123+
outdated_spans.insert(parent_of_parent);
124+
self.spans[id.get()].parent = Some(parent_of_parent);
125+
parent = &mut self.spans[parent_of_parent.get()];
126+
depth = CUT_OFF_DEPTH - 1;
127+
}
121128
if depth < CUT_OFF_DEPTH {
122129
parent.events.push(SpanEvent::Child { index: id });
123130
}
131+
parent.start = min(parent.start, start);
124132
let span = &mut self.spans[id.get()];
125133
span.depth = depth;
126134
id

0 commit comments

Comments
 (0)