From 0f658cf79b3986ed9813ba95448bb0072a40f1fe Mon Sep 17 00:00:00 2001 From: Christian Ebner Date: Sat, 5 Apr 2025 11:05:04 +0200 Subject: [PATCH] pbs-api-types: add garbage collection atime safety check flag Add the `gc-atime-safety-check` flag to the datastore tuning parameters. This flag allows to enable/disable a check to detect if the atime update is honored by the filesystem backing the chunk store during phase 1 of garbage collection and during datastore creation. The default is to perform the check. Signed-off-by: Christian Ebner --- pbs-api-types/src/datastore.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pbs-api-types/src/datastore.rs b/pbs-api-types/src/datastore.rs index ddd8d3c6..1a4d9e2d 100644 --- a/pbs-api-types/src/datastore.rs +++ b/pbs-api-types/src/datastore.rs @@ -229,6 +229,14 @@ pub enum DatastoreFSyncLevel { type: ChunkOrder, optional: true, }, + "gc-atime-safety-check": { + description: + "Check filesystem atime updates are honored during store creation and garbage \ + collection", + optional: true, + default: true, + type: bool, + }, }, )] #[derive(Serialize, Deserialize, Default)] @@ -240,6 +248,8 @@ pub struct DatastoreTuning { pub chunk_order: Option, #[serde(skip_serializing_if = "Option::is_none")] pub sync_level: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub gc_atime_safety_check: Option, } pub const DATASTORE_TUNING_STRING_SCHEMA: Schema = StringSchema::new("Datastore tuning options")