Skip to content

doJobCollection error #59

Open
Open
@mkrzak

Description

@mkrzak

Hi,
I am running future.batchtools with on LSF cluster and getting error:

Error : BatchtoolsFutureError for BatchtoolsFuture ('future_lapply-1') captured by batchtools: ‘Failed to subset JobCollection using array environment variable 'NA' [='NA']’

I am running it using "Rscript run.R" on terminal where run.R contains:

library(doFuture)
library(future.batchtools)

myProc <- function(size=10000000) {
vec <- rnorm(size)
return(sum(vec))
}

future::plan(
future.batchtools::batchtools_lsf,
template="~/repos/myrepos/parallel-computing/batchtools/lsf.tmpl",
resources=list(
queue="normal",
walltime=60,#minutes
memory=8192,
ncpus=2,
name="merging",
output="out.txt",
chunks.as.arrayjobs=TRUE))

ha = future.apply::future_lapply(1:10, function(n){myProc(n)})

Additionally I have lsf.tmpl file with:

#BSUB -J <%= resources$name %> # Name of the job
#BSUB -o <%= resources$output %> # Output is sent to logfile, stdout + stderr > by default
#BSUB -q <%= resources$queue %> # Job queue
#BSUB -W <%= round(resources$walltime / 60, 1) %> # Walltime (LSF requires minutes, > batchtools uses seconds)
#BSUB -M <%= resources$memory %> # Memory requirements, e.g. "5000KB", > "500MB", "5GB" etc.
export DEBUGME=<%= Sys.getenv("DEBUGME") %>
<%= sprintf("export OMP_NUM_THREADS=%i", resources$omp.threads) -%>
<%= sprintf("export OPENBLAS_NUM_THREADS=%i", resources$blas.threads) -%>
<%= sprintf("export MKL_NUM_THREADS=%i", resources$blas.threads) -%>
Rscript -e 'batchtools::doJobCollection("<%= uri %>")'

And batchtools.conf.R file with:

default.resources=list(walltime=60,
memory=1024,
ncpus=2)

I see jobs are submitted to the cluster, however still getting this error. I checked the log (out.txt) file which shows the jobs and evaluation of doJobCollection functions i.e. :

Rscript -e 'batchtools::doJobCollection("/..pathtojobfile../joba7f53f7835b2d0e33a6e2fe563c6f6da.rds")'

I readRDS that file in R and its not empty , however execution of batchtools::doJobCollection("/..pathtojobfile../joba7f53f7835b2d0e33a6e2fe563c6f6da.rds") inside R is NULL. Do you have any idea if the problem lays in lsf.tmpl file or I am missing calling some other batchtools functions in my run.R script?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions