From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 179971FF179 for ; Wed, 12 Nov 2025 17:35:55 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 3FE049B1A; Wed, 12 Nov 2025 17:36:41 +0100 (CET) From: Christian Ebner To: pbs-devel@lists.proxmox.com Date: Wed, 12 Nov 2025 17:36:18 +0100 Message-ID: <20251112163624.691139-1-c.ebner@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1762965372601 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.048 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [datastore.rs] Subject: [pbs-devel] [PATCH proxmox-backup v2 0/6] wait for active operations to finish before s3 refresh X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" Datastore contents located on the s3 backend can be refreshed on the local datastore cache by running an s3-refresh, which will set the maintenance mode s3-refresh to block any read/write operation and fetch the contents to a temporary directory before moving them in place if the fetching was successful. Setting the maintenance mode has however no effect on already active operations, which can cause inconsistencies once the s3 refresh moves the temporary folders in place. Fix this by actively waiting for ongoing read/write operations to finish before starting with the s3-refresh and locking the datastore config while the refresh is ongoing, so the maintenance mode cannot be altered. Changes since version 1 (thanks @Fabian for review): - reuse and check for active operations based on unmount logic - reuse and check for correct maintenance mode based on unmount logic proxmox-backup: Christian Ebner (6): api: datastore: fix typo in helper function name api: admin: make expected maintenance type helper generic over type api: admin: factor out busy waiting on active operations api: admin: factor out locking and maintenance mode clearing datastore: s3 refresh: set/unset maintenance mode in api handler api: datastore: wait for active operations to clear before s3 refresh pbs-datastore/src/datastore.rs | 31 +------ src/api2/admin/datastore.rs | 153 +++++++++++++++++++++++++-------- 2 files changed, 118 insertions(+), 66 deletions(-) Summary over all repositories: 2 files changed, 118 insertions(+), 66 deletions(-) -- Generated by git-murpp 0.8.1 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel