fix: preserve in-memory user export fallback

This commit is contained in:
elky
2026-06-22 00:08:48 +08:00
parent 363d1aba9a
commit 541cc197c4
@@ -580,13 +580,23 @@ impl UserReadRepository for InMemoryUserReadRepository {
&self, &self,
user_id: &str, user_id: &str,
) -> Result<Option<StoredUserExportRow>, DataLayerError> { ) -> Result<Option<StoredUserExportRow>, DataLayerError> {
Ok(self if let Some(row) = self
.export_rows .export_rows
.read() .read()
.expect("user repository lock") .expect("user repository lock")
.iter() .iter()
.find(|row| row.id == user_id) .find(|row| row.id == user_id)
.cloned()) .cloned()
{
return Ok(Some(row));
}
self.auth_by_id
.read()
.expect("user repository lock")
.get(user_id)
.map(|user| memory_export_row_from_auth_user(self, user))
.transpose()
} }
async fn list_user_groups(&self) -> Result<Vec<StoredUserGroup>, DataLayerError> { async fn list_user_groups(&self) -> Result<Vec<StoredUserGroup>, DataLayerError> {