pub struct RegistryDb { /* private fields */ }Expand description
SQLite database for registry metadata.
Implementations§
Source§impl RegistryDb
impl RegistryDb
Sourcepub fn open<P: AsRef<Path>>(path: P) -> Result<Self>
pub fn open<P: AsRef<Path>>(path: P) -> Result<Self>
Open or create a database at the given path.
§Errors
Returns an error if the database cannot be opened.
Sourcepub fn vacuum_into<P: AsRef<Path>>(&self, target: P) -> Result<()>
pub fn vacuum_into<P: AsRef<Path>>(&self, target: P) -> Result<()>
HELIX-IDEA-007 — atomic point-in-time snapshot via SQLite
VACUUM INTO 'path'. The target path MUST NOT already exist;
SQLite refuses to overwrite, and we surface that refusal as
PachaError::Database rather than silently truncating.
Concurrent writers continue against the source DB; their changes are not visible in the snapshot. Reads block briefly only while VACUUM INTO copies pages.
Contract: contracts/apr-registry-snapshot-v1.yaml
(FALSIFY-SNAPSHOT-001..003).
§Errors
Returns an error if the SQL fails — most commonly when target
already exists.
Sourcepub fn insert_model(&self, model: &Model) -> Result<()>
pub fn insert_model(&self, model: &Model) -> Result<()>
Insert a model into the database.
Sourcepub fn model_exists(&self, name: &str, version: &ModelVersion) -> Result<bool>
pub fn model_exists(&self, name: &str, version: &ModelVersion) -> Result<bool>
Check if a model exists.
Sourcepub fn get_model(&self, name: &str, version: &ModelVersion) -> Result<Model>
pub fn get_model(&self, name: &str, version: &ModelVersion) -> Result<Model>
Get a model by name and version.
Sourcepub fn get_model_by_id(&self, id: &ModelId) -> Result<Model>
pub fn get_model_by_id(&self, id: &ModelId) -> Result<Model>
Get a model by ID.
Sourcepub fn list_model_versions(&self, name: &str) -> Result<Vec<ModelVersion>>
pub fn list_model_versions(&self, name: &str) -> Result<Vec<ModelVersion>>
List all versions of a model.
Sourcepub fn list_model_names(&self) -> Result<Vec<String>>
pub fn list_model_names(&self) -> Result<Vec<String>>
List all model names.
Sourcepub fn update_model_stage(&self, id: &ModelId, stage: ModelStage) -> Result<()>
pub fn update_model_stage(&self, id: &ModelId, stage: ModelStage) -> Result<()>
Update model stage.
Sourcepub fn count_models(&self) -> Result<usize>
pub fn count_models(&self) -> Result<usize>
Count models.
Sourcepub fn insert_dataset(&self, dataset: &Dataset) -> Result<()>
pub fn insert_dataset(&self, dataset: &Dataset) -> Result<()>
Insert a dataset into the database.
Sourcepub fn dataset_exists(
&self,
name: &str,
version: &DatasetVersion,
) -> Result<bool>
pub fn dataset_exists( &self, name: &str, version: &DatasetVersion, ) -> Result<bool>
Check if a dataset exists.
Sourcepub fn get_dataset(
&self,
name: &str,
version: &DatasetVersion,
) -> Result<Dataset>
pub fn get_dataset( &self, name: &str, version: &DatasetVersion, ) -> Result<Dataset>
Get a dataset by name and version.
Sourcepub fn list_dataset_names(&self) -> Result<Vec<String>>
pub fn list_dataset_names(&self) -> Result<Vec<String>>
List all dataset names.
Sourcepub fn list_dataset_versions(&self, name: &str) -> Result<Vec<DatasetVersion>>
pub fn list_dataset_versions(&self, name: &str) -> Result<Vec<DatasetVersion>>
List all versions of a dataset.
Sourcepub fn count_datasets(&self) -> Result<usize>
pub fn count_datasets(&self) -> Result<usize>
Count datasets.
Sourcepub fn insert_recipe(&self, recipe: &TrainingRecipe) -> Result<()>
pub fn insert_recipe(&self, recipe: &TrainingRecipe) -> Result<()>
Insert a recipe into the database.
Sourcepub fn recipe_exists(&self, name: &str, version: &RecipeVersion) -> Result<bool>
pub fn recipe_exists(&self, name: &str, version: &RecipeVersion) -> Result<bool>
Check if a recipe exists.
Sourcepub fn get_recipe(
&self,
name: &str,
version: &RecipeVersion,
) -> Result<TrainingRecipe>
pub fn get_recipe( &self, name: &str, version: &RecipeVersion, ) -> Result<TrainingRecipe>
Get a recipe by name and version.
Sourcepub fn list_recipe_names(&self) -> Result<Vec<String>>
pub fn list_recipe_names(&self) -> Result<Vec<String>>
List all recipe names.
Sourcepub fn list_recipe_versions(&self, name: &str) -> Result<Vec<RecipeVersion>>
pub fn list_recipe_versions(&self, name: &str) -> Result<Vec<RecipeVersion>>
List all versions of a recipe.
Sourcepub fn count_recipes(&self) -> Result<usize>
pub fn count_recipes(&self) -> Result<usize>
Count recipes.
Sourcepub fn insert_run(&self, run: &ExperimentRun) -> Result<()>
pub fn insert_run(&self, run: &ExperimentRun) -> Result<()>
Insert an experiment run.
Sourcepub fn update_run(&self, run: &ExperimentRun) -> Result<()>
pub fn update_run(&self, run: &ExperimentRun) -> Result<()>
Update an experiment run.
Sourcepub fn get_run(&self, run_id: &RunId) -> Result<ExperimentRun>
pub fn get_run(&self, run_id: &RunId) -> Result<ExperimentRun>
Get an experiment run by ID.
Sourcepub fn list_runs_for_recipe(
&self,
recipe_ref: &RecipeReference,
) -> Result<Vec<ExperimentRun>>
pub fn list_runs_for_recipe( &self, recipe_ref: &RecipeReference, ) -> Result<Vec<ExperimentRun>>
List runs for a recipe.