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 53A6A1FF15C for ; Fri, 22 Aug 2025 14:15:54 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 62653F6AF; Fri, 22 Aug 2025 14:15:55 +0200 (CEST) From: Dominik Csapak To: pdm-devel@lists.proxmox.com Date: Fri, 22 Aug 2025 14:11:49 +0200 Message-ID: <20250822121553.3255195-1-d.csapak@proxmox.com> X-Mailer: git-send-email 2.47.2 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.022 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. [mod.rs] Subject: [pdm-devel] [PATCH datacenter-manager] server: tasks: fix filter order X-BeenThere: pdm-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Datacenter Manager development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Datacenter Manager development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pdm-devel-bounces@lists.proxmox.com Sender: "pdm-devel" commit bd0babf (remote tasks: add background task for task polling, use new task cache) changed the order of filters applied to the task list, namely it put the skip and limit at the front of the filtering, instead of the back. Since we use these paramters in the ui to batch loads, we don't want to first limit our numbers and then filter on them, but first apply the filters and then limit the amount, otherwise we could never show older tasks when filtered. An example: Assume the ui usess 'limit=5' to batch the loads if the user wants to show only those tasks with 'statusfilter=warning' but we first have 10 'OK' tasks, we'd never show anything, since the api would return an empty list, even if we'd have multiple warning tasks after that. In contrast if we filter first and then limit the number/apply the offset, we would get the first five tasks that ended with a warning, like we would expect. To fix that, move the skip/take filters at the end. Signed-off-by: Dominik Csapak --- server/src/remote_tasks/mod.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/src/remote_tasks/mod.rs b/server/src/remote_tasks/mod.rs index 8638ebd..63a279a 100644 --- a/server/src/remote_tasks/mod.rs +++ b/server/src/remote_tasks/mod.rs @@ -38,8 +38,6 @@ pub async fn get_tasks(filters: TaskFilters) -> Result, Error> let returned_tasks = cache .get_tasks(which)? - .skip(filters.start as usize) - .take(filters.limit as usize) .filter_map(|task| { // TODO: Handle PBS tasks let pve_upid: Result = task.upid.upid.parse(); @@ -106,6 +104,8 @@ pub async fn get_tasks(filters: TaskFilters) -> Result, Error> true }) + .skip(filters.start as usize) + .take(filters.limit as usize) .collect(); Ok(returned_tasks) -- 2.47.2 _______________________________________________ pdm-devel mailing list pdm-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel