TraceMachina / nativelink

Bazel RBE with CAS server implementation in Rust. The free and open source cache and remote execution service, prioritizing stability and speed for the people that need it.
https://docs.nativelink.com
Apache License 2.0
236 stars 46 forks source link

Implementation of WorkerStateManager #993

Closed adam-singer closed 1 week ago

adam-singer commented 3 weeks ago

Description

Implement WorkerStateManager for simple scheduler

Implementation of WorkerStateManager where the beginnings of being able to tuck mutations behind a trait for StateManager. StateManager now wraps the StateManagerImpl for inner state structure StateManagerImpl. All mutations should be done on a lock on inner in the future. Moving implementation code of update_action into WorkerStateManager trait.

Fixes https://github.com/nativelink/nativelink/issues/994

Type of change

Please delete options that aren't relevant.

How Has This Been Tested?

Unit tests

Checklist


This change is Reviewable