diff --git a/server/src/engine/core/system_db.rs b/server/src/engine/core/system_db.rs index 303adfa6..f9d0a4cb 100644 --- a/server/src/engine/core/system_db.rs +++ b/server/src/engine/core/system_db.rs @@ -50,6 +50,9 @@ impl User { phash: password_hash, } } + pub fn hash(&self) -> &[u8] { + &self.phash + } } #[derive(Debug, PartialEq, Clone, Copy)] diff --git a/server/src/engine/storage/v2/mod.rs b/server/src/engine/storage/v2/mod.rs index 7c1a7863..8d3bae33 100644 --- a/server/src/engine/storage/v2/mod.rs +++ b/server/src/engine/storage/v2/mod.rs @@ -88,6 +88,11 @@ pub fn recreate(gns: GNSData) -> RuntimeResult { model_driver.commit_with_ctx(FullModel::new(model_data), BatchStats::new())?; model.driver().initialize_model_driver(model_driver); } + // create all users + context::set_dmsg("creating all users"); + for (user_name, user) in gns.sys_db().users().read().iter() { + gns_driver.commit_event(CreateUserTxn::new(&user_name, user.hash()))?; + } Ok(SELoaded { gns: GlobalNS::new(gns, FractalGNSDriver::new(gns_driver)), })