Correct use of resourceLimits argument in rstudioapi::launcherSubmitJob

22 views Asked by At

I have an issue when trying to use launcherSubmitJob with the resourceLimits argument:

rstudioapi::launcherSubmitJob(
    name = "testcoresetting",
    cluster = "Local",
    command = "R",
    args = "-e print('hi')",
    resourceLimits = rstudioapi::launcherResourceLimit(type = "cpuCount", value = 4)
)

leads to:

Error in (function (name, args = NULL, cluster = "Local", command = NULL, :
'resourceLimits' must be of class 'rs_launcher_resourcelimit'

This error is also thrown with cluster = "slurm_cluster" and args = "-e future::availableCores()", which is my actual use case. The error is not thrown when resourceLimits is not used.

Is this a bug or should I be using this argument differently? Thank you!

---EDIT:

I found that self-composing the resourceLimits like so let's it pass through without a problem:

resourceLimits <- list(list(type = "cpuCount", value = "4"))
class(resourceLimits[[1]]$type) <- c("rs.scalar", "rs_launcher_resourcelimit")
class(resourceLimits[[1]]$value) <- c("rs.scalar", "rs_launcher_resourcelimit")
class(resourceLimits[[1]]) <- "rs_launcher_resourcelimit"
0

There are 0 answers