[pdm-devel] [PATCH datacenter-manager v2 1/7] server: task cache: treat a limit of 0 as unbounded

Dominik Csapak d.csapak at proxmox.com
Wed Feb 19 13:28:18 CET 2025


like we do in our other products e.g. like PBS
This way, one can specify a way to return *all* tasks.

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 server/src/task_cache.rs | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/server/src/task_cache.rs b/server/src/task_cache.rs
index 7ded540..4c34827 100644
--- a/server/src/task_cache.rs
+++ b/server/src/task_cache.rs
@@ -56,6 +56,11 @@ pub async fn get_tasks(max_age: i64, filters: TaskFilters) -> Result<Vec<TaskLis
         }
     }
 
+    let limit = match filters.limit {
+        0 => usize::MAX,
+        limit => limit as usize,
+    };
+
     let mut returned_tasks = add_running_tasks(all_tasks)?;
     returned_tasks.sort_by(|a, b| b.starttime.cmp(&a.starttime));
     let returned_tasks = returned_tasks
@@ -105,7 +110,7 @@ pub async fn get_tasks(max_age: i64, filters: TaskFilters) -> Result<Vec<TaskLis
             true
         })
         .skip(filters.start as usize)
-        .take(filters.limit as usize)
+        .take(limit)
         .collect();
 
     // We don't need to wait for this task to finish
-- 
2.39.5





More information about the pdm-devel mailing list