Running ‘000.sessionDetails.R’ [1s/2s]
  Running ‘BatchJobsFuture,gc.R’ [6s/11s]
  Running ‘BatchJobsFuture.R’ [7s/11s]
  Running ‘BatchJobsFutureError.R’ [9s/18s]
  Running ‘DEPRECATED.resources.R’ [4s/6s]
  Running ‘batchjobs_custom.R’ [8s/12s]
  Running ‘batchjobs_interactive.R’ [6s/11s]
  Running ‘batchjobs_job.delay.R’ [16s/29s]
  Running ‘batchjobs_local.R’ [17s/28s]
  Running ‘batchjobs_multicore.R’ [30s/45s]
  Running ‘batchjobs_template.R’ [2s/2s]
  Running ‘demo.R’ [20s/31s]
  Running ‘dotdotdot.R’ [9s/15s]
  Running ‘future,labels.R’ [13s/20s]
  Running ‘future_lapply.R’ [13s/23s]
Running the tests in ‘tests/future_lapply.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  > library("listenv")
  > 
  > strategies <- c("sequential", "multisession",
  +                 "batchjobs_interactive", "batchjobs_local")
  > 
  > message("*** future_lapply() ...")
  *** future_lapply() ...
  > 
  > message("- future_lapply(x, FUN=vector, ...) ...")
  - future_lapply(x, FUN=vector, ...) ...
  > 
  > x <- list(a="integer", b="numeric", c="character", c="list")
  > str(list(x=x))
  List of 1
   $ x:List of 4
    ..$ a: chr "integer"
    ..$ b: chr "numeric"
    ..$ c: chr "character"
    ..$ c: chr "list"
  > 
  > y0 <- lapply(x, FUN=vector, length=2L)
  > str(list(y0=y0))
  List of 1
   $ y0:List of 4
    ..$ a: int [1:2] 0 0
    ..$ b: num [1:2] 0 0
    ..$ c: chr [1:2] "" ""
    ..$ c:List of 2
    .. ..$ : NULL
    .. ..$ : NULL
  > 
  > for (scheduling in list(FALSE, TRUE)) {
  +   for (strategy in strategies) {
  +     message(sprintf("- plan('%s') ...", strategy))
  +     plan(strategy)
  +     y <- future_lapply(x, FUN=vector, length=2L, future.scheduling = scheduling)
  +     str(list(y=y))
  +     stopifnot(identical(y, y0))
  +   }
  + }
  - plan('sequential') ...
  future_lapply() ...
  Finding globals ...
  getGlobalsAndPackages() ...
  Searching for globals ...
  - globals found: [2] 'FUN', '.Internal'
  Searching for globals ... DONE
  Resolving globals: FALSE
  The total size of the 1 globals is 2.08 KiB (2128 bytes)
  - globals: [1] 'FUN'
  
  getGlobalsAndPackages() ... DONE
   - globals found: [1] 'FUN'
  
  Finding globals ... DONE
  Getting '...' globals ...
  resolve() on list ...
   recursive: 0
   length: 1
   elements: '...'
   length: 0 (resolved future 1)
  resolve() on list ... DONE
  Getting '...' globals ... DONE
  Globals to be used in all futures:
  List of 2
   $ ...future.FUN:function (mode = "logical", length = 0L)  
   $ ...          :List of 1
    ..$ length: int 2
    ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list"
   - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
   - attr(*, "where")=List of 2
    ..$ ...future.FUN:<environment: 0x563db483f650> 
    ..$ ...          :<environment: 0x563db483f650> 
   - attr(*, "resolved")= logi FALSE
   - attr(*, "total_size")= num 2184
  Packages to be attached in all futures:
   chr(0) 
  Number of chunks: 4
  Number of futures (= number of chunks): 4
  Launching 4 futures (chunks) ...
  Chunk #1 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              lapply(seq_along(...future.x_ii), FUN = function(jj) {
                  ...future.x_jj <- ...future.x_ii[[jj]]
                  ...future.FUN(...future.x_jj, ...)
              })
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, local = TRUE, earlySignal = FALSE, 
                    label = NULL, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    local <- as.logical(local)
                    future <- SequentialFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, local = local, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  SequentialFuture started (and completed)
  Chunk #1 of 4 ... DONE
  Chunk #2 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              lapply(seq_along(...future.x_ii), FUN = function(jj) {
                  ...future.x_jj <- ...future.x_ii[[jj]]
                  ...future.FUN(...future.x_jj, ...)
              })
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, local = TRUE, earlySignal = FALSE, 
                    label = NULL, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    local <- as.logical(local)
                    future <- SequentialFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, local = local, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  SequentialFuture started (and completed)
  Chunk #2 of 4 ... DONE
  Chunk #3 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.28 KiB (161056 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              lapply(seq_along(...future.x_ii), FUN = function(jj) {
                  ...future.x_jj <- ...future.x_ii[[jj]]
                  ...future.FUN(...future.x_jj, ...)
              })
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, local = TRUE, earlySignal = FALSE, 
                    label = NULL, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    local <- as.logical(local)
                    future <- SequentialFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, local = local, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  SequentialFuture started (and completed)
  Chunk #3 of 4 ... DONE
  Chunk #4 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              lapply(seq_along(...future.x_ii), FUN = function(jj) {
                  ...future.x_jj <- ...future.x_ii[[jj]]
                  ...future.FUN(...future.x_jj, ...)
              })
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, local = TRUE, earlySignal = FALSE, 
                    label = NULL, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    local <- as.logical(local)
                    future <- SequentialFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, local = local, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  SequentialFuture started (and completed)
  Chunk #4 of 4 ... DONE
  Launching 4 futures (chunks) ... DONE
  Resolving 4 futures (chunks) ...
  resolve() on list ...
   recursive: 0
   length: 4
  
   length: 3 (resolved future 1)
   length: 2 (resolved future 2)
   length: 1 (resolved future 3)
   length: 0 (resolved future 4)
  resolve() on list ... DONE
  Resolving 4 futures (chunks) ... DONE
  Reducing values from 4 chunks ...
  Reducing values from 4 chunks ... DONE
  future_lapply() ... DONE
  List of 1
   $ y:List of 4
    ..$ a: int [1:2] 0 0
    ..$ b: num [1:2] 0 0
    ..$ c: chr [1:2] "" ""
    ..$ c:List of 2
    .. ..$ : NULL
    .. ..$ : NULL
  - plan('multisession') ...
  plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ...
  multisession:
  - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, persistent = FALSE, workers = availableCores(), gc = FALSE, earlySignal = FALSE, label = NULL, ...)
  - tweaked: FALSE
  - call: plan(strategy)
  Workers: [n = 2] 'localhost', 'localhost'
  Warning in makeClusterPSOCK(workers, ...) : NAs introduced by coercion
  Base port: 11801
  Creating node 1 of 2 ...
  - setting up node
  Starting worker #1 on 'localhost': '/home/hornik/tmp/R.check/r-devel-gcc/Work/build/bin/Rscript' --default-packages=datasets,utils,grDevices,graphics,stats,methods -e 'parallel:::.slaveRSOCK()' MASTER=localhost PORT=11801 OUT=/dev/null TIMEOUT=2592000 XDR=TRUE
  Waiting for worker #1 on 'localhost' to connect back
  Connection with worker #1 on 'localhost' established
  - assigning connection UUID
  - collecting session information
  Creating node 1 of 2 ... done
  Creating node 2 of 2 ...
  - setting up node
  Starting worker #2 on 'localhost': '/home/hornik/tmp/R.check/r-devel-gcc/Work/build/bin/Rscript' --default-packages=datasets,utils,grDevices,graphics,stats,methods -e 'parallel:::.slaveRSOCK()' MASTER=localhost PORT=11801 OUT=/dev/null TIMEOUT=2592000 XDR=TRUE
  Waiting for worker #2 on 'localhost' to connect back
  Connection with worker #2 on 'localhost' established
  - assigning connection UUID
  - collecting session information
  Creating node 2 of 2 ... done
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              {
                  ...future.mc.cores.old <- getOption("mc.cores")
                  options(mc.cores = 1L)
              }
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local(NA)
      }, finally = {
          {
              {
                  {
                    options(mc.cores = ...future.mc.cores.old)
                  }
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, persistent = FALSE, workers = availableCores(), 
                    gc = FALSE, earlySignal = FALSE, label = NULL, 
                    ...) 
                  {
                    if ("maxCores" %in% names(list(...))) {
                      .Defunct(msg = "Argument 'maxCores' has been renamed to 'workers'. Please update you script/code that uses the future package.")
                    }
                    if (substitute) 
                      expr <- substitute(expr)
                    workers <- as.integer(workers)
                    stopifnot(length(workers) == 1, is.finite(workers), 
                      workers >= 1)
                    if (workers == 1L) {
                      return(sequential(expr, envir = envir, substitute = FALSE, 
                        lazy = TRUE, seed = seed, globals = globals, 
                        local = TRUE, label = label))
                    }
                    workers <- ClusterRegistry("start", workers = workers)
                    future <- MultisessionFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, persistent = persistent, 
                      workers = workers, gc = gc, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  MultisessionFuture started
  plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... DONE
  future_lapply() ...
  Finding globals ...
  getGlobalsAndPackages() ...
  Searching for globals ...
  - globals found: [2] 'FUN', '.Internal'
  Searching for globals ... DONE
  Resolving globals: FALSE
  The total size of the 1 globals is 2.08 KiB (2128 bytes)
  - globals: [1] 'FUN'
  
  getGlobalsAndPackages() ... DONE
   - globals found: [1] 'FUN'
  
  Finding globals ... DONE
  Getting '...' globals ...
  resolve() on list ...
   recursive: 0
   length: 1
   elements: '...'
   length: 0 (resolved future 1)
  resolve() on list ... DONE
  Getting '...' globals ... DONE
  Globals to be used in all futures:
  List of 2
   $ ...future.FUN:function (mode = "logical", length = 0L)  
   $ ...          :List of 1
    ..$ length: int 2
    ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list"
   - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
   - attr(*, "where")=List of 2
    ..$ ...future.FUN:<environment: 0x563db50a2e20> 
    ..$ ...          :<environment: 0x563db50a2e20> 
   - attr(*, "resolved")= logi FALSE
   - attr(*, "total_size")= num 2184
  Packages to be attached in all futures:
   chr(0) 
  Number of chunks: 4
  Number of futures (= number of chunks): 4
  Launching 4 futures (chunks) ...
  Chunk #1 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              {
                  ...future.mc.cores.old <- getOption("mc.cores")
                  options(mc.cores = 1L)
              }
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  {
                    options(mc.cores = ...future.mc.cores.old)
                  }
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, persistent = FALSE, workers = availableCores(), 
                    gc = FALSE, earlySignal = FALSE, label = NULL, 
                    ...) 
                  {
                    if ("maxCores" %in% names(list(...))) {
                      .Defunct(msg = "Argument 'maxCores' has been renamed to 'workers'. Please update you script/code that uses the future package.")
                    }
                    if (substitute) 
                      expr <- substitute(expr)
                    workers <- as.integer(workers)
                    stopifnot(length(workers) == 1, is.finite(workers), 
                      workers >= 1)
                    if (workers == 1L) {
                      return(sequential(expr, envir = envir, substitute = FALSE, 
                        lazy = TRUE, seed = seed, globals = globals, 
                        local = TRUE, label = label))
                    }
                    workers <- ClusterRegistry("start", workers = workers)
                    future <- MultisessionFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, persistent = persistent, 
                      workers = workers, gc = gc, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  Exporting 4 global objects (157.27 KiB) to cluster node #1 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #1 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #1 ... DONE
  Exporting 'future.call.arguments' (56 bytes) to cluster node #1 ...
  Exporting 'future.call.arguments' (56 bytes) to cluster node #1 ... DONE
  Exporting '...future.x_ii' (112 bytes) to cluster node #1 ...
  Exporting '...future.x_ii' (112 bytes) to cluster node #1 ... DONE
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #1 ...
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #1 ... DONE
  Exporting 4 global objects (157.27 KiB) to cluster node #1 ... DONE
  MultisessionFuture started
  Chunk #1 of 4 ... DONE
  Chunk #2 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              {
                  ...future.mc.cores.old <- getOption("mc.cores")
                  options(mc.cores = 1L)
              }
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  {
                    options(mc.cores = ...future.mc.cores.old)
                  }
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, persistent = FALSE, workers = availableCores(), 
                    gc = FALSE, earlySignal = FALSE, label = NULL, 
                    ...) 
                  {
                    if ("maxCores" %in% names(list(...))) {
                      .Defunct(msg = "Argument 'maxCores' has been renamed to 'workers'. Please update you script/code that uses the future package.")
                    }
                    if (substitute) 
                      expr <- substitute(expr)
                    workers <- as.integer(workers)
                    stopifnot(length(workers) == 1, is.finite(workers), 
                      workers >= 1)
                    if (workers == 1L) {
                      return(sequential(expr, envir = envir, substitute = FALSE, 
                        lazy = TRUE, seed = seed, globals = globals, 
                        local = TRUE, label = label))
                    }
                    workers <- ClusterRegistry("start", workers = workers)
                    future <- MultisessionFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, persistent = persistent, 
                      workers = workers, gc = gc, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  Exporting 4 global objects (157.27 KiB) to cluster node #2 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #2 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #2 ... DONE
  Exporting 'future.call.arguments' (56 bytes) to cluster node #2 ...
  Exporting 'future.call.arguments' (56 bytes) to cluster node #2 ... DONE
  Exporting '...future.x_ii' (112 bytes) to cluster node #2 ...
  Exporting '...future.x_ii' (112 bytes) to cluster node #2 ... DONE
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #2 ...
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #2 ... DONE
  Exporting 4 global objects (157.27 KiB) to cluster node #2 ... DONE
  MultisessionFuture started
  Chunk #2 of 4 ... DONE
  Chunk #3 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.28 KiB (161056 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              {
                  ...future.mc.cores.old <- getOption("mc.cores")
                  options(mc.cores = 1L)
              }
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  {
                    options(mc.cores = ...future.mc.cores.old)
                  }
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, persistent = FALSE, workers = availableCores(), 
                    gc = FALSE, earlySignal = FALSE, label = NULL, 
                    ...) 
                  {
                    if ("maxCores" %in% names(list(...))) {
                      .Defunct(msg = "Argument 'maxCores' has been renamed to 'workers'. Please update you script/code that uses the future package.")
                    }
                    if (substitute) 
                      expr <- substitute(expr)
                    workers <- as.integer(workers)
                    stopifnot(length(workers) == 1, is.finite(workers), 
                      workers >= 1)
                    if (workers == 1L) {
                      return(sequential(expr, envir = envir, substitute = FALSE, 
                        lazy = TRUE, seed = seed, globals = globals, 
                        local = TRUE, label = label))
                    }
                    workers <- ClusterRegistry("start", workers = workers)
                    future <- MultisessionFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, persistent = persistent, 
                      workers = workers, gc = gc, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  Poll #1 (0): usedNodes() = 2, workers = 2
  Exporting 4 global objects (157.28 KiB) to cluster node #1 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #1 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #1 ... DONE
  Exporting 'future.call.arguments' (56 bytes) to cluster node #1 ...
  Exporting 'future.call.arguments' (56 bytes) to cluster node #1 ... DONE
  Exporting '...future.x_ii' (120 bytes) to cluster node #1 ...
  Exporting '...future.x_ii' (120 bytes) to cluster node #1 ... DONE
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #1 ...
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #1 ... DONE
  Exporting 4 global objects (157.28 KiB) to cluster node #1 ... DONE
  MultisessionFuture started
  Chunk #3 of 4 ... DONE
  Chunk #4 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              {
                  ...future.mc.cores.old <- getOption("mc.cores")
                  options(mc.cores = 1L)
              }
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  {
                    options(mc.cores = ...future.mc.cores.old)
                  }
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, persistent = FALSE, workers = availableCores(), 
                    gc = FALSE, earlySignal = FALSE, label = NULL, 
                    ...) 
                  {
                    if ("maxCores" %in% names(list(...))) {
                      .Defunct(msg = "Argument 'maxCores' has been renamed to 'workers'. Please update you script/code that uses the future package.")
                    }
                    if (substitute) 
                      expr <- substitute(expr)
                    workers <- as.integer(workers)
                    stopifnot(length(workers) == 1, is.finite(workers), 
                      workers >= 1)
                    if (workers == 1L) {
                      return(sequential(expr, envir = envir, substitute = FALSE, 
                        lazy = TRUE, seed = seed, globals = globals, 
                        local = TRUE, label = label))
                    }
                    workers <- ClusterRegistry("start", workers = workers)
                    future <- MultisessionFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, persistent = persistent, 
                      workers = workers, gc = gc, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  Poll #1 (0): usedNodes() = 2, workers = 2
  Exporting 4 global objects (157.27 KiB) to cluster node #2 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #2 ...
  Exporting '...future.FUN' (2.08 KiB) to cluster node #2 ... DONE
  Exporting 'future.call.arguments' (56 bytes) to cluster node #2 ...
  Exporting 'future.call.arguments' (56 bytes) to cluster node #2 ... DONE
  Exporting '...future.x_ii' (112 bytes) to cluster node #2 ...
  Exporting '...future.x_ii' (112 bytes) to cluster node #2 ... DONE
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #2 ...
  Exporting '...future.seeds_ii' (155.03 KiB) to cluster node #2 ... DONE
  Exporting 4 global objects (157.27 KiB) to cluster node #2 ... DONE
  MultisessionFuture started
  Chunk #4 of 4 ... DONE
  Launching 4 futures (chunks) ... DONE
  Resolving 4 futures (chunks) ...
  resolve() on list ...
   recursive: 0
   length: 4
  
   length: 3 (resolved future 1)
   length: 2 (resolved future 2)
   length: 1 (resolved future 3)
   length: 0 (resolved future 4)
  resolve() on list ... DONE
  Resolving 4 futures (chunks) ... DONE
  Reducing values from 4 chunks ...
  Reducing values from 4 chunks ... DONE
  future_lapply() ... DONE
  List of 1
   $ y:List of 4
    ..$ a: int [1:2] 0 0
    ..$ b: num [1:2] 0 0
    ..$ c: chr [1:2] "" ""
    ..$ c:List of 2
    .. ..$ : NULL
    .. ..$ : NULL
  - plan('batchjobs_interactive') ...
  future_lapply() ...
  Finding globals ...
  getGlobalsAndPackages() ...
  Searching for globals ...
  - globals found: [2] 'FUN', '.Internal'
  Searching for globals ... DONE
  Resolving globals: FALSE
  The total size of the 1 globals is 2.08 KiB (2128 bytes)
  - globals: [1] 'FUN'
  
  getGlobalsAndPackages() ... DONE
   - globals found: [1] 'FUN'
  
  Finding globals ... DONE
  Getting '...' globals ...
  resolve() on list ...
   recursive: 0
   length: 1
   elements: '...'
   length: 0 (resolved future 1)
  resolve() on list ... DONE
  Getting '...' globals ... DONE
  Globals to be used in all futures:
  List of 2
   $ ...future.FUN:function (mode = "logical", length = 0L)  
   $ ...          :List of 1
    ..$ length: int 2
    ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list"
   - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
   - attr(*, "where")=List of 2
    ..$ ...future.FUN:<environment: 0x563db67465a0> 
    ..$ ...          :<environment: 0x563db67465a0> 
   - attr(*, "resolved")= logi FALSE
   - attr(*, "total_size")= num 2184
  Packages to be attached in all futures:
   chr(0) 
  Number of chunks: 4
  Number of futures (= number of chunks): 4
  Launching 4 futures (chunks) ...
  Chunk #1 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1430011746-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1430011746-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1430011746-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 156950478 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsInteractive()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Interactive"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1430011746-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Interactive.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #1 of 4 ... DONE
  Chunk #2 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1624085453-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1624085453-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1624085453-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 90845107 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsInteractive()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Interactive"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1624085453-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Interactive.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #2 of 4 ... DONE
  Chunk #3 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.28 KiB (161056 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_950707793-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_950707793-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_950707793-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 537619564 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsInteractive()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Interactive"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_950707793-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Interactive.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #3 of 4 ... DONE
  Chunk #4 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386878545-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386878545-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386878545-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 520507438 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsInteractive()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Interactive"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386878545-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Interactive.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #4 of 4 ... DONE
  Launching 4 futures (chunks) ... DONE
  Resolving 4 futures (chunks) ...
  resolve() on list ...
   recursive: 0
   length: 4
  
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 3 (resolved future 1)
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 2 (resolved future 2)
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 1 (resolved future 3)
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 0 (resolved future 4)
  resolve() on list ... DONE
  Polling...
  Poll #1 (0): status = done, started, submitted
  Results:
  List of 1
   $ : int [1:2] 0 0
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1430011746-files'
  Polling...
  Poll #1 (0): status = done, started, submitted
  Results:
  List of 1
   $ : num [1:2] 0 0
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1624085453-files'
  Polling...
  Poll #1 (0): status = done, started, submitted, t_avg, t_max, t_min
  Results:
  List of 1
   $ : chr [1:2] "" ""
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_950707793-files'
  Polling...
  Poll #1 (0): status = done, started, submitted
  Results:
  List of 1
   $ :List of 2
    ..$ : NULL
    ..$ : NULL
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386878545-files'
  Resolving 4 futures (chunks) ... DONE
  Reducing values from 4 chunks ...
  Reducing values from 4 chunks ... DONE
  future_lapply() ... DONE
  List of 1
   $ y:List of 4
    ..$ a: int [1:2] 0 0
    ..$ b: num [1:2] 0 0
    ..$ c: chr [1:2] "" ""
    ..$ c:List of 2
    .. ..$ : NULL
    .. ..$ : NULL
  - plan('batchjobs_local') ...
  future_lapply() ...
  Finding globals ...
  getGlobalsAndPackages() ...
  Searching for globals ...
  - globals found: [2] 'FUN', '.Internal'
  Searching for globals ... DONE
  Resolving globals: FALSE
  The total size of the 1 globals is 2.08 KiB (2128 bytes)
  - globals: [1] 'FUN'
  
  getGlobalsAndPackages() ... DONE
   - globals found: [1] 'FUN'
  
  Finding globals ... DONE
  Getting '...' globals ...
  resolve() on list ...
   recursive: 0
   length: 1
   elements: '...'
   length: 0 (resolved future 1)
  resolve() on list ... DONE
  Getting '...' globals ... DONE
  Globals to be used in all futures:
  List of 2
   $ ...future.FUN:function (mode = "logical", length = 0L)  
   $ ...          :List of 1
    ..$ length: int 2
    ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list"
   - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
   - attr(*, "where")=List of 2
    ..$ ...future.FUN:<environment: 0x563db5377e18> 
    ..$ ...          :<environment: 0x563db5377e18> 
   - attr(*, "resolved")= logi FALSE
   - attr(*, "total_size")= num 2184
  Packages to be attached in all futures:
   chr(0) 
  Number of chunks: 4
  Number of futures (= number of chunks): 4
  Launching 4 futures (chunks) ...
  Chunk #1 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_820346232-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_820346232-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_820346232-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 698534895 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsLocal()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Local"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_820346232-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Local.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #1 of 4 ... DONE
  Chunk #2 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1443048733-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1443048733-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1443048733-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 896639866 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsLocal()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Local"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1443048733-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Local.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #2 of 4 ... DONE
  Chunk #3 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.28 KiB (161056 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_2069401499-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_2069401499-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_2069401499-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 970546933 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsLocal()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Local"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_2069401499-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Local.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #3 of 4 ... DONE
  Chunk #4 of 4 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.27 KiB (161048 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Creating dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386511165-files
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Saving registry: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386511165-files/registry.RData
  Job registry:  BatchJobs 
    Number of jobs:  0 
    Files dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386511165-files 
    Work dir: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests 
    Multiple result files: FALSE 
    Seed: 632450996 
    Required packages: BatchJobs 
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              do.call(function(...) {
                  lapply(seq_along(...future.x_ii), FUN = function(jj) {
                    ...future.x_jj <- ...future.x_ii[[jj]]
                    ...future.FUN(...future.x_jj, ...)
                  })
              }, args = future.call.arguments)
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, globals = TRUE, label = "BatchJobs", 
                    workers = 1L, job.delay = FALSE, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    cf <- makeClusterFunctionsLocal()
                    future <- BatchJobsFuture(expr = expr, envir = envir, 
                      substitute = FALSE, globals = globals, label = label, 
                      cluster.functions = cf, workers = workers, 
                      job.delay = job.delay, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    future
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  WORKAROUND: BatchJobs does not support exported variables that start with a period (see https://github.com/tudo-r/BatchJobs/issues/103). Encoding/decoding the following global variables: '...future.FUN', '...future.x_ii', '...future.seeds_ii'
  Adding 1 jobs to DB.
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Created BatchJobsFuture future #1
  Setting BatchJobs configuration:
  List of 1
   $ cluster.functions:List of 5
    ..$ name             : chr "Local"
    ..$ submitJob        :function (conf, reg, job.name, rscript, log.file, job.dir, resources, arrayjobs)  
    ..$ killJob          :function (conf, reg, batch.job.id)  
    ..$ listJobs         :function (conf, reg)  
    ..$ getArrayEnvirName:function ()  
    ..- attr(*, "class")= chr "ClusterFunctions"
  Saving conf: /home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386511165-files/conf.RData
  Submitting 1 chunks / 1 jobs.
  Cluster functions: Local.
  Auto-mailer settings: start=none, done=none, error=none.
  
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+                                                |   0% (00:00:00)
  SubmitJobs |+++++++++++++++++++++++++++++++++++++++++++++++++| 100% (00:00:00)
  Sending 1 submit messages...
  Might take some time, do not interrupt this!
  Launched future #1
  Chunk #4 of 4 ... DONE
  Launching 4 futures (chunks) ... DONE
  Resolving 4 futures (chunks) ...
  resolve() on list ...
   recursive: 0
   length: 4
  
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 3 (resolved future 1)
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 2 (resolved future 2)
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 1 (resolved future 3)
  Syncing registry ...
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
  Warning in rsqlite_fetch(res@ptr, n = n) :
    Don't need to call dbFetch() for statements, only for queries
   length: 0 (resolved future 4)
  resolve() on list ... DONE
  Polling...
  Poll #1 (0): status = done, started, submitted, t_avg, t_max, t_min
  Results:
  List of 1
   $ : int [1:2] 0 0
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_820346232-files'
  Polling...
  Poll #1 (0): status = done, started, submitted, t_avg, t_max, t_min
  Results:
  List of 1
   $ : num [1:2] 0 0
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1443048733-files'
  Polling...
  Poll #1 (0): status = done, started, submitted
  Results:
  List of 1
   $ : chr [1:2] "" ""
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_2069401499-files'
  Polling...
  Poll #1 (0): status = done, started, submitted
  Results:
  List of 1
   $ :List of 2
    ..$ : NULL
    ..$ : NULL
  delete(): Option 'future.delete='<NULL>'
  delete(): BatchJobs registry deleted: '/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/future.BatchJobs.Rcheck/tests/.future/20171130_182446-yjfG7K/BatchJobs_1386511165-files'
  Resolving 4 futures (chunks) ... DONE
  Reducing values from 4 chunks ...
  Reducing values from 4 chunks ... DONE
  future_lapply() ... DONE
  List of 1
   $ y:List of 4
    ..$ a: int [1:2] 0 0
    ..$ b: num [1:2] 0 0
    ..$ c: chr [1:2] "" ""
    ..$ c:List of 2
    .. ..$ : NULL
    .. ..$ : NULL
  - plan('sequential') ...
  future_lapply() ...
  Finding globals ...
  getGlobalsAndPackages() ...
  Searching for globals ...
  - globals found: [2] 'FUN', '.Internal'
  Searching for globals ... DONE
  Resolving globals: FALSE
  The total size of the 1 globals is 2.08 KiB (2128 bytes)
  - globals: [1] 'FUN'
  
  getGlobalsAndPackages() ... DONE
   - globals found: [1] 'FUN'
  
  Finding globals ... DONE
  Getting '...' globals ...
  resolve() on list ...
   recursive: 0
   length: 1
   elements: '...'
   length: 0 (resolved future 1)
  resolve() on list ... DONE
  Getting '...' globals ... DONE
  Globals to be used in all futures:
  List of 2
   $ ...future.FUN:function (mode = "logical", length = 0L)  
   $ ...          :List of 1
    ..$ length: int 2
    ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list"
   - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
   - attr(*, "where")=List of 2
    ..$ ...future.FUN:<environment: 0x563db43aa5e0> 
    ..$ ...          :<environment: 0x563db43aa5e0> 
   - attr(*, "resolved")= logi FALSE
   - attr(*, "total_size")= num 2184
  Packages to be attached in all futures:
   chr(0) 
  Number of chunks: 1
  Number of futures (= number of chunks): 1
  Launching 1 futures (chunks) ...
  Chunk #1 of 1 ...
   - seeds: <none>
  getGlobalsAndPackages() ...
  - globals passed as-is: [4] '...future.FUN', '...', '...future.x_ii', '...future.seeds_ii'
  Resolving globals: FALSE
  Tweak future expression to call with '...' arguments ...
  Tweak future expression to call with '...' arguments ... DONE
  The total size of the 4 globals is 157.61 KiB (161392 bytes)
  - globals: [4] '...future.FUN', 'future.call.arguments', '...future.x_ii', '...future.seeds_ii'
  
  getGlobalsAndPackages() ... DONE
  Packages needed by future strategies (n = 0): <none>
  Packages needed by the future expression (n = 0): <none>
  {
      {
          ...future.oldOptions <- options(future.startup.loadScript = FALSE, 
              future.globals.onMissing = "error")
          {
              NULL
              future::plan("default", .cleanup = FALSE, .init = FALSE)
          }
      }
      tryCatch({
          local({
              lapply(seq_along(...future.x_ii), FUN = function(jj) {
                  ...future.x_jj <- ...future.x_ii[[jj]]
                  ...future.FUN(...future.x_jj, ...)
              })
          })
      }, finally = {
          {
              {
                  NULL
                  future::plan(list(function (expr, envir = parent.frame(), 
                    substitute = TRUE, lazy = FALSE, seed = NULL, 
                    globals = TRUE, local = TRUE, earlySignal = FALSE, 
                    label = NULL, ...) 
                  {
                    if (substitute) 
                      expr <- substitute(expr)
                    local <- as.logical(local)
                    future <- SequentialFuture(expr = expr, envir = envir, 
                      substitute = FALSE, lazy = lazy, seed = seed, 
                      globals = globals, local = local, earlySignal = earlySignal, 
                      label = label, ...)
                    if (!future$lazy) 
                      future <- run(future)
                    invisible(future)
                  }), .cleanup = FALSE, .init = FALSE)
              }
              options(...future.oldOptions)
          }
      })
  }
  SequentialFuture started (and completed)
  Chunk #1 of 1 ... DONE
  Launching 1 futures (chunks) ... DONE
  Resolving 1 futures (chunks) ...
  resolve() on list ...
   recursive: 0
   length: 1
  
   length: 0 (resolved future 1)
  resolve() on list ... DONE
  Resolving 1 futures (chunks) ... DONE
  Reducing values from 1 chunks ...
  Reducing values from 1 chunks ... DONE
  future_lapply() ... DONE
  List of 1
   $ y:List of 4
    ..$ a: int [1:2] 0 0
    ..$ b: num [1:2] 0 0
    ..$ c: chr [1:2] "" ""
    ..$ c:List of 2
    .. ..$ : NULL
    .. ..$ : NULL
  - plan('multisession') ...
  plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ...
  multisession:
  - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, persistent = FALSE, workers = availableCores(), gc = FALSE, earlySignal = FALSE, label = NULL, ...)
  - tweaked: FALSE
  - call: plan(strategy)
  Workers: [n = 2] 'localhost', 'localhost'
  Warning in makeClusterPSOCK(workers, ...) : NAs introduced by coercion
  Base port: 11416
  Creating node 1 of 2 ...
  - setting up node
  Starting worker #1 on 'localhost': '/home/hornik/tmp/R.check/r-devel-gcc/Work/build/bin/Rscript' --default-packages=datasets,utils,grDevices,graphics,stats,methods -e 'parallel:::.slaveRSOCK()' MASTER=localhost PORT=11416 OUT=/dev/null TIMEOUT=2592000 XDR=TRUE
  Waiting for worker #1 on 'localhost' to connect back
  Warning in socketConnection("localhost", port = port, server = TRUE, blocking = TRUE,  :
    port 11416 cannot be opened
  Error in socketConnection("localhost", port = port, server = TRUE, blocking = TRUE,  : 
    cannot open the connection
  Calls: plan ... makeClusterPSOCK -> makeNode -> <Anonymous> -> socketConnection
  Execution halted