1
0
mirror of https://github.com/Zygo/bees.git synced 2025-05-17 21:35:45 +02:00

Revert "roots: use a non-idle task for next_transid"

next_transid tasks don't respect queue selection very well, because
they effectively end up spinning in a loop until all other worker
threads become busy.

Back this out, and fix the priority handling in the Task library.

This reverts commit 58db4071de5f524c35b1362bfb5b1fceedea503f.
This commit is contained in:
Zygo Blaxell 2025-01-12 18:23:44 -05:00
parent a819d623f7
commit d4a681c8a2

View File

@ -131,7 +131,7 @@ BeesScanMode::start_scan()
st->scan();
});
}
m_scan_task.run();
m_scan_task.idle();
}
bool
@ -769,7 +769,7 @@ BeesScanModeExtent::scan()
// Good to go, start everything running
for (const auto &i : task_map_copy) {
i.second.run();
i.second.idle();
}
}
@ -902,7 +902,7 @@ BeesScanModeExtent::map_next_extent(uint64_t const subvol)
<< " time " << crawl_time << " subvol " << subvol);
}
// We did something! Get in line to run again (but don't preempt work already queued)
// We did something! Get in line to run again
Task::current_task().idle();
return;
}