Skip to content

Commit

Permalink
log tasks with many items
Browse files Browse the repository at this point in the history
  • Loading branch information
sokra committed Sep 24, 2024
1 parent 49d55cc commit 6b2819c
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 0 deletions.
21 changes: 21 additions & 0 deletions turbopack/crates/turbo-tasks-backend/src/backend/operation/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,13 @@ impl<'a> ExecuteContext<'a> {
let items = self.backend.backing_storage.lookup_data(task_id);
task = self.backend.storage.access_mut(task_id);
if !task.persistance_state().is_restored() {
if items.len() > 10000 {
println!(
"{} restored {} items",
self.backend.get_task_desc_fn(task_id)(),
items.len()
);
}
for item in items {
task.add(item);
}
Expand Down Expand Up @@ -224,10 +231,24 @@ impl<'a> TaskGuard<'a> {

pub fn add_new(&mut self, item: CachedDataItem) {
let added = self.add(item);
if added {
if self.task.len() == 10000 {
println!(
"{} has > 10000 items",
self.backend.get_task_desc_fn(self.task_id)()
);
}
}
assert!(added, "Item already exists");
}

pub fn insert(&mut self, item: CachedDataItem) -> Option<CachedDataItemValue> {
if self.task.len() == 10000 {
println!(
"{} has > 10000 items",
self.backend.get_task_desc_fn(self.task_id)()
);
}
let (key, value) = item.into_key_and_value();
if self.task_id.is_transient() || !key.is_persistent() {
self.task
Expand Down
7 changes: 7 additions & 0 deletions turbopack/crates/turbo-tasks-backend/src/backend/storage.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,13 @@ where
}
}

pub fn len(&self) -> usize {
match self {
InnerStorage::Plain { map, .. } => map.len(),
InnerStorage::Indexed { map, .. } => map.values().map(|m| m.len()).sum(),
}
}

pub fn persistance_state(&self) -> &PersistanceState {
match self {
InnerStorage::Plain {
Expand Down

0 comments on commit 6b2819c

Please sign in to comment.