R Under development (unstable) (2024-03-25 r86192 ucrt) -- "Unsuffered Consequences" Copyright (C) 2024 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > source("incl/start.R") [17:27:44.060] plan(): Setting new future strategy stack: [17:27:44.062] List of future strategies: [17:27:44.062] 1. sequential: [17:27:44.062] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.062] - tweaked: FALSE [17:27:44.062] - call: future::plan("sequential") [17:27:44.077] plan(): nbrOfWorkers() = 1 > library("listenv") > > strategies <- supportedStrategies() > > message("*** resolve() ...") *** resolve() ... > > message("*** resolve() for default ...") *** resolve() for default ... > > x <- 1 > y <- resolve(x) > stopifnot(identical(y, x)) > > message("*** resolve() for default ... DONE") *** resolve() for default ... DONE > > > for (strategy in strategies) { + message(sprintf("- plan('%s') ...", strategy)) + plan(strategy) + + if (strategy == "multisession" && availableCores() >= 2) { + message("*** resolve() for Future objects ...") + + for (result in c(FALSE, TRUE)) { + for (recursive in list(FALSE, TRUE, -1, 0, 1, 2, Inf)) { + message(sprintf("- result = %s, recursive = %s ...", result, recursive)) + + f <- future({ + Sys.sleep(0.5) + list(a = 1, b = 42L) + }) + res <- resolve(f, result = result, recursive = recursive) + stopifnot(identical(res, f)) + + f <- future({ + Sys.sleep(0.5) + list(a = 1, b = 42L) + }, lazy = TRUE) + res <- resolve(f, result = result, recursive = recursive) + stopifnot(identical(res, f)) + + message("- w/ exception ...") + f <- future(list(a = 1, b = 42L, c = stop("Nah!"))) + res <- resolve(f, result = result, recursive = recursive) + stopifnot(identical(res, f)) + + f <- future(list(a = 1, b = 42L, c = stop("Nah!")), lazy = TRUE) + res <- resolve(f, result = result, recursive = recursive) + stopifnot(identical(res, f)) + + message(sprintf("- result = %s, recursive = %s ... DONE", result, recursive)) + } ## for (resolve ...) + } ## for (result ...) + + message("*** resolve() for Future objects ... DONE") + } ## if (strategy == "multisession" && availableCores() >= 2) + + message("*** resolve() for lists ...") + + x <- list() + y <- resolve(x) + stopifnot(identical(y, x)) + + x <- list() + x$a <- 1 + x$b <- 2 + y <- resolve(x) + stopifnot(identical(y, x)) + + x <- list() + x$a <- future(1) + x$b <- future(2) + x[[3]] <- 3 + y <- resolve(x) + stopifnot(identical(y, x)) + stopifnot(resolved(x$a)) + stopifnot(resolved(x[["b"]])) + + x <- list() + x$a <- future(1, lazy = TRUE) + x$b <- future(2) + x[[3]] <- 3 + y <- resolve(x) + stopifnot(identical(y, x)) + stopifnot(resolved(x$a)) + stopifnot(resolved(x[["b"]])) + + x <- list() + x$a <- future(1, lazy = TRUE) + x$b <- future(2, lazy = TRUE) + x[[3]] <- 3 + y <- resolve(x) + stopifnot(identical(y, x)) + stopifnot(resolved(x$a)) + stopifnot(resolved(x[["b"]])) + + x <- list() + x$a <- future(1) + x$b <- future({Sys.sleep(0.5); 2}) + x[[4]] <- 4 + dim(x) <- c(2, 2) + y <- resolve(x, idxs = 1) + stopifnot(identical(y, x)) + stopifnot(resolved(x[[1]])) + y <- resolve(x, idxs = 2) + stopifnot(identical(y, x)) + stopifnot(resolved(x[[2]])) + y <- resolve(x, idxs = 3) + stopifnot(identical(y, x)) + y <- resolve(x, idxs = seq_along(x)) + stopifnot(identical(y, x)) + y <- resolve(x, idxs = names(x)) + stopifnot(identical(y, x)) + + y <- resolve(x, idxs = matrix(c(1, 2), ncol = 2L), result = TRUE) + stopifnot(identical(y, x)) + + x <- list() + for (kk in 1:3) x[[kk]] <- future({ Sys.sleep(0.1); kk }) + y <- resolve(x) + stopifnot(identical(y, x)) + + x <- list() + for (kk in 1:3) x[[kk]] <- future({ Sys.sleep(0.1); kk }, lazy = TRUE) + y <- resolve(x) + stopifnot(identical(y, x)) + + ## Exceptions + x <- list() + x$a <- 1 + x$b <- 2 + + res <- tryCatch(y <- resolve(x, idxs = 0L), error = identity) + stopifnot(inherits(res, "error")) + + res <- tryCatch(y <- resolve(x, idxs = "unknown"), error = identity) + stopifnot(inherits(res, "error")) + + x <- list(1, 2) + res <- tryCatch(x <- resolve(x, idxs = "a"), error = identity) + stopifnot(inherits(res, "error")) + + message("*** resolve() for lists ... DONE") + + + message("*** resolve() for environments ...") + + x <- new.env() + y <- resolve(x) + stopifnot(identical(y, x)) + + x <- new.env() + x$a <- 1 + x$b <- 2 + y <- resolve(x) + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 0L) + + x <- new.env() + x$a <- future(1) + x$b <- future(2) + x$c <- 3 + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x) + stopifnot(identical(y, x)) + stopifnot(resolved(x$a)) + stopifnot(resolved(x$b)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + + x <- new.env() + x$a %<-% { 1 } + x$b %<-% { 2 } + x$c <- 3 + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x) ## FIXME: Should not do value()! + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + + x <- new.env() + x$a <- future({ 1 }) + x$b %<-% { 2 } + x$c <- 3 + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x, idxs = "a") + stopifnot(identical(y, x)) + stopifnot(resolved(x$a)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x, idxs = "b") + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x, idxs = "c") + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x, idxs = names(x), result = TRUE) + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x, recursive = TRUE, result = TRUE) + stopifnot(identical(y, x)) + + ## Exceptions + res <- tryCatch(y <- resolve(x, idxs = "unknown"), error = identity) + stopifnot(inherits(res, "error")) + + message("*** resolve() for environments ... DONE") + + + message("*** resolve() for list environments ...") + + x <- listenv() + y <- resolve(x) + stopifnot(identical(y, x)) + + x <- listenv() + x$a <- 1 + x$b <- 2 + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 0L) + y <- resolve(x) + stopifnot(identical(y, x)) + + x <- listenv() + x$a <- future(1) + x$b <- future(2) + x$c <- 3 + names <- names(x) + dim(x) <- c(1, 3) + names(x) <- names + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x) + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + + x <- listenv() + x$a %<-% { 1 } + x$b %<-% { 2 } + x$c <- 3 + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + y <- resolve(x) ## FIXME: Should not do value()! + stopifnot(identical(y, x)) + #stopifnot(is.na(futureOf(x$a, mustExist = FALSE))) + #stopifnot(is.na(futureOf(x$b, mustExist = FALSE))) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 2L) + + x <- listenv() + x$a <- future({ 1 }) + x$b %<-% { Sys.sleep(0.5); 2 } + x$c %<-% { 3 } + x$d <- 4 + names <- names(x) + dim(x) <- c(2, 2) + names(x) <- names + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 3L) + y <- resolve(x, idxs = "a") + stopifnot(identical(y, x)) + stopifnot(identical(futureOf(x$a, mustExist = FALSE), x$a)) + stopifnot(resolved(x$a)) + y <- resolve(x, idxs = "b") + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 3L) + + idxs <- matrix(c(1, 2), ncol = 2L) + y <- resolve(x, idxs = idxs) + stopifnot(identical(y, x)) + #stopifnot(is.na(futureOf(x$c, mustExist = FALSE))) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 3L) + + y <- resolve(x, idxs = 4L) + stopifnot(identical(y, x)) + #stopifnot(is.na(futureOf(x[[4L]], mustExist = FALSE))) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 3L) + + y <- resolve(x, idxs = names(x), result = TRUE) + stopifnot(identical(y, x)) + stopifnot(length(futureOf(envir = x, drop = TRUE)) == 3L) + + y <- resolve(x, recursive = TRUE, result = TRUE) + stopifnot(identical(y, x)) + + ## Exceptions + res <- tryCatch(y <- resolve(x, idxs = 0L), error = identity) + stopifnot(inherits(res, "error")) + + res <- tryCatch(y <- resolve(x, idxs = "unknown"), error = identity) + stopifnot(inherits(res, "error")) + + message("*** resolve() for list environments ... DONE") + + message(sprintf("- plan('%s') ...", strategy)) + } ## for (strategy ...) - plan('sequential') ... [17:27:44.349] plan(): Setting new future strategy stack: [17:27:44.350] List of future strategies: [17:27:44.350] 1. sequential: [17:27:44.350] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.350] - tweaked: FALSE [17:27:44.350] - call: plan(strategy) [17:27:44.362] plan(): nbrOfWorkers() = 1 *** resolve() for lists ... [17:27:44.363] resolve() on list ... [17:27:44.363] recursive: 0 [17:27:44.363] length: 2 [17:27:44.363] elements: 'a', 'b' [17:27:44.364] length: 1 (resolved future 1) [17:27:44.364] length: 0 (resolved future 2) [17:27:44.364] resolve() on list ... DONE [17:27:44.365] getGlobalsAndPackages() ... [17:27:44.365] Searching for globals... [17:27:44.368] [17:27:44.368] Searching for globals ... DONE [17:27:44.368] - globals: [0] [17:27:44.369] getGlobalsAndPackages() ... DONE [17:27:44.369] run() for 'Future' ... [17:27:44.369] - state: 'created' [17:27:44.370] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.370] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.370] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.371] - Field: 'label' [17:27:44.371] - Field: 'local' [17:27:44.371] - Field: 'owner' [17:27:44.371] - Field: 'envir' [17:27:44.371] - Field: 'packages' [17:27:44.371] - Field: 'gc' [17:27:44.372] - Field: 'conditions' [17:27:44.372] - Field: 'expr' [17:27:44.372] - Field: 'uuid' [17:27:44.372] - Field: 'seed' [17:27:44.372] - Field: 'version' [17:27:44.372] - Field: 'result' [17:27:44.373] - Field: 'asynchronous' [17:27:44.373] - Field: 'calls' [17:27:44.373] - Field: 'globals' [17:27:44.373] - Field: 'stdout' [17:27:44.373] - Field: 'earlySignal' [17:27:44.373] - Field: 'lazy' [17:27:44.374] - Field: 'state' [17:27:44.374] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.374] - Launch lazy future ... [17:27:44.375] Packages needed by the future expression (n = 0): [17:27:44.375] Packages needed by future strategies (n = 0): [17:27:44.376] { [17:27:44.376] { [17:27:44.376] { [17:27:44.376] ...future.startTime <- base::Sys.time() [17:27:44.376] { [17:27:44.376] { [17:27:44.376] { [17:27:44.376] base::local({ [17:27:44.376] has_future <- base::requireNamespace("future", [17:27:44.376] quietly = TRUE) [17:27:44.376] if (has_future) { [17:27:44.376] ns <- base::getNamespace("future") [17:27:44.376] version <- ns[[".package"]][["version"]] [17:27:44.376] if (is.null(version)) [17:27:44.376] version <- utils::packageVersion("future") [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] version <- NULL [17:27:44.376] } [17:27:44.376] if (!has_future || version < "1.8.0") { [17:27:44.376] info <- base::c(r_version = base::gsub("R version ", [17:27:44.376] "", base::R.version$version.string), [17:27:44.376] platform = base::sprintf("%s (%s-bit)", [17:27:44.376] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.376] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.376] "release", "version")], collapse = " "), [17:27:44.376] hostname = base::Sys.info()[["nodename"]]) [17:27:44.376] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.376] info) [17:27:44.376] info <- base::paste(info, collapse = "; ") [17:27:44.376] if (!has_future) { [17:27:44.376] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.376] info) [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.376] info, version) [17:27:44.376] } [17:27:44.376] base::stop(msg) [17:27:44.376] } [17:27:44.376] }) [17:27:44.376] } [17:27:44.376] ...future.strategy.old <- future::plan("list") [17:27:44.376] options(future.plan = NULL) [17:27:44.376] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.376] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.376] } [17:27:44.376] ...future.workdir <- getwd() [17:27:44.376] } [17:27:44.376] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.376] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.376] } [17:27:44.376] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.376] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.376] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.376] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.376] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.376] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.376] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.376] base::names(...future.oldOptions)) [17:27:44.376] } [17:27:44.376] if (FALSE) { [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] if (TRUE) { [17:27:44.376] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.376] open = "w") [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.376] windows = "NUL", "/dev/null"), open = "w") [17:27:44.376] } [17:27:44.376] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.376] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.376] base::sink(type = "output", split = FALSE) [17:27:44.376] base::close(...future.stdout) [17:27:44.376] }, add = TRUE) [17:27:44.376] } [17:27:44.376] ...future.frame <- base::sys.nframe() [17:27:44.376] ...future.conditions <- base::list() [17:27:44.376] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.376] if (FALSE) { [17:27:44.376] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.376] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.376] } [17:27:44.376] ...future.result <- base::tryCatch({ [17:27:44.376] base::withCallingHandlers({ [17:27:44.376] ...future.value <- base::withVisible(base::local(1)) [17:27:44.376] future::FutureResult(value = ...future.value$value, [17:27:44.376] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.376] ...future.rng), globalenv = if (FALSE) [17:27:44.376] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.376] ...future.globalenv.names)) [17:27:44.376] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.376] }, condition = base::local({ [17:27:44.376] c <- base::c [17:27:44.376] inherits <- base::inherits [17:27:44.376] invokeRestart <- base::invokeRestart [17:27:44.376] length <- base::length [17:27:44.376] list <- base::list [17:27:44.376] seq.int <- base::seq.int [17:27:44.376] signalCondition <- base::signalCondition [17:27:44.376] sys.calls <- base::sys.calls [17:27:44.376] `[[` <- base::`[[` [17:27:44.376] `+` <- base::`+` [17:27:44.376] `<<-` <- base::`<<-` [17:27:44.376] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.376] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.376] 3L)] [17:27:44.376] } [17:27:44.376] function(cond) { [17:27:44.376] is_error <- inherits(cond, "error") [17:27:44.376] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.376] NULL) [17:27:44.376] if (is_error) { [17:27:44.376] sessionInformation <- function() { [17:27:44.376] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.376] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.376] search = base::search(), system = base::Sys.info()) [17:27:44.376] } [17:27:44.376] ...future.conditions[[length(...future.conditions) + [17:27:44.376] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.376] cond$call), session = sessionInformation(), [17:27:44.376] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.376] signalCondition(cond) [17:27:44.376] } [17:27:44.376] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.376] "immediateCondition"))) { [17:27:44.376] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.376] ...future.conditions[[length(...future.conditions) + [17:27:44.376] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.376] if (TRUE && !signal) { [17:27:44.376] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.376] { [17:27:44.376] inherits <- base::inherits [17:27:44.376] invokeRestart <- base::invokeRestart [17:27:44.376] is.null <- base::is.null [17:27:44.376] muffled <- FALSE [17:27:44.376] if (inherits(cond, "message")) { [17:27:44.376] muffled <- grepl(pattern, "muffleMessage") [17:27:44.376] if (muffled) [17:27:44.376] invokeRestart("muffleMessage") [17:27:44.376] } [17:27:44.376] else if (inherits(cond, "warning")) { [17:27:44.376] muffled <- grepl(pattern, "muffleWarning") [17:27:44.376] if (muffled) [17:27:44.376] invokeRestart("muffleWarning") [17:27:44.376] } [17:27:44.376] else if (inherits(cond, "condition")) { [17:27:44.376] if (!is.null(pattern)) { [17:27:44.376] computeRestarts <- base::computeRestarts [17:27:44.376] grepl <- base::grepl [17:27:44.376] restarts <- computeRestarts(cond) [17:27:44.376] for (restart in restarts) { [17:27:44.376] name <- restart$name [17:27:44.376] if (is.null(name)) [17:27:44.376] next [17:27:44.376] if (!grepl(pattern, name)) [17:27:44.376] next [17:27:44.376] invokeRestart(restart) [17:27:44.376] muffled <- TRUE [17:27:44.376] break [17:27:44.376] } [17:27:44.376] } [17:27:44.376] } [17:27:44.376] invisible(muffled) [17:27:44.376] } [17:27:44.376] muffleCondition(cond, pattern = "^muffle") [17:27:44.376] } [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] if (TRUE) { [17:27:44.376] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.376] { [17:27:44.376] inherits <- base::inherits [17:27:44.376] invokeRestart <- base::invokeRestart [17:27:44.376] is.null <- base::is.null [17:27:44.376] muffled <- FALSE [17:27:44.376] if (inherits(cond, "message")) { [17:27:44.376] muffled <- grepl(pattern, "muffleMessage") [17:27:44.376] if (muffled) [17:27:44.376] invokeRestart("muffleMessage") [17:27:44.376] } [17:27:44.376] else if (inherits(cond, "warning")) { [17:27:44.376] muffled <- grepl(pattern, "muffleWarning") [17:27:44.376] if (muffled) [17:27:44.376] invokeRestart("muffleWarning") [17:27:44.376] } [17:27:44.376] else if (inherits(cond, "condition")) { [17:27:44.376] if (!is.null(pattern)) { [17:27:44.376] computeRestarts <- base::computeRestarts [17:27:44.376] grepl <- base::grepl [17:27:44.376] restarts <- computeRestarts(cond) [17:27:44.376] for (restart in restarts) { [17:27:44.376] name <- restart$name [17:27:44.376] if (is.null(name)) [17:27:44.376] next [17:27:44.376] if (!grepl(pattern, name)) [17:27:44.376] next [17:27:44.376] invokeRestart(restart) [17:27:44.376] muffled <- TRUE [17:27:44.376] break [17:27:44.376] } [17:27:44.376] } [17:27:44.376] } [17:27:44.376] invisible(muffled) [17:27:44.376] } [17:27:44.376] muffleCondition(cond, pattern = "^muffle") [17:27:44.376] } [17:27:44.376] } [17:27:44.376] } [17:27:44.376] })) [17:27:44.376] }, error = function(ex) { [17:27:44.376] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.376] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.376] ...future.rng), started = ...future.startTime, [17:27:44.376] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.376] version = "1.8"), class = "FutureResult") [17:27:44.376] }, finally = { [17:27:44.376] if (!identical(...future.workdir, getwd())) [17:27:44.376] setwd(...future.workdir) [17:27:44.376] { [17:27:44.376] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.376] ...future.oldOptions$nwarnings <- NULL [17:27:44.376] } [17:27:44.376] base::options(...future.oldOptions) [17:27:44.376] if (.Platform$OS.type == "windows") { [17:27:44.376] old_names <- names(...future.oldEnvVars) [17:27:44.376] envs <- base::Sys.getenv() [17:27:44.376] names <- names(envs) [17:27:44.376] common <- intersect(names, old_names) [17:27:44.376] added <- setdiff(names, old_names) [17:27:44.376] removed <- setdiff(old_names, names) [17:27:44.376] changed <- common[...future.oldEnvVars[common] != [17:27:44.376] envs[common]] [17:27:44.376] NAMES <- toupper(changed) [17:27:44.376] args <- list() [17:27:44.376] for (kk in seq_along(NAMES)) { [17:27:44.376] name <- changed[[kk]] [17:27:44.376] NAME <- NAMES[[kk]] [17:27:44.376] if (name != NAME && is.element(NAME, old_names)) [17:27:44.376] next [17:27:44.376] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.376] } [17:27:44.376] NAMES <- toupper(added) [17:27:44.376] for (kk in seq_along(NAMES)) { [17:27:44.376] name <- added[[kk]] [17:27:44.376] NAME <- NAMES[[kk]] [17:27:44.376] if (name != NAME && is.element(NAME, old_names)) [17:27:44.376] next [17:27:44.376] args[[name]] <- "" [17:27:44.376] } [17:27:44.376] NAMES <- toupper(removed) [17:27:44.376] for (kk in seq_along(NAMES)) { [17:27:44.376] name <- removed[[kk]] [17:27:44.376] NAME <- NAMES[[kk]] [17:27:44.376] if (name != NAME && is.element(NAME, old_names)) [17:27:44.376] next [17:27:44.376] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.376] } [17:27:44.376] if (length(args) > 0) [17:27:44.376] base::do.call(base::Sys.setenv, args = args) [17:27:44.376] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.376] } [17:27:44.376] { [17:27:44.376] if (base::length(...future.futureOptionsAdded) > [17:27:44.376] 0L) { [17:27:44.376] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.376] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.376] base::options(opts) [17:27:44.376] } [17:27:44.376] { [17:27:44.376] { [17:27:44.376] NULL [17:27:44.376] RNGkind("Mersenne-Twister") [17:27:44.376] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.376] inherits = FALSE) [17:27:44.376] } [17:27:44.376] options(future.plan = NULL) [17:27:44.376] if (is.na(NA_character_)) [17:27:44.376] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.376] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.376] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.376] .init = FALSE) [17:27:44.376] } [17:27:44.376] } [17:27:44.376] } [17:27:44.376] }) [17:27:44.376] if (TRUE) { [17:27:44.376] base::sink(type = "output", split = FALSE) [17:27:44.376] if (TRUE) { [17:27:44.376] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.376] } [17:27:44.376] else { [17:27:44.376] ...future.result["stdout"] <- base::list(NULL) [17:27:44.376] } [17:27:44.376] base::close(...future.stdout) [17:27:44.376] ...future.stdout <- NULL [17:27:44.376] } [17:27:44.376] ...future.result$conditions <- ...future.conditions [17:27:44.376] ...future.result$finished <- base::Sys.time() [17:27:44.376] ...future.result [17:27:44.376] } [17:27:44.380] plan(): Setting new future strategy stack: [17:27:44.380] List of future strategies: [17:27:44.380] 1. sequential: [17:27:44.380] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.380] - tweaked: FALSE [17:27:44.380] - call: NULL [17:27:44.381] plan(): nbrOfWorkers() = 1 [17:27:44.383] plan(): Setting new future strategy stack: [17:27:44.383] List of future strategies: [17:27:44.383] 1. sequential: [17:27:44.383] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.383] - tweaked: FALSE [17:27:44.383] - call: plan(strategy) [17:27:44.384] plan(): nbrOfWorkers() = 1 [17:27:44.384] SequentialFuture started (and completed) [17:27:44.384] - Launch lazy future ... done [17:27:44.385] run() for 'SequentialFuture' ... done [17:27:44.385] getGlobalsAndPackages() ... [17:27:44.385] Searching for globals... [17:27:44.385] [17:27:44.385] Searching for globals ... DONE [17:27:44.386] - globals: [0] [17:27:44.386] getGlobalsAndPackages() ... DONE [17:27:44.386] run() for 'Future' ... [17:27:44.386] - state: 'created' [17:27:44.386] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.387] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.387] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.387] - Field: 'label' [17:27:44.387] - Field: 'local' [17:27:44.388] - Field: 'owner' [17:27:44.388] - Field: 'envir' [17:27:44.388] - Field: 'packages' [17:27:44.388] - Field: 'gc' [17:27:44.388] - Field: 'conditions' [17:27:44.388] - Field: 'expr' [17:27:44.389] - Field: 'uuid' [17:27:44.389] - Field: 'seed' [17:27:44.389] - Field: 'version' [17:27:44.389] - Field: 'result' [17:27:44.389] - Field: 'asynchronous' [17:27:44.389] - Field: 'calls' [17:27:44.390] - Field: 'globals' [17:27:44.390] - Field: 'stdout' [17:27:44.390] - Field: 'earlySignal' [17:27:44.390] - Field: 'lazy' [17:27:44.390] - Field: 'state' [17:27:44.391] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.391] - Launch lazy future ... [17:27:44.391] Packages needed by the future expression (n = 0): [17:27:44.391] Packages needed by future strategies (n = 0): [17:27:44.392] { [17:27:44.392] { [17:27:44.392] { [17:27:44.392] ...future.startTime <- base::Sys.time() [17:27:44.392] { [17:27:44.392] { [17:27:44.392] { [17:27:44.392] base::local({ [17:27:44.392] has_future <- base::requireNamespace("future", [17:27:44.392] quietly = TRUE) [17:27:44.392] if (has_future) { [17:27:44.392] ns <- base::getNamespace("future") [17:27:44.392] version <- ns[[".package"]][["version"]] [17:27:44.392] if (is.null(version)) [17:27:44.392] version <- utils::packageVersion("future") [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] version <- NULL [17:27:44.392] } [17:27:44.392] if (!has_future || version < "1.8.0") { [17:27:44.392] info <- base::c(r_version = base::gsub("R version ", [17:27:44.392] "", base::R.version$version.string), [17:27:44.392] platform = base::sprintf("%s (%s-bit)", [17:27:44.392] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.392] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.392] "release", "version")], collapse = " "), [17:27:44.392] hostname = base::Sys.info()[["nodename"]]) [17:27:44.392] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.392] info) [17:27:44.392] info <- base::paste(info, collapse = "; ") [17:27:44.392] if (!has_future) { [17:27:44.392] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.392] info) [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.392] info, version) [17:27:44.392] } [17:27:44.392] base::stop(msg) [17:27:44.392] } [17:27:44.392] }) [17:27:44.392] } [17:27:44.392] ...future.strategy.old <- future::plan("list") [17:27:44.392] options(future.plan = NULL) [17:27:44.392] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.392] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.392] } [17:27:44.392] ...future.workdir <- getwd() [17:27:44.392] } [17:27:44.392] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.392] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.392] } [17:27:44.392] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.392] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.392] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.392] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.392] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.392] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.392] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.392] base::names(...future.oldOptions)) [17:27:44.392] } [17:27:44.392] if (FALSE) { [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] if (TRUE) { [17:27:44.392] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.392] open = "w") [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.392] windows = "NUL", "/dev/null"), open = "w") [17:27:44.392] } [17:27:44.392] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.392] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.392] base::sink(type = "output", split = FALSE) [17:27:44.392] base::close(...future.stdout) [17:27:44.392] }, add = TRUE) [17:27:44.392] } [17:27:44.392] ...future.frame <- base::sys.nframe() [17:27:44.392] ...future.conditions <- base::list() [17:27:44.392] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.392] if (FALSE) { [17:27:44.392] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.392] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.392] } [17:27:44.392] ...future.result <- base::tryCatch({ [17:27:44.392] base::withCallingHandlers({ [17:27:44.392] ...future.value <- base::withVisible(base::local(2)) [17:27:44.392] future::FutureResult(value = ...future.value$value, [17:27:44.392] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.392] ...future.rng), globalenv = if (FALSE) [17:27:44.392] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.392] ...future.globalenv.names)) [17:27:44.392] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.392] }, condition = base::local({ [17:27:44.392] c <- base::c [17:27:44.392] inherits <- base::inherits [17:27:44.392] invokeRestart <- base::invokeRestart [17:27:44.392] length <- base::length [17:27:44.392] list <- base::list [17:27:44.392] seq.int <- base::seq.int [17:27:44.392] signalCondition <- base::signalCondition [17:27:44.392] sys.calls <- base::sys.calls [17:27:44.392] `[[` <- base::`[[` [17:27:44.392] `+` <- base::`+` [17:27:44.392] `<<-` <- base::`<<-` [17:27:44.392] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.392] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.392] 3L)] [17:27:44.392] } [17:27:44.392] function(cond) { [17:27:44.392] is_error <- inherits(cond, "error") [17:27:44.392] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.392] NULL) [17:27:44.392] if (is_error) { [17:27:44.392] sessionInformation <- function() { [17:27:44.392] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.392] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.392] search = base::search(), system = base::Sys.info()) [17:27:44.392] } [17:27:44.392] ...future.conditions[[length(...future.conditions) + [17:27:44.392] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.392] cond$call), session = sessionInformation(), [17:27:44.392] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.392] signalCondition(cond) [17:27:44.392] } [17:27:44.392] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.392] "immediateCondition"))) { [17:27:44.392] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.392] ...future.conditions[[length(...future.conditions) + [17:27:44.392] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.392] if (TRUE && !signal) { [17:27:44.392] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.392] { [17:27:44.392] inherits <- base::inherits [17:27:44.392] invokeRestart <- base::invokeRestart [17:27:44.392] is.null <- base::is.null [17:27:44.392] muffled <- FALSE [17:27:44.392] if (inherits(cond, "message")) { [17:27:44.392] muffled <- grepl(pattern, "muffleMessage") [17:27:44.392] if (muffled) [17:27:44.392] invokeRestart("muffleMessage") [17:27:44.392] } [17:27:44.392] else if (inherits(cond, "warning")) { [17:27:44.392] muffled <- grepl(pattern, "muffleWarning") [17:27:44.392] if (muffled) [17:27:44.392] invokeRestart("muffleWarning") [17:27:44.392] } [17:27:44.392] else if (inherits(cond, "condition")) { [17:27:44.392] if (!is.null(pattern)) { [17:27:44.392] computeRestarts <- base::computeRestarts [17:27:44.392] grepl <- base::grepl [17:27:44.392] restarts <- computeRestarts(cond) [17:27:44.392] for (restart in restarts) { [17:27:44.392] name <- restart$name [17:27:44.392] if (is.null(name)) [17:27:44.392] next [17:27:44.392] if (!grepl(pattern, name)) [17:27:44.392] next [17:27:44.392] invokeRestart(restart) [17:27:44.392] muffled <- TRUE [17:27:44.392] break [17:27:44.392] } [17:27:44.392] } [17:27:44.392] } [17:27:44.392] invisible(muffled) [17:27:44.392] } [17:27:44.392] muffleCondition(cond, pattern = "^muffle") [17:27:44.392] } [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] if (TRUE) { [17:27:44.392] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.392] { [17:27:44.392] inherits <- base::inherits [17:27:44.392] invokeRestart <- base::invokeRestart [17:27:44.392] is.null <- base::is.null [17:27:44.392] muffled <- FALSE [17:27:44.392] if (inherits(cond, "message")) { [17:27:44.392] muffled <- grepl(pattern, "muffleMessage") [17:27:44.392] if (muffled) [17:27:44.392] invokeRestart("muffleMessage") [17:27:44.392] } [17:27:44.392] else if (inherits(cond, "warning")) { [17:27:44.392] muffled <- grepl(pattern, "muffleWarning") [17:27:44.392] if (muffled) [17:27:44.392] invokeRestart("muffleWarning") [17:27:44.392] } [17:27:44.392] else if (inherits(cond, "condition")) { [17:27:44.392] if (!is.null(pattern)) { [17:27:44.392] computeRestarts <- base::computeRestarts [17:27:44.392] grepl <- base::grepl [17:27:44.392] restarts <- computeRestarts(cond) [17:27:44.392] for (restart in restarts) { [17:27:44.392] name <- restart$name [17:27:44.392] if (is.null(name)) [17:27:44.392] next [17:27:44.392] if (!grepl(pattern, name)) [17:27:44.392] next [17:27:44.392] invokeRestart(restart) [17:27:44.392] muffled <- TRUE [17:27:44.392] break [17:27:44.392] } [17:27:44.392] } [17:27:44.392] } [17:27:44.392] invisible(muffled) [17:27:44.392] } [17:27:44.392] muffleCondition(cond, pattern = "^muffle") [17:27:44.392] } [17:27:44.392] } [17:27:44.392] } [17:27:44.392] })) [17:27:44.392] }, error = function(ex) { [17:27:44.392] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.392] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.392] ...future.rng), started = ...future.startTime, [17:27:44.392] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.392] version = "1.8"), class = "FutureResult") [17:27:44.392] }, finally = { [17:27:44.392] if (!identical(...future.workdir, getwd())) [17:27:44.392] setwd(...future.workdir) [17:27:44.392] { [17:27:44.392] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.392] ...future.oldOptions$nwarnings <- NULL [17:27:44.392] } [17:27:44.392] base::options(...future.oldOptions) [17:27:44.392] if (.Platform$OS.type == "windows") { [17:27:44.392] old_names <- names(...future.oldEnvVars) [17:27:44.392] envs <- base::Sys.getenv() [17:27:44.392] names <- names(envs) [17:27:44.392] common <- intersect(names, old_names) [17:27:44.392] added <- setdiff(names, old_names) [17:27:44.392] removed <- setdiff(old_names, names) [17:27:44.392] changed <- common[...future.oldEnvVars[common] != [17:27:44.392] envs[common]] [17:27:44.392] NAMES <- toupper(changed) [17:27:44.392] args <- list() [17:27:44.392] for (kk in seq_along(NAMES)) { [17:27:44.392] name <- changed[[kk]] [17:27:44.392] NAME <- NAMES[[kk]] [17:27:44.392] if (name != NAME && is.element(NAME, old_names)) [17:27:44.392] next [17:27:44.392] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.392] } [17:27:44.392] NAMES <- toupper(added) [17:27:44.392] for (kk in seq_along(NAMES)) { [17:27:44.392] name <- added[[kk]] [17:27:44.392] NAME <- NAMES[[kk]] [17:27:44.392] if (name != NAME && is.element(NAME, old_names)) [17:27:44.392] next [17:27:44.392] args[[name]] <- "" [17:27:44.392] } [17:27:44.392] NAMES <- toupper(removed) [17:27:44.392] for (kk in seq_along(NAMES)) { [17:27:44.392] name <- removed[[kk]] [17:27:44.392] NAME <- NAMES[[kk]] [17:27:44.392] if (name != NAME && is.element(NAME, old_names)) [17:27:44.392] next [17:27:44.392] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.392] } [17:27:44.392] if (length(args) > 0) [17:27:44.392] base::do.call(base::Sys.setenv, args = args) [17:27:44.392] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.392] } [17:27:44.392] { [17:27:44.392] if (base::length(...future.futureOptionsAdded) > [17:27:44.392] 0L) { [17:27:44.392] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.392] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.392] base::options(opts) [17:27:44.392] } [17:27:44.392] { [17:27:44.392] { [17:27:44.392] NULL [17:27:44.392] RNGkind("Mersenne-Twister") [17:27:44.392] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.392] inherits = FALSE) [17:27:44.392] } [17:27:44.392] options(future.plan = NULL) [17:27:44.392] if (is.na(NA_character_)) [17:27:44.392] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.392] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.392] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.392] .init = FALSE) [17:27:44.392] } [17:27:44.392] } [17:27:44.392] } [17:27:44.392] }) [17:27:44.392] if (TRUE) { [17:27:44.392] base::sink(type = "output", split = FALSE) [17:27:44.392] if (TRUE) { [17:27:44.392] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.392] } [17:27:44.392] else { [17:27:44.392] ...future.result["stdout"] <- base::list(NULL) [17:27:44.392] } [17:27:44.392] base::close(...future.stdout) [17:27:44.392] ...future.stdout <- NULL [17:27:44.392] } [17:27:44.392] ...future.result$conditions <- ...future.conditions [17:27:44.392] ...future.result$finished <- base::Sys.time() [17:27:44.392] ...future.result [17:27:44.392] } [17:27:44.396] plan(): Setting new future strategy stack: [17:27:44.396] List of future strategies: [17:27:44.396] 1. sequential: [17:27:44.396] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.396] - tweaked: FALSE [17:27:44.396] - call: NULL [17:27:44.396] plan(): nbrOfWorkers() = 1 [17:27:44.398] plan(): Setting new future strategy stack: [17:27:44.398] List of future strategies: [17:27:44.398] 1. sequential: [17:27:44.398] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.398] - tweaked: FALSE [17:27:44.398] - call: plan(strategy) [17:27:44.398] plan(): nbrOfWorkers() = 1 [17:27:44.399] SequentialFuture started (and completed) [17:27:44.399] - Launch lazy future ... done [17:27:44.399] run() for 'SequentialFuture' ... done [17:27:44.399] resolve() on list ... [17:27:44.399] recursive: 0 [17:27:44.400] length: 3 [17:27:44.400] elements: 'a', 'b', '' [17:27:44.400] resolved() for 'SequentialFuture' ... [17:27:44.400] - state: 'finished' [17:27:44.400] - run: TRUE [17:27:44.401] - result: 'FutureResult' [17:27:44.401] resolved() for 'SequentialFuture' ... done [17:27:44.401] Future #1 [17:27:44.401] length: 2 (resolved future 1) [17:27:44.401] resolved() for 'SequentialFuture' ... [17:27:44.402] - state: 'finished' [17:27:44.402] - run: TRUE [17:27:44.402] - result: 'FutureResult' [17:27:44.402] resolved() for 'SequentialFuture' ... done [17:27:44.402] Future #2 [17:27:44.402] length: 1 (resolved future 2) [17:27:44.403] length: 0 (resolved future 3) [17:27:44.403] resolve() on list ... DONE [17:27:44.403] resolved() for 'SequentialFuture' ... [17:27:44.403] - state: 'finished' [17:27:44.403] - run: TRUE [17:27:44.404] - result: 'FutureResult' [17:27:44.404] resolved() for 'SequentialFuture' ... done [17:27:44.404] resolved() for 'SequentialFuture' ... [17:27:44.404] - state: 'finished' [17:27:44.404] - run: TRUE [17:27:44.404] - result: 'FutureResult' [17:27:44.405] resolved() for 'SequentialFuture' ... done [17:27:44.405] getGlobalsAndPackages() ... [17:27:44.405] Searching for globals... [17:27:44.405] [17:27:44.406] Searching for globals ... DONE [17:27:44.406] - globals: [0] [17:27:44.406] getGlobalsAndPackages() ... DONE [17:27:44.406] getGlobalsAndPackages() ... [17:27:44.406] Searching for globals... [17:27:44.407] [17:27:44.407] Searching for globals ... DONE [17:27:44.407] - globals: [0] [17:27:44.407] getGlobalsAndPackages() ... DONE [17:27:44.407] run() for 'Future' ... [17:27:44.408] - state: 'created' [17:27:44.408] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.408] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.408] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.409] - Field: 'label' [17:27:44.409] - Field: 'local' [17:27:44.409] - Field: 'owner' [17:27:44.409] - Field: 'envir' [17:27:44.409] - Field: 'packages' [17:27:44.409] - Field: 'gc' [17:27:44.410] - Field: 'conditions' [17:27:44.410] - Field: 'expr' [17:27:44.410] - Field: 'uuid' [17:27:44.410] - Field: 'seed' [17:27:44.410] - Field: 'version' [17:27:44.410] - Field: 'result' [17:27:44.411] - Field: 'asynchronous' [17:27:44.411] - Field: 'calls' [17:27:44.411] - Field: 'globals' [17:27:44.411] - Field: 'stdout' [17:27:44.411] - Field: 'earlySignal' [17:27:44.411] - Field: 'lazy' [17:27:44.412] - Field: 'state' [17:27:44.412] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.412] - Launch lazy future ... [17:27:44.412] Packages needed by the future expression (n = 0): [17:27:44.412] Packages needed by future strategies (n = 0): [17:27:44.413] { [17:27:44.413] { [17:27:44.413] { [17:27:44.413] ...future.startTime <- base::Sys.time() [17:27:44.413] { [17:27:44.413] { [17:27:44.413] { [17:27:44.413] base::local({ [17:27:44.413] has_future <- base::requireNamespace("future", [17:27:44.413] quietly = TRUE) [17:27:44.413] if (has_future) { [17:27:44.413] ns <- base::getNamespace("future") [17:27:44.413] version <- ns[[".package"]][["version"]] [17:27:44.413] if (is.null(version)) [17:27:44.413] version <- utils::packageVersion("future") [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] version <- NULL [17:27:44.413] } [17:27:44.413] if (!has_future || version < "1.8.0") { [17:27:44.413] info <- base::c(r_version = base::gsub("R version ", [17:27:44.413] "", base::R.version$version.string), [17:27:44.413] platform = base::sprintf("%s (%s-bit)", [17:27:44.413] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.413] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.413] "release", "version")], collapse = " "), [17:27:44.413] hostname = base::Sys.info()[["nodename"]]) [17:27:44.413] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.413] info) [17:27:44.413] info <- base::paste(info, collapse = "; ") [17:27:44.413] if (!has_future) { [17:27:44.413] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.413] info) [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.413] info, version) [17:27:44.413] } [17:27:44.413] base::stop(msg) [17:27:44.413] } [17:27:44.413] }) [17:27:44.413] } [17:27:44.413] ...future.strategy.old <- future::plan("list") [17:27:44.413] options(future.plan = NULL) [17:27:44.413] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.413] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.413] } [17:27:44.413] ...future.workdir <- getwd() [17:27:44.413] } [17:27:44.413] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.413] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.413] } [17:27:44.413] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.413] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.413] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.413] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.413] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.413] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.413] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.413] base::names(...future.oldOptions)) [17:27:44.413] } [17:27:44.413] if (FALSE) { [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] if (TRUE) { [17:27:44.413] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.413] open = "w") [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.413] windows = "NUL", "/dev/null"), open = "w") [17:27:44.413] } [17:27:44.413] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.413] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.413] base::sink(type = "output", split = FALSE) [17:27:44.413] base::close(...future.stdout) [17:27:44.413] }, add = TRUE) [17:27:44.413] } [17:27:44.413] ...future.frame <- base::sys.nframe() [17:27:44.413] ...future.conditions <- base::list() [17:27:44.413] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.413] if (FALSE) { [17:27:44.413] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.413] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.413] } [17:27:44.413] ...future.result <- base::tryCatch({ [17:27:44.413] base::withCallingHandlers({ [17:27:44.413] ...future.value <- base::withVisible(base::local(2)) [17:27:44.413] future::FutureResult(value = ...future.value$value, [17:27:44.413] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.413] ...future.rng), globalenv = if (FALSE) [17:27:44.413] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.413] ...future.globalenv.names)) [17:27:44.413] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.413] }, condition = base::local({ [17:27:44.413] c <- base::c [17:27:44.413] inherits <- base::inherits [17:27:44.413] invokeRestart <- base::invokeRestart [17:27:44.413] length <- base::length [17:27:44.413] list <- base::list [17:27:44.413] seq.int <- base::seq.int [17:27:44.413] signalCondition <- base::signalCondition [17:27:44.413] sys.calls <- base::sys.calls [17:27:44.413] `[[` <- base::`[[` [17:27:44.413] `+` <- base::`+` [17:27:44.413] `<<-` <- base::`<<-` [17:27:44.413] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.413] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.413] 3L)] [17:27:44.413] } [17:27:44.413] function(cond) { [17:27:44.413] is_error <- inherits(cond, "error") [17:27:44.413] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.413] NULL) [17:27:44.413] if (is_error) { [17:27:44.413] sessionInformation <- function() { [17:27:44.413] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.413] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.413] search = base::search(), system = base::Sys.info()) [17:27:44.413] } [17:27:44.413] ...future.conditions[[length(...future.conditions) + [17:27:44.413] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.413] cond$call), session = sessionInformation(), [17:27:44.413] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.413] signalCondition(cond) [17:27:44.413] } [17:27:44.413] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.413] "immediateCondition"))) { [17:27:44.413] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.413] ...future.conditions[[length(...future.conditions) + [17:27:44.413] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.413] if (TRUE && !signal) { [17:27:44.413] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.413] { [17:27:44.413] inherits <- base::inherits [17:27:44.413] invokeRestart <- base::invokeRestart [17:27:44.413] is.null <- base::is.null [17:27:44.413] muffled <- FALSE [17:27:44.413] if (inherits(cond, "message")) { [17:27:44.413] muffled <- grepl(pattern, "muffleMessage") [17:27:44.413] if (muffled) [17:27:44.413] invokeRestart("muffleMessage") [17:27:44.413] } [17:27:44.413] else if (inherits(cond, "warning")) { [17:27:44.413] muffled <- grepl(pattern, "muffleWarning") [17:27:44.413] if (muffled) [17:27:44.413] invokeRestart("muffleWarning") [17:27:44.413] } [17:27:44.413] else if (inherits(cond, "condition")) { [17:27:44.413] if (!is.null(pattern)) { [17:27:44.413] computeRestarts <- base::computeRestarts [17:27:44.413] grepl <- base::grepl [17:27:44.413] restarts <- computeRestarts(cond) [17:27:44.413] for (restart in restarts) { [17:27:44.413] name <- restart$name [17:27:44.413] if (is.null(name)) [17:27:44.413] next [17:27:44.413] if (!grepl(pattern, name)) [17:27:44.413] next [17:27:44.413] invokeRestart(restart) [17:27:44.413] muffled <- TRUE [17:27:44.413] break [17:27:44.413] } [17:27:44.413] } [17:27:44.413] } [17:27:44.413] invisible(muffled) [17:27:44.413] } [17:27:44.413] muffleCondition(cond, pattern = "^muffle") [17:27:44.413] } [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] if (TRUE) { [17:27:44.413] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.413] { [17:27:44.413] inherits <- base::inherits [17:27:44.413] invokeRestart <- base::invokeRestart [17:27:44.413] is.null <- base::is.null [17:27:44.413] muffled <- FALSE [17:27:44.413] if (inherits(cond, "message")) { [17:27:44.413] muffled <- grepl(pattern, "muffleMessage") [17:27:44.413] if (muffled) [17:27:44.413] invokeRestart("muffleMessage") [17:27:44.413] } [17:27:44.413] else if (inherits(cond, "warning")) { [17:27:44.413] muffled <- grepl(pattern, "muffleWarning") [17:27:44.413] if (muffled) [17:27:44.413] invokeRestart("muffleWarning") [17:27:44.413] } [17:27:44.413] else if (inherits(cond, "condition")) { [17:27:44.413] if (!is.null(pattern)) { [17:27:44.413] computeRestarts <- base::computeRestarts [17:27:44.413] grepl <- base::grepl [17:27:44.413] restarts <- computeRestarts(cond) [17:27:44.413] for (restart in restarts) { [17:27:44.413] name <- restart$name [17:27:44.413] if (is.null(name)) [17:27:44.413] next [17:27:44.413] if (!grepl(pattern, name)) [17:27:44.413] next [17:27:44.413] invokeRestart(restart) [17:27:44.413] muffled <- TRUE [17:27:44.413] break [17:27:44.413] } [17:27:44.413] } [17:27:44.413] } [17:27:44.413] invisible(muffled) [17:27:44.413] } [17:27:44.413] muffleCondition(cond, pattern = "^muffle") [17:27:44.413] } [17:27:44.413] } [17:27:44.413] } [17:27:44.413] })) [17:27:44.413] }, error = function(ex) { [17:27:44.413] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.413] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.413] ...future.rng), started = ...future.startTime, [17:27:44.413] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.413] version = "1.8"), class = "FutureResult") [17:27:44.413] }, finally = { [17:27:44.413] if (!identical(...future.workdir, getwd())) [17:27:44.413] setwd(...future.workdir) [17:27:44.413] { [17:27:44.413] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.413] ...future.oldOptions$nwarnings <- NULL [17:27:44.413] } [17:27:44.413] base::options(...future.oldOptions) [17:27:44.413] if (.Platform$OS.type == "windows") { [17:27:44.413] old_names <- names(...future.oldEnvVars) [17:27:44.413] envs <- base::Sys.getenv() [17:27:44.413] names <- names(envs) [17:27:44.413] common <- intersect(names, old_names) [17:27:44.413] added <- setdiff(names, old_names) [17:27:44.413] removed <- setdiff(old_names, names) [17:27:44.413] changed <- common[...future.oldEnvVars[common] != [17:27:44.413] envs[common]] [17:27:44.413] NAMES <- toupper(changed) [17:27:44.413] args <- list() [17:27:44.413] for (kk in seq_along(NAMES)) { [17:27:44.413] name <- changed[[kk]] [17:27:44.413] NAME <- NAMES[[kk]] [17:27:44.413] if (name != NAME && is.element(NAME, old_names)) [17:27:44.413] next [17:27:44.413] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.413] } [17:27:44.413] NAMES <- toupper(added) [17:27:44.413] for (kk in seq_along(NAMES)) { [17:27:44.413] name <- added[[kk]] [17:27:44.413] NAME <- NAMES[[kk]] [17:27:44.413] if (name != NAME && is.element(NAME, old_names)) [17:27:44.413] next [17:27:44.413] args[[name]] <- "" [17:27:44.413] } [17:27:44.413] NAMES <- toupper(removed) [17:27:44.413] for (kk in seq_along(NAMES)) { [17:27:44.413] name <- removed[[kk]] [17:27:44.413] NAME <- NAMES[[kk]] [17:27:44.413] if (name != NAME && is.element(NAME, old_names)) [17:27:44.413] next [17:27:44.413] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.413] } [17:27:44.413] if (length(args) > 0) [17:27:44.413] base::do.call(base::Sys.setenv, args = args) [17:27:44.413] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.413] } [17:27:44.413] { [17:27:44.413] if (base::length(...future.futureOptionsAdded) > [17:27:44.413] 0L) { [17:27:44.413] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.413] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.413] base::options(opts) [17:27:44.413] } [17:27:44.413] { [17:27:44.413] { [17:27:44.413] NULL [17:27:44.413] RNGkind("Mersenne-Twister") [17:27:44.413] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.413] inherits = FALSE) [17:27:44.413] } [17:27:44.413] options(future.plan = NULL) [17:27:44.413] if (is.na(NA_character_)) [17:27:44.413] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.413] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.413] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.413] .init = FALSE) [17:27:44.413] } [17:27:44.413] } [17:27:44.413] } [17:27:44.413] }) [17:27:44.413] if (TRUE) { [17:27:44.413] base::sink(type = "output", split = FALSE) [17:27:44.413] if (TRUE) { [17:27:44.413] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.413] } [17:27:44.413] else { [17:27:44.413] ...future.result["stdout"] <- base::list(NULL) [17:27:44.413] } [17:27:44.413] base::close(...future.stdout) [17:27:44.413] ...future.stdout <- NULL [17:27:44.413] } [17:27:44.413] ...future.result$conditions <- ...future.conditions [17:27:44.413] ...future.result$finished <- base::Sys.time() [17:27:44.413] ...future.result [17:27:44.413] } [17:27:44.417] plan(): Setting new future strategy stack: [17:27:44.417] List of future strategies: [17:27:44.417] 1. sequential: [17:27:44.417] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.417] - tweaked: FALSE [17:27:44.417] - call: NULL [17:27:44.419] plan(): nbrOfWorkers() = 1 [17:27:44.420] plan(): Setting new future strategy stack: [17:27:44.420] List of future strategies: [17:27:44.420] 1. sequential: [17:27:44.420] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.420] - tweaked: FALSE [17:27:44.420] - call: plan(strategy) [17:27:44.421] plan(): nbrOfWorkers() = 1 [17:27:44.421] SequentialFuture started (and completed) [17:27:44.421] - Launch lazy future ... done [17:27:44.422] run() for 'SequentialFuture' ... done [17:27:44.422] resolve() on list ... [17:27:44.422] recursive: 0 [17:27:44.422] length: 3 [17:27:44.422] elements: 'a', 'b', '' [17:27:44.423] run() for 'Future' ... [17:27:44.423] - state: 'created' [17:27:44.423] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.423] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.423] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.424] - Field: 'label' [17:27:44.424] - Field: 'local' [17:27:44.424] - Field: 'owner' [17:27:44.424] - Field: 'envir' [17:27:44.424] - Field: 'packages' [17:27:44.424] - Field: 'gc' [17:27:44.425] - Field: 'conditions' [17:27:44.425] - Field: 'expr' [17:27:44.425] - Field: 'uuid' [17:27:44.425] - Field: 'seed' [17:27:44.425] - Field: 'version' [17:27:44.426] - Field: 'result' [17:27:44.426] - Field: 'asynchronous' [17:27:44.426] - Field: 'calls' [17:27:44.426] - Field: 'globals' [17:27:44.426] - Field: 'stdout' [17:27:44.426] - Field: 'earlySignal' [17:27:44.427] - Field: 'lazy' [17:27:44.427] - Field: 'state' [17:27:44.427] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.427] - Launch lazy future ... [17:27:44.427] Packages needed by the future expression (n = 0): [17:27:44.427] Packages needed by future strategies (n = 0): [17:27:44.428] { [17:27:44.428] { [17:27:44.428] { [17:27:44.428] ...future.startTime <- base::Sys.time() [17:27:44.428] { [17:27:44.428] { [17:27:44.428] { [17:27:44.428] base::local({ [17:27:44.428] has_future <- base::requireNamespace("future", [17:27:44.428] quietly = TRUE) [17:27:44.428] if (has_future) { [17:27:44.428] ns <- base::getNamespace("future") [17:27:44.428] version <- ns[[".package"]][["version"]] [17:27:44.428] if (is.null(version)) [17:27:44.428] version <- utils::packageVersion("future") [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] version <- NULL [17:27:44.428] } [17:27:44.428] if (!has_future || version < "1.8.0") { [17:27:44.428] info <- base::c(r_version = base::gsub("R version ", [17:27:44.428] "", base::R.version$version.string), [17:27:44.428] platform = base::sprintf("%s (%s-bit)", [17:27:44.428] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.428] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.428] "release", "version")], collapse = " "), [17:27:44.428] hostname = base::Sys.info()[["nodename"]]) [17:27:44.428] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.428] info) [17:27:44.428] info <- base::paste(info, collapse = "; ") [17:27:44.428] if (!has_future) { [17:27:44.428] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.428] info) [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.428] info, version) [17:27:44.428] } [17:27:44.428] base::stop(msg) [17:27:44.428] } [17:27:44.428] }) [17:27:44.428] } [17:27:44.428] ...future.strategy.old <- future::plan("list") [17:27:44.428] options(future.plan = NULL) [17:27:44.428] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.428] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.428] } [17:27:44.428] ...future.workdir <- getwd() [17:27:44.428] } [17:27:44.428] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.428] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.428] } [17:27:44.428] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.428] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.428] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.428] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.428] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.428] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.428] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.428] base::names(...future.oldOptions)) [17:27:44.428] } [17:27:44.428] if (FALSE) { [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] if (TRUE) { [17:27:44.428] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.428] open = "w") [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.428] windows = "NUL", "/dev/null"), open = "w") [17:27:44.428] } [17:27:44.428] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.428] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.428] base::sink(type = "output", split = FALSE) [17:27:44.428] base::close(...future.stdout) [17:27:44.428] }, add = TRUE) [17:27:44.428] } [17:27:44.428] ...future.frame <- base::sys.nframe() [17:27:44.428] ...future.conditions <- base::list() [17:27:44.428] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.428] if (FALSE) { [17:27:44.428] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.428] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.428] } [17:27:44.428] ...future.result <- base::tryCatch({ [17:27:44.428] base::withCallingHandlers({ [17:27:44.428] ...future.value <- base::withVisible(base::local(1)) [17:27:44.428] future::FutureResult(value = ...future.value$value, [17:27:44.428] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.428] ...future.rng), globalenv = if (FALSE) [17:27:44.428] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.428] ...future.globalenv.names)) [17:27:44.428] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.428] }, condition = base::local({ [17:27:44.428] c <- base::c [17:27:44.428] inherits <- base::inherits [17:27:44.428] invokeRestart <- base::invokeRestart [17:27:44.428] length <- base::length [17:27:44.428] list <- base::list [17:27:44.428] seq.int <- base::seq.int [17:27:44.428] signalCondition <- base::signalCondition [17:27:44.428] sys.calls <- base::sys.calls [17:27:44.428] `[[` <- base::`[[` [17:27:44.428] `+` <- base::`+` [17:27:44.428] `<<-` <- base::`<<-` [17:27:44.428] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.428] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.428] 3L)] [17:27:44.428] } [17:27:44.428] function(cond) { [17:27:44.428] is_error <- inherits(cond, "error") [17:27:44.428] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.428] NULL) [17:27:44.428] if (is_error) { [17:27:44.428] sessionInformation <- function() { [17:27:44.428] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.428] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.428] search = base::search(), system = base::Sys.info()) [17:27:44.428] } [17:27:44.428] ...future.conditions[[length(...future.conditions) + [17:27:44.428] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.428] cond$call), session = sessionInformation(), [17:27:44.428] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.428] signalCondition(cond) [17:27:44.428] } [17:27:44.428] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.428] "immediateCondition"))) { [17:27:44.428] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.428] ...future.conditions[[length(...future.conditions) + [17:27:44.428] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.428] if (TRUE && !signal) { [17:27:44.428] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.428] { [17:27:44.428] inherits <- base::inherits [17:27:44.428] invokeRestart <- base::invokeRestart [17:27:44.428] is.null <- base::is.null [17:27:44.428] muffled <- FALSE [17:27:44.428] if (inherits(cond, "message")) { [17:27:44.428] muffled <- grepl(pattern, "muffleMessage") [17:27:44.428] if (muffled) [17:27:44.428] invokeRestart("muffleMessage") [17:27:44.428] } [17:27:44.428] else if (inherits(cond, "warning")) { [17:27:44.428] muffled <- grepl(pattern, "muffleWarning") [17:27:44.428] if (muffled) [17:27:44.428] invokeRestart("muffleWarning") [17:27:44.428] } [17:27:44.428] else if (inherits(cond, "condition")) { [17:27:44.428] if (!is.null(pattern)) { [17:27:44.428] computeRestarts <- base::computeRestarts [17:27:44.428] grepl <- base::grepl [17:27:44.428] restarts <- computeRestarts(cond) [17:27:44.428] for (restart in restarts) { [17:27:44.428] name <- restart$name [17:27:44.428] if (is.null(name)) [17:27:44.428] next [17:27:44.428] if (!grepl(pattern, name)) [17:27:44.428] next [17:27:44.428] invokeRestart(restart) [17:27:44.428] muffled <- TRUE [17:27:44.428] break [17:27:44.428] } [17:27:44.428] } [17:27:44.428] } [17:27:44.428] invisible(muffled) [17:27:44.428] } [17:27:44.428] muffleCondition(cond, pattern = "^muffle") [17:27:44.428] } [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] if (TRUE) { [17:27:44.428] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.428] { [17:27:44.428] inherits <- base::inherits [17:27:44.428] invokeRestart <- base::invokeRestart [17:27:44.428] is.null <- base::is.null [17:27:44.428] muffled <- FALSE [17:27:44.428] if (inherits(cond, "message")) { [17:27:44.428] muffled <- grepl(pattern, "muffleMessage") [17:27:44.428] if (muffled) [17:27:44.428] invokeRestart("muffleMessage") [17:27:44.428] } [17:27:44.428] else if (inherits(cond, "warning")) { [17:27:44.428] muffled <- grepl(pattern, "muffleWarning") [17:27:44.428] if (muffled) [17:27:44.428] invokeRestart("muffleWarning") [17:27:44.428] } [17:27:44.428] else if (inherits(cond, "condition")) { [17:27:44.428] if (!is.null(pattern)) { [17:27:44.428] computeRestarts <- base::computeRestarts [17:27:44.428] grepl <- base::grepl [17:27:44.428] restarts <- computeRestarts(cond) [17:27:44.428] for (restart in restarts) { [17:27:44.428] name <- restart$name [17:27:44.428] if (is.null(name)) [17:27:44.428] next [17:27:44.428] if (!grepl(pattern, name)) [17:27:44.428] next [17:27:44.428] invokeRestart(restart) [17:27:44.428] muffled <- TRUE [17:27:44.428] break [17:27:44.428] } [17:27:44.428] } [17:27:44.428] } [17:27:44.428] invisible(muffled) [17:27:44.428] } [17:27:44.428] muffleCondition(cond, pattern = "^muffle") [17:27:44.428] } [17:27:44.428] } [17:27:44.428] } [17:27:44.428] })) [17:27:44.428] }, error = function(ex) { [17:27:44.428] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.428] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.428] ...future.rng), started = ...future.startTime, [17:27:44.428] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.428] version = "1.8"), class = "FutureResult") [17:27:44.428] }, finally = { [17:27:44.428] if (!identical(...future.workdir, getwd())) [17:27:44.428] setwd(...future.workdir) [17:27:44.428] { [17:27:44.428] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.428] ...future.oldOptions$nwarnings <- NULL [17:27:44.428] } [17:27:44.428] base::options(...future.oldOptions) [17:27:44.428] if (.Platform$OS.type == "windows") { [17:27:44.428] old_names <- names(...future.oldEnvVars) [17:27:44.428] envs <- base::Sys.getenv() [17:27:44.428] names <- names(envs) [17:27:44.428] common <- intersect(names, old_names) [17:27:44.428] added <- setdiff(names, old_names) [17:27:44.428] removed <- setdiff(old_names, names) [17:27:44.428] changed <- common[...future.oldEnvVars[common] != [17:27:44.428] envs[common]] [17:27:44.428] NAMES <- toupper(changed) [17:27:44.428] args <- list() [17:27:44.428] for (kk in seq_along(NAMES)) { [17:27:44.428] name <- changed[[kk]] [17:27:44.428] NAME <- NAMES[[kk]] [17:27:44.428] if (name != NAME && is.element(NAME, old_names)) [17:27:44.428] next [17:27:44.428] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.428] } [17:27:44.428] NAMES <- toupper(added) [17:27:44.428] for (kk in seq_along(NAMES)) { [17:27:44.428] name <- added[[kk]] [17:27:44.428] NAME <- NAMES[[kk]] [17:27:44.428] if (name != NAME && is.element(NAME, old_names)) [17:27:44.428] next [17:27:44.428] args[[name]] <- "" [17:27:44.428] } [17:27:44.428] NAMES <- toupper(removed) [17:27:44.428] for (kk in seq_along(NAMES)) { [17:27:44.428] name <- removed[[kk]] [17:27:44.428] NAME <- NAMES[[kk]] [17:27:44.428] if (name != NAME && is.element(NAME, old_names)) [17:27:44.428] next [17:27:44.428] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.428] } [17:27:44.428] if (length(args) > 0) [17:27:44.428] base::do.call(base::Sys.setenv, args = args) [17:27:44.428] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.428] } [17:27:44.428] { [17:27:44.428] if (base::length(...future.futureOptionsAdded) > [17:27:44.428] 0L) { [17:27:44.428] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.428] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.428] base::options(opts) [17:27:44.428] } [17:27:44.428] { [17:27:44.428] { [17:27:44.428] NULL [17:27:44.428] RNGkind("Mersenne-Twister") [17:27:44.428] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.428] inherits = FALSE) [17:27:44.428] } [17:27:44.428] options(future.plan = NULL) [17:27:44.428] if (is.na(NA_character_)) [17:27:44.428] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.428] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.428] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.428] .init = FALSE) [17:27:44.428] } [17:27:44.428] } [17:27:44.428] } [17:27:44.428] }) [17:27:44.428] if (TRUE) { [17:27:44.428] base::sink(type = "output", split = FALSE) [17:27:44.428] if (TRUE) { [17:27:44.428] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.428] } [17:27:44.428] else { [17:27:44.428] ...future.result["stdout"] <- base::list(NULL) [17:27:44.428] } [17:27:44.428] base::close(...future.stdout) [17:27:44.428] ...future.stdout <- NULL [17:27:44.428] } [17:27:44.428] ...future.result$conditions <- ...future.conditions [17:27:44.428] ...future.result$finished <- base::Sys.time() [17:27:44.428] ...future.result [17:27:44.428] } [17:27:44.432] plan(): Setting new future strategy stack: [17:27:44.432] List of future strategies: [17:27:44.432] 1. sequential: [17:27:44.432] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.432] - tweaked: FALSE [17:27:44.432] - call: NULL [17:27:44.433] plan(): nbrOfWorkers() = 1 [17:27:44.434] plan(): Setting new future strategy stack: [17:27:44.434] List of future strategies: [17:27:44.434] 1. sequential: [17:27:44.434] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.434] - tweaked: FALSE [17:27:44.434] - call: plan(strategy) [17:27:44.434] plan(): nbrOfWorkers() = 1 [17:27:44.435] SequentialFuture started (and completed) [17:27:44.435] - Launch lazy future ... done [17:27:44.435] run() for 'SequentialFuture' ... done [17:27:44.435] resolved() for 'SequentialFuture' ... [17:27:44.435] - state: 'finished' [17:27:44.436] - run: TRUE [17:27:44.436] - result: 'FutureResult' [17:27:44.436] resolved() for 'SequentialFuture' ... done [17:27:44.436] Future #1 [17:27:44.436] length: 2 (resolved future 1) [17:27:44.437] resolved() for 'SequentialFuture' ... [17:27:44.437] - state: 'finished' [17:27:44.437] - run: TRUE [17:27:44.437] - result: 'FutureResult' [17:27:44.437] resolved() for 'SequentialFuture' ... done [17:27:44.437] Future #2 [17:27:44.438] length: 1 (resolved future 2) [17:27:44.438] length: 0 (resolved future 3) [17:27:44.438] resolve() on list ... DONE [17:27:44.438] resolved() for 'SequentialFuture' ... [17:27:44.438] - state: 'finished' [17:27:44.438] - run: TRUE [17:27:44.439] - result: 'FutureResult' [17:27:44.439] resolved() for 'SequentialFuture' ... done [17:27:44.439] resolved() for 'SequentialFuture' ... [17:27:44.439] - state: 'finished' [17:27:44.439] - run: TRUE [17:27:44.440] - result: 'FutureResult' [17:27:44.440] resolved() for 'SequentialFuture' ... done [17:27:44.440] getGlobalsAndPackages() ... [17:27:44.440] Searching for globals... [17:27:44.440] [17:27:44.441] Searching for globals ... DONE [17:27:44.441] - globals: [0] [17:27:44.441] getGlobalsAndPackages() ... DONE [17:27:44.441] getGlobalsAndPackages() ... [17:27:44.441] Searching for globals... [17:27:44.442] [17:27:44.442] Searching for globals ... DONE [17:27:44.442] - globals: [0] [17:27:44.442] getGlobalsAndPackages() ... DONE [17:27:44.443] resolve() on list ... [17:27:44.443] recursive: 0 [17:27:44.443] length: 3 [17:27:44.443] elements: 'a', 'b', '' [17:27:44.443] run() for 'Future' ... [17:27:44.443] - state: 'created' [17:27:44.444] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.444] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.444] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.444] - Field: 'label' [17:27:44.444] - Field: 'local' [17:27:44.445] - Field: 'owner' [17:27:44.445] - Field: 'envir' [17:27:44.445] - Field: 'packages' [17:27:44.445] - Field: 'gc' [17:27:44.445] - Field: 'conditions' [17:27:44.446] - Field: 'expr' [17:27:44.446] - Field: 'uuid' [17:27:44.446] - Field: 'seed' [17:27:44.446] - Field: 'version' [17:27:44.446] - Field: 'result' [17:27:44.446] - Field: 'asynchronous' [17:27:44.447] - Field: 'calls' [17:27:44.447] - Field: 'globals' [17:27:44.447] - Field: 'stdout' [17:27:44.447] - Field: 'earlySignal' [17:27:44.447] - Field: 'lazy' [17:27:44.447] - Field: 'state' [17:27:44.448] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.448] - Launch lazy future ... [17:27:44.448] Packages needed by the future expression (n = 0): [17:27:44.448] Packages needed by future strategies (n = 0): [17:27:44.449] { [17:27:44.449] { [17:27:44.449] { [17:27:44.449] ...future.startTime <- base::Sys.time() [17:27:44.449] { [17:27:44.449] { [17:27:44.449] { [17:27:44.449] base::local({ [17:27:44.449] has_future <- base::requireNamespace("future", [17:27:44.449] quietly = TRUE) [17:27:44.449] if (has_future) { [17:27:44.449] ns <- base::getNamespace("future") [17:27:44.449] version <- ns[[".package"]][["version"]] [17:27:44.449] if (is.null(version)) [17:27:44.449] version <- utils::packageVersion("future") [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] version <- NULL [17:27:44.449] } [17:27:44.449] if (!has_future || version < "1.8.0") { [17:27:44.449] info <- base::c(r_version = base::gsub("R version ", [17:27:44.449] "", base::R.version$version.string), [17:27:44.449] platform = base::sprintf("%s (%s-bit)", [17:27:44.449] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.449] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.449] "release", "version")], collapse = " "), [17:27:44.449] hostname = base::Sys.info()[["nodename"]]) [17:27:44.449] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.449] info) [17:27:44.449] info <- base::paste(info, collapse = "; ") [17:27:44.449] if (!has_future) { [17:27:44.449] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.449] info) [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.449] info, version) [17:27:44.449] } [17:27:44.449] base::stop(msg) [17:27:44.449] } [17:27:44.449] }) [17:27:44.449] } [17:27:44.449] ...future.strategy.old <- future::plan("list") [17:27:44.449] options(future.plan = NULL) [17:27:44.449] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.449] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.449] } [17:27:44.449] ...future.workdir <- getwd() [17:27:44.449] } [17:27:44.449] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.449] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.449] } [17:27:44.449] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.449] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.449] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.449] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.449] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.449] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.449] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.449] base::names(...future.oldOptions)) [17:27:44.449] } [17:27:44.449] if (FALSE) { [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] if (TRUE) { [17:27:44.449] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.449] open = "w") [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.449] windows = "NUL", "/dev/null"), open = "w") [17:27:44.449] } [17:27:44.449] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.449] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.449] base::sink(type = "output", split = FALSE) [17:27:44.449] base::close(...future.stdout) [17:27:44.449] }, add = TRUE) [17:27:44.449] } [17:27:44.449] ...future.frame <- base::sys.nframe() [17:27:44.449] ...future.conditions <- base::list() [17:27:44.449] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.449] if (FALSE) { [17:27:44.449] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.449] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.449] } [17:27:44.449] ...future.result <- base::tryCatch({ [17:27:44.449] base::withCallingHandlers({ [17:27:44.449] ...future.value <- base::withVisible(base::local(1)) [17:27:44.449] future::FutureResult(value = ...future.value$value, [17:27:44.449] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.449] ...future.rng), globalenv = if (FALSE) [17:27:44.449] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.449] ...future.globalenv.names)) [17:27:44.449] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.449] }, condition = base::local({ [17:27:44.449] c <- base::c [17:27:44.449] inherits <- base::inherits [17:27:44.449] invokeRestart <- base::invokeRestart [17:27:44.449] length <- base::length [17:27:44.449] list <- base::list [17:27:44.449] seq.int <- base::seq.int [17:27:44.449] signalCondition <- base::signalCondition [17:27:44.449] sys.calls <- base::sys.calls [17:27:44.449] `[[` <- base::`[[` [17:27:44.449] `+` <- base::`+` [17:27:44.449] `<<-` <- base::`<<-` [17:27:44.449] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.449] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.449] 3L)] [17:27:44.449] } [17:27:44.449] function(cond) { [17:27:44.449] is_error <- inherits(cond, "error") [17:27:44.449] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.449] NULL) [17:27:44.449] if (is_error) { [17:27:44.449] sessionInformation <- function() { [17:27:44.449] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.449] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.449] search = base::search(), system = base::Sys.info()) [17:27:44.449] } [17:27:44.449] ...future.conditions[[length(...future.conditions) + [17:27:44.449] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.449] cond$call), session = sessionInformation(), [17:27:44.449] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.449] signalCondition(cond) [17:27:44.449] } [17:27:44.449] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.449] "immediateCondition"))) { [17:27:44.449] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.449] ...future.conditions[[length(...future.conditions) + [17:27:44.449] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.449] if (TRUE && !signal) { [17:27:44.449] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.449] { [17:27:44.449] inherits <- base::inherits [17:27:44.449] invokeRestart <- base::invokeRestart [17:27:44.449] is.null <- base::is.null [17:27:44.449] muffled <- FALSE [17:27:44.449] if (inherits(cond, "message")) { [17:27:44.449] muffled <- grepl(pattern, "muffleMessage") [17:27:44.449] if (muffled) [17:27:44.449] invokeRestart("muffleMessage") [17:27:44.449] } [17:27:44.449] else if (inherits(cond, "warning")) { [17:27:44.449] muffled <- grepl(pattern, "muffleWarning") [17:27:44.449] if (muffled) [17:27:44.449] invokeRestart("muffleWarning") [17:27:44.449] } [17:27:44.449] else if (inherits(cond, "condition")) { [17:27:44.449] if (!is.null(pattern)) { [17:27:44.449] computeRestarts <- base::computeRestarts [17:27:44.449] grepl <- base::grepl [17:27:44.449] restarts <- computeRestarts(cond) [17:27:44.449] for (restart in restarts) { [17:27:44.449] name <- restart$name [17:27:44.449] if (is.null(name)) [17:27:44.449] next [17:27:44.449] if (!grepl(pattern, name)) [17:27:44.449] next [17:27:44.449] invokeRestart(restart) [17:27:44.449] muffled <- TRUE [17:27:44.449] break [17:27:44.449] } [17:27:44.449] } [17:27:44.449] } [17:27:44.449] invisible(muffled) [17:27:44.449] } [17:27:44.449] muffleCondition(cond, pattern = "^muffle") [17:27:44.449] } [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] if (TRUE) { [17:27:44.449] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.449] { [17:27:44.449] inherits <- base::inherits [17:27:44.449] invokeRestart <- base::invokeRestart [17:27:44.449] is.null <- base::is.null [17:27:44.449] muffled <- FALSE [17:27:44.449] if (inherits(cond, "message")) { [17:27:44.449] muffled <- grepl(pattern, "muffleMessage") [17:27:44.449] if (muffled) [17:27:44.449] invokeRestart("muffleMessage") [17:27:44.449] } [17:27:44.449] else if (inherits(cond, "warning")) { [17:27:44.449] muffled <- grepl(pattern, "muffleWarning") [17:27:44.449] if (muffled) [17:27:44.449] invokeRestart("muffleWarning") [17:27:44.449] } [17:27:44.449] else if (inherits(cond, "condition")) { [17:27:44.449] if (!is.null(pattern)) { [17:27:44.449] computeRestarts <- base::computeRestarts [17:27:44.449] grepl <- base::grepl [17:27:44.449] restarts <- computeRestarts(cond) [17:27:44.449] for (restart in restarts) { [17:27:44.449] name <- restart$name [17:27:44.449] if (is.null(name)) [17:27:44.449] next [17:27:44.449] if (!grepl(pattern, name)) [17:27:44.449] next [17:27:44.449] invokeRestart(restart) [17:27:44.449] muffled <- TRUE [17:27:44.449] break [17:27:44.449] } [17:27:44.449] } [17:27:44.449] } [17:27:44.449] invisible(muffled) [17:27:44.449] } [17:27:44.449] muffleCondition(cond, pattern = "^muffle") [17:27:44.449] } [17:27:44.449] } [17:27:44.449] } [17:27:44.449] })) [17:27:44.449] }, error = function(ex) { [17:27:44.449] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.449] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.449] ...future.rng), started = ...future.startTime, [17:27:44.449] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.449] version = "1.8"), class = "FutureResult") [17:27:44.449] }, finally = { [17:27:44.449] if (!identical(...future.workdir, getwd())) [17:27:44.449] setwd(...future.workdir) [17:27:44.449] { [17:27:44.449] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.449] ...future.oldOptions$nwarnings <- NULL [17:27:44.449] } [17:27:44.449] base::options(...future.oldOptions) [17:27:44.449] if (.Platform$OS.type == "windows") { [17:27:44.449] old_names <- names(...future.oldEnvVars) [17:27:44.449] envs <- base::Sys.getenv() [17:27:44.449] names <- names(envs) [17:27:44.449] common <- intersect(names, old_names) [17:27:44.449] added <- setdiff(names, old_names) [17:27:44.449] removed <- setdiff(old_names, names) [17:27:44.449] changed <- common[...future.oldEnvVars[common] != [17:27:44.449] envs[common]] [17:27:44.449] NAMES <- toupper(changed) [17:27:44.449] args <- list() [17:27:44.449] for (kk in seq_along(NAMES)) { [17:27:44.449] name <- changed[[kk]] [17:27:44.449] NAME <- NAMES[[kk]] [17:27:44.449] if (name != NAME && is.element(NAME, old_names)) [17:27:44.449] next [17:27:44.449] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.449] } [17:27:44.449] NAMES <- toupper(added) [17:27:44.449] for (kk in seq_along(NAMES)) { [17:27:44.449] name <- added[[kk]] [17:27:44.449] NAME <- NAMES[[kk]] [17:27:44.449] if (name != NAME && is.element(NAME, old_names)) [17:27:44.449] next [17:27:44.449] args[[name]] <- "" [17:27:44.449] } [17:27:44.449] NAMES <- toupper(removed) [17:27:44.449] for (kk in seq_along(NAMES)) { [17:27:44.449] name <- removed[[kk]] [17:27:44.449] NAME <- NAMES[[kk]] [17:27:44.449] if (name != NAME && is.element(NAME, old_names)) [17:27:44.449] next [17:27:44.449] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.449] } [17:27:44.449] if (length(args) > 0) [17:27:44.449] base::do.call(base::Sys.setenv, args = args) [17:27:44.449] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.449] } [17:27:44.449] { [17:27:44.449] if (base::length(...future.futureOptionsAdded) > [17:27:44.449] 0L) { [17:27:44.449] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.449] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.449] base::options(opts) [17:27:44.449] } [17:27:44.449] { [17:27:44.449] { [17:27:44.449] NULL [17:27:44.449] RNGkind("Mersenne-Twister") [17:27:44.449] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.449] inherits = FALSE) [17:27:44.449] } [17:27:44.449] options(future.plan = NULL) [17:27:44.449] if (is.na(NA_character_)) [17:27:44.449] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.449] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.449] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.449] .init = FALSE) [17:27:44.449] } [17:27:44.449] } [17:27:44.449] } [17:27:44.449] }) [17:27:44.449] if (TRUE) { [17:27:44.449] base::sink(type = "output", split = FALSE) [17:27:44.449] if (TRUE) { [17:27:44.449] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.449] } [17:27:44.449] else { [17:27:44.449] ...future.result["stdout"] <- base::list(NULL) [17:27:44.449] } [17:27:44.449] base::close(...future.stdout) [17:27:44.449] ...future.stdout <- NULL [17:27:44.449] } [17:27:44.449] ...future.result$conditions <- ...future.conditions [17:27:44.449] ...future.result$finished <- base::Sys.time() [17:27:44.449] ...future.result [17:27:44.449] } [17:27:44.453] plan(): Setting new future strategy stack: [17:27:44.453] List of future strategies: [17:27:44.453] 1. sequential: [17:27:44.453] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.453] - tweaked: FALSE [17:27:44.453] - call: NULL [17:27:44.453] plan(): nbrOfWorkers() = 1 [17:27:44.454] plan(): Setting new future strategy stack: [17:27:44.455] List of future strategies: [17:27:44.455] 1. sequential: [17:27:44.455] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.455] - tweaked: FALSE [17:27:44.455] - call: plan(strategy) [17:27:44.455] plan(): nbrOfWorkers() = 1 [17:27:44.456] SequentialFuture started (and completed) [17:27:44.456] - Launch lazy future ... done [17:27:44.456] run() for 'SequentialFuture' ... done [17:27:44.456] resolved() for 'SequentialFuture' ... [17:27:44.456] - state: 'finished' [17:27:44.456] - run: TRUE [17:27:44.457] - result: 'FutureResult' [17:27:44.457] resolved() for 'SequentialFuture' ... done [17:27:44.457] Future #1 [17:27:44.457] length: 2 (resolved future 1) [17:27:44.457] run() for 'Future' ... [17:27:44.458] - state: 'created' [17:27:44.458] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.458] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.458] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.458] - Field: 'label' [17:27:44.459] - Field: 'local' [17:27:44.459] - Field: 'owner' [17:27:44.459] - Field: 'envir' [17:27:44.459] - Field: 'packages' [17:27:44.459] - Field: 'gc' [17:27:44.460] - Field: 'conditions' [17:27:44.460] - Field: 'expr' [17:27:44.460] - Field: 'uuid' [17:27:44.460] - Field: 'seed' [17:27:44.460] - Field: 'version' [17:27:44.460] - Field: 'result' [17:27:44.461] - Field: 'asynchronous' [17:27:44.461] - Field: 'calls' [17:27:44.461] - Field: 'globals' [17:27:44.461] - Field: 'stdout' [17:27:44.461] - Field: 'earlySignal' [17:27:44.461] - Field: 'lazy' [17:27:44.462] - Field: 'state' [17:27:44.462] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.462] - Launch lazy future ... [17:27:44.463] Packages needed by the future expression (n = 0): [17:27:44.463] Packages needed by future strategies (n = 0): [17:27:44.464] { [17:27:44.464] { [17:27:44.464] { [17:27:44.464] ...future.startTime <- base::Sys.time() [17:27:44.464] { [17:27:44.464] { [17:27:44.464] { [17:27:44.464] base::local({ [17:27:44.464] has_future <- base::requireNamespace("future", [17:27:44.464] quietly = TRUE) [17:27:44.464] if (has_future) { [17:27:44.464] ns <- base::getNamespace("future") [17:27:44.464] version <- ns[[".package"]][["version"]] [17:27:44.464] if (is.null(version)) [17:27:44.464] version <- utils::packageVersion("future") [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] version <- NULL [17:27:44.464] } [17:27:44.464] if (!has_future || version < "1.8.0") { [17:27:44.464] info <- base::c(r_version = base::gsub("R version ", [17:27:44.464] "", base::R.version$version.string), [17:27:44.464] platform = base::sprintf("%s (%s-bit)", [17:27:44.464] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.464] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.464] "release", "version")], collapse = " "), [17:27:44.464] hostname = base::Sys.info()[["nodename"]]) [17:27:44.464] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.464] info) [17:27:44.464] info <- base::paste(info, collapse = "; ") [17:27:44.464] if (!has_future) { [17:27:44.464] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.464] info) [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.464] info, version) [17:27:44.464] } [17:27:44.464] base::stop(msg) [17:27:44.464] } [17:27:44.464] }) [17:27:44.464] } [17:27:44.464] ...future.strategy.old <- future::plan("list") [17:27:44.464] options(future.plan = NULL) [17:27:44.464] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.464] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.464] } [17:27:44.464] ...future.workdir <- getwd() [17:27:44.464] } [17:27:44.464] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.464] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.464] } [17:27:44.464] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.464] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.464] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.464] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.464] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.464] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.464] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.464] base::names(...future.oldOptions)) [17:27:44.464] } [17:27:44.464] if (FALSE) { [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] if (TRUE) { [17:27:44.464] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.464] open = "w") [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.464] windows = "NUL", "/dev/null"), open = "w") [17:27:44.464] } [17:27:44.464] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.464] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.464] base::sink(type = "output", split = FALSE) [17:27:44.464] base::close(...future.stdout) [17:27:44.464] }, add = TRUE) [17:27:44.464] } [17:27:44.464] ...future.frame <- base::sys.nframe() [17:27:44.464] ...future.conditions <- base::list() [17:27:44.464] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.464] if (FALSE) { [17:27:44.464] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.464] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.464] } [17:27:44.464] ...future.result <- base::tryCatch({ [17:27:44.464] base::withCallingHandlers({ [17:27:44.464] ...future.value <- base::withVisible(base::local(2)) [17:27:44.464] future::FutureResult(value = ...future.value$value, [17:27:44.464] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.464] ...future.rng), globalenv = if (FALSE) [17:27:44.464] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.464] ...future.globalenv.names)) [17:27:44.464] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.464] }, condition = base::local({ [17:27:44.464] c <- base::c [17:27:44.464] inherits <- base::inherits [17:27:44.464] invokeRestart <- base::invokeRestart [17:27:44.464] length <- base::length [17:27:44.464] list <- base::list [17:27:44.464] seq.int <- base::seq.int [17:27:44.464] signalCondition <- base::signalCondition [17:27:44.464] sys.calls <- base::sys.calls [17:27:44.464] `[[` <- base::`[[` [17:27:44.464] `+` <- base::`+` [17:27:44.464] `<<-` <- base::`<<-` [17:27:44.464] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.464] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.464] 3L)] [17:27:44.464] } [17:27:44.464] function(cond) { [17:27:44.464] is_error <- inherits(cond, "error") [17:27:44.464] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.464] NULL) [17:27:44.464] if (is_error) { [17:27:44.464] sessionInformation <- function() { [17:27:44.464] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.464] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.464] search = base::search(), system = base::Sys.info()) [17:27:44.464] } [17:27:44.464] ...future.conditions[[length(...future.conditions) + [17:27:44.464] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.464] cond$call), session = sessionInformation(), [17:27:44.464] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.464] signalCondition(cond) [17:27:44.464] } [17:27:44.464] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.464] "immediateCondition"))) { [17:27:44.464] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.464] ...future.conditions[[length(...future.conditions) + [17:27:44.464] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.464] if (TRUE && !signal) { [17:27:44.464] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.464] { [17:27:44.464] inherits <- base::inherits [17:27:44.464] invokeRestart <- base::invokeRestart [17:27:44.464] is.null <- base::is.null [17:27:44.464] muffled <- FALSE [17:27:44.464] if (inherits(cond, "message")) { [17:27:44.464] muffled <- grepl(pattern, "muffleMessage") [17:27:44.464] if (muffled) [17:27:44.464] invokeRestart("muffleMessage") [17:27:44.464] } [17:27:44.464] else if (inherits(cond, "warning")) { [17:27:44.464] muffled <- grepl(pattern, "muffleWarning") [17:27:44.464] if (muffled) [17:27:44.464] invokeRestart("muffleWarning") [17:27:44.464] } [17:27:44.464] else if (inherits(cond, "condition")) { [17:27:44.464] if (!is.null(pattern)) { [17:27:44.464] computeRestarts <- base::computeRestarts [17:27:44.464] grepl <- base::grepl [17:27:44.464] restarts <- computeRestarts(cond) [17:27:44.464] for (restart in restarts) { [17:27:44.464] name <- restart$name [17:27:44.464] if (is.null(name)) [17:27:44.464] next [17:27:44.464] if (!grepl(pattern, name)) [17:27:44.464] next [17:27:44.464] invokeRestart(restart) [17:27:44.464] muffled <- TRUE [17:27:44.464] break [17:27:44.464] } [17:27:44.464] } [17:27:44.464] } [17:27:44.464] invisible(muffled) [17:27:44.464] } [17:27:44.464] muffleCondition(cond, pattern = "^muffle") [17:27:44.464] } [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] if (TRUE) { [17:27:44.464] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.464] { [17:27:44.464] inherits <- base::inherits [17:27:44.464] invokeRestart <- base::invokeRestart [17:27:44.464] is.null <- base::is.null [17:27:44.464] muffled <- FALSE [17:27:44.464] if (inherits(cond, "message")) { [17:27:44.464] muffled <- grepl(pattern, "muffleMessage") [17:27:44.464] if (muffled) [17:27:44.464] invokeRestart("muffleMessage") [17:27:44.464] } [17:27:44.464] else if (inherits(cond, "warning")) { [17:27:44.464] muffled <- grepl(pattern, "muffleWarning") [17:27:44.464] if (muffled) [17:27:44.464] invokeRestart("muffleWarning") [17:27:44.464] } [17:27:44.464] else if (inherits(cond, "condition")) { [17:27:44.464] if (!is.null(pattern)) { [17:27:44.464] computeRestarts <- base::computeRestarts [17:27:44.464] grepl <- base::grepl [17:27:44.464] restarts <- computeRestarts(cond) [17:27:44.464] for (restart in restarts) { [17:27:44.464] name <- restart$name [17:27:44.464] if (is.null(name)) [17:27:44.464] next [17:27:44.464] if (!grepl(pattern, name)) [17:27:44.464] next [17:27:44.464] invokeRestart(restart) [17:27:44.464] muffled <- TRUE [17:27:44.464] break [17:27:44.464] } [17:27:44.464] } [17:27:44.464] } [17:27:44.464] invisible(muffled) [17:27:44.464] } [17:27:44.464] muffleCondition(cond, pattern = "^muffle") [17:27:44.464] } [17:27:44.464] } [17:27:44.464] } [17:27:44.464] })) [17:27:44.464] }, error = function(ex) { [17:27:44.464] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.464] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.464] ...future.rng), started = ...future.startTime, [17:27:44.464] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.464] version = "1.8"), class = "FutureResult") [17:27:44.464] }, finally = { [17:27:44.464] if (!identical(...future.workdir, getwd())) [17:27:44.464] setwd(...future.workdir) [17:27:44.464] { [17:27:44.464] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.464] ...future.oldOptions$nwarnings <- NULL [17:27:44.464] } [17:27:44.464] base::options(...future.oldOptions) [17:27:44.464] if (.Platform$OS.type == "windows") { [17:27:44.464] old_names <- names(...future.oldEnvVars) [17:27:44.464] envs <- base::Sys.getenv() [17:27:44.464] names <- names(envs) [17:27:44.464] common <- intersect(names, old_names) [17:27:44.464] added <- setdiff(names, old_names) [17:27:44.464] removed <- setdiff(old_names, names) [17:27:44.464] changed <- common[...future.oldEnvVars[common] != [17:27:44.464] envs[common]] [17:27:44.464] NAMES <- toupper(changed) [17:27:44.464] args <- list() [17:27:44.464] for (kk in seq_along(NAMES)) { [17:27:44.464] name <- changed[[kk]] [17:27:44.464] NAME <- NAMES[[kk]] [17:27:44.464] if (name != NAME && is.element(NAME, old_names)) [17:27:44.464] next [17:27:44.464] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.464] } [17:27:44.464] NAMES <- toupper(added) [17:27:44.464] for (kk in seq_along(NAMES)) { [17:27:44.464] name <- added[[kk]] [17:27:44.464] NAME <- NAMES[[kk]] [17:27:44.464] if (name != NAME && is.element(NAME, old_names)) [17:27:44.464] next [17:27:44.464] args[[name]] <- "" [17:27:44.464] } [17:27:44.464] NAMES <- toupper(removed) [17:27:44.464] for (kk in seq_along(NAMES)) { [17:27:44.464] name <- removed[[kk]] [17:27:44.464] NAME <- NAMES[[kk]] [17:27:44.464] if (name != NAME && is.element(NAME, old_names)) [17:27:44.464] next [17:27:44.464] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.464] } [17:27:44.464] if (length(args) > 0) [17:27:44.464] base::do.call(base::Sys.setenv, args = args) [17:27:44.464] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.464] } [17:27:44.464] { [17:27:44.464] if (base::length(...future.futureOptionsAdded) > [17:27:44.464] 0L) { [17:27:44.464] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.464] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.464] base::options(opts) [17:27:44.464] } [17:27:44.464] { [17:27:44.464] { [17:27:44.464] NULL [17:27:44.464] RNGkind("Mersenne-Twister") [17:27:44.464] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.464] inherits = FALSE) [17:27:44.464] } [17:27:44.464] options(future.plan = NULL) [17:27:44.464] if (is.na(NA_character_)) [17:27:44.464] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.464] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.464] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.464] .init = FALSE) [17:27:44.464] } [17:27:44.464] } [17:27:44.464] } [17:27:44.464] }) [17:27:44.464] if (TRUE) { [17:27:44.464] base::sink(type = "output", split = FALSE) [17:27:44.464] if (TRUE) { [17:27:44.464] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.464] } [17:27:44.464] else { [17:27:44.464] ...future.result["stdout"] <- base::list(NULL) [17:27:44.464] } [17:27:44.464] base::close(...future.stdout) [17:27:44.464] ...future.stdout <- NULL [17:27:44.464] } [17:27:44.464] ...future.result$conditions <- ...future.conditions [17:27:44.464] ...future.result$finished <- base::Sys.time() [17:27:44.464] ...future.result [17:27:44.464] } [17:27:44.468] plan(): Setting new future strategy stack: [17:27:44.468] List of future strategies: [17:27:44.468] 1. sequential: [17:27:44.468] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.468] - tweaked: FALSE [17:27:44.468] - call: NULL [17:27:44.468] plan(): nbrOfWorkers() = 1 [17:27:44.470] plan(): Setting new future strategy stack: [17:27:44.470] List of future strategies: [17:27:44.470] 1. sequential: [17:27:44.470] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.470] - tweaked: FALSE [17:27:44.470] - call: plan(strategy) [17:27:44.470] plan(): nbrOfWorkers() = 1 [17:27:44.471] SequentialFuture started (and completed) [17:27:44.471] - Launch lazy future ... done [17:27:44.471] run() for 'SequentialFuture' ... done [17:27:44.471] resolved() for 'SequentialFuture' ... [17:27:44.471] - state: 'finished' [17:27:44.471] - run: TRUE [17:27:44.472] - result: 'FutureResult' [17:27:44.472] resolved() for 'SequentialFuture' ... done [17:27:44.472] Future #2 [17:27:44.472] length: 1 (resolved future 2) [17:27:44.472] length: 0 (resolved future 3) [17:27:44.473] resolve() on list ... DONE [17:27:44.473] resolved() for 'SequentialFuture' ... [17:27:44.473] - state: 'finished' [17:27:44.473] - run: TRUE [17:27:44.473] - result: 'FutureResult' [17:27:44.473] resolved() for 'SequentialFuture' ... done [17:27:44.474] resolved() for 'SequentialFuture' ... [17:27:44.474] - state: 'finished' [17:27:44.474] - run: TRUE [17:27:44.474] - result: 'FutureResult' [17:27:44.474] resolved() for 'SequentialFuture' ... done [17:27:44.475] getGlobalsAndPackages() ... [17:27:44.475] Searching for globals... [17:27:44.475] [17:27:44.475] Searching for globals ... DONE [17:27:44.475] - globals: [0] [17:27:44.476] getGlobalsAndPackages() ... DONE [17:27:44.476] run() for 'Future' ... [17:27:44.476] - state: 'created' [17:27:44.476] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.477] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.477] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.477] - Field: 'label' [17:27:44.477] - Field: 'local' [17:27:44.477] - Field: 'owner' [17:27:44.477] - Field: 'envir' [17:27:44.478] - Field: 'packages' [17:27:44.478] - Field: 'gc' [17:27:44.478] - Field: 'conditions' [17:27:44.478] - Field: 'expr' [17:27:44.478] - Field: 'uuid' [17:27:44.478] - Field: 'seed' [17:27:44.479] - Field: 'version' [17:27:44.479] - Field: 'result' [17:27:44.479] - Field: 'asynchronous' [17:27:44.479] - Field: 'calls' [17:27:44.479] - Field: 'globals' [17:27:44.479] - Field: 'stdout' [17:27:44.480] - Field: 'earlySignal' [17:27:44.480] - Field: 'lazy' [17:27:44.480] - Field: 'state' [17:27:44.480] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.480] - Launch lazy future ... [17:27:44.481] Packages needed by the future expression (n = 0): [17:27:44.481] Packages needed by future strategies (n = 0): [17:27:44.481] { [17:27:44.481] { [17:27:44.481] { [17:27:44.481] ...future.startTime <- base::Sys.time() [17:27:44.481] { [17:27:44.481] { [17:27:44.481] { [17:27:44.481] base::local({ [17:27:44.481] has_future <- base::requireNamespace("future", [17:27:44.481] quietly = TRUE) [17:27:44.481] if (has_future) { [17:27:44.481] ns <- base::getNamespace("future") [17:27:44.481] version <- ns[[".package"]][["version"]] [17:27:44.481] if (is.null(version)) [17:27:44.481] version <- utils::packageVersion("future") [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] version <- NULL [17:27:44.481] } [17:27:44.481] if (!has_future || version < "1.8.0") { [17:27:44.481] info <- base::c(r_version = base::gsub("R version ", [17:27:44.481] "", base::R.version$version.string), [17:27:44.481] platform = base::sprintf("%s (%s-bit)", [17:27:44.481] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.481] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.481] "release", "version")], collapse = " "), [17:27:44.481] hostname = base::Sys.info()[["nodename"]]) [17:27:44.481] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.481] info) [17:27:44.481] info <- base::paste(info, collapse = "; ") [17:27:44.481] if (!has_future) { [17:27:44.481] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.481] info) [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.481] info, version) [17:27:44.481] } [17:27:44.481] base::stop(msg) [17:27:44.481] } [17:27:44.481] }) [17:27:44.481] } [17:27:44.481] ...future.strategy.old <- future::plan("list") [17:27:44.481] options(future.plan = NULL) [17:27:44.481] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.481] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.481] } [17:27:44.481] ...future.workdir <- getwd() [17:27:44.481] } [17:27:44.481] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.481] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.481] } [17:27:44.481] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.481] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.481] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.481] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.481] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.481] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.481] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.481] base::names(...future.oldOptions)) [17:27:44.481] } [17:27:44.481] if (FALSE) { [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] if (TRUE) { [17:27:44.481] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.481] open = "w") [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.481] windows = "NUL", "/dev/null"), open = "w") [17:27:44.481] } [17:27:44.481] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.481] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.481] base::sink(type = "output", split = FALSE) [17:27:44.481] base::close(...future.stdout) [17:27:44.481] }, add = TRUE) [17:27:44.481] } [17:27:44.481] ...future.frame <- base::sys.nframe() [17:27:44.481] ...future.conditions <- base::list() [17:27:44.481] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.481] if (FALSE) { [17:27:44.481] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.481] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.481] } [17:27:44.481] ...future.result <- base::tryCatch({ [17:27:44.481] base::withCallingHandlers({ [17:27:44.481] ...future.value <- base::withVisible(base::local(1)) [17:27:44.481] future::FutureResult(value = ...future.value$value, [17:27:44.481] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.481] ...future.rng), globalenv = if (FALSE) [17:27:44.481] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.481] ...future.globalenv.names)) [17:27:44.481] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.481] }, condition = base::local({ [17:27:44.481] c <- base::c [17:27:44.481] inherits <- base::inherits [17:27:44.481] invokeRestart <- base::invokeRestart [17:27:44.481] length <- base::length [17:27:44.481] list <- base::list [17:27:44.481] seq.int <- base::seq.int [17:27:44.481] signalCondition <- base::signalCondition [17:27:44.481] sys.calls <- base::sys.calls [17:27:44.481] `[[` <- base::`[[` [17:27:44.481] `+` <- base::`+` [17:27:44.481] `<<-` <- base::`<<-` [17:27:44.481] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.481] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.481] 3L)] [17:27:44.481] } [17:27:44.481] function(cond) { [17:27:44.481] is_error <- inherits(cond, "error") [17:27:44.481] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.481] NULL) [17:27:44.481] if (is_error) { [17:27:44.481] sessionInformation <- function() { [17:27:44.481] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.481] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.481] search = base::search(), system = base::Sys.info()) [17:27:44.481] } [17:27:44.481] ...future.conditions[[length(...future.conditions) + [17:27:44.481] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.481] cond$call), session = sessionInformation(), [17:27:44.481] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.481] signalCondition(cond) [17:27:44.481] } [17:27:44.481] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.481] "immediateCondition"))) { [17:27:44.481] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.481] ...future.conditions[[length(...future.conditions) + [17:27:44.481] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.481] if (TRUE && !signal) { [17:27:44.481] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.481] { [17:27:44.481] inherits <- base::inherits [17:27:44.481] invokeRestart <- base::invokeRestart [17:27:44.481] is.null <- base::is.null [17:27:44.481] muffled <- FALSE [17:27:44.481] if (inherits(cond, "message")) { [17:27:44.481] muffled <- grepl(pattern, "muffleMessage") [17:27:44.481] if (muffled) [17:27:44.481] invokeRestart("muffleMessage") [17:27:44.481] } [17:27:44.481] else if (inherits(cond, "warning")) { [17:27:44.481] muffled <- grepl(pattern, "muffleWarning") [17:27:44.481] if (muffled) [17:27:44.481] invokeRestart("muffleWarning") [17:27:44.481] } [17:27:44.481] else if (inherits(cond, "condition")) { [17:27:44.481] if (!is.null(pattern)) { [17:27:44.481] computeRestarts <- base::computeRestarts [17:27:44.481] grepl <- base::grepl [17:27:44.481] restarts <- computeRestarts(cond) [17:27:44.481] for (restart in restarts) { [17:27:44.481] name <- restart$name [17:27:44.481] if (is.null(name)) [17:27:44.481] next [17:27:44.481] if (!grepl(pattern, name)) [17:27:44.481] next [17:27:44.481] invokeRestart(restart) [17:27:44.481] muffled <- TRUE [17:27:44.481] break [17:27:44.481] } [17:27:44.481] } [17:27:44.481] } [17:27:44.481] invisible(muffled) [17:27:44.481] } [17:27:44.481] muffleCondition(cond, pattern = "^muffle") [17:27:44.481] } [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] if (TRUE) { [17:27:44.481] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.481] { [17:27:44.481] inherits <- base::inherits [17:27:44.481] invokeRestart <- base::invokeRestart [17:27:44.481] is.null <- base::is.null [17:27:44.481] muffled <- FALSE [17:27:44.481] if (inherits(cond, "message")) { [17:27:44.481] muffled <- grepl(pattern, "muffleMessage") [17:27:44.481] if (muffled) [17:27:44.481] invokeRestart("muffleMessage") [17:27:44.481] } [17:27:44.481] else if (inherits(cond, "warning")) { [17:27:44.481] muffled <- grepl(pattern, "muffleWarning") [17:27:44.481] if (muffled) [17:27:44.481] invokeRestart("muffleWarning") [17:27:44.481] } [17:27:44.481] else if (inherits(cond, "condition")) { [17:27:44.481] if (!is.null(pattern)) { [17:27:44.481] computeRestarts <- base::computeRestarts [17:27:44.481] grepl <- base::grepl [17:27:44.481] restarts <- computeRestarts(cond) [17:27:44.481] for (restart in restarts) { [17:27:44.481] name <- restart$name [17:27:44.481] if (is.null(name)) [17:27:44.481] next [17:27:44.481] if (!grepl(pattern, name)) [17:27:44.481] next [17:27:44.481] invokeRestart(restart) [17:27:44.481] muffled <- TRUE [17:27:44.481] break [17:27:44.481] } [17:27:44.481] } [17:27:44.481] } [17:27:44.481] invisible(muffled) [17:27:44.481] } [17:27:44.481] muffleCondition(cond, pattern = "^muffle") [17:27:44.481] } [17:27:44.481] } [17:27:44.481] } [17:27:44.481] })) [17:27:44.481] }, error = function(ex) { [17:27:44.481] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.481] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.481] ...future.rng), started = ...future.startTime, [17:27:44.481] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.481] version = "1.8"), class = "FutureResult") [17:27:44.481] }, finally = { [17:27:44.481] if (!identical(...future.workdir, getwd())) [17:27:44.481] setwd(...future.workdir) [17:27:44.481] { [17:27:44.481] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.481] ...future.oldOptions$nwarnings <- NULL [17:27:44.481] } [17:27:44.481] base::options(...future.oldOptions) [17:27:44.481] if (.Platform$OS.type == "windows") { [17:27:44.481] old_names <- names(...future.oldEnvVars) [17:27:44.481] envs <- base::Sys.getenv() [17:27:44.481] names <- names(envs) [17:27:44.481] common <- intersect(names, old_names) [17:27:44.481] added <- setdiff(names, old_names) [17:27:44.481] removed <- setdiff(old_names, names) [17:27:44.481] changed <- common[...future.oldEnvVars[common] != [17:27:44.481] envs[common]] [17:27:44.481] NAMES <- toupper(changed) [17:27:44.481] args <- list() [17:27:44.481] for (kk in seq_along(NAMES)) { [17:27:44.481] name <- changed[[kk]] [17:27:44.481] NAME <- NAMES[[kk]] [17:27:44.481] if (name != NAME && is.element(NAME, old_names)) [17:27:44.481] next [17:27:44.481] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.481] } [17:27:44.481] NAMES <- toupper(added) [17:27:44.481] for (kk in seq_along(NAMES)) { [17:27:44.481] name <- added[[kk]] [17:27:44.481] NAME <- NAMES[[kk]] [17:27:44.481] if (name != NAME && is.element(NAME, old_names)) [17:27:44.481] next [17:27:44.481] args[[name]] <- "" [17:27:44.481] } [17:27:44.481] NAMES <- toupper(removed) [17:27:44.481] for (kk in seq_along(NAMES)) { [17:27:44.481] name <- removed[[kk]] [17:27:44.481] NAME <- NAMES[[kk]] [17:27:44.481] if (name != NAME && is.element(NAME, old_names)) [17:27:44.481] next [17:27:44.481] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.481] } [17:27:44.481] if (length(args) > 0) [17:27:44.481] base::do.call(base::Sys.setenv, args = args) [17:27:44.481] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.481] } [17:27:44.481] { [17:27:44.481] if (base::length(...future.futureOptionsAdded) > [17:27:44.481] 0L) { [17:27:44.481] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.481] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.481] base::options(opts) [17:27:44.481] } [17:27:44.481] { [17:27:44.481] { [17:27:44.481] NULL [17:27:44.481] RNGkind("Mersenne-Twister") [17:27:44.481] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.481] inherits = FALSE) [17:27:44.481] } [17:27:44.481] options(future.plan = NULL) [17:27:44.481] if (is.na(NA_character_)) [17:27:44.481] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.481] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.481] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.481] .init = FALSE) [17:27:44.481] } [17:27:44.481] } [17:27:44.481] } [17:27:44.481] }) [17:27:44.481] if (TRUE) { [17:27:44.481] base::sink(type = "output", split = FALSE) [17:27:44.481] if (TRUE) { [17:27:44.481] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.481] } [17:27:44.481] else { [17:27:44.481] ...future.result["stdout"] <- base::list(NULL) [17:27:44.481] } [17:27:44.481] base::close(...future.stdout) [17:27:44.481] ...future.stdout <- NULL [17:27:44.481] } [17:27:44.481] ...future.result$conditions <- ...future.conditions [17:27:44.481] ...future.result$finished <- base::Sys.time() [17:27:44.481] ...future.result [17:27:44.481] } [17:27:44.485] plan(): Setting new future strategy stack: [17:27:44.485] List of future strategies: [17:27:44.485] 1. sequential: [17:27:44.485] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.485] - tweaked: FALSE [17:27:44.485] - call: NULL [17:27:44.486] plan(): nbrOfWorkers() = 1 [17:27:44.487] plan(): Setting new future strategy stack: [17:27:44.487] List of future strategies: [17:27:44.487] 1. sequential: [17:27:44.487] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.487] - tweaked: FALSE [17:27:44.487] - call: plan(strategy) [17:27:44.488] plan(): nbrOfWorkers() = 1 [17:27:44.488] SequentialFuture started (and completed) [17:27:44.488] - Launch lazy future ... done [17:27:44.488] run() for 'SequentialFuture' ... done [17:27:44.489] getGlobalsAndPackages() ... [17:27:44.489] Searching for globals... [17:27:44.494] - globals found: [2] '{', 'Sys.sleep' [17:27:44.494] Searching for globals ... DONE [17:27:44.494] Resolving globals: FALSE [17:27:44.495] [17:27:44.495] [17:27:44.495] getGlobalsAndPackages() ... DONE [17:27:44.495] run() for 'Future' ... [17:27:44.496] - state: 'created' [17:27:44.496] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:44.496] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:44.496] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:44.496] - Field: 'label' [17:27:44.497] - Field: 'local' [17:27:44.497] - Field: 'owner' [17:27:44.497] - Field: 'envir' [17:27:44.497] - Field: 'packages' [17:27:44.497] - Field: 'gc' [17:27:44.497] - Field: 'conditions' [17:27:44.498] - Field: 'expr' [17:27:44.498] - Field: 'uuid' [17:27:44.498] - Field: 'seed' [17:27:44.498] - Field: 'version' [17:27:44.498] - Field: 'result' [17:27:44.498] - Field: 'asynchronous' [17:27:44.499] - Field: 'calls' [17:27:44.499] - Field: 'globals' [17:27:44.499] - Field: 'stdout' [17:27:44.499] - Field: 'earlySignal' [17:27:44.499] - Field: 'lazy' [17:27:44.499] - Field: 'state' [17:27:44.500] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:44.500] - Launch lazy future ... [17:27:44.500] Packages needed by the future expression (n = 0): [17:27:44.500] Packages needed by future strategies (n = 0): [17:27:44.501] { [17:27:44.501] { [17:27:44.501] { [17:27:44.501] ...future.startTime <- base::Sys.time() [17:27:44.501] { [17:27:44.501] { [17:27:44.501] { [17:27:44.501] base::local({ [17:27:44.501] has_future <- base::requireNamespace("future", [17:27:44.501] quietly = TRUE) [17:27:44.501] if (has_future) { [17:27:44.501] ns <- base::getNamespace("future") [17:27:44.501] version <- ns[[".package"]][["version"]] [17:27:44.501] if (is.null(version)) [17:27:44.501] version <- utils::packageVersion("future") [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] version <- NULL [17:27:44.501] } [17:27:44.501] if (!has_future || version < "1.8.0") { [17:27:44.501] info <- base::c(r_version = base::gsub("R version ", [17:27:44.501] "", base::R.version$version.string), [17:27:44.501] platform = base::sprintf("%s (%s-bit)", [17:27:44.501] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:44.501] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:44.501] "release", "version")], collapse = " "), [17:27:44.501] hostname = base::Sys.info()[["nodename"]]) [17:27:44.501] info <- base::sprintf("%s: %s", base::names(info), [17:27:44.501] info) [17:27:44.501] info <- base::paste(info, collapse = "; ") [17:27:44.501] if (!has_future) { [17:27:44.501] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:44.501] info) [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:44.501] info, version) [17:27:44.501] } [17:27:44.501] base::stop(msg) [17:27:44.501] } [17:27:44.501] }) [17:27:44.501] } [17:27:44.501] ...future.strategy.old <- future::plan("list") [17:27:44.501] options(future.plan = NULL) [17:27:44.501] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.501] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:44.501] } [17:27:44.501] ...future.workdir <- getwd() [17:27:44.501] } [17:27:44.501] ...future.oldOptions <- base::as.list(base::.Options) [17:27:44.501] ...future.oldEnvVars <- base::Sys.getenv() [17:27:44.501] } [17:27:44.501] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:44.501] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:44.501] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:44.501] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:44.501] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:44.501] future.stdout.windows.reencode = NULL, width = 80L) [17:27:44.501] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:44.501] base::names(...future.oldOptions)) [17:27:44.501] } [17:27:44.501] if (FALSE) { [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] if (TRUE) { [17:27:44.501] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:44.501] open = "w") [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:44.501] windows = "NUL", "/dev/null"), open = "w") [17:27:44.501] } [17:27:44.501] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:44.501] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:44.501] base::sink(type = "output", split = FALSE) [17:27:44.501] base::close(...future.stdout) [17:27:44.501] }, add = TRUE) [17:27:44.501] } [17:27:44.501] ...future.frame <- base::sys.nframe() [17:27:44.501] ...future.conditions <- base::list() [17:27:44.501] ...future.rng <- base::globalenv()$.Random.seed [17:27:44.501] if (FALSE) { [17:27:44.501] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:44.501] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:44.501] } [17:27:44.501] ...future.result <- base::tryCatch({ [17:27:44.501] base::withCallingHandlers({ [17:27:44.501] ...future.value <- base::withVisible(base::local({ [17:27:44.501] Sys.sleep(0.5) [17:27:44.501] 2 [17:27:44.501] })) [17:27:44.501] future::FutureResult(value = ...future.value$value, [17:27:44.501] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.501] ...future.rng), globalenv = if (FALSE) [17:27:44.501] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:44.501] ...future.globalenv.names)) [17:27:44.501] else NULL, started = ...future.startTime, version = "1.8") [17:27:44.501] }, condition = base::local({ [17:27:44.501] c <- base::c [17:27:44.501] inherits <- base::inherits [17:27:44.501] invokeRestart <- base::invokeRestart [17:27:44.501] length <- base::length [17:27:44.501] list <- base::list [17:27:44.501] seq.int <- base::seq.int [17:27:44.501] signalCondition <- base::signalCondition [17:27:44.501] sys.calls <- base::sys.calls [17:27:44.501] `[[` <- base::`[[` [17:27:44.501] `+` <- base::`+` [17:27:44.501] `<<-` <- base::`<<-` [17:27:44.501] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:44.501] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:44.501] 3L)] [17:27:44.501] } [17:27:44.501] function(cond) { [17:27:44.501] is_error <- inherits(cond, "error") [17:27:44.501] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:44.501] NULL) [17:27:44.501] if (is_error) { [17:27:44.501] sessionInformation <- function() { [17:27:44.501] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:44.501] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:44.501] search = base::search(), system = base::Sys.info()) [17:27:44.501] } [17:27:44.501] ...future.conditions[[length(...future.conditions) + [17:27:44.501] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:44.501] cond$call), session = sessionInformation(), [17:27:44.501] timestamp = base::Sys.time(), signaled = 0L) [17:27:44.501] signalCondition(cond) [17:27:44.501] } [17:27:44.501] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:44.501] "immediateCondition"))) { [17:27:44.501] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:44.501] ...future.conditions[[length(...future.conditions) + [17:27:44.501] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:44.501] if (TRUE && !signal) { [17:27:44.501] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.501] { [17:27:44.501] inherits <- base::inherits [17:27:44.501] invokeRestart <- base::invokeRestart [17:27:44.501] is.null <- base::is.null [17:27:44.501] muffled <- FALSE [17:27:44.501] if (inherits(cond, "message")) { [17:27:44.501] muffled <- grepl(pattern, "muffleMessage") [17:27:44.501] if (muffled) [17:27:44.501] invokeRestart("muffleMessage") [17:27:44.501] } [17:27:44.501] else if (inherits(cond, "warning")) { [17:27:44.501] muffled <- grepl(pattern, "muffleWarning") [17:27:44.501] if (muffled) [17:27:44.501] invokeRestart("muffleWarning") [17:27:44.501] } [17:27:44.501] else if (inherits(cond, "condition")) { [17:27:44.501] if (!is.null(pattern)) { [17:27:44.501] computeRestarts <- base::computeRestarts [17:27:44.501] grepl <- base::grepl [17:27:44.501] restarts <- computeRestarts(cond) [17:27:44.501] for (restart in restarts) { [17:27:44.501] name <- restart$name [17:27:44.501] if (is.null(name)) [17:27:44.501] next [17:27:44.501] if (!grepl(pattern, name)) [17:27:44.501] next [17:27:44.501] invokeRestart(restart) [17:27:44.501] muffled <- TRUE [17:27:44.501] break [17:27:44.501] } [17:27:44.501] } [17:27:44.501] } [17:27:44.501] invisible(muffled) [17:27:44.501] } [17:27:44.501] muffleCondition(cond, pattern = "^muffle") [17:27:44.501] } [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] if (TRUE) { [17:27:44.501] muffleCondition <- function (cond, pattern = "^muffle") [17:27:44.501] { [17:27:44.501] inherits <- base::inherits [17:27:44.501] invokeRestart <- base::invokeRestart [17:27:44.501] is.null <- base::is.null [17:27:44.501] muffled <- FALSE [17:27:44.501] if (inherits(cond, "message")) { [17:27:44.501] muffled <- grepl(pattern, "muffleMessage") [17:27:44.501] if (muffled) [17:27:44.501] invokeRestart("muffleMessage") [17:27:44.501] } [17:27:44.501] else if (inherits(cond, "warning")) { [17:27:44.501] muffled <- grepl(pattern, "muffleWarning") [17:27:44.501] if (muffled) [17:27:44.501] invokeRestart("muffleWarning") [17:27:44.501] } [17:27:44.501] else if (inherits(cond, "condition")) { [17:27:44.501] if (!is.null(pattern)) { [17:27:44.501] computeRestarts <- base::computeRestarts [17:27:44.501] grepl <- base::grepl [17:27:44.501] restarts <- computeRestarts(cond) [17:27:44.501] for (restart in restarts) { [17:27:44.501] name <- restart$name [17:27:44.501] if (is.null(name)) [17:27:44.501] next [17:27:44.501] if (!grepl(pattern, name)) [17:27:44.501] next [17:27:44.501] invokeRestart(restart) [17:27:44.501] muffled <- TRUE [17:27:44.501] break [17:27:44.501] } [17:27:44.501] } [17:27:44.501] } [17:27:44.501] invisible(muffled) [17:27:44.501] } [17:27:44.501] muffleCondition(cond, pattern = "^muffle") [17:27:44.501] } [17:27:44.501] } [17:27:44.501] } [17:27:44.501] })) [17:27:44.501] }, error = function(ex) { [17:27:44.501] base::structure(base::list(value = NULL, visible = NULL, [17:27:44.501] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:44.501] ...future.rng), started = ...future.startTime, [17:27:44.501] finished = Sys.time(), session_uuid = NA_character_, [17:27:44.501] version = "1.8"), class = "FutureResult") [17:27:44.501] }, finally = { [17:27:44.501] if (!identical(...future.workdir, getwd())) [17:27:44.501] setwd(...future.workdir) [17:27:44.501] { [17:27:44.501] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:44.501] ...future.oldOptions$nwarnings <- NULL [17:27:44.501] } [17:27:44.501] base::options(...future.oldOptions) [17:27:44.501] if (.Platform$OS.type == "windows") { [17:27:44.501] old_names <- names(...future.oldEnvVars) [17:27:44.501] envs <- base::Sys.getenv() [17:27:44.501] names <- names(envs) [17:27:44.501] common <- intersect(names, old_names) [17:27:44.501] added <- setdiff(names, old_names) [17:27:44.501] removed <- setdiff(old_names, names) [17:27:44.501] changed <- common[...future.oldEnvVars[common] != [17:27:44.501] envs[common]] [17:27:44.501] NAMES <- toupper(changed) [17:27:44.501] args <- list() [17:27:44.501] for (kk in seq_along(NAMES)) { [17:27:44.501] name <- changed[[kk]] [17:27:44.501] NAME <- NAMES[[kk]] [17:27:44.501] if (name != NAME && is.element(NAME, old_names)) [17:27:44.501] next [17:27:44.501] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.501] } [17:27:44.501] NAMES <- toupper(added) [17:27:44.501] for (kk in seq_along(NAMES)) { [17:27:44.501] name <- added[[kk]] [17:27:44.501] NAME <- NAMES[[kk]] [17:27:44.501] if (name != NAME && is.element(NAME, old_names)) [17:27:44.501] next [17:27:44.501] args[[name]] <- "" [17:27:44.501] } [17:27:44.501] NAMES <- toupper(removed) [17:27:44.501] for (kk in seq_along(NAMES)) { [17:27:44.501] name <- removed[[kk]] [17:27:44.501] NAME <- NAMES[[kk]] [17:27:44.501] if (name != NAME && is.element(NAME, old_names)) [17:27:44.501] next [17:27:44.501] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:44.501] } [17:27:44.501] if (length(args) > 0) [17:27:44.501] base::do.call(base::Sys.setenv, args = args) [17:27:44.501] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:44.501] } [17:27:44.501] { [17:27:44.501] if (base::length(...future.futureOptionsAdded) > [17:27:44.501] 0L) { [17:27:44.501] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:44.501] base::names(opts) <- ...future.futureOptionsAdded [17:27:44.501] base::options(opts) [17:27:44.501] } [17:27:44.501] { [17:27:44.501] { [17:27:44.501] NULL [17:27:44.501] RNGkind("Mersenne-Twister") [17:27:44.501] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:44.501] inherits = FALSE) [17:27:44.501] } [17:27:44.501] options(future.plan = NULL) [17:27:44.501] if (is.na(NA_character_)) [17:27:44.501] Sys.unsetenv("R_FUTURE_PLAN") [17:27:44.501] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:44.501] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:44.501] .init = FALSE) [17:27:44.501] } [17:27:44.501] } [17:27:44.501] } [17:27:44.501] }) [17:27:44.501] if (TRUE) { [17:27:44.501] base::sink(type = "output", split = FALSE) [17:27:44.501] if (TRUE) { [17:27:44.501] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:44.501] } [17:27:44.501] else { [17:27:44.501] ...future.result["stdout"] <- base::list(NULL) [17:27:44.501] } [17:27:44.501] base::close(...future.stdout) [17:27:44.501] ...future.stdout <- NULL [17:27:44.501] } [17:27:44.501] ...future.result$conditions <- ...future.conditions [17:27:44.501] ...future.result$finished <- base::Sys.time() [17:27:44.501] ...future.result [17:27:44.501] } [17:27:44.504] plan(): Setting new future strategy stack: [17:27:44.505] List of future strategies: [17:27:44.505] 1. sequential: [17:27:44.505] - args: function (..., envir = parent.frame(), workers = "") [17:27:44.505] - tweaked: FALSE [17:27:44.505] - call: NULL [17:27:44.505] plan(): nbrOfWorkers() = 1 [17:27:45.010] plan(): Setting new future strategy stack: [17:27:45.010] List of future strategies: [17:27:45.010] 1. sequential: [17:27:45.010] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.010] - tweaked: FALSE [17:27:45.010] - call: plan(strategy) [17:27:45.011] plan(): nbrOfWorkers() = 1 [17:27:45.011] SequentialFuture started (and completed) [17:27:45.011] - Launch lazy future ... done [17:27:45.012] run() for 'SequentialFuture' ... done [17:27:45.012] resolve() on list ... [17:27:45.012] recursive: 0 [17:27:45.013] length: 1 [17:27:45.013] [17:27:45.013] resolved() for 'SequentialFuture' ... [17:27:45.013] - state: 'finished' [17:27:45.013] - run: TRUE [17:27:45.013] - result: 'FutureResult' [17:27:45.014] resolved() for 'SequentialFuture' ... done [17:27:45.014] Future #1 [17:27:45.014] length: 0 (resolved future 1) [17:27:45.014] resolve() on list ... DONE [17:27:45.014] resolved() for 'SequentialFuture' ... [17:27:45.014] - state: 'finished' [17:27:45.015] - run: TRUE [17:27:45.015] - result: 'FutureResult' [17:27:45.015] resolved() for 'SequentialFuture' ... done [17:27:45.015] resolve() on list ... [17:27:45.015] recursive: 0 [17:27:45.016] length: 1 [17:27:45.016] [17:27:45.016] resolved() for 'SequentialFuture' ... [17:27:45.016] - state: 'finished' [17:27:45.016] - run: TRUE [17:27:45.016] - result: 'FutureResult' [17:27:45.017] resolved() for 'SequentialFuture' ... done [17:27:45.017] Future #1 [17:27:45.017] length: 0 (resolved future 1) [17:27:45.017] resolve() on list ... DONE [17:27:45.017] resolved() for 'SequentialFuture' ... [17:27:45.018] - state: 'finished' [17:27:45.018] - run: TRUE [17:27:45.018] - result: 'FutureResult' [17:27:45.018] resolved() for 'SequentialFuture' ... done [17:27:45.018] resolve() on list ... [17:27:45.019] recursive: 0 [17:27:45.019] length: 1 [17:27:45.019] [17:27:45.019] length: 0 (resolved future 1) [17:27:45.019] resolve() on list ... DONE [17:27:45.019] resolve() on list ... [17:27:45.020] recursive: 0 [17:27:45.020] length: 4 [17:27:45.020] [17:27:45.020] resolved() for 'SequentialFuture' ... [17:27:45.020] - state: 'finished' [17:27:45.020] - run: TRUE [17:27:45.021] - result: 'FutureResult' [17:27:45.021] resolved() for 'SequentialFuture' ... done [17:27:45.021] Future #1 [17:27:45.021] length: 3 (resolved future 1) [17:27:45.021] resolved() for 'SequentialFuture' ... [17:27:45.022] - state: 'finished' [17:27:45.022] - run: TRUE [17:27:45.022] - result: 'FutureResult' [17:27:45.022] resolved() for 'SequentialFuture' ... done [17:27:45.022] Future #2 [17:27:45.022] length: 2 (resolved future 2) [17:27:45.023] length: 1 (resolved future 3) [17:27:45.023] length: 0 (resolved future 4) [17:27:45.023] resolve() on list ... DONE [17:27:45.023] resolve() on list ... [17:27:45.023] recursive: 0 [17:27:45.024] length: 4 [17:27:45.024] [17:27:45.024] resolved() for 'SequentialFuture' ... [17:27:45.024] - state: 'finished' [17:27:45.024] - run: TRUE [17:27:45.024] - result: 'FutureResult' [17:27:45.025] resolved() for 'SequentialFuture' ... done [17:27:45.025] Future #1 [17:27:45.025] length: 3 (resolved future 1) [17:27:45.025] resolved() for 'SequentialFuture' ... [17:27:45.025] - state: 'finished' [17:27:45.025] - run: TRUE [17:27:45.026] - result: 'FutureResult' [17:27:45.026] resolved() for 'SequentialFuture' ... done [17:27:45.026] Future #2 [17:27:45.026] length: 2 (resolved future 2) [17:27:45.026] length: 1 (resolved future 3) [17:27:45.026] length: 0 (resolved future 4) [17:27:45.027] resolve() on list ... DONE [17:27:45.027] resolve() on list ... [17:27:45.027] recursive: 0 [17:27:45.027] length: 1 [17:27:45.028] [17:27:45.028] length: 0 (resolved future 1) [17:27:45.028] resolve() on list ... DONE [17:27:45.028] getGlobalsAndPackages() ... [17:27:45.028] Searching for globals... [17:27:45.029] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:27:45.030] Searching for globals ... DONE [17:27:45.030] Resolving globals: FALSE [17:27:45.031] The total size of the 1 globals is 56 bytes (56 bytes) [17:27:45.031] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:27:45.031] - globals: [1] 'kk' [17:27:45.031] [17:27:45.032] getGlobalsAndPackages() ... DONE [17:27:45.032] run() for 'Future' ... [17:27:45.032] - state: 'created' [17:27:45.032] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.033] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.033] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.033] - Field: 'label' [17:27:45.033] - Field: 'local' [17:27:45.033] - Field: 'owner' [17:27:45.034] - Field: 'envir' [17:27:45.034] - Field: 'packages' [17:27:45.034] - Field: 'gc' [17:27:45.034] - Field: 'conditions' [17:27:45.034] - Field: 'expr' [17:27:45.034] - Field: 'uuid' [17:27:45.035] - Field: 'seed' [17:27:45.035] - Field: 'version' [17:27:45.035] - Field: 'result' [17:27:45.035] - Field: 'asynchronous' [17:27:45.035] - Field: 'calls' [17:27:45.035] - Field: 'globals' [17:27:45.036] - Field: 'stdout' [17:27:45.036] - Field: 'earlySignal' [17:27:45.036] - Field: 'lazy' [17:27:45.036] - Field: 'state' [17:27:45.036] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.036] - Launch lazy future ... [17:27:45.037] Packages needed by the future expression (n = 0): [17:27:45.037] Packages needed by future strategies (n = 0): [17:27:45.037] { [17:27:45.037] { [17:27:45.037] { [17:27:45.037] ...future.startTime <- base::Sys.time() [17:27:45.037] { [17:27:45.037] { [17:27:45.037] { [17:27:45.037] base::local({ [17:27:45.037] has_future <- base::requireNamespace("future", [17:27:45.037] quietly = TRUE) [17:27:45.037] if (has_future) { [17:27:45.037] ns <- base::getNamespace("future") [17:27:45.037] version <- ns[[".package"]][["version"]] [17:27:45.037] if (is.null(version)) [17:27:45.037] version <- utils::packageVersion("future") [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] version <- NULL [17:27:45.037] } [17:27:45.037] if (!has_future || version < "1.8.0") { [17:27:45.037] info <- base::c(r_version = base::gsub("R version ", [17:27:45.037] "", base::R.version$version.string), [17:27:45.037] platform = base::sprintf("%s (%s-bit)", [17:27:45.037] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.037] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.037] "release", "version")], collapse = " "), [17:27:45.037] hostname = base::Sys.info()[["nodename"]]) [17:27:45.037] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.037] info) [17:27:45.037] info <- base::paste(info, collapse = "; ") [17:27:45.037] if (!has_future) { [17:27:45.037] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.037] info) [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.037] info, version) [17:27:45.037] } [17:27:45.037] base::stop(msg) [17:27:45.037] } [17:27:45.037] }) [17:27:45.037] } [17:27:45.037] ...future.strategy.old <- future::plan("list") [17:27:45.037] options(future.plan = NULL) [17:27:45.037] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.037] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.037] } [17:27:45.037] ...future.workdir <- getwd() [17:27:45.037] } [17:27:45.037] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.037] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.037] } [17:27:45.037] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.037] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.037] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.037] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.037] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.037] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.037] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.037] base::names(...future.oldOptions)) [17:27:45.037] } [17:27:45.037] if (FALSE) { [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] if (TRUE) { [17:27:45.037] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.037] open = "w") [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.037] windows = "NUL", "/dev/null"), open = "w") [17:27:45.037] } [17:27:45.037] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.037] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.037] base::sink(type = "output", split = FALSE) [17:27:45.037] base::close(...future.stdout) [17:27:45.037] }, add = TRUE) [17:27:45.037] } [17:27:45.037] ...future.frame <- base::sys.nframe() [17:27:45.037] ...future.conditions <- base::list() [17:27:45.037] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.037] if (FALSE) { [17:27:45.037] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.037] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.037] } [17:27:45.037] ...future.result <- base::tryCatch({ [17:27:45.037] base::withCallingHandlers({ [17:27:45.037] ...future.value <- base::withVisible(base::local({ [17:27:45.037] Sys.sleep(0.1) [17:27:45.037] kk [17:27:45.037] })) [17:27:45.037] future::FutureResult(value = ...future.value$value, [17:27:45.037] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.037] ...future.rng), globalenv = if (FALSE) [17:27:45.037] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.037] ...future.globalenv.names)) [17:27:45.037] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.037] }, condition = base::local({ [17:27:45.037] c <- base::c [17:27:45.037] inherits <- base::inherits [17:27:45.037] invokeRestart <- base::invokeRestart [17:27:45.037] length <- base::length [17:27:45.037] list <- base::list [17:27:45.037] seq.int <- base::seq.int [17:27:45.037] signalCondition <- base::signalCondition [17:27:45.037] sys.calls <- base::sys.calls [17:27:45.037] `[[` <- base::`[[` [17:27:45.037] `+` <- base::`+` [17:27:45.037] `<<-` <- base::`<<-` [17:27:45.037] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.037] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.037] 3L)] [17:27:45.037] } [17:27:45.037] function(cond) { [17:27:45.037] is_error <- inherits(cond, "error") [17:27:45.037] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.037] NULL) [17:27:45.037] if (is_error) { [17:27:45.037] sessionInformation <- function() { [17:27:45.037] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.037] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.037] search = base::search(), system = base::Sys.info()) [17:27:45.037] } [17:27:45.037] ...future.conditions[[length(...future.conditions) + [17:27:45.037] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.037] cond$call), session = sessionInformation(), [17:27:45.037] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.037] signalCondition(cond) [17:27:45.037] } [17:27:45.037] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.037] "immediateCondition"))) { [17:27:45.037] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.037] ...future.conditions[[length(...future.conditions) + [17:27:45.037] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.037] if (TRUE && !signal) { [17:27:45.037] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.037] { [17:27:45.037] inherits <- base::inherits [17:27:45.037] invokeRestart <- base::invokeRestart [17:27:45.037] is.null <- base::is.null [17:27:45.037] muffled <- FALSE [17:27:45.037] if (inherits(cond, "message")) { [17:27:45.037] muffled <- grepl(pattern, "muffleMessage") [17:27:45.037] if (muffled) [17:27:45.037] invokeRestart("muffleMessage") [17:27:45.037] } [17:27:45.037] else if (inherits(cond, "warning")) { [17:27:45.037] muffled <- grepl(pattern, "muffleWarning") [17:27:45.037] if (muffled) [17:27:45.037] invokeRestart("muffleWarning") [17:27:45.037] } [17:27:45.037] else if (inherits(cond, "condition")) { [17:27:45.037] if (!is.null(pattern)) { [17:27:45.037] computeRestarts <- base::computeRestarts [17:27:45.037] grepl <- base::grepl [17:27:45.037] restarts <- computeRestarts(cond) [17:27:45.037] for (restart in restarts) { [17:27:45.037] name <- restart$name [17:27:45.037] if (is.null(name)) [17:27:45.037] next [17:27:45.037] if (!grepl(pattern, name)) [17:27:45.037] next [17:27:45.037] invokeRestart(restart) [17:27:45.037] muffled <- TRUE [17:27:45.037] break [17:27:45.037] } [17:27:45.037] } [17:27:45.037] } [17:27:45.037] invisible(muffled) [17:27:45.037] } [17:27:45.037] muffleCondition(cond, pattern = "^muffle") [17:27:45.037] } [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] if (TRUE) { [17:27:45.037] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.037] { [17:27:45.037] inherits <- base::inherits [17:27:45.037] invokeRestart <- base::invokeRestart [17:27:45.037] is.null <- base::is.null [17:27:45.037] muffled <- FALSE [17:27:45.037] if (inherits(cond, "message")) { [17:27:45.037] muffled <- grepl(pattern, "muffleMessage") [17:27:45.037] if (muffled) [17:27:45.037] invokeRestart("muffleMessage") [17:27:45.037] } [17:27:45.037] else if (inherits(cond, "warning")) { [17:27:45.037] muffled <- grepl(pattern, "muffleWarning") [17:27:45.037] if (muffled) [17:27:45.037] invokeRestart("muffleWarning") [17:27:45.037] } [17:27:45.037] else if (inherits(cond, "condition")) { [17:27:45.037] if (!is.null(pattern)) { [17:27:45.037] computeRestarts <- base::computeRestarts [17:27:45.037] grepl <- base::grepl [17:27:45.037] restarts <- computeRestarts(cond) [17:27:45.037] for (restart in restarts) { [17:27:45.037] name <- restart$name [17:27:45.037] if (is.null(name)) [17:27:45.037] next [17:27:45.037] if (!grepl(pattern, name)) [17:27:45.037] next [17:27:45.037] invokeRestart(restart) [17:27:45.037] muffled <- TRUE [17:27:45.037] break [17:27:45.037] } [17:27:45.037] } [17:27:45.037] } [17:27:45.037] invisible(muffled) [17:27:45.037] } [17:27:45.037] muffleCondition(cond, pattern = "^muffle") [17:27:45.037] } [17:27:45.037] } [17:27:45.037] } [17:27:45.037] })) [17:27:45.037] }, error = function(ex) { [17:27:45.037] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.037] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.037] ...future.rng), started = ...future.startTime, [17:27:45.037] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.037] version = "1.8"), class = "FutureResult") [17:27:45.037] }, finally = { [17:27:45.037] if (!identical(...future.workdir, getwd())) [17:27:45.037] setwd(...future.workdir) [17:27:45.037] { [17:27:45.037] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.037] ...future.oldOptions$nwarnings <- NULL [17:27:45.037] } [17:27:45.037] base::options(...future.oldOptions) [17:27:45.037] if (.Platform$OS.type == "windows") { [17:27:45.037] old_names <- names(...future.oldEnvVars) [17:27:45.037] envs <- base::Sys.getenv() [17:27:45.037] names <- names(envs) [17:27:45.037] common <- intersect(names, old_names) [17:27:45.037] added <- setdiff(names, old_names) [17:27:45.037] removed <- setdiff(old_names, names) [17:27:45.037] changed <- common[...future.oldEnvVars[common] != [17:27:45.037] envs[common]] [17:27:45.037] NAMES <- toupper(changed) [17:27:45.037] args <- list() [17:27:45.037] for (kk in seq_along(NAMES)) { [17:27:45.037] name <- changed[[kk]] [17:27:45.037] NAME <- NAMES[[kk]] [17:27:45.037] if (name != NAME && is.element(NAME, old_names)) [17:27:45.037] next [17:27:45.037] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.037] } [17:27:45.037] NAMES <- toupper(added) [17:27:45.037] for (kk in seq_along(NAMES)) { [17:27:45.037] name <- added[[kk]] [17:27:45.037] NAME <- NAMES[[kk]] [17:27:45.037] if (name != NAME && is.element(NAME, old_names)) [17:27:45.037] next [17:27:45.037] args[[name]] <- "" [17:27:45.037] } [17:27:45.037] NAMES <- toupper(removed) [17:27:45.037] for (kk in seq_along(NAMES)) { [17:27:45.037] name <- removed[[kk]] [17:27:45.037] NAME <- NAMES[[kk]] [17:27:45.037] if (name != NAME && is.element(NAME, old_names)) [17:27:45.037] next [17:27:45.037] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.037] } [17:27:45.037] if (length(args) > 0) [17:27:45.037] base::do.call(base::Sys.setenv, args = args) [17:27:45.037] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.037] } [17:27:45.037] { [17:27:45.037] if (base::length(...future.futureOptionsAdded) > [17:27:45.037] 0L) { [17:27:45.037] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.037] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.037] base::options(opts) [17:27:45.037] } [17:27:45.037] { [17:27:45.037] { [17:27:45.037] NULL [17:27:45.037] RNGkind("Mersenne-Twister") [17:27:45.037] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.037] inherits = FALSE) [17:27:45.037] } [17:27:45.037] options(future.plan = NULL) [17:27:45.037] if (is.na(NA_character_)) [17:27:45.037] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.037] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.037] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.037] .init = FALSE) [17:27:45.037] } [17:27:45.037] } [17:27:45.037] } [17:27:45.037] }) [17:27:45.037] if (TRUE) { [17:27:45.037] base::sink(type = "output", split = FALSE) [17:27:45.037] if (TRUE) { [17:27:45.037] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.037] } [17:27:45.037] else { [17:27:45.037] ...future.result["stdout"] <- base::list(NULL) [17:27:45.037] } [17:27:45.037] base::close(...future.stdout) [17:27:45.037] ...future.stdout <- NULL [17:27:45.037] } [17:27:45.037] ...future.result$conditions <- ...future.conditions [17:27:45.037] ...future.result$finished <- base::Sys.time() [17:27:45.037] ...future.result [17:27:45.037] } [17:27:45.041] assign_globals() ... [17:27:45.041] List of 1 [17:27:45.041] $ kk: int 1 [17:27:45.041] - attr(*, "where")=List of 1 [17:27:45.041] ..$ kk: [17:27:45.041] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:27:45.041] - attr(*, "resolved")= logi FALSE [17:27:45.041] - attr(*, "total_size")= num 56 [17:27:45.041] - attr(*, "already-done")= logi TRUE [17:27:45.048] - copied 'kk' to environment [17:27:45.048] assign_globals() ... done [17:27:45.048] plan(): Setting new future strategy stack: [17:27:45.048] List of future strategies: [17:27:45.048] 1. sequential: [17:27:45.048] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.048] - tweaked: FALSE [17:27:45.048] - call: NULL [17:27:45.049] plan(): nbrOfWorkers() = 1 [17:27:45.165] plan(): Setting new future strategy stack: [17:27:45.165] List of future strategies: [17:27:45.165] 1. sequential: [17:27:45.165] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.165] - tweaked: FALSE [17:27:45.165] - call: plan(strategy) [17:27:45.166] plan(): nbrOfWorkers() = 1 [17:27:45.166] SequentialFuture started (and completed) [17:27:45.166] - Launch lazy future ... done [17:27:45.166] run() for 'SequentialFuture' ... done [17:27:45.166] getGlobalsAndPackages() ... [17:27:45.167] Searching for globals... [17:27:45.168] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:27:45.168] Searching for globals ... DONE [17:27:45.168] Resolving globals: FALSE [17:27:45.169] The total size of the 1 globals is 56 bytes (56 bytes) [17:27:45.169] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:27:45.169] - globals: [1] 'kk' [17:27:45.169] [17:27:45.170] getGlobalsAndPackages() ... DONE [17:27:45.170] run() for 'Future' ... [17:27:45.170] - state: 'created' [17:27:45.170] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.171] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.171] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.171] - Field: 'label' [17:27:45.171] - Field: 'local' [17:27:45.171] - Field: 'owner' [17:27:45.172] - Field: 'envir' [17:27:45.172] - Field: 'packages' [17:27:45.172] - Field: 'gc' [17:27:45.172] - Field: 'conditions' [17:27:45.172] - Field: 'expr' [17:27:45.172] - Field: 'uuid' [17:27:45.173] - Field: 'seed' [17:27:45.173] - Field: 'version' [17:27:45.173] - Field: 'result' [17:27:45.173] - Field: 'asynchronous' [17:27:45.173] - Field: 'calls' [17:27:45.173] - Field: 'globals' [17:27:45.174] - Field: 'stdout' [17:27:45.174] - Field: 'earlySignal' [17:27:45.174] - Field: 'lazy' [17:27:45.174] - Field: 'state' [17:27:45.174] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.175] - Launch lazy future ... [17:27:45.175] Packages needed by the future expression (n = 0): [17:27:45.175] Packages needed by future strategies (n = 0): [17:27:45.175] { [17:27:45.175] { [17:27:45.175] { [17:27:45.175] ...future.startTime <- base::Sys.time() [17:27:45.175] { [17:27:45.175] { [17:27:45.175] { [17:27:45.175] base::local({ [17:27:45.175] has_future <- base::requireNamespace("future", [17:27:45.175] quietly = TRUE) [17:27:45.175] if (has_future) { [17:27:45.175] ns <- base::getNamespace("future") [17:27:45.175] version <- ns[[".package"]][["version"]] [17:27:45.175] if (is.null(version)) [17:27:45.175] version <- utils::packageVersion("future") [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] version <- NULL [17:27:45.175] } [17:27:45.175] if (!has_future || version < "1.8.0") { [17:27:45.175] info <- base::c(r_version = base::gsub("R version ", [17:27:45.175] "", base::R.version$version.string), [17:27:45.175] platform = base::sprintf("%s (%s-bit)", [17:27:45.175] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.175] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.175] "release", "version")], collapse = " "), [17:27:45.175] hostname = base::Sys.info()[["nodename"]]) [17:27:45.175] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.175] info) [17:27:45.175] info <- base::paste(info, collapse = "; ") [17:27:45.175] if (!has_future) { [17:27:45.175] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.175] info) [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.175] info, version) [17:27:45.175] } [17:27:45.175] base::stop(msg) [17:27:45.175] } [17:27:45.175] }) [17:27:45.175] } [17:27:45.175] ...future.strategy.old <- future::plan("list") [17:27:45.175] options(future.plan = NULL) [17:27:45.175] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.175] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.175] } [17:27:45.175] ...future.workdir <- getwd() [17:27:45.175] } [17:27:45.175] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.175] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.175] } [17:27:45.175] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.175] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.175] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.175] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.175] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.175] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.175] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.175] base::names(...future.oldOptions)) [17:27:45.175] } [17:27:45.175] if (FALSE) { [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] if (TRUE) { [17:27:45.175] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.175] open = "w") [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.175] windows = "NUL", "/dev/null"), open = "w") [17:27:45.175] } [17:27:45.175] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.175] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.175] base::sink(type = "output", split = FALSE) [17:27:45.175] base::close(...future.stdout) [17:27:45.175] }, add = TRUE) [17:27:45.175] } [17:27:45.175] ...future.frame <- base::sys.nframe() [17:27:45.175] ...future.conditions <- base::list() [17:27:45.175] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.175] if (FALSE) { [17:27:45.175] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.175] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.175] } [17:27:45.175] ...future.result <- base::tryCatch({ [17:27:45.175] base::withCallingHandlers({ [17:27:45.175] ...future.value <- base::withVisible(base::local({ [17:27:45.175] Sys.sleep(0.1) [17:27:45.175] kk [17:27:45.175] })) [17:27:45.175] future::FutureResult(value = ...future.value$value, [17:27:45.175] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.175] ...future.rng), globalenv = if (FALSE) [17:27:45.175] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.175] ...future.globalenv.names)) [17:27:45.175] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.175] }, condition = base::local({ [17:27:45.175] c <- base::c [17:27:45.175] inherits <- base::inherits [17:27:45.175] invokeRestart <- base::invokeRestart [17:27:45.175] length <- base::length [17:27:45.175] list <- base::list [17:27:45.175] seq.int <- base::seq.int [17:27:45.175] signalCondition <- base::signalCondition [17:27:45.175] sys.calls <- base::sys.calls [17:27:45.175] `[[` <- base::`[[` [17:27:45.175] `+` <- base::`+` [17:27:45.175] `<<-` <- base::`<<-` [17:27:45.175] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.175] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.175] 3L)] [17:27:45.175] } [17:27:45.175] function(cond) { [17:27:45.175] is_error <- inherits(cond, "error") [17:27:45.175] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.175] NULL) [17:27:45.175] if (is_error) { [17:27:45.175] sessionInformation <- function() { [17:27:45.175] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.175] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.175] search = base::search(), system = base::Sys.info()) [17:27:45.175] } [17:27:45.175] ...future.conditions[[length(...future.conditions) + [17:27:45.175] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.175] cond$call), session = sessionInformation(), [17:27:45.175] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.175] signalCondition(cond) [17:27:45.175] } [17:27:45.175] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.175] "immediateCondition"))) { [17:27:45.175] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.175] ...future.conditions[[length(...future.conditions) + [17:27:45.175] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.175] if (TRUE && !signal) { [17:27:45.175] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.175] { [17:27:45.175] inherits <- base::inherits [17:27:45.175] invokeRestart <- base::invokeRestart [17:27:45.175] is.null <- base::is.null [17:27:45.175] muffled <- FALSE [17:27:45.175] if (inherits(cond, "message")) { [17:27:45.175] muffled <- grepl(pattern, "muffleMessage") [17:27:45.175] if (muffled) [17:27:45.175] invokeRestart("muffleMessage") [17:27:45.175] } [17:27:45.175] else if (inherits(cond, "warning")) { [17:27:45.175] muffled <- grepl(pattern, "muffleWarning") [17:27:45.175] if (muffled) [17:27:45.175] invokeRestart("muffleWarning") [17:27:45.175] } [17:27:45.175] else if (inherits(cond, "condition")) { [17:27:45.175] if (!is.null(pattern)) { [17:27:45.175] computeRestarts <- base::computeRestarts [17:27:45.175] grepl <- base::grepl [17:27:45.175] restarts <- computeRestarts(cond) [17:27:45.175] for (restart in restarts) { [17:27:45.175] name <- restart$name [17:27:45.175] if (is.null(name)) [17:27:45.175] next [17:27:45.175] if (!grepl(pattern, name)) [17:27:45.175] next [17:27:45.175] invokeRestart(restart) [17:27:45.175] muffled <- TRUE [17:27:45.175] break [17:27:45.175] } [17:27:45.175] } [17:27:45.175] } [17:27:45.175] invisible(muffled) [17:27:45.175] } [17:27:45.175] muffleCondition(cond, pattern = "^muffle") [17:27:45.175] } [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] if (TRUE) { [17:27:45.175] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.175] { [17:27:45.175] inherits <- base::inherits [17:27:45.175] invokeRestart <- base::invokeRestart [17:27:45.175] is.null <- base::is.null [17:27:45.175] muffled <- FALSE [17:27:45.175] if (inherits(cond, "message")) { [17:27:45.175] muffled <- grepl(pattern, "muffleMessage") [17:27:45.175] if (muffled) [17:27:45.175] invokeRestart("muffleMessage") [17:27:45.175] } [17:27:45.175] else if (inherits(cond, "warning")) { [17:27:45.175] muffled <- grepl(pattern, "muffleWarning") [17:27:45.175] if (muffled) [17:27:45.175] invokeRestart("muffleWarning") [17:27:45.175] } [17:27:45.175] else if (inherits(cond, "condition")) { [17:27:45.175] if (!is.null(pattern)) { [17:27:45.175] computeRestarts <- base::computeRestarts [17:27:45.175] grepl <- base::grepl [17:27:45.175] restarts <- computeRestarts(cond) [17:27:45.175] for (restart in restarts) { [17:27:45.175] name <- restart$name [17:27:45.175] if (is.null(name)) [17:27:45.175] next [17:27:45.175] if (!grepl(pattern, name)) [17:27:45.175] next [17:27:45.175] invokeRestart(restart) [17:27:45.175] muffled <- TRUE [17:27:45.175] break [17:27:45.175] } [17:27:45.175] } [17:27:45.175] } [17:27:45.175] invisible(muffled) [17:27:45.175] } [17:27:45.175] muffleCondition(cond, pattern = "^muffle") [17:27:45.175] } [17:27:45.175] } [17:27:45.175] } [17:27:45.175] })) [17:27:45.175] }, error = function(ex) { [17:27:45.175] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.175] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.175] ...future.rng), started = ...future.startTime, [17:27:45.175] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.175] version = "1.8"), class = "FutureResult") [17:27:45.175] }, finally = { [17:27:45.175] if (!identical(...future.workdir, getwd())) [17:27:45.175] setwd(...future.workdir) [17:27:45.175] { [17:27:45.175] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.175] ...future.oldOptions$nwarnings <- NULL [17:27:45.175] } [17:27:45.175] base::options(...future.oldOptions) [17:27:45.175] if (.Platform$OS.type == "windows") { [17:27:45.175] old_names <- names(...future.oldEnvVars) [17:27:45.175] envs <- base::Sys.getenv() [17:27:45.175] names <- names(envs) [17:27:45.175] common <- intersect(names, old_names) [17:27:45.175] added <- setdiff(names, old_names) [17:27:45.175] removed <- setdiff(old_names, names) [17:27:45.175] changed <- common[...future.oldEnvVars[common] != [17:27:45.175] envs[common]] [17:27:45.175] NAMES <- toupper(changed) [17:27:45.175] args <- list() [17:27:45.175] for (kk in seq_along(NAMES)) { [17:27:45.175] name <- changed[[kk]] [17:27:45.175] NAME <- NAMES[[kk]] [17:27:45.175] if (name != NAME && is.element(NAME, old_names)) [17:27:45.175] next [17:27:45.175] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.175] } [17:27:45.175] NAMES <- toupper(added) [17:27:45.175] for (kk in seq_along(NAMES)) { [17:27:45.175] name <- added[[kk]] [17:27:45.175] NAME <- NAMES[[kk]] [17:27:45.175] if (name != NAME && is.element(NAME, old_names)) [17:27:45.175] next [17:27:45.175] args[[name]] <- "" [17:27:45.175] } [17:27:45.175] NAMES <- toupper(removed) [17:27:45.175] for (kk in seq_along(NAMES)) { [17:27:45.175] name <- removed[[kk]] [17:27:45.175] NAME <- NAMES[[kk]] [17:27:45.175] if (name != NAME && is.element(NAME, old_names)) [17:27:45.175] next [17:27:45.175] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.175] } [17:27:45.175] if (length(args) > 0) [17:27:45.175] base::do.call(base::Sys.setenv, args = args) [17:27:45.175] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.175] } [17:27:45.175] { [17:27:45.175] if (base::length(...future.futureOptionsAdded) > [17:27:45.175] 0L) { [17:27:45.175] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.175] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.175] base::options(opts) [17:27:45.175] } [17:27:45.175] { [17:27:45.175] { [17:27:45.175] NULL [17:27:45.175] RNGkind("Mersenne-Twister") [17:27:45.175] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.175] inherits = FALSE) [17:27:45.175] } [17:27:45.175] options(future.plan = NULL) [17:27:45.175] if (is.na(NA_character_)) [17:27:45.175] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.175] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.175] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.175] .init = FALSE) [17:27:45.175] } [17:27:45.175] } [17:27:45.175] } [17:27:45.175] }) [17:27:45.175] if (TRUE) { [17:27:45.175] base::sink(type = "output", split = FALSE) [17:27:45.175] if (TRUE) { [17:27:45.175] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.175] } [17:27:45.175] else { [17:27:45.175] ...future.result["stdout"] <- base::list(NULL) [17:27:45.175] } [17:27:45.175] base::close(...future.stdout) [17:27:45.175] ...future.stdout <- NULL [17:27:45.175] } [17:27:45.175] ...future.result$conditions <- ...future.conditions [17:27:45.175] ...future.result$finished <- base::Sys.time() [17:27:45.175] ...future.result [17:27:45.175] } [17:27:45.179] assign_globals() ... [17:27:45.179] List of 1 [17:27:45.179] $ kk: int 2 [17:27:45.179] - attr(*, "where")=List of 1 [17:27:45.179] ..$ kk: [17:27:45.179] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:27:45.179] - attr(*, "resolved")= logi FALSE [17:27:45.179] - attr(*, "total_size")= num 56 [17:27:45.179] - attr(*, "already-done")= logi TRUE [17:27:45.182] - copied 'kk' to environment [17:27:45.182] assign_globals() ... done [17:27:45.183] plan(): Setting new future strategy stack: [17:27:45.183] List of future strategies: [17:27:45.183] 1. sequential: [17:27:45.183] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.183] - tweaked: FALSE [17:27:45.183] - call: NULL [17:27:45.183] plan(): nbrOfWorkers() = 1 [17:27:45.296] plan(): Setting new future strategy stack: [17:27:45.296] List of future strategies: [17:27:45.296] 1. sequential: [17:27:45.296] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.296] - tweaked: FALSE [17:27:45.296] - call: plan(strategy) [17:27:45.296] plan(): nbrOfWorkers() = 1 [17:27:45.297] SequentialFuture started (and completed) [17:27:45.297] - Launch lazy future ... done [17:27:45.297] run() for 'SequentialFuture' ... done [17:27:45.297] getGlobalsAndPackages() ... [17:27:45.297] Searching for globals... [17:27:45.299] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:27:45.299] Searching for globals ... DONE [17:27:45.299] Resolving globals: FALSE [17:27:45.299] The total size of the 1 globals is 56 bytes (56 bytes) [17:27:45.300] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:27:45.300] - globals: [1] 'kk' [17:27:45.300] [17:27:45.300] getGlobalsAndPackages() ... DONE [17:27:45.301] run() for 'Future' ... [17:27:45.301] - state: 'created' [17:27:45.301] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.301] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.302] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.302] - Field: 'label' [17:27:45.302] - Field: 'local' [17:27:45.302] - Field: 'owner' [17:27:45.302] - Field: 'envir' [17:27:45.302] - Field: 'packages' [17:27:45.303] - Field: 'gc' [17:27:45.303] - Field: 'conditions' [17:27:45.303] - Field: 'expr' [17:27:45.303] - Field: 'uuid' [17:27:45.303] - Field: 'seed' [17:27:45.303] - Field: 'version' [17:27:45.304] - Field: 'result' [17:27:45.304] - Field: 'asynchronous' [17:27:45.305] - Field: 'calls' [17:27:45.305] - Field: 'globals' [17:27:45.305] - Field: 'stdout' [17:27:45.305] - Field: 'earlySignal' [17:27:45.306] - Field: 'lazy' [17:27:45.306] - Field: 'state' [17:27:45.306] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.306] - Launch lazy future ... [17:27:45.306] Packages needed by the future expression (n = 0): [17:27:45.307] Packages needed by future strategies (n = 0): [17:27:45.307] { [17:27:45.307] { [17:27:45.307] { [17:27:45.307] ...future.startTime <- base::Sys.time() [17:27:45.307] { [17:27:45.307] { [17:27:45.307] { [17:27:45.307] base::local({ [17:27:45.307] has_future <- base::requireNamespace("future", [17:27:45.307] quietly = TRUE) [17:27:45.307] if (has_future) { [17:27:45.307] ns <- base::getNamespace("future") [17:27:45.307] version <- ns[[".package"]][["version"]] [17:27:45.307] if (is.null(version)) [17:27:45.307] version <- utils::packageVersion("future") [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] version <- NULL [17:27:45.307] } [17:27:45.307] if (!has_future || version < "1.8.0") { [17:27:45.307] info <- base::c(r_version = base::gsub("R version ", [17:27:45.307] "", base::R.version$version.string), [17:27:45.307] platform = base::sprintf("%s (%s-bit)", [17:27:45.307] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.307] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.307] "release", "version")], collapse = " "), [17:27:45.307] hostname = base::Sys.info()[["nodename"]]) [17:27:45.307] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.307] info) [17:27:45.307] info <- base::paste(info, collapse = "; ") [17:27:45.307] if (!has_future) { [17:27:45.307] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.307] info) [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.307] info, version) [17:27:45.307] } [17:27:45.307] base::stop(msg) [17:27:45.307] } [17:27:45.307] }) [17:27:45.307] } [17:27:45.307] ...future.strategy.old <- future::plan("list") [17:27:45.307] options(future.plan = NULL) [17:27:45.307] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.307] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.307] } [17:27:45.307] ...future.workdir <- getwd() [17:27:45.307] } [17:27:45.307] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.307] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.307] } [17:27:45.307] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.307] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.307] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.307] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.307] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.307] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.307] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.307] base::names(...future.oldOptions)) [17:27:45.307] } [17:27:45.307] if (FALSE) { [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] if (TRUE) { [17:27:45.307] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.307] open = "w") [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.307] windows = "NUL", "/dev/null"), open = "w") [17:27:45.307] } [17:27:45.307] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.307] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.307] base::sink(type = "output", split = FALSE) [17:27:45.307] base::close(...future.stdout) [17:27:45.307] }, add = TRUE) [17:27:45.307] } [17:27:45.307] ...future.frame <- base::sys.nframe() [17:27:45.307] ...future.conditions <- base::list() [17:27:45.307] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.307] if (FALSE) { [17:27:45.307] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.307] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.307] } [17:27:45.307] ...future.result <- base::tryCatch({ [17:27:45.307] base::withCallingHandlers({ [17:27:45.307] ...future.value <- base::withVisible(base::local({ [17:27:45.307] Sys.sleep(0.1) [17:27:45.307] kk [17:27:45.307] })) [17:27:45.307] future::FutureResult(value = ...future.value$value, [17:27:45.307] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.307] ...future.rng), globalenv = if (FALSE) [17:27:45.307] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.307] ...future.globalenv.names)) [17:27:45.307] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.307] }, condition = base::local({ [17:27:45.307] c <- base::c [17:27:45.307] inherits <- base::inherits [17:27:45.307] invokeRestart <- base::invokeRestart [17:27:45.307] length <- base::length [17:27:45.307] list <- base::list [17:27:45.307] seq.int <- base::seq.int [17:27:45.307] signalCondition <- base::signalCondition [17:27:45.307] sys.calls <- base::sys.calls [17:27:45.307] `[[` <- base::`[[` [17:27:45.307] `+` <- base::`+` [17:27:45.307] `<<-` <- base::`<<-` [17:27:45.307] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.307] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.307] 3L)] [17:27:45.307] } [17:27:45.307] function(cond) { [17:27:45.307] is_error <- inherits(cond, "error") [17:27:45.307] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.307] NULL) [17:27:45.307] if (is_error) { [17:27:45.307] sessionInformation <- function() { [17:27:45.307] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.307] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.307] search = base::search(), system = base::Sys.info()) [17:27:45.307] } [17:27:45.307] ...future.conditions[[length(...future.conditions) + [17:27:45.307] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.307] cond$call), session = sessionInformation(), [17:27:45.307] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.307] signalCondition(cond) [17:27:45.307] } [17:27:45.307] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.307] "immediateCondition"))) { [17:27:45.307] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.307] ...future.conditions[[length(...future.conditions) + [17:27:45.307] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.307] if (TRUE && !signal) { [17:27:45.307] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.307] { [17:27:45.307] inherits <- base::inherits [17:27:45.307] invokeRestart <- base::invokeRestart [17:27:45.307] is.null <- base::is.null [17:27:45.307] muffled <- FALSE [17:27:45.307] if (inherits(cond, "message")) { [17:27:45.307] muffled <- grepl(pattern, "muffleMessage") [17:27:45.307] if (muffled) [17:27:45.307] invokeRestart("muffleMessage") [17:27:45.307] } [17:27:45.307] else if (inherits(cond, "warning")) { [17:27:45.307] muffled <- grepl(pattern, "muffleWarning") [17:27:45.307] if (muffled) [17:27:45.307] invokeRestart("muffleWarning") [17:27:45.307] } [17:27:45.307] else if (inherits(cond, "condition")) { [17:27:45.307] if (!is.null(pattern)) { [17:27:45.307] computeRestarts <- base::computeRestarts [17:27:45.307] grepl <- base::grepl [17:27:45.307] restarts <- computeRestarts(cond) [17:27:45.307] for (restart in restarts) { [17:27:45.307] name <- restart$name [17:27:45.307] if (is.null(name)) [17:27:45.307] next [17:27:45.307] if (!grepl(pattern, name)) [17:27:45.307] next [17:27:45.307] invokeRestart(restart) [17:27:45.307] muffled <- TRUE [17:27:45.307] break [17:27:45.307] } [17:27:45.307] } [17:27:45.307] } [17:27:45.307] invisible(muffled) [17:27:45.307] } [17:27:45.307] muffleCondition(cond, pattern = "^muffle") [17:27:45.307] } [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] if (TRUE) { [17:27:45.307] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.307] { [17:27:45.307] inherits <- base::inherits [17:27:45.307] invokeRestart <- base::invokeRestart [17:27:45.307] is.null <- base::is.null [17:27:45.307] muffled <- FALSE [17:27:45.307] if (inherits(cond, "message")) { [17:27:45.307] muffled <- grepl(pattern, "muffleMessage") [17:27:45.307] if (muffled) [17:27:45.307] invokeRestart("muffleMessage") [17:27:45.307] } [17:27:45.307] else if (inherits(cond, "warning")) { [17:27:45.307] muffled <- grepl(pattern, "muffleWarning") [17:27:45.307] if (muffled) [17:27:45.307] invokeRestart("muffleWarning") [17:27:45.307] } [17:27:45.307] else if (inherits(cond, "condition")) { [17:27:45.307] if (!is.null(pattern)) { [17:27:45.307] computeRestarts <- base::computeRestarts [17:27:45.307] grepl <- base::grepl [17:27:45.307] restarts <- computeRestarts(cond) [17:27:45.307] for (restart in restarts) { [17:27:45.307] name <- restart$name [17:27:45.307] if (is.null(name)) [17:27:45.307] next [17:27:45.307] if (!grepl(pattern, name)) [17:27:45.307] next [17:27:45.307] invokeRestart(restart) [17:27:45.307] muffled <- TRUE [17:27:45.307] break [17:27:45.307] } [17:27:45.307] } [17:27:45.307] } [17:27:45.307] invisible(muffled) [17:27:45.307] } [17:27:45.307] muffleCondition(cond, pattern = "^muffle") [17:27:45.307] } [17:27:45.307] } [17:27:45.307] } [17:27:45.307] })) [17:27:45.307] }, error = function(ex) { [17:27:45.307] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.307] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.307] ...future.rng), started = ...future.startTime, [17:27:45.307] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.307] version = "1.8"), class = "FutureResult") [17:27:45.307] }, finally = { [17:27:45.307] if (!identical(...future.workdir, getwd())) [17:27:45.307] setwd(...future.workdir) [17:27:45.307] { [17:27:45.307] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.307] ...future.oldOptions$nwarnings <- NULL [17:27:45.307] } [17:27:45.307] base::options(...future.oldOptions) [17:27:45.307] if (.Platform$OS.type == "windows") { [17:27:45.307] old_names <- names(...future.oldEnvVars) [17:27:45.307] envs <- base::Sys.getenv() [17:27:45.307] names <- names(envs) [17:27:45.307] common <- intersect(names, old_names) [17:27:45.307] added <- setdiff(names, old_names) [17:27:45.307] removed <- setdiff(old_names, names) [17:27:45.307] changed <- common[...future.oldEnvVars[common] != [17:27:45.307] envs[common]] [17:27:45.307] NAMES <- toupper(changed) [17:27:45.307] args <- list() [17:27:45.307] for (kk in seq_along(NAMES)) { [17:27:45.307] name <- changed[[kk]] [17:27:45.307] NAME <- NAMES[[kk]] [17:27:45.307] if (name != NAME && is.element(NAME, old_names)) [17:27:45.307] next [17:27:45.307] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.307] } [17:27:45.307] NAMES <- toupper(added) [17:27:45.307] for (kk in seq_along(NAMES)) { [17:27:45.307] name <- added[[kk]] [17:27:45.307] NAME <- NAMES[[kk]] [17:27:45.307] if (name != NAME && is.element(NAME, old_names)) [17:27:45.307] next [17:27:45.307] args[[name]] <- "" [17:27:45.307] } [17:27:45.307] NAMES <- toupper(removed) [17:27:45.307] for (kk in seq_along(NAMES)) { [17:27:45.307] name <- removed[[kk]] [17:27:45.307] NAME <- NAMES[[kk]] [17:27:45.307] if (name != NAME && is.element(NAME, old_names)) [17:27:45.307] next [17:27:45.307] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.307] } [17:27:45.307] if (length(args) > 0) [17:27:45.307] base::do.call(base::Sys.setenv, args = args) [17:27:45.307] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.307] } [17:27:45.307] { [17:27:45.307] if (base::length(...future.futureOptionsAdded) > [17:27:45.307] 0L) { [17:27:45.307] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.307] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.307] base::options(opts) [17:27:45.307] } [17:27:45.307] { [17:27:45.307] { [17:27:45.307] NULL [17:27:45.307] RNGkind("Mersenne-Twister") [17:27:45.307] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.307] inherits = FALSE) [17:27:45.307] } [17:27:45.307] options(future.plan = NULL) [17:27:45.307] if (is.na(NA_character_)) [17:27:45.307] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.307] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.307] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.307] .init = FALSE) [17:27:45.307] } [17:27:45.307] } [17:27:45.307] } [17:27:45.307] }) [17:27:45.307] if (TRUE) { [17:27:45.307] base::sink(type = "output", split = FALSE) [17:27:45.307] if (TRUE) { [17:27:45.307] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.307] } [17:27:45.307] else { [17:27:45.307] ...future.result["stdout"] <- base::list(NULL) [17:27:45.307] } [17:27:45.307] base::close(...future.stdout) [17:27:45.307] ...future.stdout <- NULL [17:27:45.307] } [17:27:45.307] ...future.result$conditions <- ...future.conditions [17:27:45.307] ...future.result$finished <- base::Sys.time() [17:27:45.307] ...future.result [17:27:45.307] } [17:27:45.311] assign_globals() ... [17:27:45.311] List of 1 [17:27:45.311] $ kk: int 3 [17:27:45.311] - attr(*, "where")=List of 1 [17:27:45.311] ..$ kk: [17:27:45.311] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:27:45.311] - attr(*, "resolved")= logi FALSE [17:27:45.311] - attr(*, "total_size")= num 56 [17:27:45.311] - attr(*, "already-done")= logi TRUE [17:27:45.314] - copied 'kk' to environment [17:27:45.314] assign_globals() ... done [17:27:45.314] plan(): Setting new future strategy stack: [17:27:45.314] List of future strategies: [17:27:45.314] 1. sequential: [17:27:45.314] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.314] - tweaked: FALSE [17:27:45.314] - call: NULL [17:27:45.315] plan(): nbrOfWorkers() = 1 [17:27:45.420] plan(): Setting new future strategy stack: [17:27:45.420] List of future strategies: [17:27:45.420] 1. sequential: [17:27:45.420] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.420] - tweaked: FALSE [17:27:45.420] - call: plan(strategy) [17:27:45.421] plan(): nbrOfWorkers() = 1 [17:27:45.421] SequentialFuture started (and completed) [17:27:45.422] - Launch lazy future ... done [17:27:45.422] run() for 'SequentialFuture' ... done [17:27:45.422] resolve() on list ... [17:27:45.422] recursive: 0 [17:27:45.422] length: 3 [17:27:45.422] [17:27:45.423] resolved() for 'SequentialFuture' ... [17:27:45.423] - state: 'finished' [17:27:45.423] - run: TRUE [17:27:45.423] - result: 'FutureResult' [17:27:45.423] resolved() for 'SequentialFuture' ... done [17:27:45.423] Future #1 [17:27:45.424] length: 2 (resolved future 1) [17:27:45.424] resolved() for 'SequentialFuture' ... [17:27:45.424] - state: 'finished' [17:27:45.424] - run: TRUE [17:27:45.424] - result: 'FutureResult' [17:27:45.425] resolved() for 'SequentialFuture' ... done [17:27:45.425] Future #2 [17:27:45.425] length: 1 (resolved future 2) [17:27:45.425] resolved() for 'SequentialFuture' ... [17:27:45.425] - state: 'finished' [17:27:45.425] - run: TRUE [17:27:45.426] - result: 'FutureResult' [17:27:45.426] resolved() for 'SequentialFuture' ... done [17:27:45.426] Future #3 [17:27:45.426] length: 0 (resolved future 3) [17:27:45.426] resolve() on list ... DONE [17:27:45.426] getGlobalsAndPackages() ... [17:27:45.427] Searching for globals... [17:27:45.428] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:27:45.428] Searching for globals ... DONE [17:27:45.428] Resolving globals: FALSE [17:27:45.429] The total size of the 1 globals is 56 bytes (56 bytes) [17:27:45.429] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:27:45.429] - globals: [1] 'kk' [17:27:45.429] [17:27:45.430] getGlobalsAndPackages() ... DONE [17:27:45.430] getGlobalsAndPackages() ... [17:27:45.430] Searching for globals... [17:27:45.431] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:27:45.431] Searching for globals ... DONE [17:27:45.432] Resolving globals: FALSE [17:27:45.432] The total size of the 1 globals is 56 bytes (56 bytes) [17:27:45.433] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:27:45.433] - globals: [1] 'kk' [17:27:45.433] [17:27:45.433] getGlobalsAndPackages() ... DONE [17:27:45.433] getGlobalsAndPackages() ... [17:27:45.433] Searching for globals... [17:27:45.435] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:27:45.435] Searching for globals ... DONE [17:27:45.435] Resolving globals: FALSE [17:27:45.435] The total size of the 1 globals is 56 bytes (56 bytes) [17:27:45.436] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:27:45.436] - globals: [1] 'kk' [17:27:45.436] [17:27:45.436] getGlobalsAndPackages() ... DONE [17:27:45.437] resolve() on list ... [17:27:45.437] recursive: 0 [17:27:45.437] length: 3 [17:27:45.437] [17:27:45.437] run() for 'Future' ... [17:27:45.438] - state: 'created' [17:27:45.438] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.438] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.438] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.438] - Field: 'label' [17:27:45.439] - Field: 'local' [17:27:45.439] - Field: 'owner' [17:27:45.439] - Field: 'envir' [17:27:45.439] - Field: 'packages' [17:27:45.439] - Field: 'gc' [17:27:45.440] - Field: 'conditions' [17:27:45.441] - Field: 'expr' [17:27:45.441] - Field: 'uuid' [17:27:45.441] - Field: 'seed' [17:27:45.441] - Field: 'version' [17:27:45.441] - Field: 'result' [17:27:45.441] - Field: 'asynchronous' [17:27:45.442] - Field: 'calls' [17:27:45.442] - Field: 'globals' [17:27:45.442] - Field: 'stdout' [17:27:45.442] - Field: 'earlySignal' [17:27:45.442] - Field: 'lazy' [17:27:45.442] - Field: 'state' [17:27:45.443] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.443] - Launch lazy future ... [17:27:45.443] Packages needed by the future expression (n = 0): [17:27:45.443] Packages needed by future strategies (n = 0): [17:27:45.444] { [17:27:45.444] { [17:27:45.444] { [17:27:45.444] ...future.startTime <- base::Sys.time() [17:27:45.444] { [17:27:45.444] { [17:27:45.444] { [17:27:45.444] base::local({ [17:27:45.444] has_future <- base::requireNamespace("future", [17:27:45.444] quietly = TRUE) [17:27:45.444] if (has_future) { [17:27:45.444] ns <- base::getNamespace("future") [17:27:45.444] version <- ns[[".package"]][["version"]] [17:27:45.444] if (is.null(version)) [17:27:45.444] version <- utils::packageVersion("future") [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] version <- NULL [17:27:45.444] } [17:27:45.444] if (!has_future || version < "1.8.0") { [17:27:45.444] info <- base::c(r_version = base::gsub("R version ", [17:27:45.444] "", base::R.version$version.string), [17:27:45.444] platform = base::sprintf("%s (%s-bit)", [17:27:45.444] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.444] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.444] "release", "version")], collapse = " "), [17:27:45.444] hostname = base::Sys.info()[["nodename"]]) [17:27:45.444] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.444] info) [17:27:45.444] info <- base::paste(info, collapse = "; ") [17:27:45.444] if (!has_future) { [17:27:45.444] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.444] info) [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.444] info, version) [17:27:45.444] } [17:27:45.444] base::stop(msg) [17:27:45.444] } [17:27:45.444] }) [17:27:45.444] } [17:27:45.444] ...future.strategy.old <- future::plan("list") [17:27:45.444] options(future.plan = NULL) [17:27:45.444] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.444] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.444] } [17:27:45.444] ...future.workdir <- getwd() [17:27:45.444] } [17:27:45.444] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.444] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.444] } [17:27:45.444] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.444] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.444] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.444] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.444] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.444] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.444] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.444] base::names(...future.oldOptions)) [17:27:45.444] } [17:27:45.444] if (FALSE) { [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] if (TRUE) { [17:27:45.444] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.444] open = "w") [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.444] windows = "NUL", "/dev/null"), open = "w") [17:27:45.444] } [17:27:45.444] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.444] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.444] base::sink(type = "output", split = FALSE) [17:27:45.444] base::close(...future.stdout) [17:27:45.444] }, add = TRUE) [17:27:45.444] } [17:27:45.444] ...future.frame <- base::sys.nframe() [17:27:45.444] ...future.conditions <- base::list() [17:27:45.444] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.444] if (FALSE) { [17:27:45.444] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.444] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.444] } [17:27:45.444] ...future.result <- base::tryCatch({ [17:27:45.444] base::withCallingHandlers({ [17:27:45.444] ...future.value <- base::withVisible(base::local({ [17:27:45.444] Sys.sleep(0.1) [17:27:45.444] kk [17:27:45.444] })) [17:27:45.444] future::FutureResult(value = ...future.value$value, [17:27:45.444] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.444] ...future.rng), globalenv = if (FALSE) [17:27:45.444] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.444] ...future.globalenv.names)) [17:27:45.444] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.444] }, condition = base::local({ [17:27:45.444] c <- base::c [17:27:45.444] inherits <- base::inherits [17:27:45.444] invokeRestart <- base::invokeRestart [17:27:45.444] length <- base::length [17:27:45.444] list <- base::list [17:27:45.444] seq.int <- base::seq.int [17:27:45.444] signalCondition <- base::signalCondition [17:27:45.444] sys.calls <- base::sys.calls [17:27:45.444] `[[` <- base::`[[` [17:27:45.444] `+` <- base::`+` [17:27:45.444] `<<-` <- base::`<<-` [17:27:45.444] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.444] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.444] 3L)] [17:27:45.444] } [17:27:45.444] function(cond) { [17:27:45.444] is_error <- inherits(cond, "error") [17:27:45.444] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.444] NULL) [17:27:45.444] if (is_error) { [17:27:45.444] sessionInformation <- function() { [17:27:45.444] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.444] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.444] search = base::search(), system = base::Sys.info()) [17:27:45.444] } [17:27:45.444] ...future.conditions[[length(...future.conditions) + [17:27:45.444] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.444] cond$call), session = sessionInformation(), [17:27:45.444] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.444] signalCondition(cond) [17:27:45.444] } [17:27:45.444] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.444] "immediateCondition"))) { [17:27:45.444] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.444] ...future.conditions[[length(...future.conditions) + [17:27:45.444] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.444] if (TRUE && !signal) { [17:27:45.444] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.444] { [17:27:45.444] inherits <- base::inherits [17:27:45.444] invokeRestart <- base::invokeRestart [17:27:45.444] is.null <- base::is.null [17:27:45.444] muffled <- FALSE [17:27:45.444] if (inherits(cond, "message")) { [17:27:45.444] muffled <- grepl(pattern, "muffleMessage") [17:27:45.444] if (muffled) [17:27:45.444] invokeRestart("muffleMessage") [17:27:45.444] } [17:27:45.444] else if (inherits(cond, "warning")) { [17:27:45.444] muffled <- grepl(pattern, "muffleWarning") [17:27:45.444] if (muffled) [17:27:45.444] invokeRestart("muffleWarning") [17:27:45.444] } [17:27:45.444] else if (inherits(cond, "condition")) { [17:27:45.444] if (!is.null(pattern)) { [17:27:45.444] computeRestarts <- base::computeRestarts [17:27:45.444] grepl <- base::grepl [17:27:45.444] restarts <- computeRestarts(cond) [17:27:45.444] for (restart in restarts) { [17:27:45.444] name <- restart$name [17:27:45.444] if (is.null(name)) [17:27:45.444] next [17:27:45.444] if (!grepl(pattern, name)) [17:27:45.444] next [17:27:45.444] invokeRestart(restart) [17:27:45.444] muffled <- TRUE [17:27:45.444] break [17:27:45.444] } [17:27:45.444] } [17:27:45.444] } [17:27:45.444] invisible(muffled) [17:27:45.444] } [17:27:45.444] muffleCondition(cond, pattern = "^muffle") [17:27:45.444] } [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] if (TRUE) { [17:27:45.444] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.444] { [17:27:45.444] inherits <- base::inherits [17:27:45.444] invokeRestart <- base::invokeRestart [17:27:45.444] is.null <- base::is.null [17:27:45.444] muffled <- FALSE [17:27:45.444] if (inherits(cond, "message")) { [17:27:45.444] muffled <- grepl(pattern, "muffleMessage") [17:27:45.444] if (muffled) [17:27:45.444] invokeRestart("muffleMessage") [17:27:45.444] } [17:27:45.444] else if (inherits(cond, "warning")) { [17:27:45.444] muffled <- grepl(pattern, "muffleWarning") [17:27:45.444] if (muffled) [17:27:45.444] invokeRestart("muffleWarning") [17:27:45.444] } [17:27:45.444] else if (inherits(cond, "condition")) { [17:27:45.444] if (!is.null(pattern)) { [17:27:45.444] computeRestarts <- base::computeRestarts [17:27:45.444] grepl <- base::grepl [17:27:45.444] restarts <- computeRestarts(cond) [17:27:45.444] for (restart in restarts) { [17:27:45.444] name <- restart$name [17:27:45.444] if (is.null(name)) [17:27:45.444] next [17:27:45.444] if (!grepl(pattern, name)) [17:27:45.444] next [17:27:45.444] invokeRestart(restart) [17:27:45.444] muffled <- TRUE [17:27:45.444] break [17:27:45.444] } [17:27:45.444] } [17:27:45.444] } [17:27:45.444] invisible(muffled) [17:27:45.444] } [17:27:45.444] muffleCondition(cond, pattern = "^muffle") [17:27:45.444] } [17:27:45.444] } [17:27:45.444] } [17:27:45.444] })) [17:27:45.444] }, error = function(ex) { [17:27:45.444] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.444] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.444] ...future.rng), started = ...future.startTime, [17:27:45.444] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.444] version = "1.8"), class = "FutureResult") [17:27:45.444] }, finally = { [17:27:45.444] if (!identical(...future.workdir, getwd())) [17:27:45.444] setwd(...future.workdir) [17:27:45.444] { [17:27:45.444] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.444] ...future.oldOptions$nwarnings <- NULL [17:27:45.444] } [17:27:45.444] base::options(...future.oldOptions) [17:27:45.444] if (.Platform$OS.type == "windows") { [17:27:45.444] old_names <- names(...future.oldEnvVars) [17:27:45.444] envs <- base::Sys.getenv() [17:27:45.444] names <- names(envs) [17:27:45.444] common <- intersect(names, old_names) [17:27:45.444] added <- setdiff(names, old_names) [17:27:45.444] removed <- setdiff(old_names, names) [17:27:45.444] changed <- common[...future.oldEnvVars[common] != [17:27:45.444] envs[common]] [17:27:45.444] NAMES <- toupper(changed) [17:27:45.444] args <- list() [17:27:45.444] for (kk in seq_along(NAMES)) { [17:27:45.444] name <- changed[[kk]] [17:27:45.444] NAME <- NAMES[[kk]] [17:27:45.444] if (name != NAME && is.element(NAME, old_names)) [17:27:45.444] next [17:27:45.444] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.444] } [17:27:45.444] NAMES <- toupper(added) [17:27:45.444] for (kk in seq_along(NAMES)) { [17:27:45.444] name <- added[[kk]] [17:27:45.444] NAME <- NAMES[[kk]] [17:27:45.444] if (name != NAME && is.element(NAME, old_names)) [17:27:45.444] next [17:27:45.444] args[[name]] <- "" [17:27:45.444] } [17:27:45.444] NAMES <- toupper(removed) [17:27:45.444] for (kk in seq_along(NAMES)) { [17:27:45.444] name <- removed[[kk]] [17:27:45.444] NAME <- NAMES[[kk]] [17:27:45.444] if (name != NAME && is.element(NAME, old_names)) [17:27:45.444] next [17:27:45.444] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.444] } [17:27:45.444] if (length(args) > 0) [17:27:45.444] base::do.call(base::Sys.setenv, args = args) [17:27:45.444] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.444] } [17:27:45.444] { [17:27:45.444] if (base::length(...future.futureOptionsAdded) > [17:27:45.444] 0L) { [17:27:45.444] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.444] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.444] base::options(opts) [17:27:45.444] } [17:27:45.444] { [17:27:45.444] { [17:27:45.444] NULL [17:27:45.444] RNGkind("Mersenne-Twister") [17:27:45.444] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.444] inherits = FALSE) [17:27:45.444] } [17:27:45.444] options(future.plan = NULL) [17:27:45.444] if (is.na(NA_character_)) [17:27:45.444] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.444] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.444] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.444] .init = FALSE) [17:27:45.444] } [17:27:45.444] } [17:27:45.444] } [17:27:45.444] }) [17:27:45.444] if (TRUE) { [17:27:45.444] base::sink(type = "output", split = FALSE) [17:27:45.444] if (TRUE) { [17:27:45.444] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.444] } [17:27:45.444] else { [17:27:45.444] ...future.result["stdout"] <- base::list(NULL) [17:27:45.444] } [17:27:45.444] base::close(...future.stdout) [17:27:45.444] ...future.stdout <- NULL [17:27:45.444] } [17:27:45.444] ...future.result$conditions <- ...future.conditions [17:27:45.444] ...future.result$finished <- base::Sys.time() [17:27:45.444] ...future.result [17:27:45.444] } [17:27:45.447] assign_globals() ... [17:27:45.448] List of 1 [17:27:45.448] $ kk: int 1 [17:27:45.448] - attr(*, "where")=List of 1 [17:27:45.448] ..$ kk: [17:27:45.448] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:27:45.448] - attr(*, "resolved")= logi FALSE [17:27:45.448] - attr(*, "total_size")= num 56 [17:27:45.448] - attr(*, "already-done")= logi TRUE [17:27:45.450] - copied 'kk' to environment [17:27:45.451] assign_globals() ... done [17:27:45.451] plan(): Setting new future strategy stack: [17:27:45.451] List of future strategies: [17:27:45.451] 1. sequential: [17:27:45.451] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.451] - tweaked: FALSE [17:27:45.451] - call: NULL [17:27:45.452] plan(): nbrOfWorkers() = 1 [17:27:45.561] plan(): Setting new future strategy stack: [17:27:45.561] List of future strategies: [17:27:45.561] 1. sequential: [17:27:45.561] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.561] - tweaked: FALSE [17:27:45.561] - call: plan(strategy) [17:27:45.561] plan(): nbrOfWorkers() = 1 [17:27:45.562] SequentialFuture started (and completed) [17:27:45.562] - Launch lazy future ... done [17:27:45.562] run() for 'SequentialFuture' ... done [17:27:45.562] resolved() for 'SequentialFuture' ... [17:27:45.562] - state: 'finished' [17:27:45.563] - run: TRUE [17:27:45.563] - result: 'FutureResult' [17:27:45.563] resolved() for 'SequentialFuture' ... done [17:27:45.563] Future #1 [17:27:45.563] length: 2 (resolved future 1) [17:27:45.564] run() for 'Future' ... [17:27:45.564] - state: 'created' [17:27:45.564] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.564] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.565] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.565] - Field: 'label' [17:27:45.565] - Field: 'local' [17:27:45.565] - Field: 'owner' [17:27:45.565] - Field: 'envir' [17:27:45.565] - Field: 'packages' [17:27:45.566] - Field: 'gc' [17:27:45.566] - Field: 'conditions' [17:27:45.566] - Field: 'expr' [17:27:45.566] - Field: 'uuid' [17:27:45.566] - Field: 'seed' [17:27:45.566] - Field: 'version' [17:27:45.567] - Field: 'result' [17:27:45.567] - Field: 'asynchronous' [17:27:45.567] - Field: 'calls' [17:27:45.567] - Field: 'globals' [17:27:45.567] - Field: 'stdout' [17:27:45.567] - Field: 'earlySignal' [17:27:45.568] - Field: 'lazy' [17:27:45.568] - Field: 'state' [17:27:45.568] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.568] - Launch lazy future ... [17:27:45.568] Packages needed by the future expression (n = 0): [17:27:45.569] Packages needed by future strategies (n = 0): [17:27:45.569] { [17:27:45.569] { [17:27:45.569] { [17:27:45.569] ...future.startTime <- base::Sys.time() [17:27:45.569] { [17:27:45.569] { [17:27:45.569] { [17:27:45.569] base::local({ [17:27:45.569] has_future <- base::requireNamespace("future", [17:27:45.569] quietly = TRUE) [17:27:45.569] if (has_future) { [17:27:45.569] ns <- base::getNamespace("future") [17:27:45.569] version <- ns[[".package"]][["version"]] [17:27:45.569] if (is.null(version)) [17:27:45.569] version <- utils::packageVersion("future") [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] version <- NULL [17:27:45.569] } [17:27:45.569] if (!has_future || version < "1.8.0") { [17:27:45.569] info <- base::c(r_version = base::gsub("R version ", [17:27:45.569] "", base::R.version$version.string), [17:27:45.569] platform = base::sprintf("%s (%s-bit)", [17:27:45.569] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.569] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.569] "release", "version")], collapse = " "), [17:27:45.569] hostname = base::Sys.info()[["nodename"]]) [17:27:45.569] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.569] info) [17:27:45.569] info <- base::paste(info, collapse = "; ") [17:27:45.569] if (!has_future) { [17:27:45.569] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.569] info) [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.569] info, version) [17:27:45.569] } [17:27:45.569] base::stop(msg) [17:27:45.569] } [17:27:45.569] }) [17:27:45.569] } [17:27:45.569] ...future.strategy.old <- future::plan("list") [17:27:45.569] options(future.plan = NULL) [17:27:45.569] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.569] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.569] } [17:27:45.569] ...future.workdir <- getwd() [17:27:45.569] } [17:27:45.569] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.569] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.569] } [17:27:45.569] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.569] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.569] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.569] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.569] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.569] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.569] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.569] base::names(...future.oldOptions)) [17:27:45.569] } [17:27:45.569] if (FALSE) { [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] if (TRUE) { [17:27:45.569] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.569] open = "w") [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.569] windows = "NUL", "/dev/null"), open = "w") [17:27:45.569] } [17:27:45.569] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.569] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.569] base::sink(type = "output", split = FALSE) [17:27:45.569] base::close(...future.stdout) [17:27:45.569] }, add = TRUE) [17:27:45.569] } [17:27:45.569] ...future.frame <- base::sys.nframe() [17:27:45.569] ...future.conditions <- base::list() [17:27:45.569] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.569] if (FALSE) { [17:27:45.569] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.569] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.569] } [17:27:45.569] ...future.result <- base::tryCatch({ [17:27:45.569] base::withCallingHandlers({ [17:27:45.569] ...future.value <- base::withVisible(base::local({ [17:27:45.569] Sys.sleep(0.1) [17:27:45.569] kk [17:27:45.569] })) [17:27:45.569] future::FutureResult(value = ...future.value$value, [17:27:45.569] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.569] ...future.rng), globalenv = if (FALSE) [17:27:45.569] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.569] ...future.globalenv.names)) [17:27:45.569] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.569] }, condition = base::local({ [17:27:45.569] c <- base::c [17:27:45.569] inherits <- base::inherits [17:27:45.569] invokeRestart <- base::invokeRestart [17:27:45.569] length <- base::length [17:27:45.569] list <- base::list [17:27:45.569] seq.int <- base::seq.int [17:27:45.569] signalCondition <- base::signalCondition [17:27:45.569] sys.calls <- base::sys.calls [17:27:45.569] `[[` <- base::`[[` [17:27:45.569] `+` <- base::`+` [17:27:45.569] `<<-` <- base::`<<-` [17:27:45.569] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.569] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.569] 3L)] [17:27:45.569] } [17:27:45.569] function(cond) { [17:27:45.569] is_error <- inherits(cond, "error") [17:27:45.569] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.569] NULL) [17:27:45.569] if (is_error) { [17:27:45.569] sessionInformation <- function() { [17:27:45.569] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.569] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.569] search = base::search(), system = base::Sys.info()) [17:27:45.569] } [17:27:45.569] ...future.conditions[[length(...future.conditions) + [17:27:45.569] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.569] cond$call), session = sessionInformation(), [17:27:45.569] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.569] signalCondition(cond) [17:27:45.569] } [17:27:45.569] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.569] "immediateCondition"))) { [17:27:45.569] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.569] ...future.conditions[[length(...future.conditions) + [17:27:45.569] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.569] if (TRUE && !signal) { [17:27:45.569] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.569] { [17:27:45.569] inherits <- base::inherits [17:27:45.569] invokeRestart <- base::invokeRestart [17:27:45.569] is.null <- base::is.null [17:27:45.569] muffled <- FALSE [17:27:45.569] if (inherits(cond, "message")) { [17:27:45.569] muffled <- grepl(pattern, "muffleMessage") [17:27:45.569] if (muffled) [17:27:45.569] invokeRestart("muffleMessage") [17:27:45.569] } [17:27:45.569] else if (inherits(cond, "warning")) { [17:27:45.569] muffled <- grepl(pattern, "muffleWarning") [17:27:45.569] if (muffled) [17:27:45.569] invokeRestart("muffleWarning") [17:27:45.569] } [17:27:45.569] else if (inherits(cond, "condition")) { [17:27:45.569] if (!is.null(pattern)) { [17:27:45.569] computeRestarts <- base::computeRestarts [17:27:45.569] grepl <- base::grepl [17:27:45.569] restarts <- computeRestarts(cond) [17:27:45.569] for (restart in restarts) { [17:27:45.569] name <- restart$name [17:27:45.569] if (is.null(name)) [17:27:45.569] next [17:27:45.569] if (!grepl(pattern, name)) [17:27:45.569] next [17:27:45.569] invokeRestart(restart) [17:27:45.569] muffled <- TRUE [17:27:45.569] break [17:27:45.569] } [17:27:45.569] } [17:27:45.569] } [17:27:45.569] invisible(muffled) [17:27:45.569] } [17:27:45.569] muffleCondition(cond, pattern = "^muffle") [17:27:45.569] } [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] if (TRUE) { [17:27:45.569] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.569] { [17:27:45.569] inherits <- base::inherits [17:27:45.569] invokeRestart <- base::invokeRestart [17:27:45.569] is.null <- base::is.null [17:27:45.569] muffled <- FALSE [17:27:45.569] if (inherits(cond, "message")) { [17:27:45.569] muffled <- grepl(pattern, "muffleMessage") [17:27:45.569] if (muffled) [17:27:45.569] invokeRestart("muffleMessage") [17:27:45.569] } [17:27:45.569] else if (inherits(cond, "warning")) { [17:27:45.569] muffled <- grepl(pattern, "muffleWarning") [17:27:45.569] if (muffled) [17:27:45.569] invokeRestart("muffleWarning") [17:27:45.569] } [17:27:45.569] else if (inherits(cond, "condition")) { [17:27:45.569] if (!is.null(pattern)) { [17:27:45.569] computeRestarts <- base::computeRestarts [17:27:45.569] grepl <- base::grepl [17:27:45.569] restarts <- computeRestarts(cond) [17:27:45.569] for (restart in restarts) { [17:27:45.569] name <- restart$name [17:27:45.569] if (is.null(name)) [17:27:45.569] next [17:27:45.569] if (!grepl(pattern, name)) [17:27:45.569] next [17:27:45.569] invokeRestart(restart) [17:27:45.569] muffled <- TRUE [17:27:45.569] break [17:27:45.569] } [17:27:45.569] } [17:27:45.569] } [17:27:45.569] invisible(muffled) [17:27:45.569] } [17:27:45.569] muffleCondition(cond, pattern = "^muffle") [17:27:45.569] } [17:27:45.569] } [17:27:45.569] } [17:27:45.569] })) [17:27:45.569] }, error = function(ex) { [17:27:45.569] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.569] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.569] ...future.rng), started = ...future.startTime, [17:27:45.569] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.569] version = "1.8"), class = "FutureResult") [17:27:45.569] }, finally = { [17:27:45.569] if (!identical(...future.workdir, getwd())) [17:27:45.569] setwd(...future.workdir) [17:27:45.569] { [17:27:45.569] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.569] ...future.oldOptions$nwarnings <- NULL [17:27:45.569] } [17:27:45.569] base::options(...future.oldOptions) [17:27:45.569] if (.Platform$OS.type == "windows") { [17:27:45.569] old_names <- names(...future.oldEnvVars) [17:27:45.569] envs <- base::Sys.getenv() [17:27:45.569] names <- names(envs) [17:27:45.569] common <- intersect(names, old_names) [17:27:45.569] added <- setdiff(names, old_names) [17:27:45.569] removed <- setdiff(old_names, names) [17:27:45.569] changed <- common[...future.oldEnvVars[common] != [17:27:45.569] envs[common]] [17:27:45.569] NAMES <- toupper(changed) [17:27:45.569] args <- list() [17:27:45.569] for (kk in seq_along(NAMES)) { [17:27:45.569] name <- changed[[kk]] [17:27:45.569] NAME <- NAMES[[kk]] [17:27:45.569] if (name != NAME && is.element(NAME, old_names)) [17:27:45.569] next [17:27:45.569] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.569] } [17:27:45.569] NAMES <- toupper(added) [17:27:45.569] for (kk in seq_along(NAMES)) { [17:27:45.569] name <- added[[kk]] [17:27:45.569] NAME <- NAMES[[kk]] [17:27:45.569] if (name != NAME && is.element(NAME, old_names)) [17:27:45.569] next [17:27:45.569] args[[name]] <- "" [17:27:45.569] } [17:27:45.569] NAMES <- toupper(removed) [17:27:45.569] for (kk in seq_along(NAMES)) { [17:27:45.569] name <- removed[[kk]] [17:27:45.569] NAME <- NAMES[[kk]] [17:27:45.569] if (name != NAME && is.element(NAME, old_names)) [17:27:45.569] next [17:27:45.569] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.569] } [17:27:45.569] if (length(args) > 0) [17:27:45.569] base::do.call(base::Sys.setenv, args = args) [17:27:45.569] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.569] } [17:27:45.569] { [17:27:45.569] if (base::length(...future.futureOptionsAdded) > [17:27:45.569] 0L) { [17:27:45.569] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.569] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.569] base::options(opts) [17:27:45.569] } [17:27:45.569] { [17:27:45.569] { [17:27:45.569] NULL [17:27:45.569] RNGkind("Mersenne-Twister") [17:27:45.569] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.569] inherits = FALSE) [17:27:45.569] } [17:27:45.569] options(future.plan = NULL) [17:27:45.569] if (is.na(NA_character_)) [17:27:45.569] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.569] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.569] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.569] .init = FALSE) [17:27:45.569] } [17:27:45.569] } [17:27:45.569] } [17:27:45.569] }) [17:27:45.569] if (TRUE) { [17:27:45.569] base::sink(type = "output", split = FALSE) [17:27:45.569] if (TRUE) { [17:27:45.569] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.569] } [17:27:45.569] else { [17:27:45.569] ...future.result["stdout"] <- base::list(NULL) [17:27:45.569] } [17:27:45.569] base::close(...future.stdout) [17:27:45.569] ...future.stdout <- NULL [17:27:45.569] } [17:27:45.569] ...future.result$conditions <- ...future.conditions [17:27:45.569] ...future.result$finished <- base::Sys.time() [17:27:45.569] ...future.result [17:27:45.569] } [17:27:45.573] assign_globals() ... [17:27:45.573] List of 1 [17:27:45.573] $ kk: int 2 [17:27:45.573] - attr(*, "where")=List of 1 [17:27:45.573] ..$ kk: [17:27:45.573] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:27:45.573] - attr(*, "resolved")= logi FALSE [17:27:45.573] - attr(*, "total_size")= num 56 [17:27:45.573] - attr(*, "already-done")= logi TRUE [17:27:45.576] - copied 'kk' to environment [17:27:45.576] assign_globals() ... done [17:27:45.576] plan(): Setting new future strategy stack: [17:27:45.577] List of future strategies: [17:27:45.577] 1. sequential: [17:27:45.577] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.577] - tweaked: FALSE [17:27:45.577] - call: NULL [17:27:45.577] plan(): nbrOfWorkers() = 1 [17:27:45.686] plan(): Setting new future strategy stack: [17:27:45.686] List of future strategies: [17:27:45.686] 1. sequential: [17:27:45.686] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.686] - tweaked: FALSE [17:27:45.686] - call: plan(strategy) [17:27:45.686] plan(): nbrOfWorkers() = 1 [17:27:45.687] SequentialFuture started (and completed) [17:27:45.687] - Launch lazy future ... done [17:27:45.687] run() for 'SequentialFuture' ... done [17:27:45.687] resolved() for 'SequentialFuture' ... [17:27:45.688] - state: 'finished' [17:27:45.688] - run: TRUE [17:27:45.688] - result: 'FutureResult' [17:27:45.688] resolved() for 'SequentialFuture' ... done [17:27:45.688] Future #2 [17:27:45.688] length: 1 (resolved future 2) [17:27:45.689] run() for 'Future' ... [17:27:45.689] - state: 'created' [17:27:45.689] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.689] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.690] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.690] - Field: 'label' [17:27:45.690] - Field: 'local' [17:27:45.690] - Field: 'owner' [17:27:45.690] - Field: 'envir' [17:27:45.691] - Field: 'packages' [17:27:45.692] - Field: 'gc' [17:27:45.692] - Field: 'conditions' [17:27:45.692] - Field: 'expr' [17:27:45.692] - Field: 'uuid' [17:27:45.692] - Field: 'seed' [17:27:45.692] - Field: 'version' [17:27:45.693] - Field: 'result' [17:27:45.693] - Field: 'asynchronous' [17:27:45.693] - Field: 'calls' [17:27:45.693] - Field: 'globals' [17:27:45.693] - Field: 'stdout' [17:27:45.693] - Field: 'earlySignal' [17:27:45.694] - Field: 'lazy' [17:27:45.694] - Field: 'state' [17:27:45.694] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.694] - Launch lazy future ... [17:27:45.694] Packages needed by the future expression (n = 0): [17:27:45.695] Packages needed by future strategies (n = 0): [17:27:45.695] { [17:27:45.695] { [17:27:45.695] { [17:27:45.695] ...future.startTime <- base::Sys.time() [17:27:45.695] { [17:27:45.695] { [17:27:45.695] { [17:27:45.695] base::local({ [17:27:45.695] has_future <- base::requireNamespace("future", [17:27:45.695] quietly = TRUE) [17:27:45.695] if (has_future) { [17:27:45.695] ns <- base::getNamespace("future") [17:27:45.695] version <- ns[[".package"]][["version"]] [17:27:45.695] if (is.null(version)) [17:27:45.695] version <- utils::packageVersion("future") [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] version <- NULL [17:27:45.695] } [17:27:45.695] if (!has_future || version < "1.8.0") { [17:27:45.695] info <- base::c(r_version = base::gsub("R version ", [17:27:45.695] "", base::R.version$version.string), [17:27:45.695] platform = base::sprintf("%s (%s-bit)", [17:27:45.695] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.695] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.695] "release", "version")], collapse = " "), [17:27:45.695] hostname = base::Sys.info()[["nodename"]]) [17:27:45.695] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.695] info) [17:27:45.695] info <- base::paste(info, collapse = "; ") [17:27:45.695] if (!has_future) { [17:27:45.695] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.695] info) [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.695] info, version) [17:27:45.695] } [17:27:45.695] base::stop(msg) [17:27:45.695] } [17:27:45.695] }) [17:27:45.695] } [17:27:45.695] ...future.strategy.old <- future::plan("list") [17:27:45.695] options(future.plan = NULL) [17:27:45.695] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.695] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.695] } [17:27:45.695] ...future.workdir <- getwd() [17:27:45.695] } [17:27:45.695] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.695] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.695] } [17:27:45.695] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.695] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.695] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.695] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.695] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.695] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.695] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.695] base::names(...future.oldOptions)) [17:27:45.695] } [17:27:45.695] if (FALSE) { [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] if (TRUE) { [17:27:45.695] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.695] open = "w") [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.695] windows = "NUL", "/dev/null"), open = "w") [17:27:45.695] } [17:27:45.695] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.695] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.695] base::sink(type = "output", split = FALSE) [17:27:45.695] base::close(...future.stdout) [17:27:45.695] }, add = TRUE) [17:27:45.695] } [17:27:45.695] ...future.frame <- base::sys.nframe() [17:27:45.695] ...future.conditions <- base::list() [17:27:45.695] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.695] if (FALSE) { [17:27:45.695] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.695] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.695] } [17:27:45.695] ...future.result <- base::tryCatch({ [17:27:45.695] base::withCallingHandlers({ [17:27:45.695] ...future.value <- base::withVisible(base::local({ [17:27:45.695] Sys.sleep(0.1) [17:27:45.695] kk [17:27:45.695] })) [17:27:45.695] future::FutureResult(value = ...future.value$value, [17:27:45.695] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.695] ...future.rng), globalenv = if (FALSE) [17:27:45.695] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.695] ...future.globalenv.names)) [17:27:45.695] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.695] }, condition = base::local({ [17:27:45.695] c <- base::c [17:27:45.695] inherits <- base::inherits [17:27:45.695] invokeRestart <- base::invokeRestart [17:27:45.695] length <- base::length [17:27:45.695] list <- base::list [17:27:45.695] seq.int <- base::seq.int [17:27:45.695] signalCondition <- base::signalCondition [17:27:45.695] sys.calls <- base::sys.calls [17:27:45.695] `[[` <- base::`[[` [17:27:45.695] `+` <- base::`+` [17:27:45.695] `<<-` <- base::`<<-` [17:27:45.695] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.695] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.695] 3L)] [17:27:45.695] } [17:27:45.695] function(cond) { [17:27:45.695] is_error <- inherits(cond, "error") [17:27:45.695] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.695] NULL) [17:27:45.695] if (is_error) { [17:27:45.695] sessionInformation <- function() { [17:27:45.695] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.695] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.695] search = base::search(), system = base::Sys.info()) [17:27:45.695] } [17:27:45.695] ...future.conditions[[length(...future.conditions) + [17:27:45.695] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.695] cond$call), session = sessionInformation(), [17:27:45.695] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.695] signalCondition(cond) [17:27:45.695] } [17:27:45.695] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.695] "immediateCondition"))) { [17:27:45.695] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.695] ...future.conditions[[length(...future.conditions) + [17:27:45.695] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.695] if (TRUE && !signal) { [17:27:45.695] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.695] { [17:27:45.695] inherits <- base::inherits [17:27:45.695] invokeRestart <- base::invokeRestart [17:27:45.695] is.null <- base::is.null [17:27:45.695] muffled <- FALSE [17:27:45.695] if (inherits(cond, "message")) { [17:27:45.695] muffled <- grepl(pattern, "muffleMessage") [17:27:45.695] if (muffled) [17:27:45.695] invokeRestart("muffleMessage") [17:27:45.695] } [17:27:45.695] else if (inherits(cond, "warning")) { [17:27:45.695] muffled <- grepl(pattern, "muffleWarning") [17:27:45.695] if (muffled) [17:27:45.695] invokeRestart("muffleWarning") [17:27:45.695] } [17:27:45.695] else if (inherits(cond, "condition")) { [17:27:45.695] if (!is.null(pattern)) { [17:27:45.695] computeRestarts <- base::computeRestarts [17:27:45.695] grepl <- base::grepl [17:27:45.695] restarts <- computeRestarts(cond) [17:27:45.695] for (restart in restarts) { [17:27:45.695] name <- restart$name [17:27:45.695] if (is.null(name)) [17:27:45.695] next [17:27:45.695] if (!grepl(pattern, name)) [17:27:45.695] next [17:27:45.695] invokeRestart(restart) [17:27:45.695] muffled <- TRUE [17:27:45.695] break [17:27:45.695] } [17:27:45.695] } [17:27:45.695] } [17:27:45.695] invisible(muffled) [17:27:45.695] } [17:27:45.695] muffleCondition(cond, pattern = "^muffle") [17:27:45.695] } [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] if (TRUE) { [17:27:45.695] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.695] { [17:27:45.695] inherits <- base::inherits [17:27:45.695] invokeRestart <- base::invokeRestart [17:27:45.695] is.null <- base::is.null [17:27:45.695] muffled <- FALSE [17:27:45.695] if (inherits(cond, "message")) { [17:27:45.695] muffled <- grepl(pattern, "muffleMessage") [17:27:45.695] if (muffled) [17:27:45.695] invokeRestart("muffleMessage") [17:27:45.695] } [17:27:45.695] else if (inherits(cond, "warning")) { [17:27:45.695] muffled <- grepl(pattern, "muffleWarning") [17:27:45.695] if (muffled) [17:27:45.695] invokeRestart("muffleWarning") [17:27:45.695] } [17:27:45.695] else if (inherits(cond, "condition")) { [17:27:45.695] if (!is.null(pattern)) { [17:27:45.695] computeRestarts <- base::computeRestarts [17:27:45.695] grepl <- base::grepl [17:27:45.695] restarts <- computeRestarts(cond) [17:27:45.695] for (restart in restarts) { [17:27:45.695] name <- restart$name [17:27:45.695] if (is.null(name)) [17:27:45.695] next [17:27:45.695] if (!grepl(pattern, name)) [17:27:45.695] next [17:27:45.695] invokeRestart(restart) [17:27:45.695] muffled <- TRUE [17:27:45.695] break [17:27:45.695] } [17:27:45.695] } [17:27:45.695] } [17:27:45.695] invisible(muffled) [17:27:45.695] } [17:27:45.695] muffleCondition(cond, pattern = "^muffle") [17:27:45.695] } [17:27:45.695] } [17:27:45.695] } [17:27:45.695] })) [17:27:45.695] }, error = function(ex) { [17:27:45.695] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.695] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.695] ...future.rng), started = ...future.startTime, [17:27:45.695] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.695] version = "1.8"), class = "FutureResult") [17:27:45.695] }, finally = { [17:27:45.695] if (!identical(...future.workdir, getwd())) [17:27:45.695] setwd(...future.workdir) [17:27:45.695] { [17:27:45.695] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.695] ...future.oldOptions$nwarnings <- NULL [17:27:45.695] } [17:27:45.695] base::options(...future.oldOptions) [17:27:45.695] if (.Platform$OS.type == "windows") { [17:27:45.695] old_names <- names(...future.oldEnvVars) [17:27:45.695] envs <- base::Sys.getenv() [17:27:45.695] names <- names(envs) [17:27:45.695] common <- intersect(names, old_names) [17:27:45.695] added <- setdiff(names, old_names) [17:27:45.695] removed <- setdiff(old_names, names) [17:27:45.695] changed <- common[...future.oldEnvVars[common] != [17:27:45.695] envs[common]] [17:27:45.695] NAMES <- toupper(changed) [17:27:45.695] args <- list() [17:27:45.695] for (kk in seq_along(NAMES)) { [17:27:45.695] name <- changed[[kk]] [17:27:45.695] NAME <- NAMES[[kk]] [17:27:45.695] if (name != NAME && is.element(NAME, old_names)) [17:27:45.695] next [17:27:45.695] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.695] } [17:27:45.695] NAMES <- toupper(added) [17:27:45.695] for (kk in seq_along(NAMES)) { [17:27:45.695] name <- added[[kk]] [17:27:45.695] NAME <- NAMES[[kk]] [17:27:45.695] if (name != NAME && is.element(NAME, old_names)) [17:27:45.695] next [17:27:45.695] args[[name]] <- "" [17:27:45.695] } [17:27:45.695] NAMES <- toupper(removed) [17:27:45.695] for (kk in seq_along(NAMES)) { [17:27:45.695] name <- removed[[kk]] [17:27:45.695] NAME <- NAMES[[kk]] [17:27:45.695] if (name != NAME && is.element(NAME, old_names)) [17:27:45.695] next [17:27:45.695] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.695] } [17:27:45.695] if (length(args) > 0) [17:27:45.695] base::do.call(base::Sys.setenv, args = args) [17:27:45.695] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.695] } [17:27:45.695] { [17:27:45.695] if (base::length(...future.futureOptionsAdded) > [17:27:45.695] 0L) { [17:27:45.695] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.695] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.695] base::options(opts) [17:27:45.695] } [17:27:45.695] { [17:27:45.695] { [17:27:45.695] NULL [17:27:45.695] RNGkind("Mersenne-Twister") [17:27:45.695] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.695] inherits = FALSE) [17:27:45.695] } [17:27:45.695] options(future.plan = NULL) [17:27:45.695] if (is.na(NA_character_)) [17:27:45.695] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.695] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.695] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.695] .init = FALSE) [17:27:45.695] } [17:27:45.695] } [17:27:45.695] } [17:27:45.695] }) [17:27:45.695] if (TRUE) { [17:27:45.695] base::sink(type = "output", split = FALSE) [17:27:45.695] if (TRUE) { [17:27:45.695] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.695] } [17:27:45.695] else { [17:27:45.695] ...future.result["stdout"] <- base::list(NULL) [17:27:45.695] } [17:27:45.695] base::close(...future.stdout) [17:27:45.695] ...future.stdout <- NULL [17:27:45.695] } [17:27:45.695] ...future.result$conditions <- ...future.conditions [17:27:45.695] ...future.result$finished <- base::Sys.time() [17:27:45.695] ...future.result [17:27:45.695] } [17:27:45.699] assign_globals() ... [17:27:45.699] List of 1 [17:27:45.699] $ kk: int 3 [17:27:45.699] - attr(*, "where")=List of 1 [17:27:45.699] ..$ kk: [17:27:45.699] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:27:45.699] - attr(*, "resolved")= logi FALSE [17:27:45.699] - attr(*, "total_size")= num 56 [17:27:45.699] - attr(*, "already-done")= logi TRUE [17:27:45.702] - copied 'kk' to environment [17:27:45.702] assign_globals() ... done [17:27:45.702] plan(): Setting new future strategy stack: [17:27:45.702] List of future strategies: [17:27:45.702] 1. sequential: [17:27:45.702] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.702] - tweaked: FALSE [17:27:45.702] - call: NULL [17:27:45.703] plan(): nbrOfWorkers() = 1 [17:27:45.811] plan(): Setting new future strategy stack: [17:27:45.811] List of future strategies: [17:27:45.811] 1. sequential: [17:27:45.811] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.811] - tweaked: FALSE [17:27:45.811] - call: plan(strategy) [17:27:45.812] plan(): nbrOfWorkers() = 1 [17:27:45.812] SequentialFuture started (and completed) [17:27:45.812] - Launch lazy future ... done [17:27:45.812] run() for 'SequentialFuture' ... done [17:27:45.812] resolved() for 'SequentialFuture' ... [17:27:45.813] - state: 'finished' [17:27:45.813] - run: TRUE [17:27:45.813] - result: 'FutureResult' [17:27:45.813] resolved() for 'SequentialFuture' ... done [17:27:45.813] Future #3 [17:27:45.814] length: 0 (resolved future 3) [17:27:45.814] resolve() on list ... DONE *** resolve() for lists ... DONE *** resolve() for environments ... [17:27:45.815] resolve() on environment ... [17:27:45.815] recursive: 0 [17:27:45.816] elements: [2] 'a', 'b' [17:27:45.816] length: 1 (resolved future 1) [17:27:45.816] length: 0 (resolved future 2) [17:27:45.817] resolve() on environment ... DONE [17:27:45.817] getGlobalsAndPackages() ... [17:27:45.817] Searching for globals... [17:27:45.818] [17:27:45.818] Searching for globals ... DONE [17:27:45.818] - globals: [0] [17:27:45.818] getGlobalsAndPackages() ... DONE [17:27:45.818] run() for 'Future' ... [17:27:45.818] - state: 'created' [17:27:45.819] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.819] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.819] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.819] - Field: 'label' [17:27:45.820] - Field: 'local' [17:27:45.820] - Field: 'owner' [17:27:45.820] - Field: 'envir' [17:27:45.820] - Field: 'packages' [17:27:45.820] - Field: 'gc' [17:27:45.820] - Field: 'conditions' [17:27:45.821] - Field: 'expr' [17:27:45.821] - Field: 'uuid' [17:27:45.821] - Field: 'seed' [17:27:45.821] - Field: 'version' [17:27:45.821] - Field: 'result' [17:27:45.821] - Field: 'asynchronous' [17:27:45.822] - Field: 'calls' [17:27:45.822] - Field: 'globals' [17:27:45.822] - Field: 'stdout' [17:27:45.822] - Field: 'earlySignal' [17:27:45.822] - Field: 'lazy' [17:27:45.822] - Field: 'state' [17:27:45.823] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.823] - Launch lazy future ... [17:27:45.823] Packages needed by the future expression (n = 0): [17:27:45.823] Packages needed by future strategies (n = 0): [17:27:45.824] { [17:27:45.824] { [17:27:45.824] { [17:27:45.824] ...future.startTime <- base::Sys.time() [17:27:45.824] { [17:27:45.824] { [17:27:45.824] { [17:27:45.824] base::local({ [17:27:45.824] has_future <- base::requireNamespace("future", [17:27:45.824] quietly = TRUE) [17:27:45.824] if (has_future) { [17:27:45.824] ns <- base::getNamespace("future") [17:27:45.824] version <- ns[[".package"]][["version"]] [17:27:45.824] if (is.null(version)) [17:27:45.824] version <- utils::packageVersion("future") [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] version <- NULL [17:27:45.824] } [17:27:45.824] if (!has_future || version < "1.8.0") { [17:27:45.824] info <- base::c(r_version = base::gsub("R version ", [17:27:45.824] "", base::R.version$version.string), [17:27:45.824] platform = base::sprintf("%s (%s-bit)", [17:27:45.824] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.824] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.824] "release", "version")], collapse = " "), [17:27:45.824] hostname = base::Sys.info()[["nodename"]]) [17:27:45.824] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.824] info) [17:27:45.824] info <- base::paste(info, collapse = "; ") [17:27:45.824] if (!has_future) { [17:27:45.824] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.824] info) [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.824] info, version) [17:27:45.824] } [17:27:45.824] base::stop(msg) [17:27:45.824] } [17:27:45.824] }) [17:27:45.824] } [17:27:45.824] ...future.strategy.old <- future::plan("list") [17:27:45.824] options(future.plan = NULL) [17:27:45.824] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.824] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.824] } [17:27:45.824] ...future.workdir <- getwd() [17:27:45.824] } [17:27:45.824] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.824] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.824] } [17:27:45.824] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.824] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.824] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.824] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.824] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.824] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.824] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.824] base::names(...future.oldOptions)) [17:27:45.824] } [17:27:45.824] if (FALSE) { [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] if (TRUE) { [17:27:45.824] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.824] open = "w") [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.824] windows = "NUL", "/dev/null"), open = "w") [17:27:45.824] } [17:27:45.824] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.824] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.824] base::sink(type = "output", split = FALSE) [17:27:45.824] base::close(...future.stdout) [17:27:45.824] }, add = TRUE) [17:27:45.824] } [17:27:45.824] ...future.frame <- base::sys.nframe() [17:27:45.824] ...future.conditions <- base::list() [17:27:45.824] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.824] if (FALSE) { [17:27:45.824] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.824] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.824] } [17:27:45.824] ...future.result <- base::tryCatch({ [17:27:45.824] base::withCallingHandlers({ [17:27:45.824] ...future.value <- base::withVisible(base::local(1)) [17:27:45.824] future::FutureResult(value = ...future.value$value, [17:27:45.824] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.824] ...future.rng), globalenv = if (FALSE) [17:27:45.824] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.824] ...future.globalenv.names)) [17:27:45.824] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.824] }, condition = base::local({ [17:27:45.824] c <- base::c [17:27:45.824] inherits <- base::inherits [17:27:45.824] invokeRestart <- base::invokeRestart [17:27:45.824] length <- base::length [17:27:45.824] list <- base::list [17:27:45.824] seq.int <- base::seq.int [17:27:45.824] signalCondition <- base::signalCondition [17:27:45.824] sys.calls <- base::sys.calls [17:27:45.824] `[[` <- base::`[[` [17:27:45.824] `+` <- base::`+` [17:27:45.824] `<<-` <- base::`<<-` [17:27:45.824] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.824] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.824] 3L)] [17:27:45.824] } [17:27:45.824] function(cond) { [17:27:45.824] is_error <- inherits(cond, "error") [17:27:45.824] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.824] NULL) [17:27:45.824] if (is_error) { [17:27:45.824] sessionInformation <- function() { [17:27:45.824] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.824] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.824] search = base::search(), system = base::Sys.info()) [17:27:45.824] } [17:27:45.824] ...future.conditions[[length(...future.conditions) + [17:27:45.824] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.824] cond$call), session = sessionInformation(), [17:27:45.824] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.824] signalCondition(cond) [17:27:45.824] } [17:27:45.824] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.824] "immediateCondition"))) { [17:27:45.824] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.824] ...future.conditions[[length(...future.conditions) + [17:27:45.824] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.824] if (TRUE && !signal) { [17:27:45.824] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.824] { [17:27:45.824] inherits <- base::inherits [17:27:45.824] invokeRestart <- base::invokeRestart [17:27:45.824] is.null <- base::is.null [17:27:45.824] muffled <- FALSE [17:27:45.824] if (inherits(cond, "message")) { [17:27:45.824] muffled <- grepl(pattern, "muffleMessage") [17:27:45.824] if (muffled) [17:27:45.824] invokeRestart("muffleMessage") [17:27:45.824] } [17:27:45.824] else if (inherits(cond, "warning")) { [17:27:45.824] muffled <- grepl(pattern, "muffleWarning") [17:27:45.824] if (muffled) [17:27:45.824] invokeRestart("muffleWarning") [17:27:45.824] } [17:27:45.824] else if (inherits(cond, "condition")) { [17:27:45.824] if (!is.null(pattern)) { [17:27:45.824] computeRestarts <- base::computeRestarts [17:27:45.824] grepl <- base::grepl [17:27:45.824] restarts <- computeRestarts(cond) [17:27:45.824] for (restart in restarts) { [17:27:45.824] name <- restart$name [17:27:45.824] if (is.null(name)) [17:27:45.824] next [17:27:45.824] if (!grepl(pattern, name)) [17:27:45.824] next [17:27:45.824] invokeRestart(restart) [17:27:45.824] muffled <- TRUE [17:27:45.824] break [17:27:45.824] } [17:27:45.824] } [17:27:45.824] } [17:27:45.824] invisible(muffled) [17:27:45.824] } [17:27:45.824] muffleCondition(cond, pattern = "^muffle") [17:27:45.824] } [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] if (TRUE) { [17:27:45.824] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.824] { [17:27:45.824] inherits <- base::inherits [17:27:45.824] invokeRestart <- base::invokeRestart [17:27:45.824] is.null <- base::is.null [17:27:45.824] muffled <- FALSE [17:27:45.824] if (inherits(cond, "message")) { [17:27:45.824] muffled <- grepl(pattern, "muffleMessage") [17:27:45.824] if (muffled) [17:27:45.824] invokeRestart("muffleMessage") [17:27:45.824] } [17:27:45.824] else if (inherits(cond, "warning")) { [17:27:45.824] muffled <- grepl(pattern, "muffleWarning") [17:27:45.824] if (muffled) [17:27:45.824] invokeRestart("muffleWarning") [17:27:45.824] } [17:27:45.824] else if (inherits(cond, "condition")) { [17:27:45.824] if (!is.null(pattern)) { [17:27:45.824] computeRestarts <- base::computeRestarts [17:27:45.824] grepl <- base::grepl [17:27:45.824] restarts <- computeRestarts(cond) [17:27:45.824] for (restart in restarts) { [17:27:45.824] name <- restart$name [17:27:45.824] if (is.null(name)) [17:27:45.824] next [17:27:45.824] if (!grepl(pattern, name)) [17:27:45.824] next [17:27:45.824] invokeRestart(restart) [17:27:45.824] muffled <- TRUE [17:27:45.824] break [17:27:45.824] } [17:27:45.824] } [17:27:45.824] } [17:27:45.824] invisible(muffled) [17:27:45.824] } [17:27:45.824] muffleCondition(cond, pattern = "^muffle") [17:27:45.824] } [17:27:45.824] } [17:27:45.824] } [17:27:45.824] })) [17:27:45.824] }, error = function(ex) { [17:27:45.824] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.824] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.824] ...future.rng), started = ...future.startTime, [17:27:45.824] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.824] version = "1.8"), class = "FutureResult") [17:27:45.824] }, finally = { [17:27:45.824] if (!identical(...future.workdir, getwd())) [17:27:45.824] setwd(...future.workdir) [17:27:45.824] { [17:27:45.824] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.824] ...future.oldOptions$nwarnings <- NULL [17:27:45.824] } [17:27:45.824] base::options(...future.oldOptions) [17:27:45.824] if (.Platform$OS.type == "windows") { [17:27:45.824] old_names <- names(...future.oldEnvVars) [17:27:45.824] envs <- base::Sys.getenv() [17:27:45.824] names <- names(envs) [17:27:45.824] common <- intersect(names, old_names) [17:27:45.824] added <- setdiff(names, old_names) [17:27:45.824] removed <- setdiff(old_names, names) [17:27:45.824] changed <- common[...future.oldEnvVars[common] != [17:27:45.824] envs[common]] [17:27:45.824] NAMES <- toupper(changed) [17:27:45.824] args <- list() [17:27:45.824] for (kk in seq_along(NAMES)) { [17:27:45.824] name <- changed[[kk]] [17:27:45.824] NAME <- NAMES[[kk]] [17:27:45.824] if (name != NAME && is.element(NAME, old_names)) [17:27:45.824] next [17:27:45.824] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.824] } [17:27:45.824] NAMES <- toupper(added) [17:27:45.824] for (kk in seq_along(NAMES)) { [17:27:45.824] name <- added[[kk]] [17:27:45.824] NAME <- NAMES[[kk]] [17:27:45.824] if (name != NAME && is.element(NAME, old_names)) [17:27:45.824] next [17:27:45.824] args[[name]] <- "" [17:27:45.824] } [17:27:45.824] NAMES <- toupper(removed) [17:27:45.824] for (kk in seq_along(NAMES)) { [17:27:45.824] name <- removed[[kk]] [17:27:45.824] NAME <- NAMES[[kk]] [17:27:45.824] if (name != NAME && is.element(NAME, old_names)) [17:27:45.824] next [17:27:45.824] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.824] } [17:27:45.824] if (length(args) > 0) [17:27:45.824] base::do.call(base::Sys.setenv, args = args) [17:27:45.824] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.824] } [17:27:45.824] { [17:27:45.824] if (base::length(...future.futureOptionsAdded) > [17:27:45.824] 0L) { [17:27:45.824] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.824] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.824] base::options(opts) [17:27:45.824] } [17:27:45.824] { [17:27:45.824] { [17:27:45.824] NULL [17:27:45.824] RNGkind("Mersenne-Twister") [17:27:45.824] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.824] inherits = FALSE) [17:27:45.824] } [17:27:45.824] options(future.plan = NULL) [17:27:45.824] if (is.na(NA_character_)) [17:27:45.824] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.824] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.824] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.824] .init = FALSE) [17:27:45.824] } [17:27:45.824] } [17:27:45.824] } [17:27:45.824] }) [17:27:45.824] if (TRUE) { [17:27:45.824] base::sink(type = "output", split = FALSE) [17:27:45.824] if (TRUE) { [17:27:45.824] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.824] } [17:27:45.824] else { [17:27:45.824] ...future.result["stdout"] <- base::list(NULL) [17:27:45.824] } [17:27:45.824] base::close(...future.stdout) [17:27:45.824] ...future.stdout <- NULL [17:27:45.824] } [17:27:45.824] ...future.result$conditions <- ...future.conditions [17:27:45.824] ...future.result$finished <- base::Sys.time() [17:27:45.824] ...future.result [17:27:45.824] } [17:27:45.828] plan(): Setting new future strategy stack: [17:27:45.828] List of future strategies: [17:27:45.828] 1. sequential: [17:27:45.828] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.828] - tweaked: FALSE [17:27:45.828] - call: NULL [17:27:45.828] plan(): nbrOfWorkers() = 1 [17:27:45.829] plan(): Setting new future strategy stack: [17:27:45.830] List of future strategies: [17:27:45.830] 1. sequential: [17:27:45.830] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.830] - tweaked: FALSE [17:27:45.830] - call: plan(strategy) [17:27:45.830] plan(): nbrOfWorkers() = 1 [17:27:45.830] SequentialFuture started (and completed) [17:27:45.831] - Launch lazy future ... done [17:27:45.831] run() for 'SequentialFuture' ... done [17:27:45.831] getGlobalsAndPackages() ... [17:27:45.831] Searching for globals... [17:27:45.832] [17:27:45.832] Searching for globals ... DONE [17:27:45.832] - globals: [0] [17:27:45.832] getGlobalsAndPackages() ... DONE [17:27:45.832] run() for 'Future' ... [17:27:45.833] - state: 'created' [17:27:45.834] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.834] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.834] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.835] - Field: 'label' [17:27:45.835] - Field: 'local' [17:27:45.835] - Field: 'owner' [17:27:45.835] - Field: 'envir' [17:27:45.835] - Field: 'packages' [17:27:45.835] - Field: 'gc' [17:27:45.836] - Field: 'conditions' [17:27:45.836] - Field: 'expr' [17:27:45.836] - Field: 'uuid' [17:27:45.836] - Field: 'seed' [17:27:45.836] - Field: 'version' [17:27:45.836] - Field: 'result' [17:27:45.837] - Field: 'asynchronous' [17:27:45.837] - Field: 'calls' [17:27:45.837] - Field: 'globals' [17:27:45.837] - Field: 'stdout' [17:27:45.837] - Field: 'earlySignal' [17:27:45.837] - Field: 'lazy' [17:27:45.838] - Field: 'state' [17:27:45.838] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.838] - Launch lazy future ... [17:27:45.838] Packages needed by the future expression (n = 0): [17:27:45.838] Packages needed by future strategies (n = 0): [17:27:45.839] { [17:27:45.839] { [17:27:45.839] { [17:27:45.839] ...future.startTime <- base::Sys.time() [17:27:45.839] { [17:27:45.839] { [17:27:45.839] { [17:27:45.839] base::local({ [17:27:45.839] has_future <- base::requireNamespace("future", [17:27:45.839] quietly = TRUE) [17:27:45.839] if (has_future) { [17:27:45.839] ns <- base::getNamespace("future") [17:27:45.839] version <- ns[[".package"]][["version"]] [17:27:45.839] if (is.null(version)) [17:27:45.839] version <- utils::packageVersion("future") [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] version <- NULL [17:27:45.839] } [17:27:45.839] if (!has_future || version < "1.8.0") { [17:27:45.839] info <- base::c(r_version = base::gsub("R version ", [17:27:45.839] "", base::R.version$version.string), [17:27:45.839] platform = base::sprintf("%s (%s-bit)", [17:27:45.839] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.839] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.839] "release", "version")], collapse = " "), [17:27:45.839] hostname = base::Sys.info()[["nodename"]]) [17:27:45.839] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.839] info) [17:27:45.839] info <- base::paste(info, collapse = "; ") [17:27:45.839] if (!has_future) { [17:27:45.839] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.839] info) [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.839] info, version) [17:27:45.839] } [17:27:45.839] base::stop(msg) [17:27:45.839] } [17:27:45.839] }) [17:27:45.839] } [17:27:45.839] ...future.strategy.old <- future::plan("list") [17:27:45.839] options(future.plan = NULL) [17:27:45.839] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.839] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.839] } [17:27:45.839] ...future.workdir <- getwd() [17:27:45.839] } [17:27:45.839] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.839] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.839] } [17:27:45.839] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.839] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.839] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.839] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.839] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.839] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.839] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.839] base::names(...future.oldOptions)) [17:27:45.839] } [17:27:45.839] if (FALSE) { [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] if (TRUE) { [17:27:45.839] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.839] open = "w") [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.839] windows = "NUL", "/dev/null"), open = "w") [17:27:45.839] } [17:27:45.839] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.839] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.839] base::sink(type = "output", split = FALSE) [17:27:45.839] base::close(...future.stdout) [17:27:45.839] }, add = TRUE) [17:27:45.839] } [17:27:45.839] ...future.frame <- base::sys.nframe() [17:27:45.839] ...future.conditions <- base::list() [17:27:45.839] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.839] if (FALSE) { [17:27:45.839] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.839] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.839] } [17:27:45.839] ...future.result <- base::tryCatch({ [17:27:45.839] base::withCallingHandlers({ [17:27:45.839] ...future.value <- base::withVisible(base::local(2)) [17:27:45.839] future::FutureResult(value = ...future.value$value, [17:27:45.839] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.839] ...future.rng), globalenv = if (FALSE) [17:27:45.839] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.839] ...future.globalenv.names)) [17:27:45.839] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.839] }, condition = base::local({ [17:27:45.839] c <- base::c [17:27:45.839] inherits <- base::inherits [17:27:45.839] invokeRestart <- base::invokeRestart [17:27:45.839] length <- base::length [17:27:45.839] list <- base::list [17:27:45.839] seq.int <- base::seq.int [17:27:45.839] signalCondition <- base::signalCondition [17:27:45.839] sys.calls <- base::sys.calls [17:27:45.839] `[[` <- base::`[[` [17:27:45.839] `+` <- base::`+` [17:27:45.839] `<<-` <- base::`<<-` [17:27:45.839] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.839] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.839] 3L)] [17:27:45.839] } [17:27:45.839] function(cond) { [17:27:45.839] is_error <- inherits(cond, "error") [17:27:45.839] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.839] NULL) [17:27:45.839] if (is_error) { [17:27:45.839] sessionInformation <- function() { [17:27:45.839] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.839] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.839] search = base::search(), system = base::Sys.info()) [17:27:45.839] } [17:27:45.839] ...future.conditions[[length(...future.conditions) + [17:27:45.839] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.839] cond$call), session = sessionInformation(), [17:27:45.839] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.839] signalCondition(cond) [17:27:45.839] } [17:27:45.839] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.839] "immediateCondition"))) { [17:27:45.839] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.839] ...future.conditions[[length(...future.conditions) + [17:27:45.839] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.839] if (TRUE && !signal) { [17:27:45.839] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.839] { [17:27:45.839] inherits <- base::inherits [17:27:45.839] invokeRestart <- base::invokeRestart [17:27:45.839] is.null <- base::is.null [17:27:45.839] muffled <- FALSE [17:27:45.839] if (inherits(cond, "message")) { [17:27:45.839] muffled <- grepl(pattern, "muffleMessage") [17:27:45.839] if (muffled) [17:27:45.839] invokeRestart("muffleMessage") [17:27:45.839] } [17:27:45.839] else if (inherits(cond, "warning")) { [17:27:45.839] muffled <- grepl(pattern, "muffleWarning") [17:27:45.839] if (muffled) [17:27:45.839] invokeRestart("muffleWarning") [17:27:45.839] } [17:27:45.839] else if (inherits(cond, "condition")) { [17:27:45.839] if (!is.null(pattern)) { [17:27:45.839] computeRestarts <- base::computeRestarts [17:27:45.839] grepl <- base::grepl [17:27:45.839] restarts <- computeRestarts(cond) [17:27:45.839] for (restart in restarts) { [17:27:45.839] name <- restart$name [17:27:45.839] if (is.null(name)) [17:27:45.839] next [17:27:45.839] if (!grepl(pattern, name)) [17:27:45.839] next [17:27:45.839] invokeRestart(restart) [17:27:45.839] muffled <- TRUE [17:27:45.839] break [17:27:45.839] } [17:27:45.839] } [17:27:45.839] } [17:27:45.839] invisible(muffled) [17:27:45.839] } [17:27:45.839] muffleCondition(cond, pattern = "^muffle") [17:27:45.839] } [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] if (TRUE) { [17:27:45.839] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.839] { [17:27:45.839] inherits <- base::inherits [17:27:45.839] invokeRestart <- base::invokeRestart [17:27:45.839] is.null <- base::is.null [17:27:45.839] muffled <- FALSE [17:27:45.839] if (inherits(cond, "message")) { [17:27:45.839] muffled <- grepl(pattern, "muffleMessage") [17:27:45.839] if (muffled) [17:27:45.839] invokeRestart("muffleMessage") [17:27:45.839] } [17:27:45.839] else if (inherits(cond, "warning")) { [17:27:45.839] muffled <- grepl(pattern, "muffleWarning") [17:27:45.839] if (muffled) [17:27:45.839] invokeRestart("muffleWarning") [17:27:45.839] } [17:27:45.839] else if (inherits(cond, "condition")) { [17:27:45.839] if (!is.null(pattern)) { [17:27:45.839] computeRestarts <- base::computeRestarts [17:27:45.839] grepl <- base::grepl [17:27:45.839] restarts <- computeRestarts(cond) [17:27:45.839] for (restart in restarts) { [17:27:45.839] name <- restart$name [17:27:45.839] if (is.null(name)) [17:27:45.839] next [17:27:45.839] if (!grepl(pattern, name)) [17:27:45.839] next [17:27:45.839] invokeRestart(restart) [17:27:45.839] muffled <- TRUE [17:27:45.839] break [17:27:45.839] } [17:27:45.839] } [17:27:45.839] } [17:27:45.839] invisible(muffled) [17:27:45.839] } [17:27:45.839] muffleCondition(cond, pattern = "^muffle") [17:27:45.839] } [17:27:45.839] } [17:27:45.839] } [17:27:45.839] })) [17:27:45.839] }, error = function(ex) { [17:27:45.839] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.839] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.839] ...future.rng), started = ...future.startTime, [17:27:45.839] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.839] version = "1.8"), class = "FutureResult") [17:27:45.839] }, finally = { [17:27:45.839] if (!identical(...future.workdir, getwd())) [17:27:45.839] setwd(...future.workdir) [17:27:45.839] { [17:27:45.839] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.839] ...future.oldOptions$nwarnings <- NULL [17:27:45.839] } [17:27:45.839] base::options(...future.oldOptions) [17:27:45.839] if (.Platform$OS.type == "windows") { [17:27:45.839] old_names <- names(...future.oldEnvVars) [17:27:45.839] envs <- base::Sys.getenv() [17:27:45.839] names <- names(envs) [17:27:45.839] common <- intersect(names, old_names) [17:27:45.839] added <- setdiff(names, old_names) [17:27:45.839] removed <- setdiff(old_names, names) [17:27:45.839] changed <- common[...future.oldEnvVars[common] != [17:27:45.839] envs[common]] [17:27:45.839] NAMES <- toupper(changed) [17:27:45.839] args <- list() [17:27:45.839] for (kk in seq_along(NAMES)) { [17:27:45.839] name <- changed[[kk]] [17:27:45.839] NAME <- NAMES[[kk]] [17:27:45.839] if (name != NAME && is.element(NAME, old_names)) [17:27:45.839] next [17:27:45.839] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.839] } [17:27:45.839] NAMES <- toupper(added) [17:27:45.839] for (kk in seq_along(NAMES)) { [17:27:45.839] name <- added[[kk]] [17:27:45.839] NAME <- NAMES[[kk]] [17:27:45.839] if (name != NAME && is.element(NAME, old_names)) [17:27:45.839] next [17:27:45.839] args[[name]] <- "" [17:27:45.839] } [17:27:45.839] NAMES <- toupper(removed) [17:27:45.839] for (kk in seq_along(NAMES)) { [17:27:45.839] name <- removed[[kk]] [17:27:45.839] NAME <- NAMES[[kk]] [17:27:45.839] if (name != NAME && is.element(NAME, old_names)) [17:27:45.839] next [17:27:45.839] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.839] } [17:27:45.839] if (length(args) > 0) [17:27:45.839] base::do.call(base::Sys.setenv, args = args) [17:27:45.839] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.839] } [17:27:45.839] { [17:27:45.839] if (base::length(...future.futureOptionsAdded) > [17:27:45.839] 0L) { [17:27:45.839] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.839] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.839] base::options(opts) [17:27:45.839] } [17:27:45.839] { [17:27:45.839] { [17:27:45.839] NULL [17:27:45.839] RNGkind("Mersenne-Twister") [17:27:45.839] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.839] inherits = FALSE) [17:27:45.839] } [17:27:45.839] options(future.plan = NULL) [17:27:45.839] if (is.na(NA_character_)) [17:27:45.839] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.839] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.839] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.839] .init = FALSE) [17:27:45.839] } [17:27:45.839] } [17:27:45.839] } [17:27:45.839] }) [17:27:45.839] if (TRUE) { [17:27:45.839] base::sink(type = "output", split = FALSE) [17:27:45.839] if (TRUE) { [17:27:45.839] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.839] } [17:27:45.839] else { [17:27:45.839] ...future.result["stdout"] <- base::list(NULL) [17:27:45.839] } [17:27:45.839] base::close(...future.stdout) [17:27:45.839] ...future.stdout <- NULL [17:27:45.839] } [17:27:45.839] ...future.result$conditions <- ...future.conditions [17:27:45.839] ...future.result$finished <- base::Sys.time() [17:27:45.839] ...future.result [17:27:45.839] } [17:27:45.843] plan(): Setting new future strategy stack: [17:27:45.843] List of future strategies: [17:27:45.843] 1. sequential: [17:27:45.843] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.843] - tweaked: FALSE [17:27:45.843] - call: NULL [17:27:45.844] plan(): nbrOfWorkers() = 1 [17:27:45.845] plan(): Setting new future strategy stack: [17:27:45.845] List of future strategies: [17:27:45.845] 1. sequential: [17:27:45.845] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.845] - tweaked: FALSE [17:27:45.845] - call: plan(strategy) [17:27:45.845] plan(): nbrOfWorkers() = 1 [17:27:45.846] SequentialFuture started (and completed) [17:27:45.846] - Launch lazy future ... done [17:27:45.846] run() for 'SequentialFuture' ... done [17:27:45.847] resolve() on environment ... [17:27:45.847] recursive: 0 [17:27:45.847] elements: [3] 'a', 'b', 'c' [17:27:45.848] resolved() for 'SequentialFuture' ... [17:27:45.848] - state: 'finished' [17:27:45.848] - run: TRUE [17:27:45.848] - result: 'FutureResult' [17:27:45.848] resolved() for 'SequentialFuture' ... done [17:27:45.848] Future #1 [17:27:45.849] length: 2 (resolved future 1) [17:27:45.849] resolved() for 'SequentialFuture' ... [17:27:45.849] - state: 'finished' [17:27:45.849] - run: TRUE [17:27:45.849] - result: 'FutureResult' [17:27:45.849] resolved() for 'SequentialFuture' ... done [17:27:45.850] Future #2 [17:27:45.850] length: 1 (resolved future 2) [17:27:45.850] length: 0 (resolved future 3) [17:27:45.850] resolve() on environment ... DONE [17:27:45.850] resolved() for 'SequentialFuture' ... [17:27:45.850] - state: 'finished' [17:27:45.851] - run: TRUE [17:27:45.851] - result: 'FutureResult' [17:27:45.851] resolved() for 'SequentialFuture' ... done [17:27:45.851] resolved() for 'SequentialFuture' ... [17:27:45.851] - state: 'finished' [17:27:45.852] - run: TRUE [17:27:45.852] - result: 'FutureResult' [17:27:45.852] resolved() for 'SequentialFuture' ... done [17:27:45.853] getGlobalsAndPackages() ... [17:27:45.853] Searching for globals... [17:27:45.854] - globals found: [1] '{' [17:27:45.854] Searching for globals ... DONE [17:27:45.854] Resolving globals: FALSE [17:27:45.854] [17:27:45.854] [17:27:45.855] getGlobalsAndPackages() ... DONE [17:27:45.855] run() for 'Future' ... [17:27:45.855] - state: 'created' [17:27:45.855] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.856] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.856] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.856] - Field: 'label' [17:27:45.856] - Field: 'local' [17:27:45.856] - Field: 'owner' [17:27:45.857] - Field: 'envir' [17:27:45.857] - Field: 'packages' [17:27:45.857] - Field: 'gc' [17:27:45.857] - Field: 'conditions' [17:27:45.857] - Field: 'expr' [17:27:45.857] - Field: 'uuid' [17:27:45.858] - Field: 'seed' [17:27:45.858] - Field: 'version' [17:27:45.858] - Field: 'result' [17:27:45.858] - Field: 'asynchronous' [17:27:45.858] - Field: 'calls' [17:27:45.858] - Field: 'globals' [17:27:45.859] - Field: 'stdout' [17:27:45.859] - Field: 'earlySignal' [17:27:45.859] - Field: 'lazy' [17:27:45.859] - Field: 'state' [17:27:45.859] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.859] - Launch lazy future ... [17:27:45.860] Packages needed by the future expression (n = 0): [17:27:45.860] Packages needed by future strategies (n = 0): [17:27:45.860] { [17:27:45.860] { [17:27:45.860] { [17:27:45.860] ...future.startTime <- base::Sys.time() [17:27:45.860] { [17:27:45.860] { [17:27:45.860] { [17:27:45.860] base::local({ [17:27:45.860] has_future <- base::requireNamespace("future", [17:27:45.860] quietly = TRUE) [17:27:45.860] if (has_future) { [17:27:45.860] ns <- base::getNamespace("future") [17:27:45.860] version <- ns[[".package"]][["version"]] [17:27:45.860] if (is.null(version)) [17:27:45.860] version <- utils::packageVersion("future") [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] version <- NULL [17:27:45.860] } [17:27:45.860] if (!has_future || version < "1.8.0") { [17:27:45.860] info <- base::c(r_version = base::gsub("R version ", [17:27:45.860] "", base::R.version$version.string), [17:27:45.860] platform = base::sprintf("%s (%s-bit)", [17:27:45.860] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.860] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.860] "release", "version")], collapse = " "), [17:27:45.860] hostname = base::Sys.info()[["nodename"]]) [17:27:45.860] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.860] info) [17:27:45.860] info <- base::paste(info, collapse = "; ") [17:27:45.860] if (!has_future) { [17:27:45.860] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.860] info) [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.860] info, version) [17:27:45.860] } [17:27:45.860] base::stop(msg) [17:27:45.860] } [17:27:45.860] }) [17:27:45.860] } [17:27:45.860] ...future.strategy.old <- future::plan("list") [17:27:45.860] options(future.plan = NULL) [17:27:45.860] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.860] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.860] } [17:27:45.860] ...future.workdir <- getwd() [17:27:45.860] } [17:27:45.860] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.860] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.860] } [17:27:45.860] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.860] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.860] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.860] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.860] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.860] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.860] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.860] base::names(...future.oldOptions)) [17:27:45.860] } [17:27:45.860] if (FALSE) { [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] if (TRUE) { [17:27:45.860] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.860] open = "w") [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.860] windows = "NUL", "/dev/null"), open = "w") [17:27:45.860] } [17:27:45.860] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.860] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.860] base::sink(type = "output", split = FALSE) [17:27:45.860] base::close(...future.stdout) [17:27:45.860] }, add = TRUE) [17:27:45.860] } [17:27:45.860] ...future.frame <- base::sys.nframe() [17:27:45.860] ...future.conditions <- base::list() [17:27:45.860] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.860] if (FALSE) { [17:27:45.860] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.860] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.860] } [17:27:45.860] ...future.result <- base::tryCatch({ [17:27:45.860] base::withCallingHandlers({ [17:27:45.860] ...future.value <- base::withVisible(base::local({ [17:27:45.860] 1 [17:27:45.860] })) [17:27:45.860] future::FutureResult(value = ...future.value$value, [17:27:45.860] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.860] ...future.rng), globalenv = if (FALSE) [17:27:45.860] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.860] ...future.globalenv.names)) [17:27:45.860] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.860] }, condition = base::local({ [17:27:45.860] c <- base::c [17:27:45.860] inherits <- base::inherits [17:27:45.860] invokeRestart <- base::invokeRestart [17:27:45.860] length <- base::length [17:27:45.860] list <- base::list [17:27:45.860] seq.int <- base::seq.int [17:27:45.860] signalCondition <- base::signalCondition [17:27:45.860] sys.calls <- base::sys.calls [17:27:45.860] `[[` <- base::`[[` [17:27:45.860] `+` <- base::`+` [17:27:45.860] `<<-` <- base::`<<-` [17:27:45.860] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.860] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.860] 3L)] [17:27:45.860] } [17:27:45.860] function(cond) { [17:27:45.860] is_error <- inherits(cond, "error") [17:27:45.860] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.860] NULL) [17:27:45.860] if (is_error) { [17:27:45.860] sessionInformation <- function() { [17:27:45.860] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.860] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.860] search = base::search(), system = base::Sys.info()) [17:27:45.860] } [17:27:45.860] ...future.conditions[[length(...future.conditions) + [17:27:45.860] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.860] cond$call), session = sessionInformation(), [17:27:45.860] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.860] signalCondition(cond) [17:27:45.860] } [17:27:45.860] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.860] "immediateCondition"))) { [17:27:45.860] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.860] ...future.conditions[[length(...future.conditions) + [17:27:45.860] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.860] if (TRUE && !signal) { [17:27:45.860] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.860] { [17:27:45.860] inherits <- base::inherits [17:27:45.860] invokeRestart <- base::invokeRestart [17:27:45.860] is.null <- base::is.null [17:27:45.860] muffled <- FALSE [17:27:45.860] if (inherits(cond, "message")) { [17:27:45.860] muffled <- grepl(pattern, "muffleMessage") [17:27:45.860] if (muffled) [17:27:45.860] invokeRestart("muffleMessage") [17:27:45.860] } [17:27:45.860] else if (inherits(cond, "warning")) { [17:27:45.860] muffled <- grepl(pattern, "muffleWarning") [17:27:45.860] if (muffled) [17:27:45.860] invokeRestart("muffleWarning") [17:27:45.860] } [17:27:45.860] else if (inherits(cond, "condition")) { [17:27:45.860] if (!is.null(pattern)) { [17:27:45.860] computeRestarts <- base::computeRestarts [17:27:45.860] grepl <- base::grepl [17:27:45.860] restarts <- computeRestarts(cond) [17:27:45.860] for (restart in restarts) { [17:27:45.860] name <- restart$name [17:27:45.860] if (is.null(name)) [17:27:45.860] next [17:27:45.860] if (!grepl(pattern, name)) [17:27:45.860] next [17:27:45.860] invokeRestart(restart) [17:27:45.860] muffled <- TRUE [17:27:45.860] break [17:27:45.860] } [17:27:45.860] } [17:27:45.860] } [17:27:45.860] invisible(muffled) [17:27:45.860] } [17:27:45.860] muffleCondition(cond, pattern = "^muffle") [17:27:45.860] } [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] if (TRUE) { [17:27:45.860] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.860] { [17:27:45.860] inherits <- base::inherits [17:27:45.860] invokeRestart <- base::invokeRestart [17:27:45.860] is.null <- base::is.null [17:27:45.860] muffled <- FALSE [17:27:45.860] if (inherits(cond, "message")) { [17:27:45.860] muffled <- grepl(pattern, "muffleMessage") [17:27:45.860] if (muffled) [17:27:45.860] invokeRestart("muffleMessage") [17:27:45.860] } [17:27:45.860] else if (inherits(cond, "warning")) { [17:27:45.860] muffled <- grepl(pattern, "muffleWarning") [17:27:45.860] if (muffled) [17:27:45.860] invokeRestart("muffleWarning") [17:27:45.860] } [17:27:45.860] else if (inherits(cond, "condition")) { [17:27:45.860] if (!is.null(pattern)) { [17:27:45.860] computeRestarts <- base::computeRestarts [17:27:45.860] grepl <- base::grepl [17:27:45.860] restarts <- computeRestarts(cond) [17:27:45.860] for (restart in restarts) { [17:27:45.860] name <- restart$name [17:27:45.860] if (is.null(name)) [17:27:45.860] next [17:27:45.860] if (!grepl(pattern, name)) [17:27:45.860] next [17:27:45.860] invokeRestart(restart) [17:27:45.860] muffled <- TRUE [17:27:45.860] break [17:27:45.860] } [17:27:45.860] } [17:27:45.860] } [17:27:45.860] invisible(muffled) [17:27:45.860] } [17:27:45.860] muffleCondition(cond, pattern = "^muffle") [17:27:45.860] } [17:27:45.860] } [17:27:45.860] } [17:27:45.860] })) [17:27:45.860] }, error = function(ex) { [17:27:45.860] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.860] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.860] ...future.rng), started = ...future.startTime, [17:27:45.860] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.860] version = "1.8"), class = "FutureResult") [17:27:45.860] }, finally = { [17:27:45.860] if (!identical(...future.workdir, getwd())) [17:27:45.860] setwd(...future.workdir) [17:27:45.860] { [17:27:45.860] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.860] ...future.oldOptions$nwarnings <- NULL [17:27:45.860] } [17:27:45.860] base::options(...future.oldOptions) [17:27:45.860] if (.Platform$OS.type == "windows") { [17:27:45.860] old_names <- names(...future.oldEnvVars) [17:27:45.860] envs <- base::Sys.getenv() [17:27:45.860] names <- names(envs) [17:27:45.860] common <- intersect(names, old_names) [17:27:45.860] added <- setdiff(names, old_names) [17:27:45.860] removed <- setdiff(old_names, names) [17:27:45.860] changed <- common[...future.oldEnvVars[common] != [17:27:45.860] envs[common]] [17:27:45.860] NAMES <- toupper(changed) [17:27:45.860] args <- list() [17:27:45.860] for (kk in seq_along(NAMES)) { [17:27:45.860] name <- changed[[kk]] [17:27:45.860] NAME <- NAMES[[kk]] [17:27:45.860] if (name != NAME && is.element(NAME, old_names)) [17:27:45.860] next [17:27:45.860] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.860] } [17:27:45.860] NAMES <- toupper(added) [17:27:45.860] for (kk in seq_along(NAMES)) { [17:27:45.860] name <- added[[kk]] [17:27:45.860] NAME <- NAMES[[kk]] [17:27:45.860] if (name != NAME && is.element(NAME, old_names)) [17:27:45.860] next [17:27:45.860] args[[name]] <- "" [17:27:45.860] } [17:27:45.860] NAMES <- toupper(removed) [17:27:45.860] for (kk in seq_along(NAMES)) { [17:27:45.860] name <- removed[[kk]] [17:27:45.860] NAME <- NAMES[[kk]] [17:27:45.860] if (name != NAME && is.element(NAME, old_names)) [17:27:45.860] next [17:27:45.860] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.860] } [17:27:45.860] if (length(args) > 0) [17:27:45.860] base::do.call(base::Sys.setenv, args = args) [17:27:45.860] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.860] } [17:27:45.860] { [17:27:45.860] if (base::length(...future.futureOptionsAdded) > [17:27:45.860] 0L) { [17:27:45.860] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.860] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.860] base::options(opts) [17:27:45.860] } [17:27:45.860] { [17:27:45.860] { [17:27:45.860] NULL [17:27:45.860] RNGkind("Mersenne-Twister") [17:27:45.860] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.860] inherits = FALSE) [17:27:45.860] } [17:27:45.860] options(future.plan = NULL) [17:27:45.860] if (is.na(NA_character_)) [17:27:45.860] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.860] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.860] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.860] .init = FALSE) [17:27:45.860] } [17:27:45.860] } [17:27:45.860] } [17:27:45.860] }) [17:27:45.860] if (TRUE) { [17:27:45.860] base::sink(type = "output", split = FALSE) [17:27:45.860] if (TRUE) { [17:27:45.860] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.860] } [17:27:45.860] else { [17:27:45.860] ...future.result["stdout"] <- base::list(NULL) [17:27:45.860] } [17:27:45.860] base::close(...future.stdout) [17:27:45.860] ...future.stdout <- NULL [17:27:45.860] } [17:27:45.860] ...future.result$conditions <- ...future.conditions [17:27:45.860] ...future.result$finished <- base::Sys.time() [17:27:45.860] ...future.result [17:27:45.860] } [17:27:45.864] plan(): Setting new future strategy stack: [17:27:45.864] List of future strategies: [17:27:45.864] 1. sequential: [17:27:45.864] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.864] - tweaked: FALSE [17:27:45.864] - call: NULL [17:27:45.865] plan(): nbrOfWorkers() = 1 [17:27:45.866] plan(): Setting new future strategy stack: [17:27:45.866] List of future strategies: [17:27:45.866] 1. sequential: [17:27:45.866] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.866] - tweaked: FALSE [17:27:45.866] - call: plan(strategy) [17:27:45.867] plan(): nbrOfWorkers() = 1 [17:27:45.867] SequentialFuture started (and completed) [17:27:45.867] - Launch lazy future ... done [17:27:45.867] run() for 'SequentialFuture' ... done [17:27:45.868] getGlobalsAndPackages() ... [17:27:45.869] Searching for globals... [17:27:45.870] - globals found: [1] '{' [17:27:45.870] Searching for globals ... DONE [17:27:45.870] Resolving globals: FALSE [17:27:45.870] [17:27:45.871] [17:27:45.871] getGlobalsAndPackages() ... DONE [17:27:45.871] run() for 'Future' ... [17:27:45.871] - state: 'created' [17:27:45.871] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.872] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.872] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.872] - Field: 'label' [17:27:45.872] - Field: 'local' [17:27:45.872] - Field: 'owner' [17:27:45.873] - Field: 'envir' [17:27:45.873] - Field: 'packages' [17:27:45.873] - Field: 'gc' [17:27:45.873] - Field: 'conditions' [17:27:45.873] - Field: 'expr' [17:27:45.873] - Field: 'uuid' [17:27:45.874] - Field: 'seed' [17:27:45.874] - Field: 'version' [17:27:45.874] - Field: 'result' [17:27:45.874] - Field: 'asynchronous' [17:27:45.874] - Field: 'calls' [17:27:45.875] - Field: 'globals' [17:27:45.875] - Field: 'stdout' [17:27:45.875] - Field: 'earlySignal' [17:27:45.875] - Field: 'lazy' [17:27:45.875] - Field: 'state' [17:27:45.875] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.876] - Launch lazy future ... [17:27:45.876] Packages needed by the future expression (n = 0): [17:27:45.876] Packages needed by future strategies (n = 0): [17:27:45.876] { [17:27:45.876] { [17:27:45.876] { [17:27:45.876] ...future.startTime <- base::Sys.time() [17:27:45.876] { [17:27:45.876] { [17:27:45.876] { [17:27:45.876] base::local({ [17:27:45.876] has_future <- base::requireNamespace("future", [17:27:45.876] quietly = TRUE) [17:27:45.876] if (has_future) { [17:27:45.876] ns <- base::getNamespace("future") [17:27:45.876] version <- ns[[".package"]][["version"]] [17:27:45.876] if (is.null(version)) [17:27:45.876] version <- utils::packageVersion("future") [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] version <- NULL [17:27:45.876] } [17:27:45.876] if (!has_future || version < "1.8.0") { [17:27:45.876] info <- base::c(r_version = base::gsub("R version ", [17:27:45.876] "", base::R.version$version.string), [17:27:45.876] platform = base::sprintf("%s (%s-bit)", [17:27:45.876] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.876] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.876] "release", "version")], collapse = " "), [17:27:45.876] hostname = base::Sys.info()[["nodename"]]) [17:27:45.876] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.876] info) [17:27:45.876] info <- base::paste(info, collapse = "; ") [17:27:45.876] if (!has_future) { [17:27:45.876] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.876] info) [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.876] info, version) [17:27:45.876] } [17:27:45.876] base::stop(msg) [17:27:45.876] } [17:27:45.876] }) [17:27:45.876] } [17:27:45.876] ...future.strategy.old <- future::plan("list") [17:27:45.876] options(future.plan = NULL) [17:27:45.876] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.876] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.876] } [17:27:45.876] ...future.workdir <- getwd() [17:27:45.876] } [17:27:45.876] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.876] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.876] } [17:27:45.876] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.876] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.876] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.876] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.876] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.876] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.876] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.876] base::names(...future.oldOptions)) [17:27:45.876] } [17:27:45.876] if (FALSE) { [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] if (TRUE) { [17:27:45.876] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.876] open = "w") [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.876] windows = "NUL", "/dev/null"), open = "w") [17:27:45.876] } [17:27:45.876] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.876] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.876] base::sink(type = "output", split = FALSE) [17:27:45.876] base::close(...future.stdout) [17:27:45.876] }, add = TRUE) [17:27:45.876] } [17:27:45.876] ...future.frame <- base::sys.nframe() [17:27:45.876] ...future.conditions <- base::list() [17:27:45.876] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.876] if (FALSE) { [17:27:45.876] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.876] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.876] } [17:27:45.876] ...future.result <- base::tryCatch({ [17:27:45.876] base::withCallingHandlers({ [17:27:45.876] ...future.value <- base::withVisible(base::local({ [17:27:45.876] 2 [17:27:45.876] })) [17:27:45.876] future::FutureResult(value = ...future.value$value, [17:27:45.876] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.876] ...future.rng), globalenv = if (FALSE) [17:27:45.876] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.876] ...future.globalenv.names)) [17:27:45.876] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.876] }, condition = base::local({ [17:27:45.876] c <- base::c [17:27:45.876] inherits <- base::inherits [17:27:45.876] invokeRestart <- base::invokeRestart [17:27:45.876] length <- base::length [17:27:45.876] list <- base::list [17:27:45.876] seq.int <- base::seq.int [17:27:45.876] signalCondition <- base::signalCondition [17:27:45.876] sys.calls <- base::sys.calls [17:27:45.876] `[[` <- base::`[[` [17:27:45.876] `+` <- base::`+` [17:27:45.876] `<<-` <- base::`<<-` [17:27:45.876] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.876] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.876] 3L)] [17:27:45.876] } [17:27:45.876] function(cond) { [17:27:45.876] is_error <- inherits(cond, "error") [17:27:45.876] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.876] NULL) [17:27:45.876] if (is_error) { [17:27:45.876] sessionInformation <- function() { [17:27:45.876] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.876] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.876] search = base::search(), system = base::Sys.info()) [17:27:45.876] } [17:27:45.876] ...future.conditions[[length(...future.conditions) + [17:27:45.876] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.876] cond$call), session = sessionInformation(), [17:27:45.876] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.876] signalCondition(cond) [17:27:45.876] } [17:27:45.876] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.876] "immediateCondition"))) { [17:27:45.876] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.876] ...future.conditions[[length(...future.conditions) + [17:27:45.876] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.876] if (TRUE && !signal) { [17:27:45.876] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.876] { [17:27:45.876] inherits <- base::inherits [17:27:45.876] invokeRestart <- base::invokeRestart [17:27:45.876] is.null <- base::is.null [17:27:45.876] muffled <- FALSE [17:27:45.876] if (inherits(cond, "message")) { [17:27:45.876] muffled <- grepl(pattern, "muffleMessage") [17:27:45.876] if (muffled) [17:27:45.876] invokeRestart("muffleMessage") [17:27:45.876] } [17:27:45.876] else if (inherits(cond, "warning")) { [17:27:45.876] muffled <- grepl(pattern, "muffleWarning") [17:27:45.876] if (muffled) [17:27:45.876] invokeRestart("muffleWarning") [17:27:45.876] } [17:27:45.876] else if (inherits(cond, "condition")) { [17:27:45.876] if (!is.null(pattern)) { [17:27:45.876] computeRestarts <- base::computeRestarts [17:27:45.876] grepl <- base::grepl [17:27:45.876] restarts <- computeRestarts(cond) [17:27:45.876] for (restart in restarts) { [17:27:45.876] name <- restart$name [17:27:45.876] if (is.null(name)) [17:27:45.876] next [17:27:45.876] if (!grepl(pattern, name)) [17:27:45.876] next [17:27:45.876] invokeRestart(restart) [17:27:45.876] muffled <- TRUE [17:27:45.876] break [17:27:45.876] } [17:27:45.876] } [17:27:45.876] } [17:27:45.876] invisible(muffled) [17:27:45.876] } [17:27:45.876] muffleCondition(cond, pattern = "^muffle") [17:27:45.876] } [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] if (TRUE) { [17:27:45.876] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.876] { [17:27:45.876] inherits <- base::inherits [17:27:45.876] invokeRestart <- base::invokeRestart [17:27:45.876] is.null <- base::is.null [17:27:45.876] muffled <- FALSE [17:27:45.876] if (inherits(cond, "message")) { [17:27:45.876] muffled <- grepl(pattern, "muffleMessage") [17:27:45.876] if (muffled) [17:27:45.876] invokeRestart("muffleMessage") [17:27:45.876] } [17:27:45.876] else if (inherits(cond, "warning")) { [17:27:45.876] muffled <- grepl(pattern, "muffleWarning") [17:27:45.876] if (muffled) [17:27:45.876] invokeRestart("muffleWarning") [17:27:45.876] } [17:27:45.876] else if (inherits(cond, "condition")) { [17:27:45.876] if (!is.null(pattern)) { [17:27:45.876] computeRestarts <- base::computeRestarts [17:27:45.876] grepl <- base::grepl [17:27:45.876] restarts <- computeRestarts(cond) [17:27:45.876] for (restart in restarts) { [17:27:45.876] name <- restart$name [17:27:45.876] if (is.null(name)) [17:27:45.876] next [17:27:45.876] if (!grepl(pattern, name)) [17:27:45.876] next [17:27:45.876] invokeRestart(restart) [17:27:45.876] muffled <- TRUE [17:27:45.876] break [17:27:45.876] } [17:27:45.876] } [17:27:45.876] } [17:27:45.876] invisible(muffled) [17:27:45.876] } [17:27:45.876] muffleCondition(cond, pattern = "^muffle") [17:27:45.876] } [17:27:45.876] } [17:27:45.876] } [17:27:45.876] })) [17:27:45.876] }, error = function(ex) { [17:27:45.876] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.876] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.876] ...future.rng), started = ...future.startTime, [17:27:45.876] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.876] version = "1.8"), class = "FutureResult") [17:27:45.876] }, finally = { [17:27:45.876] if (!identical(...future.workdir, getwd())) [17:27:45.876] setwd(...future.workdir) [17:27:45.876] { [17:27:45.876] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.876] ...future.oldOptions$nwarnings <- NULL [17:27:45.876] } [17:27:45.876] base::options(...future.oldOptions) [17:27:45.876] if (.Platform$OS.type == "windows") { [17:27:45.876] old_names <- names(...future.oldEnvVars) [17:27:45.876] envs <- base::Sys.getenv() [17:27:45.876] names <- names(envs) [17:27:45.876] common <- intersect(names, old_names) [17:27:45.876] added <- setdiff(names, old_names) [17:27:45.876] removed <- setdiff(old_names, names) [17:27:45.876] changed <- common[...future.oldEnvVars[common] != [17:27:45.876] envs[common]] [17:27:45.876] NAMES <- toupper(changed) [17:27:45.876] args <- list() [17:27:45.876] for (kk in seq_along(NAMES)) { [17:27:45.876] name <- changed[[kk]] [17:27:45.876] NAME <- NAMES[[kk]] [17:27:45.876] if (name != NAME && is.element(NAME, old_names)) [17:27:45.876] next [17:27:45.876] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.876] } [17:27:45.876] NAMES <- toupper(added) [17:27:45.876] for (kk in seq_along(NAMES)) { [17:27:45.876] name <- added[[kk]] [17:27:45.876] NAME <- NAMES[[kk]] [17:27:45.876] if (name != NAME && is.element(NAME, old_names)) [17:27:45.876] next [17:27:45.876] args[[name]] <- "" [17:27:45.876] } [17:27:45.876] NAMES <- toupper(removed) [17:27:45.876] for (kk in seq_along(NAMES)) { [17:27:45.876] name <- removed[[kk]] [17:27:45.876] NAME <- NAMES[[kk]] [17:27:45.876] if (name != NAME && is.element(NAME, old_names)) [17:27:45.876] next [17:27:45.876] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.876] } [17:27:45.876] if (length(args) > 0) [17:27:45.876] base::do.call(base::Sys.setenv, args = args) [17:27:45.876] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.876] } [17:27:45.876] { [17:27:45.876] if (base::length(...future.futureOptionsAdded) > [17:27:45.876] 0L) { [17:27:45.876] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.876] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.876] base::options(opts) [17:27:45.876] } [17:27:45.876] { [17:27:45.876] { [17:27:45.876] NULL [17:27:45.876] RNGkind("Mersenne-Twister") [17:27:45.876] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.876] inherits = FALSE) [17:27:45.876] } [17:27:45.876] options(future.plan = NULL) [17:27:45.876] if (is.na(NA_character_)) [17:27:45.876] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.876] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.876] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.876] .init = FALSE) [17:27:45.876] } [17:27:45.876] } [17:27:45.876] } [17:27:45.876] }) [17:27:45.876] if (TRUE) { [17:27:45.876] base::sink(type = "output", split = FALSE) [17:27:45.876] if (TRUE) { [17:27:45.876] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.876] } [17:27:45.876] else { [17:27:45.876] ...future.result["stdout"] <- base::list(NULL) [17:27:45.876] } [17:27:45.876] base::close(...future.stdout) [17:27:45.876] ...future.stdout <- NULL [17:27:45.876] } [17:27:45.876] ...future.result$conditions <- ...future.conditions [17:27:45.876] ...future.result$finished <- base::Sys.time() [17:27:45.876] ...future.result [17:27:45.876] } [17:27:45.880] plan(): Setting new future strategy stack: [17:27:45.881] List of future strategies: [17:27:45.881] 1. sequential: [17:27:45.881] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.881] - tweaked: FALSE [17:27:45.881] - call: NULL [17:27:45.881] plan(): nbrOfWorkers() = 1 [17:27:45.882] plan(): Setting new future strategy stack: [17:27:45.882] List of future strategies: [17:27:45.882] 1. sequential: [17:27:45.882] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.882] - tweaked: FALSE [17:27:45.882] - call: plan(strategy) [17:27:45.883] plan(): nbrOfWorkers() = 1 [17:27:45.883] SequentialFuture started (and completed) [17:27:45.883] - Launch lazy future ... done [17:27:45.884] run() for 'SequentialFuture' ... done [17:27:45.884] resolve() on environment ... [17:27:45.884] recursive: 0 [17:27:45.885] elements: [3] '.future_a', '.future_b', 'a', 'b', 'c' [17:27:45.885] resolved() for 'SequentialFuture' ... [17:27:45.885] - state: 'finished' [17:27:45.885] - run: TRUE [17:27:45.886] - result: 'FutureResult' [17:27:45.886] resolved() for 'SequentialFuture' ... done [17:27:45.886] Future #1 [17:27:45.886] length: 2 (resolved future 1) [17:27:45.886] resolved() for 'SequentialFuture' ... [17:27:45.887] - state: 'finished' [17:27:45.887] - run: TRUE [17:27:45.887] - result: 'FutureResult' [17:27:45.887] resolved() for 'SequentialFuture' ... done [17:27:45.887] Future #2 [17:27:45.887] length: 1 (resolved future 2) [17:27:45.888] length: 0 (resolved future 3) [17:27:45.888] resolve() on environment ... DONE [17:27:45.888] getGlobalsAndPackages() ... [17:27:45.889] Searching for globals... [17:27:45.889] - globals found: [1] '{' [17:27:45.889] Searching for globals ... DONE [17:27:45.890] Resolving globals: FALSE [17:27:45.890] [17:27:45.890] [17:27:45.890] getGlobalsAndPackages() ... DONE [17:27:45.891] run() for 'Future' ... [17:27:45.891] - state: 'created' [17:27:45.891] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.891] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.891] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.892] - Field: 'label' [17:27:45.892] - Field: 'local' [17:27:45.892] - Field: 'owner' [17:27:45.892] - Field: 'envir' [17:27:45.892] - Field: 'packages' [17:27:45.892] - Field: 'gc' [17:27:45.893] - Field: 'conditions' [17:27:45.893] - Field: 'expr' [17:27:45.893] - Field: 'uuid' [17:27:45.893] - Field: 'seed' [17:27:45.893] - Field: 'version' [17:27:45.893] - Field: 'result' [17:27:45.894] - Field: 'asynchronous' [17:27:45.894] - Field: 'calls' [17:27:45.894] - Field: 'globals' [17:27:45.894] - Field: 'stdout' [17:27:45.894] - Field: 'earlySignal' [17:27:45.894] - Field: 'lazy' [17:27:45.895] - Field: 'state' [17:27:45.895] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.895] - Launch lazy future ... [17:27:45.895] Packages needed by the future expression (n = 0): [17:27:45.895] Packages needed by future strategies (n = 0): [17:27:45.896] { [17:27:45.896] { [17:27:45.896] { [17:27:45.896] ...future.startTime <- base::Sys.time() [17:27:45.896] { [17:27:45.896] { [17:27:45.896] { [17:27:45.896] base::local({ [17:27:45.896] has_future <- base::requireNamespace("future", [17:27:45.896] quietly = TRUE) [17:27:45.896] if (has_future) { [17:27:45.896] ns <- base::getNamespace("future") [17:27:45.896] version <- ns[[".package"]][["version"]] [17:27:45.896] if (is.null(version)) [17:27:45.896] version <- utils::packageVersion("future") [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] version <- NULL [17:27:45.896] } [17:27:45.896] if (!has_future || version < "1.8.0") { [17:27:45.896] info <- base::c(r_version = base::gsub("R version ", [17:27:45.896] "", base::R.version$version.string), [17:27:45.896] platform = base::sprintf("%s (%s-bit)", [17:27:45.896] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.896] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.896] "release", "version")], collapse = " "), [17:27:45.896] hostname = base::Sys.info()[["nodename"]]) [17:27:45.896] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.896] info) [17:27:45.896] info <- base::paste(info, collapse = "; ") [17:27:45.896] if (!has_future) { [17:27:45.896] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.896] info) [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.896] info, version) [17:27:45.896] } [17:27:45.896] base::stop(msg) [17:27:45.896] } [17:27:45.896] }) [17:27:45.896] } [17:27:45.896] ...future.strategy.old <- future::plan("list") [17:27:45.896] options(future.plan = NULL) [17:27:45.896] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.896] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.896] } [17:27:45.896] ...future.workdir <- getwd() [17:27:45.896] } [17:27:45.896] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.896] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.896] } [17:27:45.896] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.896] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.896] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.896] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.896] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.896] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.896] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.896] base::names(...future.oldOptions)) [17:27:45.896] } [17:27:45.896] if (FALSE) { [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] if (TRUE) { [17:27:45.896] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.896] open = "w") [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.896] windows = "NUL", "/dev/null"), open = "w") [17:27:45.896] } [17:27:45.896] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.896] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.896] base::sink(type = "output", split = FALSE) [17:27:45.896] base::close(...future.stdout) [17:27:45.896] }, add = TRUE) [17:27:45.896] } [17:27:45.896] ...future.frame <- base::sys.nframe() [17:27:45.896] ...future.conditions <- base::list() [17:27:45.896] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.896] if (FALSE) { [17:27:45.896] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.896] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.896] } [17:27:45.896] ...future.result <- base::tryCatch({ [17:27:45.896] base::withCallingHandlers({ [17:27:45.896] ...future.value <- base::withVisible(base::local({ [17:27:45.896] 1 [17:27:45.896] })) [17:27:45.896] future::FutureResult(value = ...future.value$value, [17:27:45.896] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.896] ...future.rng), globalenv = if (FALSE) [17:27:45.896] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.896] ...future.globalenv.names)) [17:27:45.896] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.896] }, condition = base::local({ [17:27:45.896] c <- base::c [17:27:45.896] inherits <- base::inherits [17:27:45.896] invokeRestart <- base::invokeRestart [17:27:45.896] length <- base::length [17:27:45.896] list <- base::list [17:27:45.896] seq.int <- base::seq.int [17:27:45.896] signalCondition <- base::signalCondition [17:27:45.896] sys.calls <- base::sys.calls [17:27:45.896] `[[` <- base::`[[` [17:27:45.896] `+` <- base::`+` [17:27:45.896] `<<-` <- base::`<<-` [17:27:45.896] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.896] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.896] 3L)] [17:27:45.896] } [17:27:45.896] function(cond) { [17:27:45.896] is_error <- inherits(cond, "error") [17:27:45.896] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.896] NULL) [17:27:45.896] if (is_error) { [17:27:45.896] sessionInformation <- function() { [17:27:45.896] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.896] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.896] search = base::search(), system = base::Sys.info()) [17:27:45.896] } [17:27:45.896] ...future.conditions[[length(...future.conditions) + [17:27:45.896] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.896] cond$call), session = sessionInformation(), [17:27:45.896] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.896] signalCondition(cond) [17:27:45.896] } [17:27:45.896] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.896] "immediateCondition"))) { [17:27:45.896] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.896] ...future.conditions[[length(...future.conditions) + [17:27:45.896] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.896] if (TRUE && !signal) { [17:27:45.896] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.896] { [17:27:45.896] inherits <- base::inherits [17:27:45.896] invokeRestart <- base::invokeRestart [17:27:45.896] is.null <- base::is.null [17:27:45.896] muffled <- FALSE [17:27:45.896] if (inherits(cond, "message")) { [17:27:45.896] muffled <- grepl(pattern, "muffleMessage") [17:27:45.896] if (muffled) [17:27:45.896] invokeRestart("muffleMessage") [17:27:45.896] } [17:27:45.896] else if (inherits(cond, "warning")) { [17:27:45.896] muffled <- grepl(pattern, "muffleWarning") [17:27:45.896] if (muffled) [17:27:45.896] invokeRestart("muffleWarning") [17:27:45.896] } [17:27:45.896] else if (inherits(cond, "condition")) { [17:27:45.896] if (!is.null(pattern)) { [17:27:45.896] computeRestarts <- base::computeRestarts [17:27:45.896] grepl <- base::grepl [17:27:45.896] restarts <- computeRestarts(cond) [17:27:45.896] for (restart in restarts) { [17:27:45.896] name <- restart$name [17:27:45.896] if (is.null(name)) [17:27:45.896] next [17:27:45.896] if (!grepl(pattern, name)) [17:27:45.896] next [17:27:45.896] invokeRestart(restart) [17:27:45.896] muffled <- TRUE [17:27:45.896] break [17:27:45.896] } [17:27:45.896] } [17:27:45.896] } [17:27:45.896] invisible(muffled) [17:27:45.896] } [17:27:45.896] muffleCondition(cond, pattern = "^muffle") [17:27:45.896] } [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] if (TRUE) { [17:27:45.896] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.896] { [17:27:45.896] inherits <- base::inherits [17:27:45.896] invokeRestart <- base::invokeRestart [17:27:45.896] is.null <- base::is.null [17:27:45.896] muffled <- FALSE [17:27:45.896] if (inherits(cond, "message")) { [17:27:45.896] muffled <- grepl(pattern, "muffleMessage") [17:27:45.896] if (muffled) [17:27:45.896] invokeRestart("muffleMessage") [17:27:45.896] } [17:27:45.896] else if (inherits(cond, "warning")) { [17:27:45.896] muffled <- grepl(pattern, "muffleWarning") [17:27:45.896] if (muffled) [17:27:45.896] invokeRestart("muffleWarning") [17:27:45.896] } [17:27:45.896] else if (inherits(cond, "condition")) { [17:27:45.896] if (!is.null(pattern)) { [17:27:45.896] computeRestarts <- base::computeRestarts [17:27:45.896] grepl <- base::grepl [17:27:45.896] restarts <- computeRestarts(cond) [17:27:45.896] for (restart in restarts) { [17:27:45.896] name <- restart$name [17:27:45.896] if (is.null(name)) [17:27:45.896] next [17:27:45.896] if (!grepl(pattern, name)) [17:27:45.896] next [17:27:45.896] invokeRestart(restart) [17:27:45.896] muffled <- TRUE [17:27:45.896] break [17:27:45.896] } [17:27:45.896] } [17:27:45.896] } [17:27:45.896] invisible(muffled) [17:27:45.896] } [17:27:45.896] muffleCondition(cond, pattern = "^muffle") [17:27:45.896] } [17:27:45.896] } [17:27:45.896] } [17:27:45.896] })) [17:27:45.896] }, error = function(ex) { [17:27:45.896] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.896] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.896] ...future.rng), started = ...future.startTime, [17:27:45.896] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.896] version = "1.8"), class = "FutureResult") [17:27:45.896] }, finally = { [17:27:45.896] if (!identical(...future.workdir, getwd())) [17:27:45.896] setwd(...future.workdir) [17:27:45.896] { [17:27:45.896] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.896] ...future.oldOptions$nwarnings <- NULL [17:27:45.896] } [17:27:45.896] base::options(...future.oldOptions) [17:27:45.896] if (.Platform$OS.type == "windows") { [17:27:45.896] old_names <- names(...future.oldEnvVars) [17:27:45.896] envs <- base::Sys.getenv() [17:27:45.896] names <- names(envs) [17:27:45.896] common <- intersect(names, old_names) [17:27:45.896] added <- setdiff(names, old_names) [17:27:45.896] removed <- setdiff(old_names, names) [17:27:45.896] changed <- common[...future.oldEnvVars[common] != [17:27:45.896] envs[common]] [17:27:45.896] NAMES <- toupper(changed) [17:27:45.896] args <- list() [17:27:45.896] for (kk in seq_along(NAMES)) { [17:27:45.896] name <- changed[[kk]] [17:27:45.896] NAME <- NAMES[[kk]] [17:27:45.896] if (name != NAME && is.element(NAME, old_names)) [17:27:45.896] next [17:27:45.896] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.896] } [17:27:45.896] NAMES <- toupper(added) [17:27:45.896] for (kk in seq_along(NAMES)) { [17:27:45.896] name <- added[[kk]] [17:27:45.896] NAME <- NAMES[[kk]] [17:27:45.896] if (name != NAME && is.element(NAME, old_names)) [17:27:45.896] next [17:27:45.896] args[[name]] <- "" [17:27:45.896] } [17:27:45.896] NAMES <- toupper(removed) [17:27:45.896] for (kk in seq_along(NAMES)) { [17:27:45.896] name <- removed[[kk]] [17:27:45.896] NAME <- NAMES[[kk]] [17:27:45.896] if (name != NAME && is.element(NAME, old_names)) [17:27:45.896] next [17:27:45.896] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.896] } [17:27:45.896] if (length(args) > 0) [17:27:45.896] base::do.call(base::Sys.setenv, args = args) [17:27:45.896] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.896] } [17:27:45.896] { [17:27:45.896] if (base::length(...future.futureOptionsAdded) > [17:27:45.896] 0L) { [17:27:45.896] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.896] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.896] base::options(opts) [17:27:45.896] } [17:27:45.896] { [17:27:45.896] { [17:27:45.896] NULL [17:27:45.896] RNGkind("Mersenne-Twister") [17:27:45.896] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.896] inherits = FALSE) [17:27:45.896] } [17:27:45.896] options(future.plan = NULL) [17:27:45.896] if (is.na(NA_character_)) [17:27:45.896] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.896] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.896] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.896] .init = FALSE) [17:27:45.896] } [17:27:45.896] } [17:27:45.896] } [17:27:45.896] }) [17:27:45.896] if (TRUE) { [17:27:45.896] base::sink(type = "output", split = FALSE) [17:27:45.896] if (TRUE) { [17:27:45.896] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.896] } [17:27:45.896] else { [17:27:45.896] ...future.result["stdout"] <- base::list(NULL) [17:27:45.896] } [17:27:45.896] base::close(...future.stdout) [17:27:45.896] ...future.stdout <- NULL [17:27:45.896] } [17:27:45.896] ...future.result$conditions <- ...future.conditions [17:27:45.896] ...future.result$finished <- base::Sys.time() [17:27:45.896] ...future.result [17:27:45.896] } [17:27:45.900] plan(): Setting new future strategy stack: [17:27:45.900] List of future strategies: [17:27:45.900] 1. sequential: [17:27:45.900] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.900] - tweaked: FALSE [17:27:45.900] - call: NULL [17:27:45.901] plan(): nbrOfWorkers() = 1 [17:27:45.902] plan(): Setting new future strategy stack: [17:27:45.902] List of future strategies: [17:27:45.902] 1. sequential: [17:27:45.902] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.902] - tweaked: FALSE [17:27:45.902] - call: plan(strategy) [17:27:45.902] plan(): nbrOfWorkers() = 1 [17:27:45.903] SequentialFuture started (and completed) [17:27:45.904] - Launch lazy future ... done [17:27:45.904] run() for 'SequentialFuture' ... done [17:27:45.904] getGlobalsAndPackages() ... [17:27:45.905] Searching for globals... [17:27:45.905] - globals found: [1] '{' [17:27:45.905] Searching for globals ... DONE [17:27:45.906] Resolving globals: FALSE [17:27:45.906] [17:27:45.906] [17:27:45.906] getGlobalsAndPackages() ... DONE [17:27:45.907] run() for 'Future' ... [17:27:45.907] - state: 'created' [17:27:45.907] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.907] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.907] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.908] - Field: 'label' [17:27:45.908] - Field: 'local' [17:27:45.908] - Field: 'owner' [17:27:45.908] - Field: 'envir' [17:27:45.908] - Field: 'packages' [17:27:45.909] - Field: 'gc' [17:27:45.909] - Field: 'conditions' [17:27:45.909] - Field: 'expr' [17:27:45.909] - Field: 'uuid' [17:27:45.909] - Field: 'seed' [17:27:45.909] - Field: 'version' [17:27:45.910] - Field: 'result' [17:27:45.910] - Field: 'asynchronous' [17:27:45.910] - Field: 'calls' [17:27:45.910] - Field: 'globals' [17:27:45.910] - Field: 'stdout' [17:27:45.910] - Field: 'earlySignal' [17:27:45.911] - Field: 'lazy' [17:27:45.911] - Field: 'state' [17:27:45.911] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.911] - Launch lazy future ... [17:27:45.911] Packages needed by the future expression (n = 0): [17:27:45.911] Packages needed by future strategies (n = 0): [17:27:45.912] { [17:27:45.912] { [17:27:45.912] { [17:27:45.912] ...future.startTime <- base::Sys.time() [17:27:45.912] { [17:27:45.912] { [17:27:45.912] { [17:27:45.912] base::local({ [17:27:45.912] has_future <- base::requireNamespace("future", [17:27:45.912] quietly = TRUE) [17:27:45.912] if (has_future) { [17:27:45.912] ns <- base::getNamespace("future") [17:27:45.912] version <- ns[[".package"]][["version"]] [17:27:45.912] if (is.null(version)) [17:27:45.912] version <- utils::packageVersion("future") [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] version <- NULL [17:27:45.912] } [17:27:45.912] if (!has_future || version < "1.8.0") { [17:27:45.912] info <- base::c(r_version = base::gsub("R version ", [17:27:45.912] "", base::R.version$version.string), [17:27:45.912] platform = base::sprintf("%s (%s-bit)", [17:27:45.912] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.912] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.912] "release", "version")], collapse = " "), [17:27:45.912] hostname = base::Sys.info()[["nodename"]]) [17:27:45.912] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.912] info) [17:27:45.912] info <- base::paste(info, collapse = "; ") [17:27:45.912] if (!has_future) { [17:27:45.912] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.912] info) [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.912] info, version) [17:27:45.912] } [17:27:45.912] base::stop(msg) [17:27:45.912] } [17:27:45.912] }) [17:27:45.912] } [17:27:45.912] ...future.strategy.old <- future::plan("list") [17:27:45.912] options(future.plan = NULL) [17:27:45.912] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.912] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.912] } [17:27:45.912] ...future.workdir <- getwd() [17:27:45.912] } [17:27:45.912] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.912] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.912] } [17:27:45.912] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.912] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.912] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.912] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.912] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.912] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.912] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.912] base::names(...future.oldOptions)) [17:27:45.912] } [17:27:45.912] if (FALSE) { [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] if (TRUE) { [17:27:45.912] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.912] open = "w") [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.912] windows = "NUL", "/dev/null"), open = "w") [17:27:45.912] } [17:27:45.912] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.912] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.912] base::sink(type = "output", split = FALSE) [17:27:45.912] base::close(...future.stdout) [17:27:45.912] }, add = TRUE) [17:27:45.912] } [17:27:45.912] ...future.frame <- base::sys.nframe() [17:27:45.912] ...future.conditions <- base::list() [17:27:45.912] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.912] if (FALSE) { [17:27:45.912] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.912] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.912] } [17:27:45.912] ...future.result <- base::tryCatch({ [17:27:45.912] base::withCallingHandlers({ [17:27:45.912] ...future.value <- base::withVisible(base::local({ [17:27:45.912] 2 [17:27:45.912] })) [17:27:45.912] future::FutureResult(value = ...future.value$value, [17:27:45.912] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.912] ...future.rng), globalenv = if (FALSE) [17:27:45.912] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.912] ...future.globalenv.names)) [17:27:45.912] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.912] }, condition = base::local({ [17:27:45.912] c <- base::c [17:27:45.912] inherits <- base::inherits [17:27:45.912] invokeRestart <- base::invokeRestart [17:27:45.912] length <- base::length [17:27:45.912] list <- base::list [17:27:45.912] seq.int <- base::seq.int [17:27:45.912] signalCondition <- base::signalCondition [17:27:45.912] sys.calls <- base::sys.calls [17:27:45.912] `[[` <- base::`[[` [17:27:45.912] `+` <- base::`+` [17:27:45.912] `<<-` <- base::`<<-` [17:27:45.912] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.912] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.912] 3L)] [17:27:45.912] } [17:27:45.912] function(cond) { [17:27:45.912] is_error <- inherits(cond, "error") [17:27:45.912] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.912] NULL) [17:27:45.912] if (is_error) { [17:27:45.912] sessionInformation <- function() { [17:27:45.912] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.912] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.912] search = base::search(), system = base::Sys.info()) [17:27:45.912] } [17:27:45.912] ...future.conditions[[length(...future.conditions) + [17:27:45.912] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.912] cond$call), session = sessionInformation(), [17:27:45.912] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.912] signalCondition(cond) [17:27:45.912] } [17:27:45.912] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.912] "immediateCondition"))) { [17:27:45.912] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.912] ...future.conditions[[length(...future.conditions) + [17:27:45.912] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.912] if (TRUE && !signal) { [17:27:45.912] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.912] { [17:27:45.912] inherits <- base::inherits [17:27:45.912] invokeRestart <- base::invokeRestart [17:27:45.912] is.null <- base::is.null [17:27:45.912] muffled <- FALSE [17:27:45.912] if (inherits(cond, "message")) { [17:27:45.912] muffled <- grepl(pattern, "muffleMessage") [17:27:45.912] if (muffled) [17:27:45.912] invokeRestart("muffleMessage") [17:27:45.912] } [17:27:45.912] else if (inherits(cond, "warning")) { [17:27:45.912] muffled <- grepl(pattern, "muffleWarning") [17:27:45.912] if (muffled) [17:27:45.912] invokeRestart("muffleWarning") [17:27:45.912] } [17:27:45.912] else if (inherits(cond, "condition")) { [17:27:45.912] if (!is.null(pattern)) { [17:27:45.912] computeRestarts <- base::computeRestarts [17:27:45.912] grepl <- base::grepl [17:27:45.912] restarts <- computeRestarts(cond) [17:27:45.912] for (restart in restarts) { [17:27:45.912] name <- restart$name [17:27:45.912] if (is.null(name)) [17:27:45.912] next [17:27:45.912] if (!grepl(pattern, name)) [17:27:45.912] next [17:27:45.912] invokeRestart(restart) [17:27:45.912] muffled <- TRUE [17:27:45.912] break [17:27:45.912] } [17:27:45.912] } [17:27:45.912] } [17:27:45.912] invisible(muffled) [17:27:45.912] } [17:27:45.912] muffleCondition(cond, pattern = "^muffle") [17:27:45.912] } [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] if (TRUE) { [17:27:45.912] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.912] { [17:27:45.912] inherits <- base::inherits [17:27:45.912] invokeRestart <- base::invokeRestart [17:27:45.912] is.null <- base::is.null [17:27:45.912] muffled <- FALSE [17:27:45.912] if (inherits(cond, "message")) { [17:27:45.912] muffled <- grepl(pattern, "muffleMessage") [17:27:45.912] if (muffled) [17:27:45.912] invokeRestart("muffleMessage") [17:27:45.912] } [17:27:45.912] else if (inherits(cond, "warning")) { [17:27:45.912] muffled <- grepl(pattern, "muffleWarning") [17:27:45.912] if (muffled) [17:27:45.912] invokeRestart("muffleWarning") [17:27:45.912] } [17:27:45.912] else if (inherits(cond, "condition")) { [17:27:45.912] if (!is.null(pattern)) { [17:27:45.912] computeRestarts <- base::computeRestarts [17:27:45.912] grepl <- base::grepl [17:27:45.912] restarts <- computeRestarts(cond) [17:27:45.912] for (restart in restarts) { [17:27:45.912] name <- restart$name [17:27:45.912] if (is.null(name)) [17:27:45.912] next [17:27:45.912] if (!grepl(pattern, name)) [17:27:45.912] next [17:27:45.912] invokeRestart(restart) [17:27:45.912] muffled <- TRUE [17:27:45.912] break [17:27:45.912] } [17:27:45.912] } [17:27:45.912] } [17:27:45.912] invisible(muffled) [17:27:45.912] } [17:27:45.912] muffleCondition(cond, pattern = "^muffle") [17:27:45.912] } [17:27:45.912] } [17:27:45.912] } [17:27:45.912] })) [17:27:45.912] }, error = function(ex) { [17:27:45.912] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.912] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.912] ...future.rng), started = ...future.startTime, [17:27:45.912] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.912] version = "1.8"), class = "FutureResult") [17:27:45.912] }, finally = { [17:27:45.912] if (!identical(...future.workdir, getwd())) [17:27:45.912] setwd(...future.workdir) [17:27:45.912] { [17:27:45.912] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.912] ...future.oldOptions$nwarnings <- NULL [17:27:45.912] } [17:27:45.912] base::options(...future.oldOptions) [17:27:45.912] if (.Platform$OS.type == "windows") { [17:27:45.912] old_names <- names(...future.oldEnvVars) [17:27:45.912] envs <- base::Sys.getenv() [17:27:45.912] names <- names(envs) [17:27:45.912] common <- intersect(names, old_names) [17:27:45.912] added <- setdiff(names, old_names) [17:27:45.912] removed <- setdiff(old_names, names) [17:27:45.912] changed <- common[...future.oldEnvVars[common] != [17:27:45.912] envs[common]] [17:27:45.912] NAMES <- toupper(changed) [17:27:45.912] args <- list() [17:27:45.912] for (kk in seq_along(NAMES)) { [17:27:45.912] name <- changed[[kk]] [17:27:45.912] NAME <- NAMES[[kk]] [17:27:45.912] if (name != NAME && is.element(NAME, old_names)) [17:27:45.912] next [17:27:45.912] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.912] } [17:27:45.912] NAMES <- toupper(added) [17:27:45.912] for (kk in seq_along(NAMES)) { [17:27:45.912] name <- added[[kk]] [17:27:45.912] NAME <- NAMES[[kk]] [17:27:45.912] if (name != NAME && is.element(NAME, old_names)) [17:27:45.912] next [17:27:45.912] args[[name]] <- "" [17:27:45.912] } [17:27:45.912] NAMES <- toupper(removed) [17:27:45.912] for (kk in seq_along(NAMES)) { [17:27:45.912] name <- removed[[kk]] [17:27:45.912] NAME <- NAMES[[kk]] [17:27:45.912] if (name != NAME && is.element(NAME, old_names)) [17:27:45.912] next [17:27:45.912] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.912] } [17:27:45.912] if (length(args) > 0) [17:27:45.912] base::do.call(base::Sys.setenv, args = args) [17:27:45.912] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.912] } [17:27:45.912] { [17:27:45.912] if (base::length(...future.futureOptionsAdded) > [17:27:45.912] 0L) { [17:27:45.912] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.912] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.912] base::options(opts) [17:27:45.912] } [17:27:45.912] { [17:27:45.912] { [17:27:45.912] NULL [17:27:45.912] RNGkind("Mersenne-Twister") [17:27:45.912] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.912] inherits = FALSE) [17:27:45.912] } [17:27:45.912] options(future.plan = NULL) [17:27:45.912] if (is.na(NA_character_)) [17:27:45.912] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.912] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.912] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.912] .init = FALSE) [17:27:45.912] } [17:27:45.912] } [17:27:45.912] } [17:27:45.912] }) [17:27:45.912] if (TRUE) { [17:27:45.912] base::sink(type = "output", split = FALSE) [17:27:45.912] if (TRUE) { [17:27:45.912] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.912] } [17:27:45.912] else { [17:27:45.912] ...future.result["stdout"] <- base::list(NULL) [17:27:45.912] } [17:27:45.912] base::close(...future.stdout) [17:27:45.912] ...future.stdout <- NULL [17:27:45.912] } [17:27:45.912] ...future.result$conditions <- ...future.conditions [17:27:45.912] ...future.result$finished <- base::Sys.time() [17:27:45.912] ...future.result [17:27:45.912] } [17:27:45.916] plan(): Setting new future strategy stack: [17:27:45.916] List of future strategies: [17:27:45.916] 1. sequential: [17:27:45.916] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.916] - tweaked: FALSE [17:27:45.916] - call: NULL [17:27:45.917] plan(): nbrOfWorkers() = 1 [17:27:45.918] plan(): Setting new future strategy stack: [17:27:45.918] List of future strategies: [17:27:45.918] 1. sequential: [17:27:45.918] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.918] - tweaked: FALSE [17:27:45.918] - call: plan(strategy) [17:27:45.918] plan(): nbrOfWorkers() = 1 [17:27:45.919] SequentialFuture started (and completed) [17:27:45.919] - Launch lazy future ... done [17:27:45.919] run() for 'SequentialFuture' ... done [17:27:45.920] resolve() on environment ... [17:27:45.920] recursive: 0 [17:27:45.920] elements: [3] 'a' [17:27:45.921] resolved() for 'SequentialFuture' ... [17:27:45.921] - state: 'finished' [17:27:45.921] - run: TRUE [17:27:45.921] - result: 'FutureResult' [17:27:45.921] resolved() for 'SequentialFuture' ... done [17:27:45.922] Future #1 [17:27:45.922] length: 2 (resolved future 1) [17:27:45.922] resolved() for 'SequentialFuture' ... [17:27:45.922] - state: 'finished' [17:27:45.922] - run: TRUE [17:27:45.922] - result: 'FutureResult' [17:27:45.923] resolved() for 'SequentialFuture' ... done [17:27:45.923] Future #2 [17:27:45.923] length: 1 (resolved future 2) [17:27:45.923] length: 0 (resolved future 3) [17:27:45.923] resolve() on environment ... DONE [17:27:45.923] resolved() for 'SequentialFuture' ... [17:27:45.924] - state: 'finished' [17:27:45.924] - run: TRUE [17:27:45.924] - result: 'FutureResult' [17:27:45.924] resolved() for 'SequentialFuture' ... done [17:27:45.925] resolve() on environment ... [17:27:45.925] recursive: 0 [17:27:45.925] elements: [3] 'b' [17:27:45.926] resolved() for 'SequentialFuture' ... [17:27:45.926] - state: 'finished' [17:27:45.926] - run: TRUE [17:27:45.926] - result: 'FutureResult' [17:27:45.926] resolved() for 'SequentialFuture' ... done [17:27:45.927] Future #1 [17:27:45.927] length: 2 (resolved future 1) [17:27:45.927] resolved() for 'SequentialFuture' ... [17:27:45.927] - state: 'finished' [17:27:45.927] - run: TRUE [17:27:45.927] - result: 'FutureResult' [17:27:45.928] resolved() for 'SequentialFuture' ... done [17:27:45.928] Future #2 [17:27:45.928] length: 1 (resolved future 2) [17:27:45.928] length: 0 (resolved future 3) [17:27:45.928] resolve() on environment ... DONE [17:27:45.929] resolve() on environment ... [17:27:45.929] recursive: 0 [17:27:45.930] elements: [3] 'c' [17:27:45.930] resolved() for 'SequentialFuture' ... [17:27:45.930] - state: 'finished' [17:27:45.930] - run: TRUE [17:27:45.930] - result: 'FutureResult' [17:27:45.930] resolved() for 'SequentialFuture' ... done [17:27:45.931] Future #1 [17:27:45.931] length: 2 (resolved future 1) [17:27:45.931] resolved() for 'SequentialFuture' ... [17:27:45.931] - state: 'finished' [17:27:45.931] - run: TRUE [17:27:45.932] - result: 'FutureResult' [17:27:45.932] resolved() for 'SequentialFuture' ... done [17:27:45.932] Future #2 [17:27:45.932] length: 1 (resolved future 2) [17:27:45.932] length: 0 (resolved future 3) [17:27:45.932] resolve() on environment ... DONE [17:27:45.933] resolve() on environment ... [17:27:45.933] recursive: 0 [17:27:45.956] elements: [3] 'a', 'b', 'c', '.future_b' [17:27:45.956] resolved() for 'SequentialFuture' ... [17:27:45.956] - state: 'finished' [17:27:45.956] - run: TRUE [17:27:45.957] - result: 'FutureResult' [17:27:45.957] resolved() for 'SequentialFuture' ... done [17:27:45.957] Future #1 [17:27:45.958] length: 2 (resolved future 1) [17:27:45.958] resolved() for 'SequentialFuture' ... [17:27:45.958] - state: 'finished' [17:27:45.958] - run: TRUE [17:27:45.958] - result: 'FutureResult' [17:27:45.958] resolved() for 'SequentialFuture' ... done [17:27:45.959] Future #2 [17:27:45.959] length: 1 (resolved future 2) [17:27:45.959] length: 0 (resolved future 3) [17:27:45.959] resolve() on environment ... DONE [17:27:45.960] resolve() on environment ... [17:27:45.960] recursive: 99 [17:27:45.961] elements: [3] '.future_b', 'a', 'b', 'c' [17:27:45.961] resolved() for 'SequentialFuture' ... [17:27:45.961] - state: 'finished' [17:27:45.961] - run: TRUE [17:27:45.961] - result: 'FutureResult' [17:27:45.961] resolved() for 'SequentialFuture' ... done [17:27:45.962] Future #1 [17:27:45.962] resolved() for 'SequentialFuture' ... [17:27:45.962] - state: 'finished' [17:27:45.962] - run: TRUE [17:27:45.962] - result: 'FutureResult' [17:27:45.963] resolved() for 'SequentialFuture' ... done [17:27:45.963] A SequentialFuture was resolved [17:27:45.963] length: 2 (resolved future 1) [17:27:45.963] resolved() for 'SequentialFuture' ... [17:27:45.963] - state: 'finished' [17:27:45.964] - run: TRUE [17:27:45.964] - result: 'FutureResult' [17:27:45.964] resolved() for 'SequentialFuture' ... done [17:27:45.964] Future #2 [17:27:45.964] resolved() for 'SequentialFuture' ... [17:27:45.964] - state: 'finished' [17:27:45.965] - run: TRUE [17:27:45.965] - result: 'FutureResult' [17:27:45.965] resolved() for 'SequentialFuture' ... done [17:27:45.965] A SequentialFuture was resolved [17:27:45.965] length: 1 (resolved future 2) [17:27:45.966] length: 0 (resolved future 3) [17:27:45.966] resolve() on environment ... DONE *** resolve() for environments ... DONE *** resolve() for list environments ... [17:27:45.967] resolve() on list environment ... [17:27:45.967] recursive: 0 [17:27:45.968] length: 2 [17:27:45.968] elements: 'a', 'b' [17:27:45.968] length: 1 (resolved future 1) [17:27:45.969] length: 0 (resolved future 2) [17:27:45.969] resolve() on list environment ... DONE [17:27:45.969] getGlobalsAndPackages() ... [17:27:45.969] Searching for globals... [17:27:45.969] [17:27:45.970] Searching for globals ... DONE [17:27:45.970] - globals: [0] [17:27:45.970] getGlobalsAndPackages() ... DONE [17:27:45.970] run() for 'Future' ... [17:27:45.970] - state: 'created' [17:27:45.971] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.971] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.971] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.971] - Field: 'label' [17:27:45.972] - Field: 'local' [17:27:45.972] - Field: 'owner' [17:27:45.972] - Field: 'envir' [17:27:45.972] - Field: 'packages' [17:27:45.972] - Field: 'gc' [17:27:45.972] - Field: 'conditions' [17:27:45.973] - Field: 'expr' [17:27:45.973] - Field: 'uuid' [17:27:45.973] - Field: 'seed' [17:27:45.973] - Field: 'version' [17:27:45.973] - Field: 'result' [17:27:45.973] - Field: 'asynchronous' [17:27:45.974] - Field: 'calls' [17:27:45.974] - Field: 'globals' [17:27:45.974] - Field: 'stdout' [17:27:45.974] - Field: 'earlySignal' [17:27:45.974] - Field: 'lazy' [17:27:45.974] - Field: 'state' [17:27:45.975] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.975] - Launch lazy future ... [17:27:45.975] Packages needed by the future expression (n = 0): [17:27:45.975] Packages needed by future strategies (n = 0): [17:27:45.976] { [17:27:45.976] { [17:27:45.976] { [17:27:45.976] ...future.startTime <- base::Sys.time() [17:27:45.976] { [17:27:45.976] { [17:27:45.976] { [17:27:45.976] base::local({ [17:27:45.976] has_future <- base::requireNamespace("future", [17:27:45.976] quietly = TRUE) [17:27:45.976] if (has_future) { [17:27:45.976] ns <- base::getNamespace("future") [17:27:45.976] version <- ns[[".package"]][["version"]] [17:27:45.976] if (is.null(version)) [17:27:45.976] version <- utils::packageVersion("future") [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] version <- NULL [17:27:45.976] } [17:27:45.976] if (!has_future || version < "1.8.0") { [17:27:45.976] info <- base::c(r_version = base::gsub("R version ", [17:27:45.976] "", base::R.version$version.string), [17:27:45.976] platform = base::sprintf("%s (%s-bit)", [17:27:45.976] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.976] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.976] "release", "version")], collapse = " "), [17:27:45.976] hostname = base::Sys.info()[["nodename"]]) [17:27:45.976] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.976] info) [17:27:45.976] info <- base::paste(info, collapse = "; ") [17:27:45.976] if (!has_future) { [17:27:45.976] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.976] info) [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.976] info, version) [17:27:45.976] } [17:27:45.976] base::stop(msg) [17:27:45.976] } [17:27:45.976] }) [17:27:45.976] } [17:27:45.976] ...future.strategy.old <- future::plan("list") [17:27:45.976] options(future.plan = NULL) [17:27:45.976] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.976] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.976] } [17:27:45.976] ...future.workdir <- getwd() [17:27:45.976] } [17:27:45.976] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.976] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.976] } [17:27:45.976] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.976] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.976] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.976] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.976] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.976] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.976] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.976] base::names(...future.oldOptions)) [17:27:45.976] } [17:27:45.976] if (FALSE) { [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] if (TRUE) { [17:27:45.976] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.976] open = "w") [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.976] windows = "NUL", "/dev/null"), open = "w") [17:27:45.976] } [17:27:45.976] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.976] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.976] base::sink(type = "output", split = FALSE) [17:27:45.976] base::close(...future.stdout) [17:27:45.976] }, add = TRUE) [17:27:45.976] } [17:27:45.976] ...future.frame <- base::sys.nframe() [17:27:45.976] ...future.conditions <- base::list() [17:27:45.976] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.976] if (FALSE) { [17:27:45.976] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.976] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.976] } [17:27:45.976] ...future.result <- base::tryCatch({ [17:27:45.976] base::withCallingHandlers({ [17:27:45.976] ...future.value <- base::withVisible(base::local(1)) [17:27:45.976] future::FutureResult(value = ...future.value$value, [17:27:45.976] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.976] ...future.rng), globalenv = if (FALSE) [17:27:45.976] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.976] ...future.globalenv.names)) [17:27:45.976] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.976] }, condition = base::local({ [17:27:45.976] c <- base::c [17:27:45.976] inherits <- base::inherits [17:27:45.976] invokeRestart <- base::invokeRestart [17:27:45.976] length <- base::length [17:27:45.976] list <- base::list [17:27:45.976] seq.int <- base::seq.int [17:27:45.976] signalCondition <- base::signalCondition [17:27:45.976] sys.calls <- base::sys.calls [17:27:45.976] `[[` <- base::`[[` [17:27:45.976] `+` <- base::`+` [17:27:45.976] `<<-` <- base::`<<-` [17:27:45.976] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.976] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.976] 3L)] [17:27:45.976] } [17:27:45.976] function(cond) { [17:27:45.976] is_error <- inherits(cond, "error") [17:27:45.976] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.976] NULL) [17:27:45.976] if (is_error) { [17:27:45.976] sessionInformation <- function() { [17:27:45.976] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.976] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.976] search = base::search(), system = base::Sys.info()) [17:27:45.976] } [17:27:45.976] ...future.conditions[[length(...future.conditions) + [17:27:45.976] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.976] cond$call), session = sessionInformation(), [17:27:45.976] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.976] signalCondition(cond) [17:27:45.976] } [17:27:45.976] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.976] "immediateCondition"))) { [17:27:45.976] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.976] ...future.conditions[[length(...future.conditions) + [17:27:45.976] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.976] if (TRUE && !signal) { [17:27:45.976] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.976] { [17:27:45.976] inherits <- base::inherits [17:27:45.976] invokeRestart <- base::invokeRestart [17:27:45.976] is.null <- base::is.null [17:27:45.976] muffled <- FALSE [17:27:45.976] if (inherits(cond, "message")) { [17:27:45.976] muffled <- grepl(pattern, "muffleMessage") [17:27:45.976] if (muffled) [17:27:45.976] invokeRestart("muffleMessage") [17:27:45.976] } [17:27:45.976] else if (inherits(cond, "warning")) { [17:27:45.976] muffled <- grepl(pattern, "muffleWarning") [17:27:45.976] if (muffled) [17:27:45.976] invokeRestart("muffleWarning") [17:27:45.976] } [17:27:45.976] else if (inherits(cond, "condition")) { [17:27:45.976] if (!is.null(pattern)) { [17:27:45.976] computeRestarts <- base::computeRestarts [17:27:45.976] grepl <- base::grepl [17:27:45.976] restarts <- computeRestarts(cond) [17:27:45.976] for (restart in restarts) { [17:27:45.976] name <- restart$name [17:27:45.976] if (is.null(name)) [17:27:45.976] next [17:27:45.976] if (!grepl(pattern, name)) [17:27:45.976] next [17:27:45.976] invokeRestart(restart) [17:27:45.976] muffled <- TRUE [17:27:45.976] break [17:27:45.976] } [17:27:45.976] } [17:27:45.976] } [17:27:45.976] invisible(muffled) [17:27:45.976] } [17:27:45.976] muffleCondition(cond, pattern = "^muffle") [17:27:45.976] } [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] if (TRUE) { [17:27:45.976] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.976] { [17:27:45.976] inherits <- base::inherits [17:27:45.976] invokeRestart <- base::invokeRestart [17:27:45.976] is.null <- base::is.null [17:27:45.976] muffled <- FALSE [17:27:45.976] if (inherits(cond, "message")) { [17:27:45.976] muffled <- grepl(pattern, "muffleMessage") [17:27:45.976] if (muffled) [17:27:45.976] invokeRestart("muffleMessage") [17:27:45.976] } [17:27:45.976] else if (inherits(cond, "warning")) { [17:27:45.976] muffled <- grepl(pattern, "muffleWarning") [17:27:45.976] if (muffled) [17:27:45.976] invokeRestart("muffleWarning") [17:27:45.976] } [17:27:45.976] else if (inherits(cond, "condition")) { [17:27:45.976] if (!is.null(pattern)) { [17:27:45.976] computeRestarts <- base::computeRestarts [17:27:45.976] grepl <- base::grepl [17:27:45.976] restarts <- computeRestarts(cond) [17:27:45.976] for (restart in restarts) { [17:27:45.976] name <- restart$name [17:27:45.976] if (is.null(name)) [17:27:45.976] next [17:27:45.976] if (!grepl(pattern, name)) [17:27:45.976] next [17:27:45.976] invokeRestart(restart) [17:27:45.976] muffled <- TRUE [17:27:45.976] break [17:27:45.976] } [17:27:45.976] } [17:27:45.976] } [17:27:45.976] invisible(muffled) [17:27:45.976] } [17:27:45.976] muffleCondition(cond, pattern = "^muffle") [17:27:45.976] } [17:27:45.976] } [17:27:45.976] } [17:27:45.976] })) [17:27:45.976] }, error = function(ex) { [17:27:45.976] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.976] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.976] ...future.rng), started = ...future.startTime, [17:27:45.976] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.976] version = "1.8"), class = "FutureResult") [17:27:45.976] }, finally = { [17:27:45.976] if (!identical(...future.workdir, getwd())) [17:27:45.976] setwd(...future.workdir) [17:27:45.976] { [17:27:45.976] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.976] ...future.oldOptions$nwarnings <- NULL [17:27:45.976] } [17:27:45.976] base::options(...future.oldOptions) [17:27:45.976] if (.Platform$OS.type == "windows") { [17:27:45.976] old_names <- names(...future.oldEnvVars) [17:27:45.976] envs <- base::Sys.getenv() [17:27:45.976] names <- names(envs) [17:27:45.976] common <- intersect(names, old_names) [17:27:45.976] added <- setdiff(names, old_names) [17:27:45.976] removed <- setdiff(old_names, names) [17:27:45.976] changed <- common[...future.oldEnvVars[common] != [17:27:45.976] envs[common]] [17:27:45.976] NAMES <- toupper(changed) [17:27:45.976] args <- list() [17:27:45.976] for (kk in seq_along(NAMES)) { [17:27:45.976] name <- changed[[kk]] [17:27:45.976] NAME <- NAMES[[kk]] [17:27:45.976] if (name != NAME && is.element(NAME, old_names)) [17:27:45.976] next [17:27:45.976] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.976] } [17:27:45.976] NAMES <- toupper(added) [17:27:45.976] for (kk in seq_along(NAMES)) { [17:27:45.976] name <- added[[kk]] [17:27:45.976] NAME <- NAMES[[kk]] [17:27:45.976] if (name != NAME && is.element(NAME, old_names)) [17:27:45.976] next [17:27:45.976] args[[name]] <- "" [17:27:45.976] } [17:27:45.976] NAMES <- toupper(removed) [17:27:45.976] for (kk in seq_along(NAMES)) { [17:27:45.976] name <- removed[[kk]] [17:27:45.976] NAME <- NAMES[[kk]] [17:27:45.976] if (name != NAME && is.element(NAME, old_names)) [17:27:45.976] next [17:27:45.976] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.976] } [17:27:45.976] if (length(args) > 0) [17:27:45.976] base::do.call(base::Sys.setenv, args = args) [17:27:45.976] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.976] } [17:27:45.976] { [17:27:45.976] if (base::length(...future.futureOptionsAdded) > [17:27:45.976] 0L) { [17:27:45.976] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.976] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.976] base::options(opts) [17:27:45.976] } [17:27:45.976] { [17:27:45.976] { [17:27:45.976] NULL [17:27:45.976] RNGkind("Mersenne-Twister") [17:27:45.976] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.976] inherits = FALSE) [17:27:45.976] } [17:27:45.976] options(future.plan = NULL) [17:27:45.976] if (is.na(NA_character_)) [17:27:45.976] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.976] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.976] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.976] .init = FALSE) [17:27:45.976] } [17:27:45.976] } [17:27:45.976] } [17:27:45.976] }) [17:27:45.976] if (TRUE) { [17:27:45.976] base::sink(type = "output", split = FALSE) [17:27:45.976] if (TRUE) { [17:27:45.976] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.976] } [17:27:45.976] else { [17:27:45.976] ...future.result["stdout"] <- base::list(NULL) [17:27:45.976] } [17:27:45.976] base::close(...future.stdout) [17:27:45.976] ...future.stdout <- NULL [17:27:45.976] } [17:27:45.976] ...future.result$conditions <- ...future.conditions [17:27:45.976] ...future.result$finished <- base::Sys.time() [17:27:45.976] ...future.result [17:27:45.976] } [17:27:45.980] plan(): Setting new future strategy stack: [17:27:45.980] List of future strategies: [17:27:45.980] 1. sequential: [17:27:45.980] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.980] - tweaked: FALSE [17:27:45.980] - call: NULL [17:27:45.981] plan(): nbrOfWorkers() = 1 [17:27:45.982] plan(): Setting new future strategy stack: [17:27:45.982] List of future strategies: [17:27:45.982] 1. sequential: [17:27:45.982] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.982] - tweaked: FALSE [17:27:45.982] - call: plan(strategy) [17:27:45.983] plan(): nbrOfWorkers() = 1 [17:27:45.983] SequentialFuture started (and completed) [17:27:45.983] - Launch lazy future ... done [17:27:45.983] run() for 'SequentialFuture' ... done [17:27:45.983] getGlobalsAndPackages() ... [17:27:45.984] Searching for globals... [17:27:45.984] [17:27:45.984] Searching for globals ... DONE [17:27:45.984] - globals: [0] [17:27:45.984] getGlobalsAndPackages() ... DONE [17:27:45.985] run() for 'Future' ... [17:27:45.985] - state: 'created' [17:27:45.985] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:45.985] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:45.986] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:45.986] - Field: 'label' [17:27:45.986] - Field: 'local' [17:27:45.986] - Field: 'owner' [17:27:45.986] - Field: 'envir' [17:27:45.987] - Field: 'packages' [17:27:45.987] - Field: 'gc' [17:27:45.987] - Field: 'conditions' [17:27:45.987] - Field: 'expr' [17:27:45.987] - Field: 'uuid' [17:27:45.987] - Field: 'seed' [17:27:45.988] - Field: 'version' [17:27:45.988] - Field: 'result' [17:27:45.988] - Field: 'asynchronous' [17:27:45.988] - Field: 'calls' [17:27:45.988] - Field: 'globals' [17:27:45.988] - Field: 'stdout' [17:27:45.989] - Field: 'earlySignal' [17:27:45.989] - Field: 'lazy' [17:27:45.989] - Field: 'state' [17:27:45.989] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:45.989] - Launch lazy future ... [17:27:45.989] Packages needed by the future expression (n = 0): [17:27:45.990] Packages needed by future strategies (n = 0): [17:27:45.990] { [17:27:45.990] { [17:27:45.990] { [17:27:45.990] ...future.startTime <- base::Sys.time() [17:27:45.990] { [17:27:45.990] { [17:27:45.990] { [17:27:45.990] base::local({ [17:27:45.990] has_future <- base::requireNamespace("future", [17:27:45.990] quietly = TRUE) [17:27:45.990] if (has_future) { [17:27:45.990] ns <- base::getNamespace("future") [17:27:45.990] version <- ns[[".package"]][["version"]] [17:27:45.990] if (is.null(version)) [17:27:45.990] version <- utils::packageVersion("future") [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] version <- NULL [17:27:45.990] } [17:27:45.990] if (!has_future || version < "1.8.0") { [17:27:45.990] info <- base::c(r_version = base::gsub("R version ", [17:27:45.990] "", base::R.version$version.string), [17:27:45.990] platform = base::sprintf("%s (%s-bit)", [17:27:45.990] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:45.990] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:45.990] "release", "version")], collapse = " "), [17:27:45.990] hostname = base::Sys.info()[["nodename"]]) [17:27:45.990] info <- base::sprintf("%s: %s", base::names(info), [17:27:45.990] info) [17:27:45.990] info <- base::paste(info, collapse = "; ") [17:27:45.990] if (!has_future) { [17:27:45.990] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:45.990] info) [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:45.990] info, version) [17:27:45.990] } [17:27:45.990] base::stop(msg) [17:27:45.990] } [17:27:45.990] }) [17:27:45.990] } [17:27:45.990] ...future.strategy.old <- future::plan("list") [17:27:45.990] options(future.plan = NULL) [17:27:45.990] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.990] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:45.990] } [17:27:45.990] ...future.workdir <- getwd() [17:27:45.990] } [17:27:45.990] ...future.oldOptions <- base::as.list(base::.Options) [17:27:45.990] ...future.oldEnvVars <- base::Sys.getenv() [17:27:45.990] } [17:27:45.990] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:45.990] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:45.990] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:45.990] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:45.990] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:45.990] future.stdout.windows.reencode = NULL, width = 80L) [17:27:45.990] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:45.990] base::names(...future.oldOptions)) [17:27:45.990] } [17:27:45.990] if (FALSE) { [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] if (TRUE) { [17:27:45.990] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:45.990] open = "w") [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:45.990] windows = "NUL", "/dev/null"), open = "w") [17:27:45.990] } [17:27:45.990] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:45.990] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:45.990] base::sink(type = "output", split = FALSE) [17:27:45.990] base::close(...future.stdout) [17:27:45.990] }, add = TRUE) [17:27:45.990] } [17:27:45.990] ...future.frame <- base::sys.nframe() [17:27:45.990] ...future.conditions <- base::list() [17:27:45.990] ...future.rng <- base::globalenv()$.Random.seed [17:27:45.990] if (FALSE) { [17:27:45.990] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:45.990] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:45.990] } [17:27:45.990] ...future.result <- base::tryCatch({ [17:27:45.990] base::withCallingHandlers({ [17:27:45.990] ...future.value <- base::withVisible(base::local(2)) [17:27:45.990] future::FutureResult(value = ...future.value$value, [17:27:45.990] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.990] ...future.rng), globalenv = if (FALSE) [17:27:45.990] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:45.990] ...future.globalenv.names)) [17:27:45.990] else NULL, started = ...future.startTime, version = "1.8") [17:27:45.990] }, condition = base::local({ [17:27:45.990] c <- base::c [17:27:45.990] inherits <- base::inherits [17:27:45.990] invokeRestart <- base::invokeRestart [17:27:45.990] length <- base::length [17:27:45.990] list <- base::list [17:27:45.990] seq.int <- base::seq.int [17:27:45.990] signalCondition <- base::signalCondition [17:27:45.990] sys.calls <- base::sys.calls [17:27:45.990] `[[` <- base::`[[` [17:27:45.990] `+` <- base::`+` [17:27:45.990] `<<-` <- base::`<<-` [17:27:45.990] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:45.990] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:45.990] 3L)] [17:27:45.990] } [17:27:45.990] function(cond) { [17:27:45.990] is_error <- inherits(cond, "error") [17:27:45.990] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:45.990] NULL) [17:27:45.990] if (is_error) { [17:27:45.990] sessionInformation <- function() { [17:27:45.990] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:45.990] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:45.990] search = base::search(), system = base::Sys.info()) [17:27:45.990] } [17:27:45.990] ...future.conditions[[length(...future.conditions) + [17:27:45.990] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:45.990] cond$call), session = sessionInformation(), [17:27:45.990] timestamp = base::Sys.time(), signaled = 0L) [17:27:45.990] signalCondition(cond) [17:27:45.990] } [17:27:45.990] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:45.990] "immediateCondition"))) { [17:27:45.990] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:45.990] ...future.conditions[[length(...future.conditions) + [17:27:45.990] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:45.990] if (TRUE && !signal) { [17:27:45.990] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.990] { [17:27:45.990] inherits <- base::inherits [17:27:45.990] invokeRestart <- base::invokeRestart [17:27:45.990] is.null <- base::is.null [17:27:45.990] muffled <- FALSE [17:27:45.990] if (inherits(cond, "message")) { [17:27:45.990] muffled <- grepl(pattern, "muffleMessage") [17:27:45.990] if (muffled) [17:27:45.990] invokeRestart("muffleMessage") [17:27:45.990] } [17:27:45.990] else if (inherits(cond, "warning")) { [17:27:45.990] muffled <- grepl(pattern, "muffleWarning") [17:27:45.990] if (muffled) [17:27:45.990] invokeRestart("muffleWarning") [17:27:45.990] } [17:27:45.990] else if (inherits(cond, "condition")) { [17:27:45.990] if (!is.null(pattern)) { [17:27:45.990] computeRestarts <- base::computeRestarts [17:27:45.990] grepl <- base::grepl [17:27:45.990] restarts <- computeRestarts(cond) [17:27:45.990] for (restart in restarts) { [17:27:45.990] name <- restart$name [17:27:45.990] if (is.null(name)) [17:27:45.990] next [17:27:45.990] if (!grepl(pattern, name)) [17:27:45.990] next [17:27:45.990] invokeRestart(restart) [17:27:45.990] muffled <- TRUE [17:27:45.990] break [17:27:45.990] } [17:27:45.990] } [17:27:45.990] } [17:27:45.990] invisible(muffled) [17:27:45.990] } [17:27:45.990] muffleCondition(cond, pattern = "^muffle") [17:27:45.990] } [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] if (TRUE) { [17:27:45.990] muffleCondition <- function (cond, pattern = "^muffle") [17:27:45.990] { [17:27:45.990] inherits <- base::inherits [17:27:45.990] invokeRestart <- base::invokeRestart [17:27:45.990] is.null <- base::is.null [17:27:45.990] muffled <- FALSE [17:27:45.990] if (inherits(cond, "message")) { [17:27:45.990] muffled <- grepl(pattern, "muffleMessage") [17:27:45.990] if (muffled) [17:27:45.990] invokeRestart("muffleMessage") [17:27:45.990] } [17:27:45.990] else if (inherits(cond, "warning")) { [17:27:45.990] muffled <- grepl(pattern, "muffleWarning") [17:27:45.990] if (muffled) [17:27:45.990] invokeRestart("muffleWarning") [17:27:45.990] } [17:27:45.990] else if (inherits(cond, "condition")) { [17:27:45.990] if (!is.null(pattern)) { [17:27:45.990] computeRestarts <- base::computeRestarts [17:27:45.990] grepl <- base::grepl [17:27:45.990] restarts <- computeRestarts(cond) [17:27:45.990] for (restart in restarts) { [17:27:45.990] name <- restart$name [17:27:45.990] if (is.null(name)) [17:27:45.990] next [17:27:45.990] if (!grepl(pattern, name)) [17:27:45.990] next [17:27:45.990] invokeRestart(restart) [17:27:45.990] muffled <- TRUE [17:27:45.990] break [17:27:45.990] } [17:27:45.990] } [17:27:45.990] } [17:27:45.990] invisible(muffled) [17:27:45.990] } [17:27:45.990] muffleCondition(cond, pattern = "^muffle") [17:27:45.990] } [17:27:45.990] } [17:27:45.990] } [17:27:45.990] })) [17:27:45.990] }, error = function(ex) { [17:27:45.990] base::structure(base::list(value = NULL, visible = NULL, [17:27:45.990] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:45.990] ...future.rng), started = ...future.startTime, [17:27:45.990] finished = Sys.time(), session_uuid = NA_character_, [17:27:45.990] version = "1.8"), class = "FutureResult") [17:27:45.990] }, finally = { [17:27:45.990] if (!identical(...future.workdir, getwd())) [17:27:45.990] setwd(...future.workdir) [17:27:45.990] { [17:27:45.990] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:45.990] ...future.oldOptions$nwarnings <- NULL [17:27:45.990] } [17:27:45.990] base::options(...future.oldOptions) [17:27:45.990] if (.Platform$OS.type == "windows") { [17:27:45.990] old_names <- names(...future.oldEnvVars) [17:27:45.990] envs <- base::Sys.getenv() [17:27:45.990] names <- names(envs) [17:27:45.990] common <- intersect(names, old_names) [17:27:45.990] added <- setdiff(names, old_names) [17:27:45.990] removed <- setdiff(old_names, names) [17:27:45.990] changed <- common[...future.oldEnvVars[common] != [17:27:45.990] envs[common]] [17:27:45.990] NAMES <- toupper(changed) [17:27:45.990] args <- list() [17:27:45.990] for (kk in seq_along(NAMES)) { [17:27:45.990] name <- changed[[kk]] [17:27:45.990] NAME <- NAMES[[kk]] [17:27:45.990] if (name != NAME && is.element(NAME, old_names)) [17:27:45.990] next [17:27:45.990] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.990] } [17:27:45.990] NAMES <- toupper(added) [17:27:45.990] for (kk in seq_along(NAMES)) { [17:27:45.990] name <- added[[kk]] [17:27:45.990] NAME <- NAMES[[kk]] [17:27:45.990] if (name != NAME && is.element(NAME, old_names)) [17:27:45.990] next [17:27:45.990] args[[name]] <- "" [17:27:45.990] } [17:27:45.990] NAMES <- toupper(removed) [17:27:45.990] for (kk in seq_along(NAMES)) { [17:27:45.990] name <- removed[[kk]] [17:27:45.990] NAME <- NAMES[[kk]] [17:27:45.990] if (name != NAME && is.element(NAME, old_names)) [17:27:45.990] next [17:27:45.990] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:45.990] } [17:27:45.990] if (length(args) > 0) [17:27:45.990] base::do.call(base::Sys.setenv, args = args) [17:27:45.990] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:45.990] } [17:27:45.990] { [17:27:45.990] if (base::length(...future.futureOptionsAdded) > [17:27:45.990] 0L) { [17:27:45.990] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:45.990] base::names(opts) <- ...future.futureOptionsAdded [17:27:45.990] base::options(opts) [17:27:45.990] } [17:27:45.990] { [17:27:45.990] { [17:27:45.990] NULL [17:27:45.990] RNGkind("Mersenne-Twister") [17:27:45.990] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:45.990] inherits = FALSE) [17:27:45.990] } [17:27:45.990] options(future.plan = NULL) [17:27:45.990] if (is.na(NA_character_)) [17:27:45.990] Sys.unsetenv("R_FUTURE_PLAN") [17:27:45.990] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:45.990] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:45.990] .init = FALSE) [17:27:45.990] } [17:27:45.990] } [17:27:45.990] } [17:27:45.990] }) [17:27:45.990] if (TRUE) { [17:27:45.990] base::sink(type = "output", split = FALSE) [17:27:45.990] if (TRUE) { [17:27:45.990] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:45.990] } [17:27:45.990] else { [17:27:45.990] ...future.result["stdout"] <- base::list(NULL) [17:27:45.990] } [17:27:45.990] base::close(...future.stdout) [17:27:45.990] ...future.stdout <- NULL [17:27:45.990] } [17:27:45.990] ...future.result$conditions <- ...future.conditions [17:27:45.990] ...future.result$finished <- base::Sys.time() [17:27:45.990] ...future.result [17:27:45.990] } [17:27:45.994] plan(): Setting new future strategy stack: [17:27:45.995] List of future strategies: [17:27:45.995] 1. sequential: [17:27:45.995] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.995] - tweaked: FALSE [17:27:45.995] - call: NULL [17:27:45.996] plan(): nbrOfWorkers() = 1 [17:27:45.997] plan(): Setting new future strategy stack: [17:27:45.997] List of future strategies: [17:27:45.997] 1. sequential: [17:27:45.997] - args: function (..., envir = parent.frame(), workers = "") [17:27:45.997] - tweaked: FALSE [17:27:45.997] - call: plan(strategy) [17:27:45.998] plan(): nbrOfWorkers() = 1 [17:27:45.998] SequentialFuture started (and completed) [17:27:45.998] - Launch lazy future ... done [17:27:45.998] run() for 'SequentialFuture' ... done [17:27:45.999] resolve() on list environment ... [17:27:45.999] recursive: 0 [17:27:46.000] length: 3 [17:27:46.000] elements: 'a', 'b', 'c' [17:27:46.000] resolved() for 'SequentialFuture' ... [17:27:46.000] - state: 'finished' [17:27:46.001] - run: TRUE [17:27:46.001] - result: 'FutureResult' [17:27:46.001] resolved() for 'SequentialFuture' ... done [17:27:46.001] Future #1 [17:27:46.001] length: 2 (resolved future 1) [17:27:46.001] resolved() for 'SequentialFuture' ... [17:27:46.002] - state: 'finished' [17:27:46.002] - run: TRUE [17:27:46.002] - result: 'FutureResult' [17:27:46.002] resolved() for 'SequentialFuture' ... done [17:27:46.002] Future #2 [17:27:46.003] length: 1 (resolved future 2) [17:27:46.003] length: 0 (resolved future 3) [17:27:46.003] resolve() on list environment ... DONE [17:27:46.004] getGlobalsAndPackages() ... [17:27:46.004] Searching for globals... [17:27:46.005] - globals found: [1] '{' [17:27:46.005] Searching for globals ... DONE [17:27:46.005] Resolving globals: FALSE [17:27:46.005] [17:27:46.006] [17:27:46.006] getGlobalsAndPackages() ... DONE [17:27:46.006] run() for 'Future' ... [17:27:46.006] - state: 'created' [17:27:46.006] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:46.007] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:46.007] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:46.007] - Field: 'label' [17:27:46.007] - Field: 'local' [17:27:46.007] - Field: 'owner' [17:27:46.008] - Field: 'envir' [17:27:46.008] - Field: 'packages' [17:27:46.008] - Field: 'gc' [17:27:46.008] - Field: 'conditions' [17:27:46.008] - Field: 'expr' [17:27:46.008] - Field: 'uuid' [17:27:46.009] - Field: 'seed' [17:27:46.009] - Field: 'version' [17:27:46.009] - Field: 'result' [17:27:46.009] - Field: 'asynchronous' [17:27:46.009] - Field: 'calls' [17:27:46.009] - Field: 'globals' [17:27:46.010] - Field: 'stdout' [17:27:46.010] - Field: 'earlySignal' [17:27:46.010] - Field: 'lazy' [17:27:46.010] - Field: 'state' [17:27:46.010] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:46.011] - Launch lazy future ... [17:27:46.011] Packages needed by the future expression (n = 0): [17:27:46.011] Packages needed by future strategies (n = 0): [17:27:46.011] { [17:27:46.011] { [17:27:46.011] { [17:27:46.011] ...future.startTime <- base::Sys.time() [17:27:46.011] { [17:27:46.011] { [17:27:46.011] { [17:27:46.011] base::local({ [17:27:46.011] has_future <- base::requireNamespace("future", [17:27:46.011] quietly = TRUE) [17:27:46.011] if (has_future) { [17:27:46.011] ns <- base::getNamespace("future") [17:27:46.011] version <- ns[[".package"]][["version"]] [17:27:46.011] if (is.null(version)) [17:27:46.011] version <- utils::packageVersion("future") [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] version <- NULL [17:27:46.011] } [17:27:46.011] if (!has_future || version < "1.8.0") { [17:27:46.011] info <- base::c(r_version = base::gsub("R version ", [17:27:46.011] "", base::R.version$version.string), [17:27:46.011] platform = base::sprintf("%s (%s-bit)", [17:27:46.011] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:46.011] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:46.011] "release", "version")], collapse = " "), [17:27:46.011] hostname = base::Sys.info()[["nodename"]]) [17:27:46.011] info <- base::sprintf("%s: %s", base::names(info), [17:27:46.011] info) [17:27:46.011] info <- base::paste(info, collapse = "; ") [17:27:46.011] if (!has_future) { [17:27:46.011] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:46.011] info) [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:46.011] info, version) [17:27:46.011] } [17:27:46.011] base::stop(msg) [17:27:46.011] } [17:27:46.011] }) [17:27:46.011] } [17:27:46.011] ...future.strategy.old <- future::plan("list") [17:27:46.011] options(future.plan = NULL) [17:27:46.011] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.011] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:46.011] } [17:27:46.011] ...future.workdir <- getwd() [17:27:46.011] } [17:27:46.011] ...future.oldOptions <- base::as.list(base::.Options) [17:27:46.011] ...future.oldEnvVars <- base::Sys.getenv() [17:27:46.011] } [17:27:46.011] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:46.011] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:46.011] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:46.011] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:46.011] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:46.011] future.stdout.windows.reencode = NULL, width = 80L) [17:27:46.011] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:46.011] base::names(...future.oldOptions)) [17:27:46.011] } [17:27:46.011] if (FALSE) { [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] if (TRUE) { [17:27:46.011] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:46.011] open = "w") [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:46.011] windows = "NUL", "/dev/null"), open = "w") [17:27:46.011] } [17:27:46.011] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:46.011] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:46.011] base::sink(type = "output", split = FALSE) [17:27:46.011] base::close(...future.stdout) [17:27:46.011] }, add = TRUE) [17:27:46.011] } [17:27:46.011] ...future.frame <- base::sys.nframe() [17:27:46.011] ...future.conditions <- base::list() [17:27:46.011] ...future.rng <- base::globalenv()$.Random.seed [17:27:46.011] if (FALSE) { [17:27:46.011] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:46.011] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:46.011] } [17:27:46.011] ...future.result <- base::tryCatch({ [17:27:46.011] base::withCallingHandlers({ [17:27:46.011] ...future.value <- base::withVisible(base::local({ [17:27:46.011] 1 [17:27:46.011] })) [17:27:46.011] future::FutureResult(value = ...future.value$value, [17:27:46.011] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.011] ...future.rng), globalenv = if (FALSE) [17:27:46.011] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:46.011] ...future.globalenv.names)) [17:27:46.011] else NULL, started = ...future.startTime, version = "1.8") [17:27:46.011] }, condition = base::local({ [17:27:46.011] c <- base::c [17:27:46.011] inherits <- base::inherits [17:27:46.011] invokeRestart <- base::invokeRestart [17:27:46.011] length <- base::length [17:27:46.011] list <- base::list [17:27:46.011] seq.int <- base::seq.int [17:27:46.011] signalCondition <- base::signalCondition [17:27:46.011] sys.calls <- base::sys.calls [17:27:46.011] `[[` <- base::`[[` [17:27:46.011] `+` <- base::`+` [17:27:46.011] `<<-` <- base::`<<-` [17:27:46.011] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:46.011] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:46.011] 3L)] [17:27:46.011] } [17:27:46.011] function(cond) { [17:27:46.011] is_error <- inherits(cond, "error") [17:27:46.011] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:46.011] NULL) [17:27:46.011] if (is_error) { [17:27:46.011] sessionInformation <- function() { [17:27:46.011] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:46.011] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:46.011] search = base::search(), system = base::Sys.info()) [17:27:46.011] } [17:27:46.011] ...future.conditions[[length(...future.conditions) + [17:27:46.011] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:46.011] cond$call), session = sessionInformation(), [17:27:46.011] timestamp = base::Sys.time(), signaled = 0L) [17:27:46.011] signalCondition(cond) [17:27:46.011] } [17:27:46.011] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:46.011] "immediateCondition"))) { [17:27:46.011] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:46.011] ...future.conditions[[length(...future.conditions) + [17:27:46.011] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:46.011] if (TRUE && !signal) { [17:27:46.011] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.011] { [17:27:46.011] inherits <- base::inherits [17:27:46.011] invokeRestart <- base::invokeRestart [17:27:46.011] is.null <- base::is.null [17:27:46.011] muffled <- FALSE [17:27:46.011] if (inherits(cond, "message")) { [17:27:46.011] muffled <- grepl(pattern, "muffleMessage") [17:27:46.011] if (muffled) [17:27:46.011] invokeRestart("muffleMessage") [17:27:46.011] } [17:27:46.011] else if (inherits(cond, "warning")) { [17:27:46.011] muffled <- grepl(pattern, "muffleWarning") [17:27:46.011] if (muffled) [17:27:46.011] invokeRestart("muffleWarning") [17:27:46.011] } [17:27:46.011] else if (inherits(cond, "condition")) { [17:27:46.011] if (!is.null(pattern)) { [17:27:46.011] computeRestarts <- base::computeRestarts [17:27:46.011] grepl <- base::grepl [17:27:46.011] restarts <- computeRestarts(cond) [17:27:46.011] for (restart in restarts) { [17:27:46.011] name <- restart$name [17:27:46.011] if (is.null(name)) [17:27:46.011] next [17:27:46.011] if (!grepl(pattern, name)) [17:27:46.011] next [17:27:46.011] invokeRestart(restart) [17:27:46.011] muffled <- TRUE [17:27:46.011] break [17:27:46.011] } [17:27:46.011] } [17:27:46.011] } [17:27:46.011] invisible(muffled) [17:27:46.011] } [17:27:46.011] muffleCondition(cond, pattern = "^muffle") [17:27:46.011] } [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] if (TRUE) { [17:27:46.011] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.011] { [17:27:46.011] inherits <- base::inherits [17:27:46.011] invokeRestart <- base::invokeRestart [17:27:46.011] is.null <- base::is.null [17:27:46.011] muffled <- FALSE [17:27:46.011] if (inherits(cond, "message")) { [17:27:46.011] muffled <- grepl(pattern, "muffleMessage") [17:27:46.011] if (muffled) [17:27:46.011] invokeRestart("muffleMessage") [17:27:46.011] } [17:27:46.011] else if (inherits(cond, "warning")) { [17:27:46.011] muffled <- grepl(pattern, "muffleWarning") [17:27:46.011] if (muffled) [17:27:46.011] invokeRestart("muffleWarning") [17:27:46.011] } [17:27:46.011] else if (inherits(cond, "condition")) { [17:27:46.011] if (!is.null(pattern)) { [17:27:46.011] computeRestarts <- base::computeRestarts [17:27:46.011] grepl <- base::grepl [17:27:46.011] restarts <- computeRestarts(cond) [17:27:46.011] for (restart in restarts) { [17:27:46.011] name <- restart$name [17:27:46.011] if (is.null(name)) [17:27:46.011] next [17:27:46.011] if (!grepl(pattern, name)) [17:27:46.011] next [17:27:46.011] invokeRestart(restart) [17:27:46.011] muffled <- TRUE [17:27:46.011] break [17:27:46.011] } [17:27:46.011] } [17:27:46.011] } [17:27:46.011] invisible(muffled) [17:27:46.011] } [17:27:46.011] muffleCondition(cond, pattern = "^muffle") [17:27:46.011] } [17:27:46.011] } [17:27:46.011] } [17:27:46.011] })) [17:27:46.011] }, error = function(ex) { [17:27:46.011] base::structure(base::list(value = NULL, visible = NULL, [17:27:46.011] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.011] ...future.rng), started = ...future.startTime, [17:27:46.011] finished = Sys.time(), session_uuid = NA_character_, [17:27:46.011] version = "1.8"), class = "FutureResult") [17:27:46.011] }, finally = { [17:27:46.011] if (!identical(...future.workdir, getwd())) [17:27:46.011] setwd(...future.workdir) [17:27:46.011] { [17:27:46.011] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:46.011] ...future.oldOptions$nwarnings <- NULL [17:27:46.011] } [17:27:46.011] base::options(...future.oldOptions) [17:27:46.011] if (.Platform$OS.type == "windows") { [17:27:46.011] old_names <- names(...future.oldEnvVars) [17:27:46.011] envs <- base::Sys.getenv() [17:27:46.011] names <- names(envs) [17:27:46.011] common <- intersect(names, old_names) [17:27:46.011] added <- setdiff(names, old_names) [17:27:46.011] removed <- setdiff(old_names, names) [17:27:46.011] changed <- common[...future.oldEnvVars[common] != [17:27:46.011] envs[common]] [17:27:46.011] NAMES <- toupper(changed) [17:27:46.011] args <- list() [17:27:46.011] for (kk in seq_along(NAMES)) { [17:27:46.011] name <- changed[[kk]] [17:27:46.011] NAME <- NAMES[[kk]] [17:27:46.011] if (name != NAME && is.element(NAME, old_names)) [17:27:46.011] next [17:27:46.011] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.011] } [17:27:46.011] NAMES <- toupper(added) [17:27:46.011] for (kk in seq_along(NAMES)) { [17:27:46.011] name <- added[[kk]] [17:27:46.011] NAME <- NAMES[[kk]] [17:27:46.011] if (name != NAME && is.element(NAME, old_names)) [17:27:46.011] next [17:27:46.011] args[[name]] <- "" [17:27:46.011] } [17:27:46.011] NAMES <- toupper(removed) [17:27:46.011] for (kk in seq_along(NAMES)) { [17:27:46.011] name <- removed[[kk]] [17:27:46.011] NAME <- NAMES[[kk]] [17:27:46.011] if (name != NAME && is.element(NAME, old_names)) [17:27:46.011] next [17:27:46.011] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.011] } [17:27:46.011] if (length(args) > 0) [17:27:46.011] base::do.call(base::Sys.setenv, args = args) [17:27:46.011] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:46.011] } [17:27:46.011] { [17:27:46.011] if (base::length(...future.futureOptionsAdded) > [17:27:46.011] 0L) { [17:27:46.011] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:46.011] base::names(opts) <- ...future.futureOptionsAdded [17:27:46.011] base::options(opts) [17:27:46.011] } [17:27:46.011] { [17:27:46.011] { [17:27:46.011] NULL [17:27:46.011] RNGkind("Mersenne-Twister") [17:27:46.011] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:46.011] inherits = FALSE) [17:27:46.011] } [17:27:46.011] options(future.plan = NULL) [17:27:46.011] if (is.na(NA_character_)) [17:27:46.011] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.011] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:46.011] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:46.011] .init = FALSE) [17:27:46.011] } [17:27:46.011] } [17:27:46.011] } [17:27:46.011] }) [17:27:46.011] if (TRUE) { [17:27:46.011] base::sink(type = "output", split = FALSE) [17:27:46.011] if (TRUE) { [17:27:46.011] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:46.011] } [17:27:46.011] else { [17:27:46.011] ...future.result["stdout"] <- base::list(NULL) [17:27:46.011] } [17:27:46.011] base::close(...future.stdout) [17:27:46.011] ...future.stdout <- NULL [17:27:46.011] } [17:27:46.011] ...future.result$conditions <- ...future.conditions [17:27:46.011] ...future.result$finished <- base::Sys.time() [17:27:46.011] ...future.result [17:27:46.011] } [17:27:46.015] plan(): Setting new future strategy stack: [17:27:46.016] List of future strategies: [17:27:46.016] 1. sequential: [17:27:46.016] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.016] - tweaked: FALSE [17:27:46.016] - call: NULL [17:27:46.016] plan(): nbrOfWorkers() = 1 [17:27:46.017] plan(): Setting new future strategy stack: [17:27:46.017] List of future strategies: [17:27:46.017] 1. sequential: [17:27:46.017] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.017] - tweaked: FALSE [17:27:46.017] - call: plan(strategy) [17:27:46.018] plan(): nbrOfWorkers() = 1 [17:27:46.018] SequentialFuture started (and completed) [17:27:46.019] - Launch lazy future ... done [17:27:46.019] run() for 'SequentialFuture' ... done [17:27:46.019] getGlobalsAndPackages() ... [17:27:46.019] Searching for globals... [17:27:46.020] - globals found: [1] '{' [17:27:46.020] Searching for globals ... DONE [17:27:46.020] Resolving globals: FALSE [17:27:46.021] [17:27:46.021] [17:27:46.021] getGlobalsAndPackages() ... DONE [17:27:46.021] run() for 'Future' ... [17:27:46.021] - state: 'created' [17:27:46.022] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:46.022] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:46.022] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:46.022] - Field: 'label' [17:27:46.023] - Field: 'local' [17:27:46.023] - Field: 'owner' [17:27:46.023] - Field: 'envir' [17:27:46.023] - Field: 'packages' [17:27:46.023] - Field: 'gc' [17:27:46.023] - Field: 'conditions' [17:27:46.024] - Field: 'expr' [17:27:46.024] - Field: 'uuid' [17:27:46.024] - Field: 'seed' [17:27:46.024] - Field: 'version' [17:27:46.024] - Field: 'result' [17:27:46.024] - Field: 'asynchronous' [17:27:46.025] - Field: 'calls' [17:27:46.025] - Field: 'globals' [17:27:46.025] - Field: 'stdout' [17:27:46.025] - Field: 'earlySignal' [17:27:46.025] - Field: 'lazy' [17:27:46.026] - Field: 'state' [17:27:46.026] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:46.026] - Launch lazy future ... [17:27:46.026] Packages needed by the future expression (n = 0): [17:27:46.026] Packages needed by future strategies (n = 0): [17:27:46.027] { [17:27:46.027] { [17:27:46.027] { [17:27:46.027] ...future.startTime <- base::Sys.time() [17:27:46.027] { [17:27:46.027] { [17:27:46.027] { [17:27:46.027] base::local({ [17:27:46.027] has_future <- base::requireNamespace("future", [17:27:46.027] quietly = TRUE) [17:27:46.027] if (has_future) { [17:27:46.027] ns <- base::getNamespace("future") [17:27:46.027] version <- ns[[".package"]][["version"]] [17:27:46.027] if (is.null(version)) [17:27:46.027] version <- utils::packageVersion("future") [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] version <- NULL [17:27:46.027] } [17:27:46.027] if (!has_future || version < "1.8.0") { [17:27:46.027] info <- base::c(r_version = base::gsub("R version ", [17:27:46.027] "", base::R.version$version.string), [17:27:46.027] platform = base::sprintf("%s (%s-bit)", [17:27:46.027] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:46.027] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:46.027] "release", "version")], collapse = " "), [17:27:46.027] hostname = base::Sys.info()[["nodename"]]) [17:27:46.027] info <- base::sprintf("%s: %s", base::names(info), [17:27:46.027] info) [17:27:46.027] info <- base::paste(info, collapse = "; ") [17:27:46.027] if (!has_future) { [17:27:46.027] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:46.027] info) [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:46.027] info, version) [17:27:46.027] } [17:27:46.027] base::stop(msg) [17:27:46.027] } [17:27:46.027] }) [17:27:46.027] } [17:27:46.027] ...future.strategy.old <- future::plan("list") [17:27:46.027] options(future.plan = NULL) [17:27:46.027] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.027] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:46.027] } [17:27:46.027] ...future.workdir <- getwd() [17:27:46.027] } [17:27:46.027] ...future.oldOptions <- base::as.list(base::.Options) [17:27:46.027] ...future.oldEnvVars <- base::Sys.getenv() [17:27:46.027] } [17:27:46.027] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:46.027] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:46.027] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:46.027] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:46.027] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:46.027] future.stdout.windows.reencode = NULL, width = 80L) [17:27:46.027] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:46.027] base::names(...future.oldOptions)) [17:27:46.027] } [17:27:46.027] if (FALSE) { [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] if (TRUE) { [17:27:46.027] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:46.027] open = "w") [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:46.027] windows = "NUL", "/dev/null"), open = "w") [17:27:46.027] } [17:27:46.027] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:46.027] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:46.027] base::sink(type = "output", split = FALSE) [17:27:46.027] base::close(...future.stdout) [17:27:46.027] }, add = TRUE) [17:27:46.027] } [17:27:46.027] ...future.frame <- base::sys.nframe() [17:27:46.027] ...future.conditions <- base::list() [17:27:46.027] ...future.rng <- base::globalenv()$.Random.seed [17:27:46.027] if (FALSE) { [17:27:46.027] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:46.027] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:46.027] } [17:27:46.027] ...future.result <- base::tryCatch({ [17:27:46.027] base::withCallingHandlers({ [17:27:46.027] ...future.value <- base::withVisible(base::local({ [17:27:46.027] 2 [17:27:46.027] })) [17:27:46.027] future::FutureResult(value = ...future.value$value, [17:27:46.027] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.027] ...future.rng), globalenv = if (FALSE) [17:27:46.027] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:46.027] ...future.globalenv.names)) [17:27:46.027] else NULL, started = ...future.startTime, version = "1.8") [17:27:46.027] }, condition = base::local({ [17:27:46.027] c <- base::c [17:27:46.027] inherits <- base::inherits [17:27:46.027] invokeRestart <- base::invokeRestart [17:27:46.027] length <- base::length [17:27:46.027] list <- base::list [17:27:46.027] seq.int <- base::seq.int [17:27:46.027] signalCondition <- base::signalCondition [17:27:46.027] sys.calls <- base::sys.calls [17:27:46.027] `[[` <- base::`[[` [17:27:46.027] `+` <- base::`+` [17:27:46.027] `<<-` <- base::`<<-` [17:27:46.027] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:46.027] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:46.027] 3L)] [17:27:46.027] } [17:27:46.027] function(cond) { [17:27:46.027] is_error <- inherits(cond, "error") [17:27:46.027] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:46.027] NULL) [17:27:46.027] if (is_error) { [17:27:46.027] sessionInformation <- function() { [17:27:46.027] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:46.027] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:46.027] search = base::search(), system = base::Sys.info()) [17:27:46.027] } [17:27:46.027] ...future.conditions[[length(...future.conditions) + [17:27:46.027] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:46.027] cond$call), session = sessionInformation(), [17:27:46.027] timestamp = base::Sys.time(), signaled = 0L) [17:27:46.027] signalCondition(cond) [17:27:46.027] } [17:27:46.027] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:46.027] "immediateCondition"))) { [17:27:46.027] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:46.027] ...future.conditions[[length(...future.conditions) + [17:27:46.027] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:46.027] if (TRUE && !signal) { [17:27:46.027] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.027] { [17:27:46.027] inherits <- base::inherits [17:27:46.027] invokeRestart <- base::invokeRestart [17:27:46.027] is.null <- base::is.null [17:27:46.027] muffled <- FALSE [17:27:46.027] if (inherits(cond, "message")) { [17:27:46.027] muffled <- grepl(pattern, "muffleMessage") [17:27:46.027] if (muffled) [17:27:46.027] invokeRestart("muffleMessage") [17:27:46.027] } [17:27:46.027] else if (inherits(cond, "warning")) { [17:27:46.027] muffled <- grepl(pattern, "muffleWarning") [17:27:46.027] if (muffled) [17:27:46.027] invokeRestart("muffleWarning") [17:27:46.027] } [17:27:46.027] else if (inherits(cond, "condition")) { [17:27:46.027] if (!is.null(pattern)) { [17:27:46.027] computeRestarts <- base::computeRestarts [17:27:46.027] grepl <- base::grepl [17:27:46.027] restarts <- computeRestarts(cond) [17:27:46.027] for (restart in restarts) { [17:27:46.027] name <- restart$name [17:27:46.027] if (is.null(name)) [17:27:46.027] next [17:27:46.027] if (!grepl(pattern, name)) [17:27:46.027] next [17:27:46.027] invokeRestart(restart) [17:27:46.027] muffled <- TRUE [17:27:46.027] break [17:27:46.027] } [17:27:46.027] } [17:27:46.027] } [17:27:46.027] invisible(muffled) [17:27:46.027] } [17:27:46.027] muffleCondition(cond, pattern = "^muffle") [17:27:46.027] } [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] if (TRUE) { [17:27:46.027] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.027] { [17:27:46.027] inherits <- base::inherits [17:27:46.027] invokeRestart <- base::invokeRestart [17:27:46.027] is.null <- base::is.null [17:27:46.027] muffled <- FALSE [17:27:46.027] if (inherits(cond, "message")) { [17:27:46.027] muffled <- grepl(pattern, "muffleMessage") [17:27:46.027] if (muffled) [17:27:46.027] invokeRestart("muffleMessage") [17:27:46.027] } [17:27:46.027] else if (inherits(cond, "warning")) { [17:27:46.027] muffled <- grepl(pattern, "muffleWarning") [17:27:46.027] if (muffled) [17:27:46.027] invokeRestart("muffleWarning") [17:27:46.027] } [17:27:46.027] else if (inherits(cond, "condition")) { [17:27:46.027] if (!is.null(pattern)) { [17:27:46.027] computeRestarts <- base::computeRestarts [17:27:46.027] grepl <- base::grepl [17:27:46.027] restarts <- computeRestarts(cond) [17:27:46.027] for (restart in restarts) { [17:27:46.027] name <- restart$name [17:27:46.027] if (is.null(name)) [17:27:46.027] next [17:27:46.027] if (!grepl(pattern, name)) [17:27:46.027] next [17:27:46.027] invokeRestart(restart) [17:27:46.027] muffled <- TRUE [17:27:46.027] break [17:27:46.027] } [17:27:46.027] } [17:27:46.027] } [17:27:46.027] invisible(muffled) [17:27:46.027] } [17:27:46.027] muffleCondition(cond, pattern = "^muffle") [17:27:46.027] } [17:27:46.027] } [17:27:46.027] } [17:27:46.027] })) [17:27:46.027] }, error = function(ex) { [17:27:46.027] base::structure(base::list(value = NULL, visible = NULL, [17:27:46.027] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.027] ...future.rng), started = ...future.startTime, [17:27:46.027] finished = Sys.time(), session_uuid = NA_character_, [17:27:46.027] version = "1.8"), class = "FutureResult") [17:27:46.027] }, finally = { [17:27:46.027] if (!identical(...future.workdir, getwd())) [17:27:46.027] setwd(...future.workdir) [17:27:46.027] { [17:27:46.027] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:46.027] ...future.oldOptions$nwarnings <- NULL [17:27:46.027] } [17:27:46.027] base::options(...future.oldOptions) [17:27:46.027] if (.Platform$OS.type == "windows") { [17:27:46.027] old_names <- names(...future.oldEnvVars) [17:27:46.027] envs <- base::Sys.getenv() [17:27:46.027] names <- names(envs) [17:27:46.027] common <- intersect(names, old_names) [17:27:46.027] added <- setdiff(names, old_names) [17:27:46.027] removed <- setdiff(old_names, names) [17:27:46.027] changed <- common[...future.oldEnvVars[common] != [17:27:46.027] envs[common]] [17:27:46.027] NAMES <- toupper(changed) [17:27:46.027] args <- list() [17:27:46.027] for (kk in seq_along(NAMES)) { [17:27:46.027] name <- changed[[kk]] [17:27:46.027] NAME <- NAMES[[kk]] [17:27:46.027] if (name != NAME && is.element(NAME, old_names)) [17:27:46.027] next [17:27:46.027] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.027] } [17:27:46.027] NAMES <- toupper(added) [17:27:46.027] for (kk in seq_along(NAMES)) { [17:27:46.027] name <- added[[kk]] [17:27:46.027] NAME <- NAMES[[kk]] [17:27:46.027] if (name != NAME && is.element(NAME, old_names)) [17:27:46.027] next [17:27:46.027] args[[name]] <- "" [17:27:46.027] } [17:27:46.027] NAMES <- toupper(removed) [17:27:46.027] for (kk in seq_along(NAMES)) { [17:27:46.027] name <- removed[[kk]] [17:27:46.027] NAME <- NAMES[[kk]] [17:27:46.027] if (name != NAME && is.element(NAME, old_names)) [17:27:46.027] next [17:27:46.027] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.027] } [17:27:46.027] if (length(args) > 0) [17:27:46.027] base::do.call(base::Sys.setenv, args = args) [17:27:46.027] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:46.027] } [17:27:46.027] { [17:27:46.027] if (base::length(...future.futureOptionsAdded) > [17:27:46.027] 0L) { [17:27:46.027] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:46.027] base::names(opts) <- ...future.futureOptionsAdded [17:27:46.027] base::options(opts) [17:27:46.027] } [17:27:46.027] { [17:27:46.027] { [17:27:46.027] NULL [17:27:46.027] RNGkind("Mersenne-Twister") [17:27:46.027] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:46.027] inherits = FALSE) [17:27:46.027] } [17:27:46.027] options(future.plan = NULL) [17:27:46.027] if (is.na(NA_character_)) [17:27:46.027] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.027] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:46.027] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:46.027] .init = FALSE) [17:27:46.027] } [17:27:46.027] } [17:27:46.027] } [17:27:46.027] }) [17:27:46.027] if (TRUE) { [17:27:46.027] base::sink(type = "output", split = FALSE) [17:27:46.027] if (TRUE) { [17:27:46.027] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:46.027] } [17:27:46.027] else { [17:27:46.027] ...future.result["stdout"] <- base::list(NULL) [17:27:46.027] } [17:27:46.027] base::close(...future.stdout) [17:27:46.027] ...future.stdout <- NULL [17:27:46.027] } [17:27:46.027] ...future.result$conditions <- ...future.conditions [17:27:46.027] ...future.result$finished <- base::Sys.time() [17:27:46.027] ...future.result [17:27:46.027] } [17:27:46.031] plan(): Setting new future strategy stack: [17:27:46.031] List of future strategies: [17:27:46.031] 1. sequential: [17:27:46.031] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.031] - tweaked: FALSE [17:27:46.031] - call: NULL [17:27:46.032] plan(): nbrOfWorkers() = 1 [17:27:46.033] plan(): Setting new future strategy stack: [17:27:46.034] List of future strategies: [17:27:46.034] 1. sequential: [17:27:46.034] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.034] - tweaked: FALSE [17:27:46.034] - call: plan(strategy) [17:27:46.034] plan(): nbrOfWorkers() = 1 [17:27:46.035] SequentialFuture started (and completed) [17:27:46.035] - Launch lazy future ... done [17:27:46.035] run() for 'SequentialFuture' ... done [17:27:46.036] resolve() on list environment ... [17:27:46.036] recursive: 0 [17:27:46.036] length: 3 [17:27:46.036] elements: 'a', 'b', 'c' [17:27:46.037] resolved() for 'SequentialFuture' ... [17:27:46.037] - state: 'finished' [17:27:46.037] - run: TRUE [17:27:46.037] - result: 'FutureResult' [17:27:46.037] resolved() for 'SequentialFuture' ... done [17:27:46.038] Future #1 [17:27:46.038] length: 2 (resolved future 1) [17:27:46.038] resolved() for 'SequentialFuture' ... [17:27:46.038] - state: 'finished' [17:27:46.038] - run: TRUE [17:27:46.039] - result: 'FutureResult' [17:27:46.039] resolved() for 'SequentialFuture' ... done [17:27:46.039] Future #2 [17:27:46.039] length: 1 (resolved future 2) [17:27:46.039] length: 0 (resolved future 3) [17:27:46.040] resolve() on list environment ... DONE [17:27:46.040] getGlobalsAndPackages() ... [17:27:46.040] Searching for globals... [17:27:46.041] - globals found: [1] '{' [17:27:46.041] Searching for globals ... DONE [17:27:46.041] Resolving globals: FALSE [17:27:46.042] [17:27:46.042] [17:27:46.042] getGlobalsAndPackages() ... DONE [17:27:46.042] run() for 'Future' ... [17:27:46.042] - state: 'created' [17:27:46.043] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:46.043] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:46.043] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:46.043] - Field: 'label' [17:27:46.043] - Field: 'local' [17:27:46.044] - Field: 'owner' [17:27:46.044] - Field: 'envir' [17:27:46.044] - Field: 'packages' [17:27:46.044] - Field: 'gc' [17:27:46.044] - Field: 'conditions' [17:27:46.045] - Field: 'expr' [17:27:46.045] - Field: 'uuid' [17:27:46.045] - Field: 'seed' [17:27:46.045] - Field: 'version' [17:27:46.045] - Field: 'result' [17:27:46.045] - Field: 'asynchronous' [17:27:46.046] - Field: 'calls' [17:27:46.046] - Field: 'globals' [17:27:46.046] - Field: 'stdout' [17:27:46.046] - Field: 'earlySignal' [17:27:46.046] - Field: 'lazy' [17:27:46.046] - Field: 'state' [17:27:46.047] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:46.047] - Launch lazy future ... [17:27:46.047] Packages needed by the future expression (n = 0): [17:27:46.047] Packages needed by future strategies (n = 0): [17:27:46.048] { [17:27:46.048] { [17:27:46.048] { [17:27:46.048] ...future.startTime <- base::Sys.time() [17:27:46.048] { [17:27:46.048] { [17:27:46.048] { [17:27:46.048] base::local({ [17:27:46.048] has_future <- base::requireNamespace("future", [17:27:46.048] quietly = TRUE) [17:27:46.048] if (has_future) { [17:27:46.048] ns <- base::getNamespace("future") [17:27:46.048] version <- ns[[".package"]][["version"]] [17:27:46.048] if (is.null(version)) [17:27:46.048] version <- utils::packageVersion("future") [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] version <- NULL [17:27:46.048] } [17:27:46.048] if (!has_future || version < "1.8.0") { [17:27:46.048] info <- base::c(r_version = base::gsub("R version ", [17:27:46.048] "", base::R.version$version.string), [17:27:46.048] platform = base::sprintf("%s (%s-bit)", [17:27:46.048] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:46.048] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:46.048] "release", "version")], collapse = " "), [17:27:46.048] hostname = base::Sys.info()[["nodename"]]) [17:27:46.048] info <- base::sprintf("%s: %s", base::names(info), [17:27:46.048] info) [17:27:46.048] info <- base::paste(info, collapse = "; ") [17:27:46.048] if (!has_future) { [17:27:46.048] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:46.048] info) [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:46.048] info, version) [17:27:46.048] } [17:27:46.048] base::stop(msg) [17:27:46.048] } [17:27:46.048] }) [17:27:46.048] } [17:27:46.048] ...future.strategy.old <- future::plan("list") [17:27:46.048] options(future.plan = NULL) [17:27:46.048] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.048] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:46.048] } [17:27:46.048] ...future.workdir <- getwd() [17:27:46.048] } [17:27:46.048] ...future.oldOptions <- base::as.list(base::.Options) [17:27:46.048] ...future.oldEnvVars <- base::Sys.getenv() [17:27:46.048] } [17:27:46.048] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:46.048] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:46.048] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:46.048] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:46.048] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:46.048] future.stdout.windows.reencode = NULL, width = 80L) [17:27:46.048] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:46.048] base::names(...future.oldOptions)) [17:27:46.048] } [17:27:46.048] if (FALSE) { [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] if (TRUE) { [17:27:46.048] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:46.048] open = "w") [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:46.048] windows = "NUL", "/dev/null"), open = "w") [17:27:46.048] } [17:27:46.048] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:46.048] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:46.048] base::sink(type = "output", split = FALSE) [17:27:46.048] base::close(...future.stdout) [17:27:46.048] }, add = TRUE) [17:27:46.048] } [17:27:46.048] ...future.frame <- base::sys.nframe() [17:27:46.048] ...future.conditions <- base::list() [17:27:46.048] ...future.rng <- base::globalenv()$.Random.seed [17:27:46.048] if (FALSE) { [17:27:46.048] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:46.048] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:46.048] } [17:27:46.048] ...future.result <- base::tryCatch({ [17:27:46.048] base::withCallingHandlers({ [17:27:46.048] ...future.value <- base::withVisible(base::local({ [17:27:46.048] 1 [17:27:46.048] })) [17:27:46.048] future::FutureResult(value = ...future.value$value, [17:27:46.048] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.048] ...future.rng), globalenv = if (FALSE) [17:27:46.048] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:46.048] ...future.globalenv.names)) [17:27:46.048] else NULL, started = ...future.startTime, version = "1.8") [17:27:46.048] }, condition = base::local({ [17:27:46.048] c <- base::c [17:27:46.048] inherits <- base::inherits [17:27:46.048] invokeRestart <- base::invokeRestart [17:27:46.048] length <- base::length [17:27:46.048] list <- base::list [17:27:46.048] seq.int <- base::seq.int [17:27:46.048] signalCondition <- base::signalCondition [17:27:46.048] sys.calls <- base::sys.calls [17:27:46.048] `[[` <- base::`[[` [17:27:46.048] `+` <- base::`+` [17:27:46.048] `<<-` <- base::`<<-` [17:27:46.048] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:46.048] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:46.048] 3L)] [17:27:46.048] } [17:27:46.048] function(cond) { [17:27:46.048] is_error <- inherits(cond, "error") [17:27:46.048] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:46.048] NULL) [17:27:46.048] if (is_error) { [17:27:46.048] sessionInformation <- function() { [17:27:46.048] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:46.048] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:46.048] search = base::search(), system = base::Sys.info()) [17:27:46.048] } [17:27:46.048] ...future.conditions[[length(...future.conditions) + [17:27:46.048] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:46.048] cond$call), session = sessionInformation(), [17:27:46.048] timestamp = base::Sys.time(), signaled = 0L) [17:27:46.048] signalCondition(cond) [17:27:46.048] } [17:27:46.048] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:46.048] "immediateCondition"))) { [17:27:46.048] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:46.048] ...future.conditions[[length(...future.conditions) + [17:27:46.048] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:46.048] if (TRUE && !signal) { [17:27:46.048] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.048] { [17:27:46.048] inherits <- base::inherits [17:27:46.048] invokeRestart <- base::invokeRestart [17:27:46.048] is.null <- base::is.null [17:27:46.048] muffled <- FALSE [17:27:46.048] if (inherits(cond, "message")) { [17:27:46.048] muffled <- grepl(pattern, "muffleMessage") [17:27:46.048] if (muffled) [17:27:46.048] invokeRestart("muffleMessage") [17:27:46.048] } [17:27:46.048] else if (inherits(cond, "warning")) { [17:27:46.048] muffled <- grepl(pattern, "muffleWarning") [17:27:46.048] if (muffled) [17:27:46.048] invokeRestart("muffleWarning") [17:27:46.048] } [17:27:46.048] else if (inherits(cond, "condition")) { [17:27:46.048] if (!is.null(pattern)) { [17:27:46.048] computeRestarts <- base::computeRestarts [17:27:46.048] grepl <- base::grepl [17:27:46.048] restarts <- computeRestarts(cond) [17:27:46.048] for (restart in restarts) { [17:27:46.048] name <- restart$name [17:27:46.048] if (is.null(name)) [17:27:46.048] next [17:27:46.048] if (!grepl(pattern, name)) [17:27:46.048] next [17:27:46.048] invokeRestart(restart) [17:27:46.048] muffled <- TRUE [17:27:46.048] break [17:27:46.048] } [17:27:46.048] } [17:27:46.048] } [17:27:46.048] invisible(muffled) [17:27:46.048] } [17:27:46.048] muffleCondition(cond, pattern = "^muffle") [17:27:46.048] } [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] if (TRUE) { [17:27:46.048] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.048] { [17:27:46.048] inherits <- base::inherits [17:27:46.048] invokeRestart <- base::invokeRestart [17:27:46.048] is.null <- base::is.null [17:27:46.048] muffled <- FALSE [17:27:46.048] if (inherits(cond, "message")) { [17:27:46.048] muffled <- grepl(pattern, "muffleMessage") [17:27:46.048] if (muffled) [17:27:46.048] invokeRestart("muffleMessage") [17:27:46.048] } [17:27:46.048] else if (inherits(cond, "warning")) { [17:27:46.048] muffled <- grepl(pattern, "muffleWarning") [17:27:46.048] if (muffled) [17:27:46.048] invokeRestart("muffleWarning") [17:27:46.048] } [17:27:46.048] else if (inherits(cond, "condition")) { [17:27:46.048] if (!is.null(pattern)) { [17:27:46.048] computeRestarts <- base::computeRestarts [17:27:46.048] grepl <- base::grepl [17:27:46.048] restarts <- computeRestarts(cond) [17:27:46.048] for (restart in restarts) { [17:27:46.048] name <- restart$name [17:27:46.048] if (is.null(name)) [17:27:46.048] next [17:27:46.048] if (!grepl(pattern, name)) [17:27:46.048] next [17:27:46.048] invokeRestart(restart) [17:27:46.048] muffled <- TRUE [17:27:46.048] break [17:27:46.048] } [17:27:46.048] } [17:27:46.048] } [17:27:46.048] invisible(muffled) [17:27:46.048] } [17:27:46.048] muffleCondition(cond, pattern = "^muffle") [17:27:46.048] } [17:27:46.048] } [17:27:46.048] } [17:27:46.048] })) [17:27:46.048] }, error = function(ex) { [17:27:46.048] base::structure(base::list(value = NULL, visible = NULL, [17:27:46.048] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.048] ...future.rng), started = ...future.startTime, [17:27:46.048] finished = Sys.time(), session_uuid = NA_character_, [17:27:46.048] version = "1.8"), class = "FutureResult") [17:27:46.048] }, finally = { [17:27:46.048] if (!identical(...future.workdir, getwd())) [17:27:46.048] setwd(...future.workdir) [17:27:46.048] { [17:27:46.048] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:46.048] ...future.oldOptions$nwarnings <- NULL [17:27:46.048] } [17:27:46.048] base::options(...future.oldOptions) [17:27:46.048] if (.Platform$OS.type == "windows") { [17:27:46.048] old_names <- names(...future.oldEnvVars) [17:27:46.048] envs <- base::Sys.getenv() [17:27:46.048] names <- names(envs) [17:27:46.048] common <- intersect(names, old_names) [17:27:46.048] added <- setdiff(names, old_names) [17:27:46.048] removed <- setdiff(old_names, names) [17:27:46.048] changed <- common[...future.oldEnvVars[common] != [17:27:46.048] envs[common]] [17:27:46.048] NAMES <- toupper(changed) [17:27:46.048] args <- list() [17:27:46.048] for (kk in seq_along(NAMES)) { [17:27:46.048] name <- changed[[kk]] [17:27:46.048] NAME <- NAMES[[kk]] [17:27:46.048] if (name != NAME && is.element(NAME, old_names)) [17:27:46.048] next [17:27:46.048] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.048] } [17:27:46.048] NAMES <- toupper(added) [17:27:46.048] for (kk in seq_along(NAMES)) { [17:27:46.048] name <- added[[kk]] [17:27:46.048] NAME <- NAMES[[kk]] [17:27:46.048] if (name != NAME && is.element(NAME, old_names)) [17:27:46.048] next [17:27:46.048] args[[name]] <- "" [17:27:46.048] } [17:27:46.048] NAMES <- toupper(removed) [17:27:46.048] for (kk in seq_along(NAMES)) { [17:27:46.048] name <- removed[[kk]] [17:27:46.048] NAME <- NAMES[[kk]] [17:27:46.048] if (name != NAME && is.element(NAME, old_names)) [17:27:46.048] next [17:27:46.048] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.048] } [17:27:46.048] if (length(args) > 0) [17:27:46.048] base::do.call(base::Sys.setenv, args = args) [17:27:46.048] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:46.048] } [17:27:46.048] { [17:27:46.048] if (base::length(...future.futureOptionsAdded) > [17:27:46.048] 0L) { [17:27:46.048] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:46.048] base::names(opts) <- ...future.futureOptionsAdded [17:27:46.048] base::options(opts) [17:27:46.048] } [17:27:46.048] { [17:27:46.048] { [17:27:46.048] NULL [17:27:46.048] RNGkind("Mersenne-Twister") [17:27:46.048] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:46.048] inherits = FALSE) [17:27:46.048] } [17:27:46.048] options(future.plan = NULL) [17:27:46.048] if (is.na(NA_character_)) [17:27:46.048] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.048] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:46.048] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:46.048] .init = FALSE) [17:27:46.048] } [17:27:46.048] } [17:27:46.048] } [17:27:46.048] }) [17:27:46.048] if (TRUE) { [17:27:46.048] base::sink(type = "output", split = FALSE) [17:27:46.048] if (TRUE) { [17:27:46.048] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:46.048] } [17:27:46.048] else { [17:27:46.048] ...future.result["stdout"] <- base::list(NULL) [17:27:46.048] } [17:27:46.048] base::close(...future.stdout) [17:27:46.048] ...future.stdout <- NULL [17:27:46.048] } [17:27:46.048] ...future.result$conditions <- ...future.conditions [17:27:46.048] ...future.result$finished <- base::Sys.time() [17:27:46.048] ...future.result [17:27:46.048] } [17:27:46.052] plan(): Setting new future strategy stack: [17:27:46.052] List of future strategies: [17:27:46.052] 1. sequential: [17:27:46.052] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.052] - tweaked: FALSE [17:27:46.052] - call: NULL [17:27:46.052] plan(): nbrOfWorkers() = 1 [17:27:46.054] plan(): Setting new future strategy stack: [17:27:46.054] List of future strategies: [17:27:46.054] 1. sequential: [17:27:46.054] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.054] - tweaked: FALSE [17:27:46.054] - call: plan(strategy) [17:27:46.054] plan(): nbrOfWorkers() = 1 [17:27:46.055] SequentialFuture started (and completed) [17:27:46.055] - Launch lazy future ... done [17:27:46.055] run() for 'SequentialFuture' ... done [17:27:46.055] getGlobalsAndPackages() ... [17:27:46.056] Searching for globals... [17:27:46.057] - globals found: [2] '{', 'Sys.sleep' [17:27:46.057] Searching for globals ... DONE [17:27:46.057] Resolving globals: FALSE [17:27:46.057] [17:27:46.058] [17:27:46.058] getGlobalsAndPackages() ... DONE [17:27:46.058] run() for 'Future' ... [17:27:46.058] - state: 'created' [17:27:46.058] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:46.059] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:46.059] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:46.059] - Field: 'label' [17:27:46.059] - Field: 'local' [17:27:46.059] - Field: 'owner' [17:27:46.060] - Field: 'envir' [17:27:46.060] - Field: 'packages' [17:27:46.060] - Field: 'gc' [17:27:46.060] - Field: 'conditions' [17:27:46.060] - Field: 'expr' [17:27:46.060] - Field: 'uuid' [17:27:46.061] - Field: 'seed' [17:27:46.061] - Field: 'version' [17:27:46.061] - Field: 'result' [17:27:46.061] - Field: 'asynchronous' [17:27:46.061] - Field: 'calls' [17:27:46.061] - Field: 'globals' [17:27:46.062] - Field: 'stdout' [17:27:46.062] - Field: 'earlySignal' [17:27:46.062] - Field: 'lazy' [17:27:46.062] - Field: 'state' [17:27:46.062] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:46.063] - Launch lazy future ... [17:27:46.063] Packages needed by the future expression (n = 0): [17:27:46.063] Packages needed by future strategies (n = 0): [17:27:46.063] { [17:27:46.063] { [17:27:46.063] { [17:27:46.063] ...future.startTime <- base::Sys.time() [17:27:46.063] { [17:27:46.063] { [17:27:46.063] { [17:27:46.063] base::local({ [17:27:46.063] has_future <- base::requireNamespace("future", [17:27:46.063] quietly = TRUE) [17:27:46.063] if (has_future) { [17:27:46.063] ns <- base::getNamespace("future") [17:27:46.063] version <- ns[[".package"]][["version"]] [17:27:46.063] if (is.null(version)) [17:27:46.063] version <- utils::packageVersion("future") [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] version <- NULL [17:27:46.063] } [17:27:46.063] if (!has_future || version < "1.8.0") { [17:27:46.063] info <- base::c(r_version = base::gsub("R version ", [17:27:46.063] "", base::R.version$version.string), [17:27:46.063] platform = base::sprintf("%s (%s-bit)", [17:27:46.063] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:46.063] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:46.063] "release", "version")], collapse = " "), [17:27:46.063] hostname = base::Sys.info()[["nodename"]]) [17:27:46.063] info <- base::sprintf("%s: %s", base::names(info), [17:27:46.063] info) [17:27:46.063] info <- base::paste(info, collapse = "; ") [17:27:46.063] if (!has_future) { [17:27:46.063] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:46.063] info) [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:46.063] info, version) [17:27:46.063] } [17:27:46.063] base::stop(msg) [17:27:46.063] } [17:27:46.063] }) [17:27:46.063] } [17:27:46.063] ...future.strategy.old <- future::plan("list") [17:27:46.063] options(future.plan = NULL) [17:27:46.063] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.063] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:46.063] } [17:27:46.063] ...future.workdir <- getwd() [17:27:46.063] } [17:27:46.063] ...future.oldOptions <- base::as.list(base::.Options) [17:27:46.063] ...future.oldEnvVars <- base::Sys.getenv() [17:27:46.063] } [17:27:46.063] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:46.063] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:46.063] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:46.063] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:46.063] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:46.063] future.stdout.windows.reencode = NULL, width = 80L) [17:27:46.063] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:46.063] base::names(...future.oldOptions)) [17:27:46.063] } [17:27:46.063] if (FALSE) { [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] if (TRUE) { [17:27:46.063] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:46.063] open = "w") [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:46.063] windows = "NUL", "/dev/null"), open = "w") [17:27:46.063] } [17:27:46.063] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:46.063] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:46.063] base::sink(type = "output", split = FALSE) [17:27:46.063] base::close(...future.stdout) [17:27:46.063] }, add = TRUE) [17:27:46.063] } [17:27:46.063] ...future.frame <- base::sys.nframe() [17:27:46.063] ...future.conditions <- base::list() [17:27:46.063] ...future.rng <- base::globalenv()$.Random.seed [17:27:46.063] if (FALSE) { [17:27:46.063] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:46.063] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:46.063] } [17:27:46.063] ...future.result <- base::tryCatch({ [17:27:46.063] base::withCallingHandlers({ [17:27:46.063] ...future.value <- base::withVisible(base::local({ [17:27:46.063] Sys.sleep(0.5) [17:27:46.063] 2 [17:27:46.063] })) [17:27:46.063] future::FutureResult(value = ...future.value$value, [17:27:46.063] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.063] ...future.rng), globalenv = if (FALSE) [17:27:46.063] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:46.063] ...future.globalenv.names)) [17:27:46.063] else NULL, started = ...future.startTime, version = "1.8") [17:27:46.063] }, condition = base::local({ [17:27:46.063] c <- base::c [17:27:46.063] inherits <- base::inherits [17:27:46.063] invokeRestart <- base::invokeRestart [17:27:46.063] length <- base::length [17:27:46.063] list <- base::list [17:27:46.063] seq.int <- base::seq.int [17:27:46.063] signalCondition <- base::signalCondition [17:27:46.063] sys.calls <- base::sys.calls [17:27:46.063] `[[` <- base::`[[` [17:27:46.063] `+` <- base::`+` [17:27:46.063] `<<-` <- base::`<<-` [17:27:46.063] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:46.063] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:46.063] 3L)] [17:27:46.063] } [17:27:46.063] function(cond) { [17:27:46.063] is_error <- inherits(cond, "error") [17:27:46.063] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:46.063] NULL) [17:27:46.063] if (is_error) { [17:27:46.063] sessionInformation <- function() { [17:27:46.063] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:46.063] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:46.063] search = base::search(), system = base::Sys.info()) [17:27:46.063] } [17:27:46.063] ...future.conditions[[length(...future.conditions) + [17:27:46.063] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:46.063] cond$call), session = sessionInformation(), [17:27:46.063] timestamp = base::Sys.time(), signaled = 0L) [17:27:46.063] signalCondition(cond) [17:27:46.063] } [17:27:46.063] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:46.063] "immediateCondition"))) { [17:27:46.063] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:46.063] ...future.conditions[[length(...future.conditions) + [17:27:46.063] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:46.063] if (TRUE && !signal) { [17:27:46.063] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.063] { [17:27:46.063] inherits <- base::inherits [17:27:46.063] invokeRestart <- base::invokeRestart [17:27:46.063] is.null <- base::is.null [17:27:46.063] muffled <- FALSE [17:27:46.063] if (inherits(cond, "message")) { [17:27:46.063] muffled <- grepl(pattern, "muffleMessage") [17:27:46.063] if (muffled) [17:27:46.063] invokeRestart("muffleMessage") [17:27:46.063] } [17:27:46.063] else if (inherits(cond, "warning")) { [17:27:46.063] muffled <- grepl(pattern, "muffleWarning") [17:27:46.063] if (muffled) [17:27:46.063] invokeRestart("muffleWarning") [17:27:46.063] } [17:27:46.063] else if (inherits(cond, "condition")) { [17:27:46.063] if (!is.null(pattern)) { [17:27:46.063] computeRestarts <- base::computeRestarts [17:27:46.063] grepl <- base::grepl [17:27:46.063] restarts <- computeRestarts(cond) [17:27:46.063] for (restart in restarts) { [17:27:46.063] name <- restart$name [17:27:46.063] if (is.null(name)) [17:27:46.063] next [17:27:46.063] if (!grepl(pattern, name)) [17:27:46.063] next [17:27:46.063] invokeRestart(restart) [17:27:46.063] muffled <- TRUE [17:27:46.063] break [17:27:46.063] } [17:27:46.063] } [17:27:46.063] } [17:27:46.063] invisible(muffled) [17:27:46.063] } [17:27:46.063] muffleCondition(cond, pattern = "^muffle") [17:27:46.063] } [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] if (TRUE) { [17:27:46.063] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.063] { [17:27:46.063] inherits <- base::inherits [17:27:46.063] invokeRestart <- base::invokeRestart [17:27:46.063] is.null <- base::is.null [17:27:46.063] muffled <- FALSE [17:27:46.063] if (inherits(cond, "message")) { [17:27:46.063] muffled <- grepl(pattern, "muffleMessage") [17:27:46.063] if (muffled) [17:27:46.063] invokeRestart("muffleMessage") [17:27:46.063] } [17:27:46.063] else if (inherits(cond, "warning")) { [17:27:46.063] muffled <- grepl(pattern, "muffleWarning") [17:27:46.063] if (muffled) [17:27:46.063] invokeRestart("muffleWarning") [17:27:46.063] } [17:27:46.063] else if (inherits(cond, "condition")) { [17:27:46.063] if (!is.null(pattern)) { [17:27:46.063] computeRestarts <- base::computeRestarts [17:27:46.063] grepl <- base::grepl [17:27:46.063] restarts <- computeRestarts(cond) [17:27:46.063] for (restart in restarts) { [17:27:46.063] name <- restart$name [17:27:46.063] if (is.null(name)) [17:27:46.063] next [17:27:46.063] if (!grepl(pattern, name)) [17:27:46.063] next [17:27:46.063] invokeRestart(restart) [17:27:46.063] muffled <- TRUE [17:27:46.063] break [17:27:46.063] } [17:27:46.063] } [17:27:46.063] } [17:27:46.063] invisible(muffled) [17:27:46.063] } [17:27:46.063] muffleCondition(cond, pattern = "^muffle") [17:27:46.063] } [17:27:46.063] } [17:27:46.063] } [17:27:46.063] })) [17:27:46.063] }, error = function(ex) { [17:27:46.063] base::structure(base::list(value = NULL, visible = NULL, [17:27:46.063] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.063] ...future.rng), started = ...future.startTime, [17:27:46.063] finished = Sys.time(), session_uuid = NA_character_, [17:27:46.063] version = "1.8"), class = "FutureResult") [17:27:46.063] }, finally = { [17:27:46.063] if (!identical(...future.workdir, getwd())) [17:27:46.063] setwd(...future.workdir) [17:27:46.063] { [17:27:46.063] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:46.063] ...future.oldOptions$nwarnings <- NULL [17:27:46.063] } [17:27:46.063] base::options(...future.oldOptions) [17:27:46.063] if (.Platform$OS.type == "windows") { [17:27:46.063] old_names <- names(...future.oldEnvVars) [17:27:46.063] envs <- base::Sys.getenv() [17:27:46.063] names <- names(envs) [17:27:46.063] common <- intersect(names, old_names) [17:27:46.063] added <- setdiff(names, old_names) [17:27:46.063] removed <- setdiff(old_names, names) [17:27:46.063] changed <- common[...future.oldEnvVars[common] != [17:27:46.063] envs[common]] [17:27:46.063] NAMES <- toupper(changed) [17:27:46.063] args <- list() [17:27:46.063] for (kk in seq_along(NAMES)) { [17:27:46.063] name <- changed[[kk]] [17:27:46.063] NAME <- NAMES[[kk]] [17:27:46.063] if (name != NAME && is.element(NAME, old_names)) [17:27:46.063] next [17:27:46.063] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.063] } [17:27:46.063] NAMES <- toupper(added) [17:27:46.063] for (kk in seq_along(NAMES)) { [17:27:46.063] name <- added[[kk]] [17:27:46.063] NAME <- NAMES[[kk]] [17:27:46.063] if (name != NAME && is.element(NAME, old_names)) [17:27:46.063] next [17:27:46.063] args[[name]] <- "" [17:27:46.063] } [17:27:46.063] NAMES <- toupper(removed) [17:27:46.063] for (kk in seq_along(NAMES)) { [17:27:46.063] name <- removed[[kk]] [17:27:46.063] NAME <- NAMES[[kk]] [17:27:46.063] if (name != NAME && is.element(NAME, old_names)) [17:27:46.063] next [17:27:46.063] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.063] } [17:27:46.063] if (length(args) > 0) [17:27:46.063] base::do.call(base::Sys.setenv, args = args) [17:27:46.063] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:46.063] } [17:27:46.063] { [17:27:46.063] if (base::length(...future.futureOptionsAdded) > [17:27:46.063] 0L) { [17:27:46.063] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:46.063] base::names(opts) <- ...future.futureOptionsAdded [17:27:46.063] base::options(opts) [17:27:46.063] } [17:27:46.063] { [17:27:46.063] { [17:27:46.063] NULL [17:27:46.063] RNGkind("Mersenne-Twister") [17:27:46.063] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:46.063] inherits = FALSE) [17:27:46.063] } [17:27:46.063] options(future.plan = NULL) [17:27:46.063] if (is.na(NA_character_)) [17:27:46.063] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.063] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:46.063] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:46.063] .init = FALSE) [17:27:46.063] } [17:27:46.063] } [17:27:46.063] } [17:27:46.063] }) [17:27:46.063] if (TRUE) { [17:27:46.063] base::sink(type = "output", split = FALSE) [17:27:46.063] if (TRUE) { [17:27:46.063] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:46.063] } [17:27:46.063] else { [17:27:46.063] ...future.result["stdout"] <- base::list(NULL) [17:27:46.063] } [17:27:46.063] base::close(...future.stdout) [17:27:46.063] ...future.stdout <- NULL [17:27:46.063] } [17:27:46.063] ...future.result$conditions <- ...future.conditions [17:27:46.063] ...future.result$finished <- base::Sys.time() [17:27:46.063] ...future.result [17:27:46.063] } [17:27:46.067] plan(): Setting new future strategy stack: [17:27:46.068] List of future strategies: [17:27:46.068] 1. sequential: [17:27:46.068] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.068] - tweaked: FALSE [17:27:46.068] - call: NULL [17:27:46.069] plan(): nbrOfWorkers() = 1 [17:27:46.585] plan(): Setting new future strategy stack: [17:27:46.585] List of future strategies: [17:27:46.585] 1. sequential: [17:27:46.585] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.585] - tweaked: FALSE [17:27:46.585] - call: plan(strategy) [17:27:46.585] plan(): nbrOfWorkers() = 1 [17:27:46.586] SequentialFuture started (and completed) [17:27:46.586] - Launch lazy future ... done [17:27:46.586] run() for 'SequentialFuture' ... done [17:27:46.587] getGlobalsAndPackages() ... [17:27:46.587] Searching for globals... [17:27:46.587] - globals found: [1] '{' [17:27:46.588] Searching for globals ... DONE [17:27:46.588] Resolving globals: FALSE [17:27:46.588] [17:27:46.588] [17:27:46.588] getGlobalsAndPackages() ... DONE [17:27:46.589] run() for 'Future' ... [17:27:46.589] - state: 'created' [17:27:46.589] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [17:27:46.589] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [17:27:46.590] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [17:27:46.590] - Field: 'label' [17:27:46.590] - Field: 'local' [17:27:46.590] - Field: 'owner' [17:27:46.590] - Field: 'envir' [17:27:46.591] - Field: 'packages' [17:27:46.591] - Field: 'gc' [17:27:46.591] - Field: 'conditions' [17:27:46.591] - Field: 'expr' [17:27:46.591] - Field: 'uuid' [17:27:46.591] - Field: 'seed' [17:27:46.592] - Field: 'version' [17:27:46.592] - Field: 'result' [17:27:46.592] - Field: 'asynchronous' [17:27:46.592] - Field: 'calls' [17:27:46.592] - Field: 'globals' [17:27:46.592] - Field: 'stdout' [17:27:46.593] - Field: 'earlySignal' [17:27:46.593] - Field: 'lazy' [17:27:46.593] - Field: 'state' [17:27:46.593] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [17:27:46.593] - Launch lazy future ... [17:27:46.594] Packages needed by the future expression (n = 0): [17:27:46.594] Packages needed by future strategies (n = 0): [17:27:46.594] { [17:27:46.594] { [17:27:46.594] { [17:27:46.594] ...future.startTime <- base::Sys.time() [17:27:46.594] { [17:27:46.594] { [17:27:46.594] { [17:27:46.594] base::local({ [17:27:46.594] has_future <- base::requireNamespace("future", [17:27:46.594] quietly = TRUE) [17:27:46.594] if (has_future) { [17:27:46.594] ns <- base::getNamespace("future") [17:27:46.594] version <- ns[[".package"]][["version"]] [17:27:46.594] if (is.null(version)) [17:27:46.594] version <- utils::packageVersion("future") [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] version <- NULL [17:27:46.594] } [17:27:46.594] if (!has_future || version < "1.8.0") { [17:27:46.594] info <- base::c(r_version = base::gsub("R version ", [17:27:46.594] "", base::R.version$version.string), [17:27:46.594] platform = base::sprintf("%s (%s-bit)", [17:27:46.594] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:46.594] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:46.594] "release", "version")], collapse = " "), [17:27:46.594] hostname = base::Sys.info()[["nodename"]]) [17:27:46.594] info <- base::sprintf("%s: %s", base::names(info), [17:27:46.594] info) [17:27:46.594] info <- base::paste(info, collapse = "; ") [17:27:46.594] if (!has_future) { [17:27:46.594] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:46.594] info) [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:46.594] info, version) [17:27:46.594] } [17:27:46.594] base::stop(msg) [17:27:46.594] } [17:27:46.594] }) [17:27:46.594] } [17:27:46.594] ...future.strategy.old <- future::plan("list") [17:27:46.594] options(future.plan = NULL) [17:27:46.594] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.594] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:46.594] } [17:27:46.594] ...future.workdir <- getwd() [17:27:46.594] } [17:27:46.594] ...future.oldOptions <- base::as.list(base::.Options) [17:27:46.594] ...future.oldEnvVars <- base::Sys.getenv() [17:27:46.594] } [17:27:46.594] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:46.594] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:46.594] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:46.594] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:46.594] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:46.594] future.stdout.windows.reencode = NULL, width = 80L) [17:27:46.594] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:46.594] base::names(...future.oldOptions)) [17:27:46.594] } [17:27:46.594] if (FALSE) { [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] if (TRUE) { [17:27:46.594] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:46.594] open = "w") [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:46.594] windows = "NUL", "/dev/null"), open = "w") [17:27:46.594] } [17:27:46.594] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:46.594] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:46.594] base::sink(type = "output", split = FALSE) [17:27:46.594] base::close(...future.stdout) [17:27:46.594] }, add = TRUE) [17:27:46.594] } [17:27:46.594] ...future.frame <- base::sys.nframe() [17:27:46.594] ...future.conditions <- base::list() [17:27:46.594] ...future.rng <- base::globalenv()$.Random.seed [17:27:46.594] if (FALSE) { [17:27:46.594] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:46.594] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:46.594] } [17:27:46.594] ...future.result <- base::tryCatch({ [17:27:46.594] base::withCallingHandlers({ [17:27:46.594] ...future.value <- base::withVisible(base::local({ [17:27:46.594] 3 [17:27:46.594] })) [17:27:46.594] future::FutureResult(value = ...future.value$value, [17:27:46.594] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.594] ...future.rng), globalenv = if (FALSE) [17:27:46.594] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:46.594] ...future.globalenv.names)) [17:27:46.594] else NULL, started = ...future.startTime, version = "1.8") [17:27:46.594] }, condition = base::local({ [17:27:46.594] c <- base::c [17:27:46.594] inherits <- base::inherits [17:27:46.594] invokeRestart <- base::invokeRestart [17:27:46.594] length <- base::length [17:27:46.594] list <- base::list [17:27:46.594] seq.int <- base::seq.int [17:27:46.594] signalCondition <- base::signalCondition [17:27:46.594] sys.calls <- base::sys.calls [17:27:46.594] `[[` <- base::`[[` [17:27:46.594] `+` <- base::`+` [17:27:46.594] `<<-` <- base::`<<-` [17:27:46.594] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:46.594] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:46.594] 3L)] [17:27:46.594] } [17:27:46.594] function(cond) { [17:27:46.594] is_error <- inherits(cond, "error") [17:27:46.594] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:46.594] NULL) [17:27:46.594] if (is_error) { [17:27:46.594] sessionInformation <- function() { [17:27:46.594] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:46.594] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:46.594] search = base::search(), system = base::Sys.info()) [17:27:46.594] } [17:27:46.594] ...future.conditions[[length(...future.conditions) + [17:27:46.594] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:46.594] cond$call), session = sessionInformation(), [17:27:46.594] timestamp = base::Sys.time(), signaled = 0L) [17:27:46.594] signalCondition(cond) [17:27:46.594] } [17:27:46.594] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:46.594] "immediateCondition"))) { [17:27:46.594] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:46.594] ...future.conditions[[length(...future.conditions) + [17:27:46.594] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:46.594] if (TRUE && !signal) { [17:27:46.594] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.594] { [17:27:46.594] inherits <- base::inherits [17:27:46.594] invokeRestart <- base::invokeRestart [17:27:46.594] is.null <- base::is.null [17:27:46.594] muffled <- FALSE [17:27:46.594] if (inherits(cond, "message")) { [17:27:46.594] muffled <- grepl(pattern, "muffleMessage") [17:27:46.594] if (muffled) [17:27:46.594] invokeRestart("muffleMessage") [17:27:46.594] } [17:27:46.594] else if (inherits(cond, "warning")) { [17:27:46.594] muffled <- grepl(pattern, "muffleWarning") [17:27:46.594] if (muffled) [17:27:46.594] invokeRestart("muffleWarning") [17:27:46.594] } [17:27:46.594] else if (inherits(cond, "condition")) { [17:27:46.594] if (!is.null(pattern)) { [17:27:46.594] computeRestarts <- base::computeRestarts [17:27:46.594] grepl <- base::grepl [17:27:46.594] restarts <- computeRestarts(cond) [17:27:46.594] for (restart in restarts) { [17:27:46.594] name <- restart$name [17:27:46.594] if (is.null(name)) [17:27:46.594] next [17:27:46.594] if (!grepl(pattern, name)) [17:27:46.594] next [17:27:46.594] invokeRestart(restart) [17:27:46.594] muffled <- TRUE [17:27:46.594] break [17:27:46.594] } [17:27:46.594] } [17:27:46.594] } [17:27:46.594] invisible(muffled) [17:27:46.594] } [17:27:46.594] muffleCondition(cond, pattern = "^muffle") [17:27:46.594] } [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] if (TRUE) { [17:27:46.594] muffleCondition <- function (cond, pattern = "^muffle") [17:27:46.594] { [17:27:46.594] inherits <- base::inherits [17:27:46.594] invokeRestart <- base::invokeRestart [17:27:46.594] is.null <- base::is.null [17:27:46.594] muffled <- FALSE [17:27:46.594] if (inherits(cond, "message")) { [17:27:46.594] muffled <- grepl(pattern, "muffleMessage") [17:27:46.594] if (muffled) [17:27:46.594] invokeRestart("muffleMessage") [17:27:46.594] } [17:27:46.594] else if (inherits(cond, "warning")) { [17:27:46.594] muffled <- grepl(pattern, "muffleWarning") [17:27:46.594] if (muffled) [17:27:46.594] invokeRestart("muffleWarning") [17:27:46.594] } [17:27:46.594] else if (inherits(cond, "condition")) { [17:27:46.594] if (!is.null(pattern)) { [17:27:46.594] computeRestarts <- base::computeRestarts [17:27:46.594] grepl <- base::grepl [17:27:46.594] restarts <- computeRestarts(cond) [17:27:46.594] for (restart in restarts) { [17:27:46.594] name <- restart$name [17:27:46.594] if (is.null(name)) [17:27:46.594] next [17:27:46.594] if (!grepl(pattern, name)) [17:27:46.594] next [17:27:46.594] invokeRestart(restart) [17:27:46.594] muffled <- TRUE [17:27:46.594] break [17:27:46.594] } [17:27:46.594] } [17:27:46.594] } [17:27:46.594] invisible(muffled) [17:27:46.594] } [17:27:46.594] muffleCondition(cond, pattern = "^muffle") [17:27:46.594] } [17:27:46.594] } [17:27:46.594] } [17:27:46.594] })) [17:27:46.594] }, error = function(ex) { [17:27:46.594] base::structure(base::list(value = NULL, visible = NULL, [17:27:46.594] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:46.594] ...future.rng), started = ...future.startTime, [17:27:46.594] finished = Sys.time(), session_uuid = NA_character_, [17:27:46.594] version = "1.8"), class = "FutureResult") [17:27:46.594] }, finally = { [17:27:46.594] if (!identical(...future.workdir, getwd())) [17:27:46.594] setwd(...future.workdir) [17:27:46.594] { [17:27:46.594] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:46.594] ...future.oldOptions$nwarnings <- NULL [17:27:46.594] } [17:27:46.594] base::options(...future.oldOptions) [17:27:46.594] if (.Platform$OS.type == "windows") { [17:27:46.594] old_names <- names(...future.oldEnvVars) [17:27:46.594] envs <- base::Sys.getenv() [17:27:46.594] names <- names(envs) [17:27:46.594] common <- intersect(names, old_names) [17:27:46.594] added <- setdiff(names, old_names) [17:27:46.594] removed <- setdiff(old_names, names) [17:27:46.594] changed <- common[...future.oldEnvVars[common] != [17:27:46.594] envs[common]] [17:27:46.594] NAMES <- toupper(changed) [17:27:46.594] args <- list() [17:27:46.594] for (kk in seq_along(NAMES)) { [17:27:46.594] name <- changed[[kk]] [17:27:46.594] NAME <- NAMES[[kk]] [17:27:46.594] if (name != NAME && is.element(NAME, old_names)) [17:27:46.594] next [17:27:46.594] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.594] } [17:27:46.594] NAMES <- toupper(added) [17:27:46.594] for (kk in seq_along(NAMES)) { [17:27:46.594] name <- added[[kk]] [17:27:46.594] NAME <- NAMES[[kk]] [17:27:46.594] if (name != NAME && is.element(NAME, old_names)) [17:27:46.594] next [17:27:46.594] args[[name]] <- "" [17:27:46.594] } [17:27:46.594] NAMES <- toupper(removed) [17:27:46.594] for (kk in seq_along(NAMES)) { [17:27:46.594] name <- removed[[kk]] [17:27:46.594] NAME <- NAMES[[kk]] [17:27:46.594] if (name != NAME && is.element(NAME, old_names)) [17:27:46.594] next [17:27:46.594] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:46.594] } [17:27:46.594] if (length(args) > 0) [17:27:46.594] base::do.call(base::Sys.setenv, args = args) [17:27:46.594] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:46.594] } [17:27:46.594] { [17:27:46.594] if (base::length(...future.futureOptionsAdded) > [17:27:46.594] 0L) { [17:27:46.594] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:46.594] base::names(opts) <- ...future.futureOptionsAdded [17:27:46.594] base::options(opts) [17:27:46.594] } [17:27:46.594] { [17:27:46.594] { [17:27:46.594] NULL [17:27:46.594] RNGkind("Mersenne-Twister") [17:27:46.594] base::rm(list = ".Random.seed", envir = base::globalenv(), [17:27:46.594] inherits = FALSE) [17:27:46.594] } [17:27:46.594] options(future.plan = NULL) [17:27:46.594] if (is.na(NA_character_)) [17:27:46.594] Sys.unsetenv("R_FUTURE_PLAN") [17:27:46.594] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:46.594] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:46.594] .init = FALSE) [17:27:46.594] } [17:27:46.594] } [17:27:46.594] } [17:27:46.594] }) [17:27:46.594] if (TRUE) { [17:27:46.594] base::sink(type = "output", split = FALSE) [17:27:46.594] if (TRUE) { [17:27:46.594] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:46.594] } [17:27:46.594] else { [17:27:46.594] ...future.result["stdout"] <- base::list(NULL) [17:27:46.594] } [17:27:46.594] base::close(...future.stdout) [17:27:46.594] ...future.stdout <- NULL [17:27:46.594] } [17:27:46.594] ...future.result$conditions <- ...future.conditions [17:27:46.594] ...future.result$finished <- base::Sys.time() [17:27:46.594] ...future.result [17:27:46.594] } [17:27:46.598] plan(): Setting new future strategy stack: [17:27:46.598] List of future strategies: [17:27:46.598] 1. sequential: [17:27:46.598] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.598] - tweaked: FALSE [17:27:46.598] - call: NULL [17:27:46.599] plan(): nbrOfWorkers() = 1 [17:27:46.600] plan(): Setting new future strategy stack: [17:27:46.600] List of future strategies: [17:27:46.600] 1. sequential: [17:27:46.600] - args: function (..., envir = parent.frame(), workers = "") [17:27:46.600] - tweaked: FALSE [17:27:46.600] - call: plan(strategy) [17:27:46.601] plan(): nbrOfWorkers() = 1 [17:27:46.601] SequentialFuture started (and completed) [17:27:46.601] - Launch lazy future ... done [17:27:46.601] run() for 'SequentialFuture' ... done [17:27:46.602] resolve() on list environment ... [17:27:46.602] recursive: 0 [17:27:46.603] length: 4 [17:27:46.603] elements: 'a', 'b', 'c', 'd' [17:27:46.603] resolved() for 'SequentialFuture' ... [17:27:46.604] - state: 'finished' [17:27:46.604] - run: TRUE [17:27:46.604] - result: 'FutureResult' [17:27:46.604] resolved() for 'SequentialFuture' ... done [17:27:46.604] Future #1 [17:27:46.605] length: 3 (resolved future 1) [17:27:46.605] resolved() for 'SequentialFuture' ... [17:27:46.605] - state: 'finished' [17:27:46.605] - run: TRUE [17:27:46.605] - result: 'FutureResult' [17:27:46.605] resolved() for 'SequentialFuture' ... done [17:27:46.606] Future #2 [17:27:46.606] length: 2 (resolved future 2) [17:27:46.606] resolved() for 'SequentialFuture' ... [17:27:46.606] - state: 'finished' [17:27:46.606] - run: TRUE [17:27:46.607] - result: 'FutureResult' [17:27:46.607] resolved() for 'SequentialFuture' ... done [17:27:46.607] Future #3 [17:27:46.607] length: 1 (resolved future 3) [17:27:46.607] length: 0 (resolved future 4) [17:27:46.607] resolve() on list environment ... DONE [17:27:46.608] resolved() for 'SequentialFuture' ... [17:27:46.608] - state: 'finished' [17:27:46.608] - run: TRUE [17:27:46.608] - result: 'FutureResult' [17:27:46.609] resolved() for 'SequentialFuture' ... done [17:27:46.609] resolve() on list environment ... [17:27:46.609] recursive: 0 [17:27:46.610] length: 4 [17:27:46.610] elements: 'a', 'b', 'c', 'd' [17:27:46.610] resolved() for 'SequentialFuture' ... [17:27:46.610] - state: 'finished' [17:27:46.610] - run: TRUE [17:27:46.611] - result: 'FutureResult' [17:27:46.611] resolved() for 'SequentialFuture' ... done [17:27:46.611] Future #1 [17:27:46.611] length: 3 (resolved future 1) [17:27:46.611] resolved() for 'SequentialFuture' ... [17:27:46.611] - state: 'finished' [17:27:46.612] - run: TRUE [17:27:46.612] - result: 'FutureResult' [17:27:46.612] resolved() for 'SequentialFuture' ... done [17:27:46.612] Future #2 [17:27:46.612] length: 2 (resolved future 2) [17:27:46.613] resolved() for 'SequentialFuture' ... [17:27:46.613] - state: 'finished' [17:27:46.613] - run: TRUE [17:27:46.613] - result: 'FutureResult' [17:27:46.613] resolved() for 'SequentialFuture' ... done [17:27:46.613] Future #3 [17:27:46.614] length: 1 (resolved future 3) [17:27:46.614] length: 0 (resolved future 4) [17:27:46.614] resolve() on list environment ... DONE [17:27:46.615] resolve() on list environment ... [17:27:46.615] recursive: 0 [17:27:46.616] length: 4 [17:27:46.616] elements: 'a', 'b', 'c', 'd' [17:27:46.617] resolved() for 'SequentialFuture' ... [17:27:46.617] - state: 'finished' [17:27:46.617] - run: TRUE [17:27:46.617] - result: 'FutureResult' [17:27:46.617] resolved() for 'SequentialFuture' ... done [17:27:46.618] Future #1 [17:27:46.618] length: 3 (resolved future 1) [17:27:46.618] resolved() for 'SequentialFuture' ... [17:27:46.618] - state: 'finished' [17:27:46.618] - run: TRUE [17:27:46.619] - result: 'FutureResult' [17:27:46.619] resolved() for 'SequentialFuture' ... done [17:27:46.619] Future #2 [17:27:46.619] length: 2 (resolved future 2) [17:27:46.619] resolved() for 'SequentialFuture' ... [17:27:46.619] - state: 'finished' [17:27:46.620] - run: TRUE [17:27:46.620] - result: 'FutureResult' [17:27:46.620] resolved() for 'SequentialFuture' ... done [17:27:46.620] Future #3 [17:27:46.620] length: 1 (resolved future 3) [17:27:46.621] length: 0 (resolved future 4) [17:27:46.621] resolve() on list environment ... DONE [17:27:46.621] resolve() on list environment ... [17:27:46.621] recursive: 0 [17:27:46.622] length: 4 [17:27:46.622] elements: 'a', 'b', 'c', 'd' [17:27:46.622] resolved() for 'SequentialFuture' ... [17:27:46.623] - state: 'finished' [17:27:46.623] - run: TRUE [17:27:46.623] - result: 'FutureResult' [17:27:46.623] resolved() for 'SequentialFuture' ... done [17:27:46.623] Future #1 [17:27:46.624] length: 3 (resolved future 1) [17:27:46.624] resolved() for 'SequentialFuture' ... [17:27:46.624] - state: 'finished' [17:27:46.624] - run: TRUE [17:27:46.624] - result: 'FutureResult' [17:27:46.624] resolved() for 'SequentialFuture' ... done [17:27:46.625] Future #2 [17:27:46.625] length: 2 (resolved future 2) [17:27:46.625] resolved() for 'SequentialFuture' ... [17:27:46.625] - state: 'finished' [17:27:46.625] - run: TRUE [17:27:46.625] - result: 'FutureResult' [17:27:46.626] resolved() for 'SequentialFuture' ... done [17:27:46.626] Future #3 [17:27:46.626] length: 1 (resolved future 3) [17:27:46.626] length: 0 (resolved future 4) [17:27:46.626] resolve() on list environment ... DONE [17:27:46.627] resolve() on list environment ... [17:27:46.627] recursive: 0 [17:27:46.628] length: 4 [17:27:46.628] elements: 'a', 'b', 'c', 'd' [17:27:46.628] resolved() for 'SequentialFuture' ... [17:27:46.628] - state: 'finished' [17:27:46.629] - run: TRUE [17:27:46.629] - result: 'FutureResult' [17:27:46.629] resolved() for 'SequentialFuture' ... done [17:27:46.629] Future #1 [17:27:46.629] length: 3 (resolved future 1) [17:27:46.629] resolved() for 'SequentialFuture' ... [17:27:46.630] - state: 'finished' [17:27:46.630] - run: TRUE [17:27:46.630] - result: 'FutureResult' [17:27:46.630] resolved() for 'SequentialFuture' ... done [17:27:46.630] Future #2 [17:27:46.631] length: 2 (resolved future 2) [17:27:46.631] resolved() for 'SequentialFuture' ... [17:27:46.631] - state: 'finished' [17:27:46.631] - run: TRUE [17:27:46.632] - result: 'FutureResult' [17:27:46.632] resolved() for 'SequentialFuture' ... done [17:27:46.632] Future #3 [17:27:46.632] length: 1 (resolved future 3) [17:27:46.632] length: 0 (resolved future 4) [17:27:46.633] resolve() on list environment ... DONE [17:27:46.633] resolve() on list environment ... [17:27:46.633] recursive: 99 [17:27:46.634] length: 4 [17:27:46.634] elements: 'a', 'b', 'c', 'd' [17:27:46.634] resolved() for 'SequentialFuture' ... [17:27:46.635] - state: 'finished' [17:27:46.635] - run: TRUE [17:27:46.635] - result: 'FutureResult' [17:27:46.635] resolved() for 'SequentialFuture' ... done [17:27:46.635] Future #1 [17:27:46.636] resolved() for 'SequentialFuture' ... [17:27:46.636] - state: 'finished' [17:27:46.636] - run: TRUE [17:27:46.636] - result: 'FutureResult' [17:27:46.636] resolved() for 'SequentialFuture' ... done [17:27:46.636] A SequentialFuture was resolved [17:27:46.637] length: 3 (resolved future 1) [17:27:46.637] resolved() for 'SequentialFuture' ... [17:27:46.637] - state: 'finished' [17:27:46.637] - run: TRUE [17:27:46.637] - result: 'FutureResult' [17:27:46.638] resolved() for 'SequentialFuture' ... done [17:27:46.638] Future #2 [17:27:46.638] resolved() for 'SequentialFuture' ... [17:27:46.638] - state: 'finished' [17:27:46.638] - run: TRUE [17:27:46.639] - result: 'FutureResult' [17:27:46.639] resolved() for 'SequentialFuture' ... done [17:27:46.639] A SequentialFuture was resolved [17:27:46.639] length: 2 (resolved future 2) [17:27:46.639] resolved() for 'SequentialFuture' ... [17:27:46.639] - state: 'finished' [17:27:46.640] - run: TRUE [17:27:46.640] - result: 'FutureResult' [17:27:46.640] resolved() for 'SequentialFuture' ... done [17:27:46.640] Future #3 [17:27:46.640] resolved() for 'SequentialFuture' ... [17:27:46.641] - state: 'finished' [17:27:46.641] - run: TRUE [17:27:46.641] - result: 'FutureResult' [17:27:46.641] resolved() for 'SequentialFuture' ... done [17:27:46.641] A SequentialFuture was resolved [17:27:46.642] length: 1 (resolved future 3) [17:27:46.642] length: 0 (resolved future 4) [17:27:46.642] resolve() on list environment ... DONE *** resolve() for list environments ... DONE - plan('sequential') ... - plan('multisession') ... [17:27:46.643] plan(): Setting new future strategy stack: [17:27:46.643] List of future strategies: [17:27:46.643] 1. multisession: [17:27:46.643] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [17:27:46.643] - tweaked: FALSE [17:27:46.643] - call: plan(strategy) [17:27:46.643] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... [17:27:46.644] multisession: [17:27:46.644] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [17:27:46.644] - tweaked: FALSE [17:27:46.644] - call: plan(strategy) [17:27:46.649] getGlobalsAndPackages() ... [17:27:46.649] Not searching for globals [17:27:46.649] - globals: [0] [17:27:46.649] getGlobalsAndPackages() ... DONE [17:27:46.650] [local output] makeClusterPSOCK() ... [17:27:46.681] [local output] Workers: [n = 2] 'localhost', 'localhost' [17:27:46.687] [local output] Base port: 35003 [17:27:46.687] [local output] Getting setup options for 2 cluster nodes ... [17:27:46.688] [local output] - Node 1 of 2 ... [17:27:46.688] [local output] localMachine=TRUE => revtunnel=FALSE [17:27:46.689] Testing if worker's PID can be inferred: '"D:/RCompile/recent/R/bin/x64/Rscript" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpAnxmXg/worker.rank=1.parallelly.parent=3468.d8c7a7d90f.pid\")), silent = TRUE)" -e "file.exists(\"D:/temp/RtmpAnxmXg/worker.rank=1.parallelly.parent=3468.d8c7a7d90f.pid\")"' [17:27:47.013] - Possible to infer worker's PID: TRUE [17:27:47.014] [local output] Rscript port: 35003 [17:27:47.015] [local output] - Node 2 of 2 ... [17:27:47.015] [local output] localMachine=TRUE => revtunnel=FALSE [17:27:47.016] [local output] Rscript port: 35003 [17:27:47.017] [local output] Getting setup options for 2 cluster nodes ... done [17:27:47.017] [local output] - Parallel setup requested for some PSOCK nodes [17:27:47.018] [local output] Setting up PSOCK nodes in parallel [17:27:47.018] List of 36 [17:27:47.018] $ worker : chr "localhost" [17:27:47.018] ..- attr(*, "localhost")= logi TRUE [17:27:47.018] $ master : chr "localhost" [17:27:47.018] $ port : int 35003 [17:27:47.018] $ connectTimeout : num 120 [17:27:47.018] $ timeout : num 120 [17:27:47.018] $ rscript : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\"" [17:27:47.018] $ homogeneous : logi TRUE [17:27:47.018] $ rscript_args : chr "--default-packages=datasets,utils,grDevices,graphics,stats,methods -e \"#label=resolve.R:3468:CRANWIN3:CRAN\" -"| __truncated__ [17:27:47.018] $ rscript_envs : NULL [17:27:47.018] $ rscript_libs : chr [1:2] "D:/temp/RtmpAVtqMV/RLIBS_30708245f64e7" "D:/RCompile/recent/R/library" [17:27:47.018] $ rscript_startup : NULL [17:27:47.018] $ rscript_sh : chr "cmd" [17:27:47.018] $ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [17:27:47.018] $ methods : logi TRUE [17:27:47.018] $ socketOptions : chr "no-delay" [17:27:47.018] $ useXDR : logi FALSE [17:27:47.018] $ outfile : chr "/dev/null" [17:27:47.018] $ renice : int NA [17:27:47.018] $ rshcmd : NULL [17:27:47.018] $ user : chr(0) [17:27:47.018] $ revtunnel : logi FALSE [17:27:47.018] $ rshlogfile : NULL [17:27:47.018] $ rshopts : chr(0) [17:27:47.018] $ rank : int 1 [17:27:47.018] $ manual : logi FALSE [17:27:47.018] $ dryrun : logi FALSE [17:27:47.018] $ quiet : logi FALSE [17:27:47.018] $ setup_strategy : chr "parallel" [17:27:47.018] $ local_cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [17:27:47.018] $ pidfile : chr "D:/temp/RtmpAnxmXg/worker.rank=1.parallelly.parent=3468.d8c7a7d90f.pid" [17:27:47.018] $ rshcmd_label : NULL [17:27:47.018] $ rsh_call : NULL [17:27:47.018] $ cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [17:27:47.018] $ localMachine : logi TRUE [17:27:47.018] $ make_fcn :function (worker = getOption2("parallelly.localhost.hostname", "localhost"), [17:27:47.018] master = NULL, port, connectTimeout = getOption2("parallelly.makeNodePSOCK.connectTimeout", [17:27:47.018] 2 * 60), timeout = getOption2("parallelly.makeNodePSOCK.timeout", [17:27:47.018] 30 * 24 * 60 * 60), rscript = NULL, homogeneous = NULL, rscript_args = NULL, [17:27:47.018] rscript_envs = NULL, rscript_libs = NULL, rscript_startup = NULL, rscript_sh = c("auto", [17:27:47.018] "cmd", "sh"), default_packages = c("datasets", "utils", "grDevices", [17:27:47.018] "graphics", "stats", if (methods) "methods"), methods = TRUE, socketOptions = getOption2("parallelly.makeNodePSOCK.socketOptions", [17:27:47.018] "no-delay"), useXDR = getOption2("parallelly.makeNodePSOCK.useXDR", [17:27:47.018] FALSE), outfile = "/dev/null", renice = NA_integer_, rshcmd = getOption2("parallelly.makeNodePSOCK.rshcmd", [17:27:47.018] NULL), user = NULL, revtunnel = NA, rshlogfile = NULL, rshopts = getOption2("parallelly.makeNodePSOCK.rshopts", [17:27:47.018] NULL), rank = 1L, manual = FALSE, dryrun = FALSE, quiet = FALSE, [17:27:47.018] setup_strategy = getOption2("parallelly.makeNodePSOCK.setup_strategy", [17:27:47.018] "parallel"), action = c("launch", "options"), verbose = FALSE) [17:27:47.018] $ arguments :List of 28 [17:27:47.018] ..$ worker : chr "localhost" [17:27:47.018] ..$ master : NULL [17:27:47.018] ..$ port : int 35003 [17:27:47.018] ..$ connectTimeout : num 120 [17:27:47.018] ..$ timeout : num 120 [17:27:47.018] ..$ rscript : NULL [17:27:47.018] ..$ homogeneous : NULL [17:27:47.018] ..$ rscript_args : NULL [17:27:47.018] ..$ rscript_envs : NULL [17:27:47.018] ..$ rscript_libs : chr [1:2] "D:/temp/RtmpAVtqMV/RLIBS_30708245f64e7" "D:/RCompile/recent/R/library" [17:27:47.018] ..$ rscript_startup : NULL [17:27:47.018] ..$ rscript_sh : chr [1:3] "auto" "cmd" "sh" [17:27:47.018] ..$ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [17:27:47.018] ..$ methods : logi TRUE [17:27:47.018] ..$ socketOptions : chr "no-delay" [17:27:47.018] ..$ useXDR : logi FALSE [17:27:47.018] ..$ outfile : chr "/dev/null" [17:27:47.018] ..$ renice : int NA [17:27:47.018] ..$ rshcmd : NULL [17:27:47.018] ..$ user : NULL [17:27:47.018] ..$ revtunnel : logi NA [17:27:47.018] ..$ rshlogfile : NULL [17:27:47.018] ..$ rshopts : NULL [17:27:47.018] ..$ rank : int 1 [17:27:47.018] ..$ manual : logi FALSE [17:27:47.018] ..$ dryrun : logi FALSE [17:27:47.018] ..$ quiet : logi FALSE [17:27:47.018] ..$ setup_strategy : chr "parallel" [17:27:47.018] - attr(*, "class")= chr [1:2] "makeNodePSOCKOptions" "makeNodeOptions" [17:27:47.039] [local output] System call to launch all workers: [17:27:47.040] [local output] "D:/RCompile/recent/R/bin/x64/Rscript" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "#label=resolve.R:3468:CRANWIN3:CRAN" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpAnxmXg/worker.rank=1.parallelly.parent=3468.d8c7a7d90f.pid\")), silent = TRUE)" -e "options(socketOptions = \"no-delay\")" -e ".libPaths(c(\"D:/temp/RtmpAVtqMV/RLIBS_30708245f64e7\",\"D:/RCompile/recent/R/library\"))" -e "workRSOCK <- tryCatch(parallel:::.workRSOCK, error=function(e) parallel:::.slaveRSOCK); workRSOCK()" MASTER=localhost PORT=35003 OUT=/dev/null TIMEOUT=120 XDR=FALSE SETUPTIMEOUT=120 SETUPSTRATEGY=parallel [17:27:47.040] [local output] Starting PSOCK main server [17:27:47.046] [local output] Workers launched [17:27:47.046] [local output] Waiting for workers to connect back [17:27:47.046] - [local output] 0 workers out of 2 ready [17:27:47.209] - [local output] 0 workers out of 2 ready [17:27:47.210] - [local output] 1 workers out of 2 ready [17:27:47.212] - [local output] 1 workers out of 2 ready [17:27:47.212] - [local output] 2 workers out of 2 ready [17:27:47.213] [local output] Launching of workers completed [17:27:47.213] [local output] Collecting session information from workers [17:27:47.214] [local output] - Worker #1 of 2 [17:27:47.215] [local output] - Worker #2 of 2 [17:27:47.215] [local output] makeClusterPSOCK() ... done [17:27:47.228] Packages needed by the future expression (n = 0): [17:27:47.228] Packages needed by future strategies (n = 0): [17:27:47.229] { [17:27:47.229] { [17:27:47.229] { [17:27:47.229] ...future.startTime <- base::Sys.time() [17:27:47.229] { [17:27:47.229] { [17:27:47.229] { [17:27:47.229] { [17:27:47.229] base::local({ [17:27:47.229] has_future <- base::requireNamespace("future", [17:27:47.229] quietly = TRUE) [17:27:47.229] if (has_future) { [17:27:47.229] ns <- base::getNamespace("future") [17:27:47.229] version <- ns[[".package"]][["version"]] [17:27:47.229] if (is.null(version)) [17:27:47.229] version <- utils::packageVersion("future") [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] version <- NULL [17:27:47.229] } [17:27:47.229] if (!has_future || version < "1.8.0") { [17:27:47.229] info <- base::c(r_version = base::gsub("R version ", [17:27:47.229] "", base::R.version$version.string), [17:27:47.229] platform = base::sprintf("%s (%s-bit)", [17:27:47.229] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:47.229] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:47.229] "release", "version")], collapse = " "), [17:27:47.229] hostname = base::Sys.info()[["nodename"]]) [17:27:47.229] info <- base::sprintf("%s: %s", base::names(info), [17:27:47.229] info) [17:27:47.229] info <- base::paste(info, collapse = "; ") [17:27:47.229] if (!has_future) { [17:27:47.229] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:47.229] info) [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:47.229] info, version) [17:27:47.229] } [17:27:47.229] base::stop(msg) [17:27:47.229] } [17:27:47.229] }) [17:27:47.229] } [17:27:47.229] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:47.229] base::options(mc.cores = 1L) [17:27:47.229] } [17:27:47.229] ...future.strategy.old <- future::plan("list") [17:27:47.229] options(future.plan = NULL) [17:27:47.229] Sys.unsetenv("R_FUTURE_PLAN") [17:27:47.229] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:47.229] } [17:27:47.229] ...future.workdir <- getwd() [17:27:47.229] } [17:27:47.229] ...future.oldOptions <- base::as.list(base::.Options) [17:27:47.229] ...future.oldEnvVars <- base::Sys.getenv() [17:27:47.229] } [17:27:47.229] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:47.229] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:47.229] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:47.229] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:47.229] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:47.229] future.stdout.windows.reencode = NULL, width = 80L) [17:27:47.229] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:47.229] base::names(...future.oldOptions)) [17:27:47.229] } [17:27:47.229] if (FALSE) { [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] if (TRUE) { [17:27:47.229] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:47.229] open = "w") [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:47.229] windows = "NUL", "/dev/null"), open = "w") [17:27:47.229] } [17:27:47.229] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:47.229] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:47.229] base::sink(type = "output", split = FALSE) [17:27:47.229] base::close(...future.stdout) [17:27:47.229] }, add = TRUE) [17:27:47.229] } [17:27:47.229] ...future.frame <- base::sys.nframe() [17:27:47.229] ...future.conditions <- base::list() [17:27:47.229] ...future.rng <- base::globalenv()$.Random.seed [17:27:47.229] if (FALSE) { [17:27:47.229] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:47.229] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:47.229] } [17:27:47.229] ...future.result <- base::tryCatch({ [17:27:47.229] base::withCallingHandlers({ [17:27:47.229] ...future.value <- base::withVisible(base::local({ [17:27:47.229] ...future.makeSendCondition <- base::local({ [17:27:47.229] sendCondition <- NULL [17:27:47.229] function(frame = 1L) { [17:27:47.229] if (is.function(sendCondition)) [17:27:47.229] return(sendCondition) [17:27:47.229] ns <- getNamespace("parallel") [17:27:47.229] if (exists("sendData", mode = "function", [17:27:47.229] envir = ns)) { [17:27:47.229] parallel_sendData <- get("sendData", mode = "function", [17:27:47.229] envir = ns) [17:27:47.229] envir <- sys.frame(frame) [17:27:47.229] master <- NULL [17:27:47.229] while (!identical(envir, .GlobalEnv) && [17:27:47.229] !identical(envir, emptyenv())) { [17:27:47.229] if (exists("master", mode = "list", envir = envir, [17:27:47.229] inherits = FALSE)) { [17:27:47.229] master <- get("master", mode = "list", [17:27:47.229] envir = envir, inherits = FALSE) [17:27:47.229] if (inherits(master, c("SOCKnode", [17:27:47.229] "SOCK0node"))) { [17:27:47.229] sendCondition <<- function(cond) { [17:27:47.229] data <- list(type = "VALUE", value = cond, [17:27:47.229] success = TRUE) [17:27:47.229] parallel_sendData(master, data) [17:27:47.229] } [17:27:47.229] return(sendCondition) [17:27:47.229] } [17:27:47.229] } [17:27:47.229] frame <- frame + 1L [17:27:47.229] envir <- sys.frame(frame) [17:27:47.229] } [17:27:47.229] } [17:27:47.229] sendCondition <<- function(cond) NULL [17:27:47.229] } [17:27:47.229] }) [17:27:47.229] withCallingHandlers({ [17:27:47.229] NA [17:27:47.229] }, immediateCondition = function(cond) { [17:27:47.229] sendCondition <- ...future.makeSendCondition() [17:27:47.229] sendCondition(cond) [17:27:47.229] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.229] { [17:27:47.229] inherits <- base::inherits [17:27:47.229] invokeRestart <- base::invokeRestart [17:27:47.229] is.null <- base::is.null [17:27:47.229] muffled <- FALSE [17:27:47.229] if (inherits(cond, "message")) { [17:27:47.229] muffled <- grepl(pattern, "muffleMessage") [17:27:47.229] if (muffled) [17:27:47.229] invokeRestart("muffleMessage") [17:27:47.229] } [17:27:47.229] else if (inherits(cond, "warning")) { [17:27:47.229] muffled <- grepl(pattern, "muffleWarning") [17:27:47.229] if (muffled) [17:27:47.229] invokeRestart("muffleWarning") [17:27:47.229] } [17:27:47.229] else if (inherits(cond, "condition")) { [17:27:47.229] if (!is.null(pattern)) { [17:27:47.229] computeRestarts <- base::computeRestarts [17:27:47.229] grepl <- base::grepl [17:27:47.229] restarts <- computeRestarts(cond) [17:27:47.229] for (restart in restarts) { [17:27:47.229] name <- restart$name [17:27:47.229] if (is.null(name)) [17:27:47.229] next [17:27:47.229] if (!grepl(pattern, name)) [17:27:47.229] next [17:27:47.229] invokeRestart(restart) [17:27:47.229] muffled <- TRUE [17:27:47.229] break [17:27:47.229] } [17:27:47.229] } [17:27:47.229] } [17:27:47.229] invisible(muffled) [17:27:47.229] } [17:27:47.229] muffleCondition(cond) [17:27:47.229] }) [17:27:47.229] })) [17:27:47.229] future::FutureResult(value = ...future.value$value, [17:27:47.229] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:47.229] ...future.rng), globalenv = if (FALSE) [17:27:47.229] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:47.229] ...future.globalenv.names)) [17:27:47.229] else NULL, started = ...future.startTime, version = "1.8") [17:27:47.229] }, condition = base::local({ [17:27:47.229] c <- base::c [17:27:47.229] inherits <- base::inherits [17:27:47.229] invokeRestart <- base::invokeRestart [17:27:47.229] length <- base::length [17:27:47.229] list <- base::list [17:27:47.229] seq.int <- base::seq.int [17:27:47.229] signalCondition <- base::signalCondition [17:27:47.229] sys.calls <- base::sys.calls [17:27:47.229] `[[` <- base::`[[` [17:27:47.229] `+` <- base::`+` [17:27:47.229] `<<-` <- base::`<<-` [17:27:47.229] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:47.229] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:47.229] 3L)] [17:27:47.229] } [17:27:47.229] function(cond) { [17:27:47.229] is_error <- inherits(cond, "error") [17:27:47.229] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:47.229] NULL) [17:27:47.229] if (is_error) { [17:27:47.229] sessionInformation <- function() { [17:27:47.229] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:47.229] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:47.229] search = base::search(), system = base::Sys.info()) [17:27:47.229] } [17:27:47.229] ...future.conditions[[length(...future.conditions) + [17:27:47.229] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:47.229] cond$call), session = sessionInformation(), [17:27:47.229] timestamp = base::Sys.time(), signaled = 0L) [17:27:47.229] signalCondition(cond) [17:27:47.229] } [17:27:47.229] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:47.229] "immediateCondition"))) { [17:27:47.229] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:47.229] ...future.conditions[[length(...future.conditions) + [17:27:47.229] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:47.229] if (TRUE && !signal) { [17:27:47.229] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.229] { [17:27:47.229] inherits <- base::inherits [17:27:47.229] invokeRestart <- base::invokeRestart [17:27:47.229] is.null <- base::is.null [17:27:47.229] muffled <- FALSE [17:27:47.229] if (inherits(cond, "message")) { [17:27:47.229] muffled <- grepl(pattern, "muffleMessage") [17:27:47.229] if (muffled) [17:27:47.229] invokeRestart("muffleMessage") [17:27:47.229] } [17:27:47.229] else if (inherits(cond, "warning")) { [17:27:47.229] muffled <- grepl(pattern, "muffleWarning") [17:27:47.229] if (muffled) [17:27:47.229] invokeRestart("muffleWarning") [17:27:47.229] } [17:27:47.229] else if (inherits(cond, "condition")) { [17:27:47.229] if (!is.null(pattern)) { [17:27:47.229] computeRestarts <- base::computeRestarts [17:27:47.229] grepl <- base::grepl [17:27:47.229] restarts <- computeRestarts(cond) [17:27:47.229] for (restart in restarts) { [17:27:47.229] name <- restart$name [17:27:47.229] if (is.null(name)) [17:27:47.229] next [17:27:47.229] if (!grepl(pattern, name)) [17:27:47.229] next [17:27:47.229] invokeRestart(restart) [17:27:47.229] muffled <- TRUE [17:27:47.229] break [17:27:47.229] } [17:27:47.229] } [17:27:47.229] } [17:27:47.229] invisible(muffled) [17:27:47.229] } [17:27:47.229] muffleCondition(cond, pattern = "^muffle") [17:27:47.229] } [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] if (TRUE) { [17:27:47.229] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.229] { [17:27:47.229] inherits <- base::inherits [17:27:47.229] invokeRestart <- base::invokeRestart [17:27:47.229] is.null <- base::is.null [17:27:47.229] muffled <- FALSE [17:27:47.229] if (inherits(cond, "message")) { [17:27:47.229] muffled <- grepl(pattern, "muffleMessage") [17:27:47.229] if (muffled) [17:27:47.229] invokeRestart("muffleMessage") [17:27:47.229] } [17:27:47.229] else if (inherits(cond, "warning")) { [17:27:47.229] muffled <- grepl(pattern, "muffleWarning") [17:27:47.229] if (muffled) [17:27:47.229] invokeRestart("muffleWarning") [17:27:47.229] } [17:27:47.229] else if (inherits(cond, "condition")) { [17:27:47.229] if (!is.null(pattern)) { [17:27:47.229] computeRestarts <- base::computeRestarts [17:27:47.229] grepl <- base::grepl [17:27:47.229] restarts <- computeRestarts(cond) [17:27:47.229] for (restart in restarts) { [17:27:47.229] name <- restart$name [17:27:47.229] if (is.null(name)) [17:27:47.229] next [17:27:47.229] if (!grepl(pattern, name)) [17:27:47.229] next [17:27:47.229] invokeRestart(restart) [17:27:47.229] muffled <- TRUE [17:27:47.229] break [17:27:47.229] } [17:27:47.229] } [17:27:47.229] } [17:27:47.229] invisible(muffled) [17:27:47.229] } [17:27:47.229] muffleCondition(cond, pattern = "^muffle") [17:27:47.229] } [17:27:47.229] } [17:27:47.229] } [17:27:47.229] })) [17:27:47.229] }, error = function(ex) { [17:27:47.229] base::structure(base::list(value = NULL, visible = NULL, [17:27:47.229] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:47.229] ...future.rng), started = ...future.startTime, [17:27:47.229] finished = Sys.time(), session_uuid = NA_character_, [17:27:47.229] version = "1.8"), class = "FutureResult") [17:27:47.229] }, finally = { [17:27:47.229] if (!identical(...future.workdir, getwd())) [17:27:47.229] setwd(...future.workdir) [17:27:47.229] { [17:27:47.229] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:47.229] ...future.oldOptions$nwarnings <- NULL [17:27:47.229] } [17:27:47.229] base::options(...future.oldOptions) [17:27:47.229] if (.Platform$OS.type == "windows") { [17:27:47.229] old_names <- names(...future.oldEnvVars) [17:27:47.229] envs <- base::Sys.getenv() [17:27:47.229] names <- names(envs) [17:27:47.229] common <- intersect(names, old_names) [17:27:47.229] added <- setdiff(names, old_names) [17:27:47.229] removed <- setdiff(old_names, names) [17:27:47.229] changed <- common[...future.oldEnvVars[common] != [17:27:47.229] envs[common]] [17:27:47.229] NAMES <- toupper(changed) [17:27:47.229] args <- list() [17:27:47.229] for (kk in seq_along(NAMES)) { [17:27:47.229] name <- changed[[kk]] [17:27:47.229] NAME <- NAMES[[kk]] [17:27:47.229] if (name != NAME && is.element(NAME, old_names)) [17:27:47.229] next [17:27:47.229] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:47.229] } [17:27:47.229] NAMES <- toupper(added) [17:27:47.229] for (kk in seq_along(NAMES)) { [17:27:47.229] name <- added[[kk]] [17:27:47.229] NAME <- NAMES[[kk]] [17:27:47.229] if (name != NAME && is.element(NAME, old_names)) [17:27:47.229] next [17:27:47.229] args[[name]] <- "" [17:27:47.229] } [17:27:47.229] NAMES <- toupper(removed) [17:27:47.229] for (kk in seq_along(NAMES)) { [17:27:47.229] name <- removed[[kk]] [17:27:47.229] NAME <- NAMES[[kk]] [17:27:47.229] if (name != NAME && is.element(NAME, old_names)) [17:27:47.229] next [17:27:47.229] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:47.229] } [17:27:47.229] if (length(args) > 0) [17:27:47.229] base::do.call(base::Sys.setenv, args = args) [17:27:47.229] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:47.229] } [17:27:47.229] { [17:27:47.229] if (base::length(...future.futureOptionsAdded) > [17:27:47.229] 0L) { [17:27:47.229] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:47.229] base::names(opts) <- ...future.futureOptionsAdded [17:27:47.229] base::options(opts) [17:27:47.229] } [17:27:47.229] { [17:27:47.229] { [17:27:47.229] base::options(mc.cores = ...future.mc.cores.old) [17:27:47.229] NULL [17:27:47.229] } [17:27:47.229] options(future.plan = NULL) [17:27:47.229] if (is.na(NA_character_)) [17:27:47.229] Sys.unsetenv("R_FUTURE_PLAN") [17:27:47.229] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:47.229] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:47.229] .init = FALSE) [17:27:47.229] } [17:27:47.229] } [17:27:47.229] } [17:27:47.229] }) [17:27:47.229] if (TRUE) { [17:27:47.229] base::sink(type = "output", split = FALSE) [17:27:47.229] if (TRUE) { [17:27:47.229] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:47.229] } [17:27:47.229] else { [17:27:47.229] ...future.result["stdout"] <- base::list(NULL) [17:27:47.229] } [17:27:47.229] base::close(...future.stdout) [17:27:47.229] ...future.stdout <- NULL [17:27:47.229] } [17:27:47.229] ...future.result$conditions <- ...future.conditions [17:27:47.229] ...future.result$finished <- base::Sys.time() [17:27:47.229] ...future.result [17:27:47.229] } [17:27:47.313] MultisessionFuture started [17:27:47.313] result() for ClusterFuture ... [17:27:47.314] receiveMessageFromWorker() for ClusterFuture ... [17:27:47.314] - Validating connection of MultisessionFuture [17:27:47.366] - received message: FutureResult [17:27:47.366] - Received FutureResult [17:27:47.370] - Erased future from FutureRegistry [17:27:47.370] result() for ClusterFuture ... [17:27:47.370] - result already collected: FutureResult [17:27:47.370] result() for ClusterFuture ... done [17:27:47.371] receiveMessageFromWorker() for ClusterFuture ... done [17:27:47.371] result() for ClusterFuture ... done [17:27:47.371] result() for ClusterFuture ... [17:27:47.371] - result already collected: FutureResult [17:27:47.371] result() for ClusterFuture ... done [17:27:47.372] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... DONE [17:27:47.374] plan(): nbrOfWorkers() = 2 *** resolve() for Future objects ... - result = FALSE, recursive = FALSE ... [17:27:47.377] getGlobalsAndPackages() ... [17:27:47.377] Searching for globals... [17:27:47.379] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:47.379] Searching for globals ... DONE [17:27:47.379] Resolving globals: FALSE [17:27:47.380] [17:27:47.380] [17:27:47.380] getGlobalsAndPackages() ... DONE [17:27:47.380] run() for 'Future' ... [17:27:47.381] - state: 'created' [17:27:47.381] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:47.395] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:47.396] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:47.396] - Field: 'node' [17:27:47.396] - Field: 'label' [17:27:47.396] - Field: 'local' [17:27:47.397] - Field: 'owner' [17:27:47.397] - Field: 'envir' [17:27:47.397] - Field: 'workers' [17:27:47.397] - Field: 'packages' [17:27:47.397] - Field: 'gc' [17:27:47.397] - Field: 'conditions' [17:27:47.398] - Field: 'persistent' [17:27:47.398] - Field: 'expr' [17:27:47.398] - Field: 'uuid' [17:27:47.398] - Field: 'seed' [17:27:47.398] - Field: 'version' [17:27:47.399] - Field: 'result' [17:27:47.399] - Field: 'asynchronous' [17:27:47.399] - Field: 'calls' [17:27:47.399] - Field: 'globals' [17:27:47.399] - Field: 'stdout' [17:27:47.400] - Field: 'earlySignal' [17:27:47.400] - Field: 'lazy' [17:27:47.400] - Field: 'state' [17:27:47.400] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:47.400] - Launch lazy future ... [17:27:47.401] Packages needed by the future expression (n = 0): [17:27:47.401] Packages needed by future strategies (n = 0): [17:27:47.402] { [17:27:47.402] { [17:27:47.402] { [17:27:47.402] ...future.startTime <- base::Sys.time() [17:27:47.402] { [17:27:47.402] { [17:27:47.402] { [17:27:47.402] { [17:27:47.402] base::local({ [17:27:47.402] has_future <- base::requireNamespace("future", [17:27:47.402] quietly = TRUE) [17:27:47.402] if (has_future) { [17:27:47.402] ns <- base::getNamespace("future") [17:27:47.402] version <- ns[[".package"]][["version"]] [17:27:47.402] if (is.null(version)) [17:27:47.402] version <- utils::packageVersion("future") [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] version <- NULL [17:27:47.402] } [17:27:47.402] if (!has_future || version < "1.8.0") { [17:27:47.402] info <- base::c(r_version = base::gsub("R version ", [17:27:47.402] "", base::R.version$version.string), [17:27:47.402] platform = base::sprintf("%s (%s-bit)", [17:27:47.402] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:47.402] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:47.402] "release", "version")], collapse = " "), [17:27:47.402] hostname = base::Sys.info()[["nodename"]]) [17:27:47.402] info <- base::sprintf("%s: %s", base::names(info), [17:27:47.402] info) [17:27:47.402] info <- base::paste(info, collapse = "; ") [17:27:47.402] if (!has_future) { [17:27:47.402] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:47.402] info) [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:47.402] info, version) [17:27:47.402] } [17:27:47.402] base::stop(msg) [17:27:47.402] } [17:27:47.402] }) [17:27:47.402] } [17:27:47.402] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:47.402] base::options(mc.cores = 1L) [17:27:47.402] } [17:27:47.402] ...future.strategy.old <- future::plan("list") [17:27:47.402] options(future.plan = NULL) [17:27:47.402] Sys.unsetenv("R_FUTURE_PLAN") [17:27:47.402] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:47.402] } [17:27:47.402] ...future.workdir <- getwd() [17:27:47.402] } [17:27:47.402] ...future.oldOptions <- base::as.list(base::.Options) [17:27:47.402] ...future.oldEnvVars <- base::Sys.getenv() [17:27:47.402] } [17:27:47.402] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:47.402] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:47.402] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:47.402] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:47.402] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:47.402] future.stdout.windows.reencode = NULL, width = 80L) [17:27:47.402] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:47.402] base::names(...future.oldOptions)) [17:27:47.402] } [17:27:47.402] if (FALSE) { [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] if (TRUE) { [17:27:47.402] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:47.402] open = "w") [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:47.402] windows = "NUL", "/dev/null"), open = "w") [17:27:47.402] } [17:27:47.402] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:47.402] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:47.402] base::sink(type = "output", split = FALSE) [17:27:47.402] base::close(...future.stdout) [17:27:47.402] }, add = TRUE) [17:27:47.402] } [17:27:47.402] ...future.frame <- base::sys.nframe() [17:27:47.402] ...future.conditions <- base::list() [17:27:47.402] ...future.rng <- base::globalenv()$.Random.seed [17:27:47.402] if (FALSE) { [17:27:47.402] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:47.402] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:47.402] } [17:27:47.402] ...future.result <- base::tryCatch({ [17:27:47.402] base::withCallingHandlers({ [17:27:47.402] ...future.value <- base::withVisible(base::local({ [17:27:47.402] ...future.makeSendCondition <- base::local({ [17:27:47.402] sendCondition <- NULL [17:27:47.402] function(frame = 1L) { [17:27:47.402] if (is.function(sendCondition)) [17:27:47.402] return(sendCondition) [17:27:47.402] ns <- getNamespace("parallel") [17:27:47.402] if (exists("sendData", mode = "function", [17:27:47.402] envir = ns)) { [17:27:47.402] parallel_sendData <- get("sendData", mode = "function", [17:27:47.402] envir = ns) [17:27:47.402] envir <- sys.frame(frame) [17:27:47.402] master <- NULL [17:27:47.402] while (!identical(envir, .GlobalEnv) && [17:27:47.402] !identical(envir, emptyenv())) { [17:27:47.402] if (exists("master", mode = "list", envir = envir, [17:27:47.402] inherits = FALSE)) { [17:27:47.402] master <- get("master", mode = "list", [17:27:47.402] envir = envir, inherits = FALSE) [17:27:47.402] if (inherits(master, c("SOCKnode", [17:27:47.402] "SOCK0node"))) { [17:27:47.402] sendCondition <<- function(cond) { [17:27:47.402] data <- list(type = "VALUE", value = cond, [17:27:47.402] success = TRUE) [17:27:47.402] parallel_sendData(master, data) [17:27:47.402] } [17:27:47.402] return(sendCondition) [17:27:47.402] } [17:27:47.402] } [17:27:47.402] frame <- frame + 1L [17:27:47.402] envir <- sys.frame(frame) [17:27:47.402] } [17:27:47.402] } [17:27:47.402] sendCondition <<- function(cond) NULL [17:27:47.402] } [17:27:47.402] }) [17:27:47.402] withCallingHandlers({ [17:27:47.402] { [17:27:47.402] Sys.sleep(0.5) [17:27:47.402] list(a = 1, b = 42L) [17:27:47.402] } [17:27:47.402] }, immediateCondition = function(cond) { [17:27:47.402] sendCondition <- ...future.makeSendCondition() [17:27:47.402] sendCondition(cond) [17:27:47.402] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.402] { [17:27:47.402] inherits <- base::inherits [17:27:47.402] invokeRestart <- base::invokeRestart [17:27:47.402] is.null <- base::is.null [17:27:47.402] muffled <- FALSE [17:27:47.402] if (inherits(cond, "message")) { [17:27:47.402] muffled <- grepl(pattern, "muffleMessage") [17:27:47.402] if (muffled) [17:27:47.402] invokeRestart("muffleMessage") [17:27:47.402] } [17:27:47.402] else if (inherits(cond, "warning")) { [17:27:47.402] muffled <- grepl(pattern, "muffleWarning") [17:27:47.402] if (muffled) [17:27:47.402] invokeRestart("muffleWarning") [17:27:47.402] } [17:27:47.402] else if (inherits(cond, "condition")) { [17:27:47.402] if (!is.null(pattern)) { [17:27:47.402] computeRestarts <- base::computeRestarts [17:27:47.402] grepl <- base::grepl [17:27:47.402] restarts <- computeRestarts(cond) [17:27:47.402] for (restart in restarts) { [17:27:47.402] name <- restart$name [17:27:47.402] if (is.null(name)) [17:27:47.402] next [17:27:47.402] if (!grepl(pattern, name)) [17:27:47.402] next [17:27:47.402] invokeRestart(restart) [17:27:47.402] muffled <- TRUE [17:27:47.402] break [17:27:47.402] } [17:27:47.402] } [17:27:47.402] } [17:27:47.402] invisible(muffled) [17:27:47.402] } [17:27:47.402] muffleCondition(cond) [17:27:47.402] }) [17:27:47.402] })) [17:27:47.402] future::FutureResult(value = ...future.value$value, [17:27:47.402] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:47.402] ...future.rng), globalenv = if (FALSE) [17:27:47.402] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:47.402] ...future.globalenv.names)) [17:27:47.402] else NULL, started = ...future.startTime, version = "1.8") [17:27:47.402] }, condition = base::local({ [17:27:47.402] c <- base::c [17:27:47.402] inherits <- base::inherits [17:27:47.402] invokeRestart <- base::invokeRestart [17:27:47.402] length <- base::length [17:27:47.402] list <- base::list [17:27:47.402] seq.int <- base::seq.int [17:27:47.402] signalCondition <- base::signalCondition [17:27:47.402] sys.calls <- base::sys.calls [17:27:47.402] `[[` <- base::`[[` [17:27:47.402] `+` <- base::`+` [17:27:47.402] `<<-` <- base::`<<-` [17:27:47.402] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:47.402] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:47.402] 3L)] [17:27:47.402] } [17:27:47.402] function(cond) { [17:27:47.402] is_error <- inherits(cond, "error") [17:27:47.402] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:47.402] NULL) [17:27:47.402] if (is_error) { [17:27:47.402] sessionInformation <- function() { [17:27:47.402] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:47.402] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:47.402] search = base::search(), system = base::Sys.info()) [17:27:47.402] } [17:27:47.402] ...future.conditions[[length(...future.conditions) + [17:27:47.402] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:47.402] cond$call), session = sessionInformation(), [17:27:47.402] timestamp = base::Sys.time(), signaled = 0L) [17:27:47.402] signalCondition(cond) [17:27:47.402] } [17:27:47.402] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:47.402] "immediateCondition"))) { [17:27:47.402] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:47.402] ...future.conditions[[length(...future.conditions) + [17:27:47.402] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:47.402] if (TRUE && !signal) { [17:27:47.402] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.402] { [17:27:47.402] inherits <- base::inherits [17:27:47.402] invokeRestart <- base::invokeRestart [17:27:47.402] is.null <- base::is.null [17:27:47.402] muffled <- FALSE [17:27:47.402] if (inherits(cond, "message")) { [17:27:47.402] muffled <- grepl(pattern, "muffleMessage") [17:27:47.402] if (muffled) [17:27:47.402] invokeRestart("muffleMessage") [17:27:47.402] } [17:27:47.402] else if (inherits(cond, "warning")) { [17:27:47.402] muffled <- grepl(pattern, "muffleWarning") [17:27:47.402] if (muffled) [17:27:47.402] invokeRestart("muffleWarning") [17:27:47.402] } [17:27:47.402] else if (inherits(cond, "condition")) { [17:27:47.402] if (!is.null(pattern)) { [17:27:47.402] computeRestarts <- base::computeRestarts [17:27:47.402] grepl <- base::grepl [17:27:47.402] restarts <- computeRestarts(cond) [17:27:47.402] for (restart in restarts) { [17:27:47.402] name <- restart$name [17:27:47.402] if (is.null(name)) [17:27:47.402] next [17:27:47.402] if (!grepl(pattern, name)) [17:27:47.402] next [17:27:47.402] invokeRestart(restart) [17:27:47.402] muffled <- TRUE [17:27:47.402] break [17:27:47.402] } [17:27:47.402] } [17:27:47.402] } [17:27:47.402] invisible(muffled) [17:27:47.402] } [17:27:47.402] muffleCondition(cond, pattern = "^muffle") [17:27:47.402] } [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] if (TRUE) { [17:27:47.402] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.402] { [17:27:47.402] inherits <- base::inherits [17:27:47.402] invokeRestart <- base::invokeRestart [17:27:47.402] is.null <- base::is.null [17:27:47.402] muffled <- FALSE [17:27:47.402] if (inherits(cond, "message")) { [17:27:47.402] muffled <- grepl(pattern, "muffleMessage") [17:27:47.402] if (muffled) [17:27:47.402] invokeRestart("muffleMessage") [17:27:47.402] } [17:27:47.402] else if (inherits(cond, "warning")) { [17:27:47.402] muffled <- grepl(pattern, "muffleWarning") [17:27:47.402] if (muffled) [17:27:47.402] invokeRestart("muffleWarning") [17:27:47.402] } [17:27:47.402] else if (inherits(cond, "condition")) { [17:27:47.402] if (!is.null(pattern)) { [17:27:47.402] computeRestarts <- base::computeRestarts [17:27:47.402] grepl <- base::grepl [17:27:47.402] restarts <- computeRestarts(cond) [17:27:47.402] for (restart in restarts) { [17:27:47.402] name <- restart$name [17:27:47.402] if (is.null(name)) [17:27:47.402] next [17:27:47.402] if (!grepl(pattern, name)) [17:27:47.402] next [17:27:47.402] invokeRestart(restart) [17:27:47.402] muffled <- TRUE [17:27:47.402] break [17:27:47.402] } [17:27:47.402] } [17:27:47.402] } [17:27:47.402] invisible(muffled) [17:27:47.402] } [17:27:47.402] muffleCondition(cond, pattern = "^muffle") [17:27:47.402] } [17:27:47.402] } [17:27:47.402] } [17:27:47.402] })) [17:27:47.402] }, error = function(ex) { [17:27:47.402] base::structure(base::list(value = NULL, visible = NULL, [17:27:47.402] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:47.402] ...future.rng), started = ...future.startTime, [17:27:47.402] finished = Sys.time(), session_uuid = NA_character_, [17:27:47.402] version = "1.8"), class = "FutureResult") [17:27:47.402] }, finally = { [17:27:47.402] if (!identical(...future.workdir, getwd())) [17:27:47.402] setwd(...future.workdir) [17:27:47.402] { [17:27:47.402] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:47.402] ...future.oldOptions$nwarnings <- NULL [17:27:47.402] } [17:27:47.402] base::options(...future.oldOptions) [17:27:47.402] if (.Platform$OS.type == "windows") { [17:27:47.402] old_names <- names(...future.oldEnvVars) [17:27:47.402] envs <- base::Sys.getenv() [17:27:47.402] names <- names(envs) [17:27:47.402] common <- intersect(names, old_names) [17:27:47.402] added <- setdiff(names, old_names) [17:27:47.402] removed <- setdiff(old_names, names) [17:27:47.402] changed <- common[...future.oldEnvVars[common] != [17:27:47.402] envs[common]] [17:27:47.402] NAMES <- toupper(changed) [17:27:47.402] args <- list() [17:27:47.402] for (kk in seq_along(NAMES)) { [17:27:47.402] name <- changed[[kk]] [17:27:47.402] NAME <- NAMES[[kk]] [17:27:47.402] if (name != NAME && is.element(NAME, old_names)) [17:27:47.402] next [17:27:47.402] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:47.402] } [17:27:47.402] NAMES <- toupper(added) [17:27:47.402] for (kk in seq_along(NAMES)) { [17:27:47.402] name <- added[[kk]] [17:27:47.402] NAME <- NAMES[[kk]] [17:27:47.402] if (name != NAME && is.element(NAME, old_names)) [17:27:47.402] next [17:27:47.402] args[[name]] <- "" [17:27:47.402] } [17:27:47.402] NAMES <- toupper(removed) [17:27:47.402] for (kk in seq_along(NAMES)) { [17:27:47.402] name <- removed[[kk]] [17:27:47.402] NAME <- NAMES[[kk]] [17:27:47.402] if (name != NAME && is.element(NAME, old_names)) [17:27:47.402] next [17:27:47.402] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:47.402] } [17:27:47.402] if (length(args) > 0) [17:27:47.402] base::do.call(base::Sys.setenv, args = args) [17:27:47.402] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:47.402] } [17:27:47.402] { [17:27:47.402] if (base::length(...future.futureOptionsAdded) > [17:27:47.402] 0L) { [17:27:47.402] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:47.402] base::names(opts) <- ...future.futureOptionsAdded [17:27:47.402] base::options(opts) [17:27:47.402] } [17:27:47.402] { [17:27:47.402] { [17:27:47.402] base::options(mc.cores = ...future.mc.cores.old) [17:27:47.402] NULL [17:27:47.402] } [17:27:47.402] options(future.plan = NULL) [17:27:47.402] if (is.na(NA_character_)) [17:27:47.402] Sys.unsetenv("R_FUTURE_PLAN") [17:27:47.402] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:47.402] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:47.402] .init = FALSE) [17:27:47.402] } [17:27:47.402] } [17:27:47.402] } [17:27:47.402] }) [17:27:47.402] if (TRUE) { [17:27:47.402] base::sink(type = "output", split = FALSE) [17:27:47.402] if (TRUE) { [17:27:47.402] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:47.402] } [17:27:47.402] else { [17:27:47.402] ...future.result["stdout"] <- base::list(NULL) [17:27:47.402] } [17:27:47.402] base::close(...future.stdout) [17:27:47.402] ...future.stdout <- NULL [17:27:47.402] } [17:27:47.402] ...future.result$conditions <- ...future.conditions [17:27:47.402] ...future.result$finished <- base::Sys.time() [17:27:47.402] ...future.result [17:27:47.402] } [17:27:47.407] MultisessionFuture started [17:27:47.408] - Launch lazy future ... done [17:27:47.408] run() for 'MultisessionFuture' ... done [17:27:47.934] receiveMessageFromWorker() for ClusterFuture ... [17:27:47.935] - Validating connection of MultisessionFuture [17:27:47.935] - received message: FutureResult [17:27:47.935] - Received FutureResult [17:27:47.936] - Erased future from FutureRegistry [17:27:47.936] result() for ClusterFuture ... [17:27:47.936] - result already collected: FutureResult [17:27:47.936] result() for ClusterFuture ... done [17:27:47.936] receiveMessageFromWorker() for ClusterFuture ... done [17:27:47.936] A MultisessionFuture was resolved (result was not collected) [17:27:47.937] getGlobalsAndPackages() ... [17:27:47.937] Searching for globals... [17:27:47.939] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:47.939] Searching for globals ... DONE [17:27:47.939] Resolving globals: FALSE [17:27:47.939] [17:27:47.940] [17:27:47.940] getGlobalsAndPackages() ... DONE [17:27:47.940] run() for 'Future' ... [17:27:47.940] - state: 'created' [17:27:47.941] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:47.955] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:47.955] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:47.956] - Field: 'node' [17:27:47.956] - Field: 'label' [17:27:47.956] - Field: 'local' [17:27:47.956] - Field: 'owner' [17:27:47.956] - Field: 'envir' [17:27:47.957] - Field: 'workers' [17:27:47.957] - Field: 'packages' [17:27:47.957] - Field: 'gc' [17:27:47.957] - Field: 'conditions' [17:27:47.957] - Field: 'persistent' [17:27:47.957] - Field: 'expr' [17:27:47.958] - Field: 'uuid' [17:27:47.958] - Field: 'seed' [17:27:47.958] - Field: 'version' [17:27:47.958] - Field: 'result' [17:27:47.958] - Field: 'asynchronous' [17:27:47.959] - Field: 'calls' [17:27:47.959] - Field: 'globals' [17:27:47.959] - Field: 'stdout' [17:27:47.959] - Field: 'earlySignal' [17:27:47.959] - Field: 'lazy' [17:27:47.960] - Field: 'state' [17:27:47.960] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:47.960] - Launch lazy future ... [17:27:47.960] Packages needed by the future expression (n = 0): [17:27:47.961] Packages needed by future strategies (n = 0): [17:27:47.961] { [17:27:47.961] { [17:27:47.961] { [17:27:47.961] ...future.startTime <- base::Sys.time() [17:27:47.961] { [17:27:47.961] { [17:27:47.961] { [17:27:47.961] { [17:27:47.961] base::local({ [17:27:47.961] has_future <- base::requireNamespace("future", [17:27:47.961] quietly = TRUE) [17:27:47.961] if (has_future) { [17:27:47.961] ns <- base::getNamespace("future") [17:27:47.961] version <- ns[[".package"]][["version"]] [17:27:47.961] if (is.null(version)) [17:27:47.961] version <- utils::packageVersion("future") [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] version <- NULL [17:27:47.961] } [17:27:47.961] if (!has_future || version < "1.8.0") { [17:27:47.961] info <- base::c(r_version = base::gsub("R version ", [17:27:47.961] "", base::R.version$version.string), [17:27:47.961] platform = base::sprintf("%s (%s-bit)", [17:27:47.961] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:47.961] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:47.961] "release", "version")], collapse = " "), [17:27:47.961] hostname = base::Sys.info()[["nodename"]]) [17:27:47.961] info <- base::sprintf("%s: %s", base::names(info), [17:27:47.961] info) [17:27:47.961] info <- base::paste(info, collapse = "; ") [17:27:47.961] if (!has_future) { [17:27:47.961] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:47.961] info) [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:47.961] info, version) [17:27:47.961] } [17:27:47.961] base::stop(msg) [17:27:47.961] } [17:27:47.961] }) [17:27:47.961] } [17:27:47.961] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:47.961] base::options(mc.cores = 1L) [17:27:47.961] } [17:27:47.961] ...future.strategy.old <- future::plan("list") [17:27:47.961] options(future.plan = NULL) [17:27:47.961] Sys.unsetenv("R_FUTURE_PLAN") [17:27:47.961] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:47.961] } [17:27:47.961] ...future.workdir <- getwd() [17:27:47.961] } [17:27:47.961] ...future.oldOptions <- base::as.list(base::.Options) [17:27:47.961] ...future.oldEnvVars <- base::Sys.getenv() [17:27:47.961] } [17:27:47.961] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:47.961] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:47.961] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:47.961] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:47.961] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:47.961] future.stdout.windows.reencode = NULL, width = 80L) [17:27:47.961] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:47.961] base::names(...future.oldOptions)) [17:27:47.961] } [17:27:47.961] if (FALSE) { [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] if (TRUE) { [17:27:47.961] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:47.961] open = "w") [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:47.961] windows = "NUL", "/dev/null"), open = "w") [17:27:47.961] } [17:27:47.961] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:47.961] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:47.961] base::sink(type = "output", split = FALSE) [17:27:47.961] base::close(...future.stdout) [17:27:47.961] }, add = TRUE) [17:27:47.961] } [17:27:47.961] ...future.frame <- base::sys.nframe() [17:27:47.961] ...future.conditions <- base::list() [17:27:47.961] ...future.rng <- base::globalenv()$.Random.seed [17:27:47.961] if (FALSE) { [17:27:47.961] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:47.961] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:47.961] } [17:27:47.961] ...future.result <- base::tryCatch({ [17:27:47.961] base::withCallingHandlers({ [17:27:47.961] ...future.value <- base::withVisible(base::local({ [17:27:47.961] ...future.makeSendCondition <- base::local({ [17:27:47.961] sendCondition <- NULL [17:27:47.961] function(frame = 1L) { [17:27:47.961] if (is.function(sendCondition)) [17:27:47.961] return(sendCondition) [17:27:47.961] ns <- getNamespace("parallel") [17:27:47.961] if (exists("sendData", mode = "function", [17:27:47.961] envir = ns)) { [17:27:47.961] parallel_sendData <- get("sendData", mode = "function", [17:27:47.961] envir = ns) [17:27:47.961] envir <- sys.frame(frame) [17:27:47.961] master <- NULL [17:27:47.961] while (!identical(envir, .GlobalEnv) && [17:27:47.961] !identical(envir, emptyenv())) { [17:27:47.961] if (exists("master", mode = "list", envir = envir, [17:27:47.961] inherits = FALSE)) { [17:27:47.961] master <- get("master", mode = "list", [17:27:47.961] envir = envir, inherits = FALSE) [17:27:47.961] if (inherits(master, c("SOCKnode", [17:27:47.961] "SOCK0node"))) { [17:27:47.961] sendCondition <<- function(cond) { [17:27:47.961] data <- list(type = "VALUE", value = cond, [17:27:47.961] success = TRUE) [17:27:47.961] parallel_sendData(master, data) [17:27:47.961] } [17:27:47.961] return(sendCondition) [17:27:47.961] } [17:27:47.961] } [17:27:47.961] frame <- frame + 1L [17:27:47.961] envir <- sys.frame(frame) [17:27:47.961] } [17:27:47.961] } [17:27:47.961] sendCondition <<- function(cond) NULL [17:27:47.961] } [17:27:47.961] }) [17:27:47.961] withCallingHandlers({ [17:27:47.961] { [17:27:47.961] Sys.sleep(0.5) [17:27:47.961] list(a = 1, b = 42L) [17:27:47.961] } [17:27:47.961] }, immediateCondition = function(cond) { [17:27:47.961] sendCondition <- ...future.makeSendCondition() [17:27:47.961] sendCondition(cond) [17:27:47.961] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.961] { [17:27:47.961] inherits <- base::inherits [17:27:47.961] invokeRestart <- base::invokeRestart [17:27:47.961] is.null <- base::is.null [17:27:47.961] muffled <- FALSE [17:27:47.961] if (inherits(cond, "message")) { [17:27:47.961] muffled <- grepl(pattern, "muffleMessage") [17:27:47.961] if (muffled) [17:27:47.961] invokeRestart("muffleMessage") [17:27:47.961] } [17:27:47.961] else if (inherits(cond, "warning")) { [17:27:47.961] muffled <- grepl(pattern, "muffleWarning") [17:27:47.961] if (muffled) [17:27:47.961] invokeRestart("muffleWarning") [17:27:47.961] } [17:27:47.961] else if (inherits(cond, "condition")) { [17:27:47.961] if (!is.null(pattern)) { [17:27:47.961] computeRestarts <- base::computeRestarts [17:27:47.961] grepl <- base::grepl [17:27:47.961] restarts <- computeRestarts(cond) [17:27:47.961] for (restart in restarts) { [17:27:47.961] name <- restart$name [17:27:47.961] if (is.null(name)) [17:27:47.961] next [17:27:47.961] if (!grepl(pattern, name)) [17:27:47.961] next [17:27:47.961] invokeRestart(restart) [17:27:47.961] muffled <- TRUE [17:27:47.961] break [17:27:47.961] } [17:27:47.961] } [17:27:47.961] } [17:27:47.961] invisible(muffled) [17:27:47.961] } [17:27:47.961] muffleCondition(cond) [17:27:47.961] }) [17:27:47.961] })) [17:27:47.961] future::FutureResult(value = ...future.value$value, [17:27:47.961] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:47.961] ...future.rng), globalenv = if (FALSE) [17:27:47.961] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:47.961] ...future.globalenv.names)) [17:27:47.961] else NULL, started = ...future.startTime, version = "1.8") [17:27:47.961] }, condition = base::local({ [17:27:47.961] c <- base::c [17:27:47.961] inherits <- base::inherits [17:27:47.961] invokeRestart <- base::invokeRestart [17:27:47.961] length <- base::length [17:27:47.961] list <- base::list [17:27:47.961] seq.int <- base::seq.int [17:27:47.961] signalCondition <- base::signalCondition [17:27:47.961] sys.calls <- base::sys.calls [17:27:47.961] `[[` <- base::`[[` [17:27:47.961] `+` <- base::`+` [17:27:47.961] `<<-` <- base::`<<-` [17:27:47.961] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:47.961] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:47.961] 3L)] [17:27:47.961] } [17:27:47.961] function(cond) { [17:27:47.961] is_error <- inherits(cond, "error") [17:27:47.961] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:47.961] NULL) [17:27:47.961] if (is_error) { [17:27:47.961] sessionInformation <- function() { [17:27:47.961] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:47.961] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:47.961] search = base::search(), system = base::Sys.info()) [17:27:47.961] } [17:27:47.961] ...future.conditions[[length(...future.conditions) + [17:27:47.961] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:47.961] cond$call), session = sessionInformation(), [17:27:47.961] timestamp = base::Sys.time(), signaled = 0L) [17:27:47.961] signalCondition(cond) [17:27:47.961] } [17:27:47.961] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:47.961] "immediateCondition"))) { [17:27:47.961] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:47.961] ...future.conditions[[length(...future.conditions) + [17:27:47.961] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:47.961] if (TRUE && !signal) { [17:27:47.961] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.961] { [17:27:47.961] inherits <- base::inherits [17:27:47.961] invokeRestart <- base::invokeRestart [17:27:47.961] is.null <- base::is.null [17:27:47.961] muffled <- FALSE [17:27:47.961] if (inherits(cond, "message")) { [17:27:47.961] muffled <- grepl(pattern, "muffleMessage") [17:27:47.961] if (muffled) [17:27:47.961] invokeRestart("muffleMessage") [17:27:47.961] } [17:27:47.961] else if (inherits(cond, "warning")) { [17:27:47.961] muffled <- grepl(pattern, "muffleWarning") [17:27:47.961] if (muffled) [17:27:47.961] invokeRestart("muffleWarning") [17:27:47.961] } [17:27:47.961] else if (inherits(cond, "condition")) { [17:27:47.961] if (!is.null(pattern)) { [17:27:47.961] computeRestarts <- base::computeRestarts [17:27:47.961] grepl <- base::grepl [17:27:47.961] restarts <- computeRestarts(cond) [17:27:47.961] for (restart in restarts) { [17:27:47.961] name <- restart$name [17:27:47.961] if (is.null(name)) [17:27:47.961] next [17:27:47.961] if (!grepl(pattern, name)) [17:27:47.961] next [17:27:47.961] invokeRestart(restart) [17:27:47.961] muffled <- TRUE [17:27:47.961] break [17:27:47.961] } [17:27:47.961] } [17:27:47.961] } [17:27:47.961] invisible(muffled) [17:27:47.961] } [17:27:47.961] muffleCondition(cond, pattern = "^muffle") [17:27:47.961] } [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] if (TRUE) { [17:27:47.961] muffleCondition <- function (cond, pattern = "^muffle") [17:27:47.961] { [17:27:47.961] inherits <- base::inherits [17:27:47.961] invokeRestart <- base::invokeRestart [17:27:47.961] is.null <- base::is.null [17:27:47.961] muffled <- FALSE [17:27:47.961] if (inherits(cond, "message")) { [17:27:47.961] muffled <- grepl(pattern, "muffleMessage") [17:27:47.961] if (muffled) [17:27:47.961] invokeRestart("muffleMessage") [17:27:47.961] } [17:27:47.961] else if (inherits(cond, "warning")) { [17:27:47.961] muffled <- grepl(pattern, "muffleWarning") [17:27:47.961] if (muffled) [17:27:47.961] invokeRestart("muffleWarning") [17:27:47.961] } [17:27:47.961] else if (inherits(cond, "condition")) { [17:27:47.961] if (!is.null(pattern)) { [17:27:47.961] computeRestarts <- base::computeRestarts [17:27:47.961] grepl <- base::grepl [17:27:47.961] restarts <- computeRestarts(cond) [17:27:47.961] for (restart in restarts) { [17:27:47.961] name <- restart$name [17:27:47.961] if (is.null(name)) [17:27:47.961] next [17:27:47.961] if (!grepl(pattern, name)) [17:27:47.961] next [17:27:47.961] invokeRestart(restart) [17:27:47.961] muffled <- TRUE [17:27:47.961] break [17:27:47.961] } [17:27:47.961] } [17:27:47.961] } [17:27:47.961] invisible(muffled) [17:27:47.961] } [17:27:47.961] muffleCondition(cond, pattern = "^muffle") [17:27:47.961] } [17:27:47.961] } [17:27:47.961] } [17:27:47.961] })) [17:27:47.961] }, error = function(ex) { [17:27:47.961] base::structure(base::list(value = NULL, visible = NULL, [17:27:47.961] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:47.961] ...future.rng), started = ...future.startTime, [17:27:47.961] finished = Sys.time(), session_uuid = NA_character_, [17:27:47.961] version = "1.8"), class = "FutureResult") [17:27:47.961] }, finally = { [17:27:47.961] if (!identical(...future.workdir, getwd())) [17:27:47.961] setwd(...future.workdir) [17:27:47.961] { [17:27:47.961] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:47.961] ...future.oldOptions$nwarnings <- NULL [17:27:47.961] } [17:27:47.961] base::options(...future.oldOptions) [17:27:47.961] if (.Platform$OS.type == "windows") { [17:27:47.961] old_names <- names(...future.oldEnvVars) [17:27:47.961] envs <- base::Sys.getenv() [17:27:47.961] names <- names(envs) [17:27:47.961] common <- intersect(names, old_names) [17:27:47.961] added <- setdiff(names, old_names) [17:27:47.961] removed <- setdiff(old_names, names) [17:27:47.961] changed <- common[...future.oldEnvVars[common] != [17:27:47.961] envs[common]] [17:27:47.961] NAMES <- toupper(changed) [17:27:47.961] args <- list() [17:27:47.961] for (kk in seq_along(NAMES)) { [17:27:47.961] name <- changed[[kk]] [17:27:47.961] NAME <- NAMES[[kk]] [17:27:47.961] if (name != NAME && is.element(NAME, old_names)) [17:27:47.961] next [17:27:47.961] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:47.961] } [17:27:47.961] NAMES <- toupper(added) [17:27:47.961] for (kk in seq_along(NAMES)) { [17:27:47.961] name <- added[[kk]] [17:27:47.961] NAME <- NAMES[[kk]] [17:27:47.961] if (name != NAME && is.element(NAME, old_names)) [17:27:47.961] next [17:27:47.961] args[[name]] <- "" [17:27:47.961] } [17:27:47.961] NAMES <- toupper(removed) [17:27:47.961] for (kk in seq_along(NAMES)) { [17:27:47.961] name <- removed[[kk]] [17:27:47.961] NAME <- NAMES[[kk]] [17:27:47.961] if (name != NAME && is.element(NAME, old_names)) [17:27:47.961] next [17:27:47.961] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:47.961] } [17:27:47.961] if (length(args) > 0) [17:27:47.961] base::do.call(base::Sys.setenv, args = args) [17:27:47.961] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:47.961] } [17:27:47.961] { [17:27:47.961] if (base::length(...future.futureOptionsAdded) > [17:27:47.961] 0L) { [17:27:47.961] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:47.961] base::names(opts) <- ...future.futureOptionsAdded [17:27:47.961] base::options(opts) [17:27:47.961] } [17:27:47.961] { [17:27:47.961] { [17:27:47.961] base::options(mc.cores = ...future.mc.cores.old) [17:27:47.961] NULL [17:27:47.961] } [17:27:47.961] options(future.plan = NULL) [17:27:47.961] if (is.na(NA_character_)) [17:27:47.961] Sys.unsetenv("R_FUTURE_PLAN") [17:27:47.961] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:47.961] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:47.961] .init = FALSE) [17:27:47.961] } [17:27:47.961] } [17:27:47.961] } [17:27:47.961] }) [17:27:47.961] if (TRUE) { [17:27:47.961] base::sink(type = "output", split = FALSE) [17:27:47.961] if (TRUE) { [17:27:47.961] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:47.961] } [17:27:47.961] else { [17:27:47.961] ...future.result["stdout"] <- base::list(NULL) [17:27:47.961] } [17:27:47.961] base::close(...future.stdout) [17:27:47.961] ...future.stdout <- NULL [17:27:47.961] } [17:27:47.961] ...future.result$conditions <- ...future.conditions [17:27:47.961] ...future.result$finished <- base::Sys.time() [17:27:47.961] ...future.result [17:27:47.961] } [17:27:47.967] MultisessionFuture started [17:27:47.967] - Launch lazy future ... done [17:27:47.967] run() for 'MultisessionFuture' ... done [17:27:48.495] receiveMessageFromWorker() for ClusterFuture ... [17:27:48.495] - Validating connection of MultisessionFuture [17:27:48.496] - received message: FutureResult [17:27:48.496] - Received FutureResult [17:27:48.496] - Erased future from FutureRegistry [17:27:48.496] result() for ClusterFuture ... [17:27:48.497] - result already collected: FutureResult [17:27:48.497] result() for ClusterFuture ... done [17:27:48.497] receiveMessageFromWorker() for ClusterFuture ... done [17:27:48.497] A MultisessionFuture was resolved (result was not collected) - w/ exception ... [17:27:48.497] getGlobalsAndPackages() ... [17:27:48.498] Searching for globals... [17:27:48.499] - globals found: [2] 'list', 'stop' [17:27:48.499] Searching for globals ... DONE [17:27:48.499] Resolving globals: FALSE [17:27:48.499] [17:27:48.500] [17:27:48.500] getGlobalsAndPackages() ... DONE [17:27:48.500] run() for 'Future' ... [17:27:48.500] - state: 'created' [17:27:48.501] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:48.515] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:48.515] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:48.515] - Field: 'node' [17:27:48.516] - Field: 'label' [17:27:48.516] - Field: 'local' [17:27:48.516] - Field: 'owner' [17:27:48.516] - Field: 'envir' [17:27:48.516] - Field: 'workers' [17:27:48.516] - Field: 'packages' [17:27:48.517] - Field: 'gc' [17:27:48.517] - Field: 'conditions' [17:27:48.517] - Field: 'persistent' [17:27:48.517] - Field: 'expr' [17:27:48.517] - Field: 'uuid' [17:27:48.518] - Field: 'seed' [17:27:48.518] - Field: 'version' [17:27:48.518] - Field: 'result' [17:27:48.518] - Field: 'asynchronous' [17:27:48.518] - Field: 'calls' [17:27:48.519] - Field: 'globals' [17:27:48.519] - Field: 'stdout' [17:27:48.519] - Field: 'earlySignal' [17:27:48.519] - Field: 'lazy' [17:27:48.519] - Field: 'state' [17:27:48.519] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:48.520] - Launch lazy future ... [17:27:48.520] Packages needed by the future expression (n = 0): [17:27:48.520] Packages needed by future strategies (n = 0): [17:27:48.521] { [17:27:48.521] { [17:27:48.521] { [17:27:48.521] ...future.startTime <- base::Sys.time() [17:27:48.521] { [17:27:48.521] { [17:27:48.521] { [17:27:48.521] { [17:27:48.521] base::local({ [17:27:48.521] has_future <- base::requireNamespace("future", [17:27:48.521] quietly = TRUE) [17:27:48.521] if (has_future) { [17:27:48.521] ns <- base::getNamespace("future") [17:27:48.521] version <- ns[[".package"]][["version"]] [17:27:48.521] if (is.null(version)) [17:27:48.521] version <- utils::packageVersion("future") [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] version <- NULL [17:27:48.521] } [17:27:48.521] if (!has_future || version < "1.8.0") { [17:27:48.521] info <- base::c(r_version = base::gsub("R version ", [17:27:48.521] "", base::R.version$version.string), [17:27:48.521] platform = base::sprintf("%s (%s-bit)", [17:27:48.521] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:48.521] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:48.521] "release", "version")], collapse = " "), [17:27:48.521] hostname = base::Sys.info()[["nodename"]]) [17:27:48.521] info <- base::sprintf("%s: %s", base::names(info), [17:27:48.521] info) [17:27:48.521] info <- base::paste(info, collapse = "; ") [17:27:48.521] if (!has_future) { [17:27:48.521] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:48.521] info) [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:48.521] info, version) [17:27:48.521] } [17:27:48.521] base::stop(msg) [17:27:48.521] } [17:27:48.521] }) [17:27:48.521] } [17:27:48.521] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:48.521] base::options(mc.cores = 1L) [17:27:48.521] } [17:27:48.521] ...future.strategy.old <- future::plan("list") [17:27:48.521] options(future.plan = NULL) [17:27:48.521] Sys.unsetenv("R_FUTURE_PLAN") [17:27:48.521] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:48.521] } [17:27:48.521] ...future.workdir <- getwd() [17:27:48.521] } [17:27:48.521] ...future.oldOptions <- base::as.list(base::.Options) [17:27:48.521] ...future.oldEnvVars <- base::Sys.getenv() [17:27:48.521] } [17:27:48.521] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:48.521] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:48.521] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:48.521] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:48.521] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:48.521] future.stdout.windows.reencode = NULL, width = 80L) [17:27:48.521] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:48.521] base::names(...future.oldOptions)) [17:27:48.521] } [17:27:48.521] if (FALSE) { [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] if (TRUE) { [17:27:48.521] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:48.521] open = "w") [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:48.521] windows = "NUL", "/dev/null"), open = "w") [17:27:48.521] } [17:27:48.521] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:48.521] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:48.521] base::sink(type = "output", split = FALSE) [17:27:48.521] base::close(...future.stdout) [17:27:48.521] }, add = TRUE) [17:27:48.521] } [17:27:48.521] ...future.frame <- base::sys.nframe() [17:27:48.521] ...future.conditions <- base::list() [17:27:48.521] ...future.rng <- base::globalenv()$.Random.seed [17:27:48.521] if (FALSE) { [17:27:48.521] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:48.521] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:48.521] } [17:27:48.521] ...future.result <- base::tryCatch({ [17:27:48.521] base::withCallingHandlers({ [17:27:48.521] ...future.value <- base::withVisible(base::local({ [17:27:48.521] ...future.makeSendCondition <- base::local({ [17:27:48.521] sendCondition <- NULL [17:27:48.521] function(frame = 1L) { [17:27:48.521] if (is.function(sendCondition)) [17:27:48.521] return(sendCondition) [17:27:48.521] ns <- getNamespace("parallel") [17:27:48.521] if (exists("sendData", mode = "function", [17:27:48.521] envir = ns)) { [17:27:48.521] parallel_sendData <- get("sendData", mode = "function", [17:27:48.521] envir = ns) [17:27:48.521] envir <- sys.frame(frame) [17:27:48.521] master <- NULL [17:27:48.521] while (!identical(envir, .GlobalEnv) && [17:27:48.521] !identical(envir, emptyenv())) { [17:27:48.521] if (exists("master", mode = "list", envir = envir, [17:27:48.521] inherits = FALSE)) { [17:27:48.521] master <- get("master", mode = "list", [17:27:48.521] envir = envir, inherits = FALSE) [17:27:48.521] if (inherits(master, c("SOCKnode", [17:27:48.521] "SOCK0node"))) { [17:27:48.521] sendCondition <<- function(cond) { [17:27:48.521] data <- list(type = "VALUE", value = cond, [17:27:48.521] success = TRUE) [17:27:48.521] parallel_sendData(master, data) [17:27:48.521] } [17:27:48.521] return(sendCondition) [17:27:48.521] } [17:27:48.521] } [17:27:48.521] frame <- frame + 1L [17:27:48.521] envir <- sys.frame(frame) [17:27:48.521] } [17:27:48.521] } [17:27:48.521] sendCondition <<- function(cond) NULL [17:27:48.521] } [17:27:48.521] }) [17:27:48.521] withCallingHandlers({ [17:27:48.521] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:48.521] }, immediateCondition = function(cond) { [17:27:48.521] sendCondition <- ...future.makeSendCondition() [17:27:48.521] sendCondition(cond) [17:27:48.521] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.521] { [17:27:48.521] inherits <- base::inherits [17:27:48.521] invokeRestart <- base::invokeRestart [17:27:48.521] is.null <- base::is.null [17:27:48.521] muffled <- FALSE [17:27:48.521] if (inherits(cond, "message")) { [17:27:48.521] muffled <- grepl(pattern, "muffleMessage") [17:27:48.521] if (muffled) [17:27:48.521] invokeRestart("muffleMessage") [17:27:48.521] } [17:27:48.521] else if (inherits(cond, "warning")) { [17:27:48.521] muffled <- grepl(pattern, "muffleWarning") [17:27:48.521] if (muffled) [17:27:48.521] invokeRestart("muffleWarning") [17:27:48.521] } [17:27:48.521] else if (inherits(cond, "condition")) { [17:27:48.521] if (!is.null(pattern)) { [17:27:48.521] computeRestarts <- base::computeRestarts [17:27:48.521] grepl <- base::grepl [17:27:48.521] restarts <- computeRestarts(cond) [17:27:48.521] for (restart in restarts) { [17:27:48.521] name <- restart$name [17:27:48.521] if (is.null(name)) [17:27:48.521] next [17:27:48.521] if (!grepl(pattern, name)) [17:27:48.521] next [17:27:48.521] invokeRestart(restart) [17:27:48.521] muffled <- TRUE [17:27:48.521] break [17:27:48.521] } [17:27:48.521] } [17:27:48.521] } [17:27:48.521] invisible(muffled) [17:27:48.521] } [17:27:48.521] muffleCondition(cond) [17:27:48.521] }) [17:27:48.521] })) [17:27:48.521] future::FutureResult(value = ...future.value$value, [17:27:48.521] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:48.521] ...future.rng), globalenv = if (FALSE) [17:27:48.521] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:48.521] ...future.globalenv.names)) [17:27:48.521] else NULL, started = ...future.startTime, version = "1.8") [17:27:48.521] }, condition = base::local({ [17:27:48.521] c <- base::c [17:27:48.521] inherits <- base::inherits [17:27:48.521] invokeRestart <- base::invokeRestart [17:27:48.521] length <- base::length [17:27:48.521] list <- base::list [17:27:48.521] seq.int <- base::seq.int [17:27:48.521] signalCondition <- base::signalCondition [17:27:48.521] sys.calls <- base::sys.calls [17:27:48.521] `[[` <- base::`[[` [17:27:48.521] `+` <- base::`+` [17:27:48.521] `<<-` <- base::`<<-` [17:27:48.521] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:48.521] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:48.521] 3L)] [17:27:48.521] } [17:27:48.521] function(cond) { [17:27:48.521] is_error <- inherits(cond, "error") [17:27:48.521] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:48.521] NULL) [17:27:48.521] if (is_error) { [17:27:48.521] sessionInformation <- function() { [17:27:48.521] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:48.521] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:48.521] search = base::search(), system = base::Sys.info()) [17:27:48.521] } [17:27:48.521] ...future.conditions[[length(...future.conditions) + [17:27:48.521] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:48.521] cond$call), session = sessionInformation(), [17:27:48.521] timestamp = base::Sys.time(), signaled = 0L) [17:27:48.521] signalCondition(cond) [17:27:48.521] } [17:27:48.521] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:48.521] "immediateCondition"))) { [17:27:48.521] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:48.521] ...future.conditions[[length(...future.conditions) + [17:27:48.521] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:48.521] if (TRUE && !signal) { [17:27:48.521] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.521] { [17:27:48.521] inherits <- base::inherits [17:27:48.521] invokeRestart <- base::invokeRestart [17:27:48.521] is.null <- base::is.null [17:27:48.521] muffled <- FALSE [17:27:48.521] if (inherits(cond, "message")) { [17:27:48.521] muffled <- grepl(pattern, "muffleMessage") [17:27:48.521] if (muffled) [17:27:48.521] invokeRestart("muffleMessage") [17:27:48.521] } [17:27:48.521] else if (inherits(cond, "warning")) { [17:27:48.521] muffled <- grepl(pattern, "muffleWarning") [17:27:48.521] if (muffled) [17:27:48.521] invokeRestart("muffleWarning") [17:27:48.521] } [17:27:48.521] else if (inherits(cond, "condition")) { [17:27:48.521] if (!is.null(pattern)) { [17:27:48.521] computeRestarts <- base::computeRestarts [17:27:48.521] grepl <- base::grepl [17:27:48.521] restarts <- computeRestarts(cond) [17:27:48.521] for (restart in restarts) { [17:27:48.521] name <- restart$name [17:27:48.521] if (is.null(name)) [17:27:48.521] next [17:27:48.521] if (!grepl(pattern, name)) [17:27:48.521] next [17:27:48.521] invokeRestart(restart) [17:27:48.521] muffled <- TRUE [17:27:48.521] break [17:27:48.521] } [17:27:48.521] } [17:27:48.521] } [17:27:48.521] invisible(muffled) [17:27:48.521] } [17:27:48.521] muffleCondition(cond, pattern = "^muffle") [17:27:48.521] } [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] if (TRUE) { [17:27:48.521] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.521] { [17:27:48.521] inherits <- base::inherits [17:27:48.521] invokeRestart <- base::invokeRestart [17:27:48.521] is.null <- base::is.null [17:27:48.521] muffled <- FALSE [17:27:48.521] if (inherits(cond, "message")) { [17:27:48.521] muffled <- grepl(pattern, "muffleMessage") [17:27:48.521] if (muffled) [17:27:48.521] invokeRestart("muffleMessage") [17:27:48.521] } [17:27:48.521] else if (inherits(cond, "warning")) { [17:27:48.521] muffled <- grepl(pattern, "muffleWarning") [17:27:48.521] if (muffled) [17:27:48.521] invokeRestart("muffleWarning") [17:27:48.521] } [17:27:48.521] else if (inherits(cond, "condition")) { [17:27:48.521] if (!is.null(pattern)) { [17:27:48.521] computeRestarts <- base::computeRestarts [17:27:48.521] grepl <- base::grepl [17:27:48.521] restarts <- computeRestarts(cond) [17:27:48.521] for (restart in restarts) { [17:27:48.521] name <- restart$name [17:27:48.521] if (is.null(name)) [17:27:48.521] next [17:27:48.521] if (!grepl(pattern, name)) [17:27:48.521] next [17:27:48.521] invokeRestart(restart) [17:27:48.521] muffled <- TRUE [17:27:48.521] break [17:27:48.521] } [17:27:48.521] } [17:27:48.521] } [17:27:48.521] invisible(muffled) [17:27:48.521] } [17:27:48.521] muffleCondition(cond, pattern = "^muffle") [17:27:48.521] } [17:27:48.521] } [17:27:48.521] } [17:27:48.521] })) [17:27:48.521] }, error = function(ex) { [17:27:48.521] base::structure(base::list(value = NULL, visible = NULL, [17:27:48.521] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:48.521] ...future.rng), started = ...future.startTime, [17:27:48.521] finished = Sys.time(), session_uuid = NA_character_, [17:27:48.521] version = "1.8"), class = "FutureResult") [17:27:48.521] }, finally = { [17:27:48.521] if (!identical(...future.workdir, getwd())) [17:27:48.521] setwd(...future.workdir) [17:27:48.521] { [17:27:48.521] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:48.521] ...future.oldOptions$nwarnings <- NULL [17:27:48.521] } [17:27:48.521] base::options(...future.oldOptions) [17:27:48.521] if (.Platform$OS.type == "windows") { [17:27:48.521] old_names <- names(...future.oldEnvVars) [17:27:48.521] envs <- base::Sys.getenv() [17:27:48.521] names <- names(envs) [17:27:48.521] common <- intersect(names, old_names) [17:27:48.521] added <- setdiff(names, old_names) [17:27:48.521] removed <- setdiff(old_names, names) [17:27:48.521] changed <- common[...future.oldEnvVars[common] != [17:27:48.521] envs[common]] [17:27:48.521] NAMES <- toupper(changed) [17:27:48.521] args <- list() [17:27:48.521] for (kk in seq_along(NAMES)) { [17:27:48.521] name <- changed[[kk]] [17:27:48.521] NAME <- NAMES[[kk]] [17:27:48.521] if (name != NAME && is.element(NAME, old_names)) [17:27:48.521] next [17:27:48.521] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:48.521] } [17:27:48.521] NAMES <- toupper(added) [17:27:48.521] for (kk in seq_along(NAMES)) { [17:27:48.521] name <- added[[kk]] [17:27:48.521] NAME <- NAMES[[kk]] [17:27:48.521] if (name != NAME && is.element(NAME, old_names)) [17:27:48.521] next [17:27:48.521] args[[name]] <- "" [17:27:48.521] } [17:27:48.521] NAMES <- toupper(removed) [17:27:48.521] for (kk in seq_along(NAMES)) { [17:27:48.521] name <- removed[[kk]] [17:27:48.521] NAME <- NAMES[[kk]] [17:27:48.521] if (name != NAME && is.element(NAME, old_names)) [17:27:48.521] next [17:27:48.521] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:48.521] } [17:27:48.521] if (length(args) > 0) [17:27:48.521] base::do.call(base::Sys.setenv, args = args) [17:27:48.521] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:48.521] } [17:27:48.521] { [17:27:48.521] if (base::length(...future.futureOptionsAdded) > [17:27:48.521] 0L) { [17:27:48.521] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:48.521] base::names(opts) <- ...future.futureOptionsAdded [17:27:48.521] base::options(opts) [17:27:48.521] } [17:27:48.521] { [17:27:48.521] { [17:27:48.521] base::options(mc.cores = ...future.mc.cores.old) [17:27:48.521] NULL [17:27:48.521] } [17:27:48.521] options(future.plan = NULL) [17:27:48.521] if (is.na(NA_character_)) [17:27:48.521] Sys.unsetenv("R_FUTURE_PLAN") [17:27:48.521] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:48.521] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:48.521] .init = FALSE) [17:27:48.521] } [17:27:48.521] } [17:27:48.521] } [17:27:48.521] }) [17:27:48.521] if (TRUE) { [17:27:48.521] base::sink(type = "output", split = FALSE) [17:27:48.521] if (TRUE) { [17:27:48.521] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:48.521] } [17:27:48.521] else { [17:27:48.521] ...future.result["stdout"] <- base::list(NULL) [17:27:48.521] } [17:27:48.521] base::close(...future.stdout) [17:27:48.521] ...future.stdout <- NULL [17:27:48.521] } [17:27:48.521] ...future.result$conditions <- ...future.conditions [17:27:48.521] ...future.result$finished <- base::Sys.time() [17:27:48.521] ...future.result [17:27:48.521] } [17:27:48.527] MultisessionFuture started [17:27:48.527] - Launch lazy future ... done [17:27:48.527] run() for 'MultisessionFuture' ... done [17:27:48.542] receiveMessageFromWorker() for ClusterFuture ... [17:27:48.543] - Validating connection of MultisessionFuture [17:27:48.543] - received message: FutureResult [17:27:48.543] - Received FutureResult [17:27:48.544] - Erased future from FutureRegistry [17:27:48.544] result() for ClusterFuture ... [17:27:48.544] - result already collected: FutureResult [17:27:48.544] result() for ClusterFuture ... done [17:27:48.544] signalConditions() ... [17:27:48.545] - include = 'immediateCondition' [17:27:48.545] - exclude = [17:27:48.545] - resignal = FALSE [17:27:48.545] - Number of conditions: 1 [17:27:48.545] signalConditions() ... done [17:27:48.545] receiveMessageFromWorker() for ClusterFuture ... done [17:27:48.546] A MultisessionFuture was resolved (result was not collected) [17:27:48.546] getGlobalsAndPackages() ... [17:27:48.546] Searching for globals... [17:27:48.547] - globals found: [2] 'list', 'stop' [17:27:48.547] Searching for globals ... DONE [17:27:48.547] Resolving globals: FALSE [17:27:48.548] [17:27:48.548] [17:27:48.548] getGlobalsAndPackages() ... DONE [17:27:48.549] run() for 'Future' ... [17:27:48.549] - state: 'created' [17:27:48.549] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:48.565] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:48.566] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:48.566] - Field: 'node' [17:27:48.566] - Field: 'label' [17:27:48.566] - Field: 'local' [17:27:48.566] - Field: 'owner' [17:27:48.566] - Field: 'envir' [17:27:48.567] - Field: 'workers' [17:27:48.567] - Field: 'packages' [17:27:48.567] - Field: 'gc' [17:27:48.567] - Field: 'conditions' [17:27:48.567] - Field: 'persistent' [17:27:48.567] - Field: 'expr' [17:27:48.568] - Field: 'uuid' [17:27:48.568] - Field: 'seed' [17:27:48.568] - Field: 'version' [17:27:48.568] - Field: 'result' [17:27:48.568] - Field: 'asynchronous' [17:27:48.568] - Field: 'calls' [17:27:48.569] - Field: 'globals' [17:27:48.569] - Field: 'stdout' [17:27:48.569] - Field: 'earlySignal' [17:27:48.569] - Field: 'lazy' [17:27:48.569] - Field: 'state' [17:27:48.569] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:48.570] - Launch lazy future ... [17:27:48.570] Packages needed by the future expression (n = 0): [17:27:48.570] Packages needed by future strategies (n = 0): [17:27:48.571] { [17:27:48.571] { [17:27:48.571] { [17:27:48.571] ...future.startTime <- base::Sys.time() [17:27:48.571] { [17:27:48.571] { [17:27:48.571] { [17:27:48.571] { [17:27:48.571] base::local({ [17:27:48.571] has_future <- base::requireNamespace("future", [17:27:48.571] quietly = TRUE) [17:27:48.571] if (has_future) { [17:27:48.571] ns <- base::getNamespace("future") [17:27:48.571] version <- ns[[".package"]][["version"]] [17:27:48.571] if (is.null(version)) [17:27:48.571] version <- utils::packageVersion("future") [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] version <- NULL [17:27:48.571] } [17:27:48.571] if (!has_future || version < "1.8.0") { [17:27:48.571] info <- base::c(r_version = base::gsub("R version ", [17:27:48.571] "", base::R.version$version.string), [17:27:48.571] platform = base::sprintf("%s (%s-bit)", [17:27:48.571] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:48.571] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:48.571] "release", "version")], collapse = " "), [17:27:48.571] hostname = base::Sys.info()[["nodename"]]) [17:27:48.571] info <- base::sprintf("%s: %s", base::names(info), [17:27:48.571] info) [17:27:48.571] info <- base::paste(info, collapse = "; ") [17:27:48.571] if (!has_future) { [17:27:48.571] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:48.571] info) [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:48.571] info, version) [17:27:48.571] } [17:27:48.571] base::stop(msg) [17:27:48.571] } [17:27:48.571] }) [17:27:48.571] } [17:27:48.571] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:48.571] base::options(mc.cores = 1L) [17:27:48.571] } [17:27:48.571] ...future.strategy.old <- future::plan("list") [17:27:48.571] options(future.plan = NULL) [17:27:48.571] Sys.unsetenv("R_FUTURE_PLAN") [17:27:48.571] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:48.571] } [17:27:48.571] ...future.workdir <- getwd() [17:27:48.571] } [17:27:48.571] ...future.oldOptions <- base::as.list(base::.Options) [17:27:48.571] ...future.oldEnvVars <- base::Sys.getenv() [17:27:48.571] } [17:27:48.571] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:48.571] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:48.571] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:48.571] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:48.571] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:48.571] future.stdout.windows.reencode = NULL, width = 80L) [17:27:48.571] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:48.571] base::names(...future.oldOptions)) [17:27:48.571] } [17:27:48.571] if (FALSE) { [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] if (TRUE) { [17:27:48.571] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:48.571] open = "w") [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:48.571] windows = "NUL", "/dev/null"), open = "w") [17:27:48.571] } [17:27:48.571] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:48.571] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:48.571] base::sink(type = "output", split = FALSE) [17:27:48.571] base::close(...future.stdout) [17:27:48.571] }, add = TRUE) [17:27:48.571] } [17:27:48.571] ...future.frame <- base::sys.nframe() [17:27:48.571] ...future.conditions <- base::list() [17:27:48.571] ...future.rng <- base::globalenv()$.Random.seed [17:27:48.571] if (FALSE) { [17:27:48.571] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:48.571] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:48.571] } [17:27:48.571] ...future.result <- base::tryCatch({ [17:27:48.571] base::withCallingHandlers({ [17:27:48.571] ...future.value <- base::withVisible(base::local({ [17:27:48.571] ...future.makeSendCondition <- base::local({ [17:27:48.571] sendCondition <- NULL [17:27:48.571] function(frame = 1L) { [17:27:48.571] if (is.function(sendCondition)) [17:27:48.571] return(sendCondition) [17:27:48.571] ns <- getNamespace("parallel") [17:27:48.571] if (exists("sendData", mode = "function", [17:27:48.571] envir = ns)) { [17:27:48.571] parallel_sendData <- get("sendData", mode = "function", [17:27:48.571] envir = ns) [17:27:48.571] envir <- sys.frame(frame) [17:27:48.571] master <- NULL [17:27:48.571] while (!identical(envir, .GlobalEnv) && [17:27:48.571] !identical(envir, emptyenv())) { [17:27:48.571] if (exists("master", mode = "list", envir = envir, [17:27:48.571] inherits = FALSE)) { [17:27:48.571] master <- get("master", mode = "list", [17:27:48.571] envir = envir, inherits = FALSE) [17:27:48.571] if (inherits(master, c("SOCKnode", [17:27:48.571] "SOCK0node"))) { [17:27:48.571] sendCondition <<- function(cond) { [17:27:48.571] data <- list(type = "VALUE", value = cond, [17:27:48.571] success = TRUE) [17:27:48.571] parallel_sendData(master, data) [17:27:48.571] } [17:27:48.571] return(sendCondition) [17:27:48.571] } [17:27:48.571] } [17:27:48.571] frame <- frame + 1L [17:27:48.571] envir <- sys.frame(frame) [17:27:48.571] } [17:27:48.571] } [17:27:48.571] sendCondition <<- function(cond) NULL [17:27:48.571] } [17:27:48.571] }) [17:27:48.571] withCallingHandlers({ [17:27:48.571] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:48.571] }, immediateCondition = function(cond) { [17:27:48.571] sendCondition <- ...future.makeSendCondition() [17:27:48.571] sendCondition(cond) [17:27:48.571] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.571] { [17:27:48.571] inherits <- base::inherits [17:27:48.571] invokeRestart <- base::invokeRestart [17:27:48.571] is.null <- base::is.null [17:27:48.571] muffled <- FALSE [17:27:48.571] if (inherits(cond, "message")) { [17:27:48.571] muffled <- grepl(pattern, "muffleMessage") [17:27:48.571] if (muffled) [17:27:48.571] invokeRestart("muffleMessage") [17:27:48.571] } [17:27:48.571] else if (inherits(cond, "warning")) { [17:27:48.571] muffled <- grepl(pattern, "muffleWarning") [17:27:48.571] if (muffled) [17:27:48.571] invokeRestart("muffleWarning") [17:27:48.571] } [17:27:48.571] else if (inherits(cond, "condition")) { [17:27:48.571] if (!is.null(pattern)) { [17:27:48.571] computeRestarts <- base::computeRestarts [17:27:48.571] grepl <- base::grepl [17:27:48.571] restarts <- computeRestarts(cond) [17:27:48.571] for (restart in restarts) { [17:27:48.571] name <- restart$name [17:27:48.571] if (is.null(name)) [17:27:48.571] next [17:27:48.571] if (!grepl(pattern, name)) [17:27:48.571] next [17:27:48.571] invokeRestart(restart) [17:27:48.571] muffled <- TRUE [17:27:48.571] break [17:27:48.571] } [17:27:48.571] } [17:27:48.571] } [17:27:48.571] invisible(muffled) [17:27:48.571] } [17:27:48.571] muffleCondition(cond) [17:27:48.571] }) [17:27:48.571] })) [17:27:48.571] future::FutureResult(value = ...future.value$value, [17:27:48.571] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:48.571] ...future.rng), globalenv = if (FALSE) [17:27:48.571] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:48.571] ...future.globalenv.names)) [17:27:48.571] else NULL, started = ...future.startTime, version = "1.8") [17:27:48.571] }, condition = base::local({ [17:27:48.571] c <- base::c [17:27:48.571] inherits <- base::inherits [17:27:48.571] invokeRestart <- base::invokeRestart [17:27:48.571] length <- base::length [17:27:48.571] list <- base::list [17:27:48.571] seq.int <- base::seq.int [17:27:48.571] signalCondition <- base::signalCondition [17:27:48.571] sys.calls <- base::sys.calls [17:27:48.571] `[[` <- base::`[[` [17:27:48.571] `+` <- base::`+` [17:27:48.571] `<<-` <- base::`<<-` [17:27:48.571] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:48.571] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:48.571] 3L)] [17:27:48.571] } [17:27:48.571] function(cond) { [17:27:48.571] is_error <- inherits(cond, "error") [17:27:48.571] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:48.571] NULL) [17:27:48.571] if (is_error) { [17:27:48.571] sessionInformation <- function() { [17:27:48.571] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:48.571] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:48.571] search = base::search(), system = base::Sys.info()) [17:27:48.571] } [17:27:48.571] ...future.conditions[[length(...future.conditions) + [17:27:48.571] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:48.571] cond$call), session = sessionInformation(), [17:27:48.571] timestamp = base::Sys.time(), signaled = 0L) [17:27:48.571] signalCondition(cond) [17:27:48.571] } [17:27:48.571] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:48.571] "immediateCondition"))) { [17:27:48.571] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:48.571] ...future.conditions[[length(...future.conditions) + [17:27:48.571] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:48.571] if (TRUE && !signal) { [17:27:48.571] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.571] { [17:27:48.571] inherits <- base::inherits [17:27:48.571] invokeRestart <- base::invokeRestart [17:27:48.571] is.null <- base::is.null [17:27:48.571] muffled <- FALSE [17:27:48.571] if (inherits(cond, "message")) { [17:27:48.571] muffled <- grepl(pattern, "muffleMessage") [17:27:48.571] if (muffled) [17:27:48.571] invokeRestart("muffleMessage") [17:27:48.571] } [17:27:48.571] else if (inherits(cond, "warning")) { [17:27:48.571] muffled <- grepl(pattern, "muffleWarning") [17:27:48.571] if (muffled) [17:27:48.571] invokeRestart("muffleWarning") [17:27:48.571] } [17:27:48.571] else if (inherits(cond, "condition")) { [17:27:48.571] if (!is.null(pattern)) { [17:27:48.571] computeRestarts <- base::computeRestarts [17:27:48.571] grepl <- base::grepl [17:27:48.571] restarts <- computeRestarts(cond) [17:27:48.571] for (restart in restarts) { [17:27:48.571] name <- restart$name [17:27:48.571] if (is.null(name)) [17:27:48.571] next [17:27:48.571] if (!grepl(pattern, name)) [17:27:48.571] next [17:27:48.571] invokeRestart(restart) [17:27:48.571] muffled <- TRUE [17:27:48.571] break [17:27:48.571] } [17:27:48.571] } [17:27:48.571] } [17:27:48.571] invisible(muffled) [17:27:48.571] } [17:27:48.571] muffleCondition(cond, pattern = "^muffle") [17:27:48.571] } [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] if (TRUE) { [17:27:48.571] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.571] { [17:27:48.571] inherits <- base::inherits [17:27:48.571] invokeRestart <- base::invokeRestart [17:27:48.571] is.null <- base::is.null [17:27:48.571] muffled <- FALSE [17:27:48.571] if (inherits(cond, "message")) { [17:27:48.571] muffled <- grepl(pattern, "muffleMessage") [17:27:48.571] if (muffled) [17:27:48.571] invokeRestart("muffleMessage") [17:27:48.571] } [17:27:48.571] else if (inherits(cond, "warning")) { [17:27:48.571] muffled <- grepl(pattern, "muffleWarning") [17:27:48.571] if (muffled) [17:27:48.571] invokeRestart("muffleWarning") [17:27:48.571] } [17:27:48.571] else if (inherits(cond, "condition")) { [17:27:48.571] if (!is.null(pattern)) { [17:27:48.571] computeRestarts <- base::computeRestarts [17:27:48.571] grepl <- base::grepl [17:27:48.571] restarts <- computeRestarts(cond) [17:27:48.571] for (restart in restarts) { [17:27:48.571] name <- restart$name [17:27:48.571] if (is.null(name)) [17:27:48.571] next [17:27:48.571] if (!grepl(pattern, name)) [17:27:48.571] next [17:27:48.571] invokeRestart(restart) [17:27:48.571] muffled <- TRUE [17:27:48.571] break [17:27:48.571] } [17:27:48.571] } [17:27:48.571] } [17:27:48.571] invisible(muffled) [17:27:48.571] } [17:27:48.571] muffleCondition(cond, pattern = "^muffle") [17:27:48.571] } [17:27:48.571] } [17:27:48.571] } [17:27:48.571] })) [17:27:48.571] }, error = function(ex) { [17:27:48.571] base::structure(base::list(value = NULL, visible = NULL, [17:27:48.571] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:48.571] ...future.rng), started = ...future.startTime, [17:27:48.571] finished = Sys.time(), session_uuid = NA_character_, [17:27:48.571] version = "1.8"), class = "FutureResult") [17:27:48.571] }, finally = { [17:27:48.571] if (!identical(...future.workdir, getwd())) [17:27:48.571] setwd(...future.workdir) [17:27:48.571] { [17:27:48.571] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:48.571] ...future.oldOptions$nwarnings <- NULL [17:27:48.571] } [17:27:48.571] base::options(...future.oldOptions) [17:27:48.571] if (.Platform$OS.type == "windows") { [17:27:48.571] old_names <- names(...future.oldEnvVars) [17:27:48.571] envs <- base::Sys.getenv() [17:27:48.571] names <- names(envs) [17:27:48.571] common <- intersect(names, old_names) [17:27:48.571] added <- setdiff(names, old_names) [17:27:48.571] removed <- setdiff(old_names, names) [17:27:48.571] changed <- common[...future.oldEnvVars[common] != [17:27:48.571] envs[common]] [17:27:48.571] NAMES <- toupper(changed) [17:27:48.571] args <- list() [17:27:48.571] for (kk in seq_along(NAMES)) { [17:27:48.571] name <- changed[[kk]] [17:27:48.571] NAME <- NAMES[[kk]] [17:27:48.571] if (name != NAME && is.element(NAME, old_names)) [17:27:48.571] next [17:27:48.571] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:48.571] } [17:27:48.571] NAMES <- toupper(added) [17:27:48.571] for (kk in seq_along(NAMES)) { [17:27:48.571] name <- added[[kk]] [17:27:48.571] NAME <- NAMES[[kk]] [17:27:48.571] if (name != NAME && is.element(NAME, old_names)) [17:27:48.571] next [17:27:48.571] args[[name]] <- "" [17:27:48.571] } [17:27:48.571] NAMES <- toupper(removed) [17:27:48.571] for (kk in seq_along(NAMES)) { [17:27:48.571] name <- removed[[kk]] [17:27:48.571] NAME <- NAMES[[kk]] [17:27:48.571] if (name != NAME && is.element(NAME, old_names)) [17:27:48.571] next [17:27:48.571] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:48.571] } [17:27:48.571] if (length(args) > 0) [17:27:48.571] base::do.call(base::Sys.setenv, args = args) [17:27:48.571] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:48.571] } [17:27:48.571] { [17:27:48.571] if (base::length(...future.futureOptionsAdded) > [17:27:48.571] 0L) { [17:27:48.571] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:48.571] base::names(opts) <- ...future.futureOptionsAdded [17:27:48.571] base::options(opts) [17:27:48.571] } [17:27:48.571] { [17:27:48.571] { [17:27:48.571] base::options(mc.cores = ...future.mc.cores.old) [17:27:48.571] NULL [17:27:48.571] } [17:27:48.571] options(future.plan = NULL) [17:27:48.571] if (is.na(NA_character_)) [17:27:48.571] Sys.unsetenv("R_FUTURE_PLAN") [17:27:48.571] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:48.571] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:48.571] .init = FALSE) [17:27:48.571] } [17:27:48.571] } [17:27:48.571] } [17:27:48.571] }) [17:27:48.571] if (TRUE) { [17:27:48.571] base::sink(type = "output", split = FALSE) [17:27:48.571] if (TRUE) { [17:27:48.571] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:48.571] } [17:27:48.571] else { [17:27:48.571] ...future.result["stdout"] <- base::list(NULL) [17:27:48.571] } [17:27:48.571] base::close(...future.stdout) [17:27:48.571] ...future.stdout <- NULL [17:27:48.571] } [17:27:48.571] ...future.result$conditions <- ...future.conditions [17:27:48.571] ...future.result$finished <- base::Sys.time() [17:27:48.571] ...future.result [17:27:48.571] } [17:27:48.576] MultisessionFuture started [17:27:48.576] - Launch lazy future ... done [17:27:48.576] run() for 'MultisessionFuture' ... done [17:27:48.591] receiveMessageFromWorker() for ClusterFuture ... [17:27:48.592] - Validating connection of MultisessionFuture [17:27:48.592] - received message: FutureResult [17:27:48.592] - Received FutureResult [17:27:48.593] - Erased future from FutureRegistry [17:27:48.593] result() for ClusterFuture ... [17:27:48.593] - result already collected: FutureResult [17:27:48.593] result() for ClusterFuture ... done [17:27:48.593] signalConditions() ... [17:27:48.593] - include = 'immediateCondition' [17:27:48.594] - exclude = [17:27:48.594] - resignal = FALSE [17:27:48.594] - Number of conditions: 1 [17:27:48.594] signalConditions() ... done [17:27:48.594] receiveMessageFromWorker() for ClusterFuture ... done [17:27:48.594] A MultisessionFuture was resolved (result was not collected) - result = FALSE, recursive = FALSE ... DONE - result = FALSE, recursive = TRUE ... [17:27:48.595] getGlobalsAndPackages() ... [17:27:48.595] Searching for globals... [17:27:48.596] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:48.596] Searching for globals ... DONE [17:27:48.597] Resolving globals: FALSE [17:27:48.597] [17:27:48.597] [17:27:48.597] getGlobalsAndPackages() ... DONE [17:27:48.598] run() for 'Future' ... [17:27:48.598] - state: 'created' [17:27:48.598] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:48.613] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:48.613] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:48.613] - Field: 'node' [17:27:48.614] - Field: 'label' [17:27:48.614] - Field: 'local' [17:27:48.614] - Field: 'owner' [17:27:48.614] - Field: 'envir' [17:27:48.614] - Field: 'workers' [17:27:48.615] - Field: 'packages' [17:27:48.615] - Field: 'gc' [17:27:48.615] - Field: 'conditions' [17:27:48.615] - Field: 'persistent' [17:27:48.615] - Field: 'expr' [17:27:48.615] - Field: 'uuid' [17:27:48.616] - Field: 'seed' [17:27:48.616] - Field: 'version' [17:27:48.616] - Field: 'result' [17:27:48.616] - Field: 'asynchronous' [17:27:48.616] - Field: 'calls' [17:27:48.616] - Field: 'globals' [17:27:48.617] - Field: 'stdout' [17:27:48.617] - Field: 'earlySignal' [17:27:48.617] - Field: 'lazy' [17:27:48.617] - Field: 'state' [17:27:48.617] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:48.617] - Launch lazy future ... [17:27:48.618] Packages needed by the future expression (n = 0): [17:27:48.618] Packages needed by future strategies (n = 0): [17:27:48.619] { [17:27:48.619] { [17:27:48.619] { [17:27:48.619] ...future.startTime <- base::Sys.time() [17:27:48.619] { [17:27:48.619] { [17:27:48.619] { [17:27:48.619] { [17:27:48.619] base::local({ [17:27:48.619] has_future <- base::requireNamespace("future", [17:27:48.619] quietly = TRUE) [17:27:48.619] if (has_future) { [17:27:48.619] ns <- base::getNamespace("future") [17:27:48.619] version <- ns[[".package"]][["version"]] [17:27:48.619] if (is.null(version)) [17:27:48.619] version <- utils::packageVersion("future") [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] version <- NULL [17:27:48.619] } [17:27:48.619] if (!has_future || version < "1.8.0") { [17:27:48.619] info <- base::c(r_version = base::gsub("R version ", [17:27:48.619] "", base::R.version$version.string), [17:27:48.619] platform = base::sprintf("%s (%s-bit)", [17:27:48.619] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:48.619] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:48.619] "release", "version")], collapse = " "), [17:27:48.619] hostname = base::Sys.info()[["nodename"]]) [17:27:48.619] info <- base::sprintf("%s: %s", base::names(info), [17:27:48.619] info) [17:27:48.619] info <- base::paste(info, collapse = "; ") [17:27:48.619] if (!has_future) { [17:27:48.619] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:48.619] info) [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:48.619] info, version) [17:27:48.619] } [17:27:48.619] base::stop(msg) [17:27:48.619] } [17:27:48.619] }) [17:27:48.619] } [17:27:48.619] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:48.619] base::options(mc.cores = 1L) [17:27:48.619] } [17:27:48.619] ...future.strategy.old <- future::plan("list") [17:27:48.619] options(future.plan = NULL) [17:27:48.619] Sys.unsetenv("R_FUTURE_PLAN") [17:27:48.619] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:48.619] } [17:27:48.619] ...future.workdir <- getwd() [17:27:48.619] } [17:27:48.619] ...future.oldOptions <- base::as.list(base::.Options) [17:27:48.619] ...future.oldEnvVars <- base::Sys.getenv() [17:27:48.619] } [17:27:48.619] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:48.619] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:48.619] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:48.619] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:48.619] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:48.619] future.stdout.windows.reencode = NULL, width = 80L) [17:27:48.619] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:48.619] base::names(...future.oldOptions)) [17:27:48.619] } [17:27:48.619] if (FALSE) { [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] if (TRUE) { [17:27:48.619] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:48.619] open = "w") [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:48.619] windows = "NUL", "/dev/null"), open = "w") [17:27:48.619] } [17:27:48.619] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:48.619] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:48.619] base::sink(type = "output", split = FALSE) [17:27:48.619] base::close(...future.stdout) [17:27:48.619] }, add = TRUE) [17:27:48.619] } [17:27:48.619] ...future.frame <- base::sys.nframe() [17:27:48.619] ...future.conditions <- base::list() [17:27:48.619] ...future.rng <- base::globalenv()$.Random.seed [17:27:48.619] if (FALSE) { [17:27:48.619] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:48.619] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:48.619] } [17:27:48.619] ...future.result <- base::tryCatch({ [17:27:48.619] base::withCallingHandlers({ [17:27:48.619] ...future.value <- base::withVisible(base::local({ [17:27:48.619] ...future.makeSendCondition <- base::local({ [17:27:48.619] sendCondition <- NULL [17:27:48.619] function(frame = 1L) { [17:27:48.619] if (is.function(sendCondition)) [17:27:48.619] return(sendCondition) [17:27:48.619] ns <- getNamespace("parallel") [17:27:48.619] if (exists("sendData", mode = "function", [17:27:48.619] envir = ns)) { [17:27:48.619] parallel_sendData <- get("sendData", mode = "function", [17:27:48.619] envir = ns) [17:27:48.619] envir <- sys.frame(frame) [17:27:48.619] master <- NULL [17:27:48.619] while (!identical(envir, .GlobalEnv) && [17:27:48.619] !identical(envir, emptyenv())) { [17:27:48.619] if (exists("master", mode = "list", envir = envir, [17:27:48.619] inherits = FALSE)) { [17:27:48.619] master <- get("master", mode = "list", [17:27:48.619] envir = envir, inherits = FALSE) [17:27:48.619] if (inherits(master, c("SOCKnode", [17:27:48.619] "SOCK0node"))) { [17:27:48.619] sendCondition <<- function(cond) { [17:27:48.619] data <- list(type = "VALUE", value = cond, [17:27:48.619] success = TRUE) [17:27:48.619] parallel_sendData(master, data) [17:27:48.619] } [17:27:48.619] return(sendCondition) [17:27:48.619] } [17:27:48.619] } [17:27:48.619] frame <- frame + 1L [17:27:48.619] envir <- sys.frame(frame) [17:27:48.619] } [17:27:48.619] } [17:27:48.619] sendCondition <<- function(cond) NULL [17:27:48.619] } [17:27:48.619] }) [17:27:48.619] withCallingHandlers({ [17:27:48.619] { [17:27:48.619] Sys.sleep(0.5) [17:27:48.619] list(a = 1, b = 42L) [17:27:48.619] } [17:27:48.619] }, immediateCondition = function(cond) { [17:27:48.619] sendCondition <- ...future.makeSendCondition() [17:27:48.619] sendCondition(cond) [17:27:48.619] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.619] { [17:27:48.619] inherits <- base::inherits [17:27:48.619] invokeRestart <- base::invokeRestart [17:27:48.619] is.null <- base::is.null [17:27:48.619] muffled <- FALSE [17:27:48.619] if (inherits(cond, "message")) { [17:27:48.619] muffled <- grepl(pattern, "muffleMessage") [17:27:48.619] if (muffled) [17:27:48.619] invokeRestart("muffleMessage") [17:27:48.619] } [17:27:48.619] else if (inherits(cond, "warning")) { [17:27:48.619] muffled <- grepl(pattern, "muffleWarning") [17:27:48.619] if (muffled) [17:27:48.619] invokeRestart("muffleWarning") [17:27:48.619] } [17:27:48.619] else if (inherits(cond, "condition")) { [17:27:48.619] if (!is.null(pattern)) { [17:27:48.619] computeRestarts <- base::computeRestarts [17:27:48.619] grepl <- base::grepl [17:27:48.619] restarts <- computeRestarts(cond) [17:27:48.619] for (restart in restarts) { [17:27:48.619] name <- restart$name [17:27:48.619] if (is.null(name)) [17:27:48.619] next [17:27:48.619] if (!grepl(pattern, name)) [17:27:48.619] next [17:27:48.619] invokeRestart(restart) [17:27:48.619] muffled <- TRUE [17:27:48.619] break [17:27:48.619] } [17:27:48.619] } [17:27:48.619] } [17:27:48.619] invisible(muffled) [17:27:48.619] } [17:27:48.619] muffleCondition(cond) [17:27:48.619] }) [17:27:48.619] })) [17:27:48.619] future::FutureResult(value = ...future.value$value, [17:27:48.619] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:48.619] ...future.rng), globalenv = if (FALSE) [17:27:48.619] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:48.619] ...future.globalenv.names)) [17:27:48.619] else NULL, started = ...future.startTime, version = "1.8") [17:27:48.619] }, condition = base::local({ [17:27:48.619] c <- base::c [17:27:48.619] inherits <- base::inherits [17:27:48.619] invokeRestart <- base::invokeRestart [17:27:48.619] length <- base::length [17:27:48.619] list <- base::list [17:27:48.619] seq.int <- base::seq.int [17:27:48.619] signalCondition <- base::signalCondition [17:27:48.619] sys.calls <- base::sys.calls [17:27:48.619] `[[` <- base::`[[` [17:27:48.619] `+` <- base::`+` [17:27:48.619] `<<-` <- base::`<<-` [17:27:48.619] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:48.619] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:48.619] 3L)] [17:27:48.619] } [17:27:48.619] function(cond) { [17:27:48.619] is_error <- inherits(cond, "error") [17:27:48.619] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:48.619] NULL) [17:27:48.619] if (is_error) { [17:27:48.619] sessionInformation <- function() { [17:27:48.619] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:48.619] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:48.619] search = base::search(), system = base::Sys.info()) [17:27:48.619] } [17:27:48.619] ...future.conditions[[length(...future.conditions) + [17:27:48.619] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:48.619] cond$call), session = sessionInformation(), [17:27:48.619] timestamp = base::Sys.time(), signaled = 0L) [17:27:48.619] signalCondition(cond) [17:27:48.619] } [17:27:48.619] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:48.619] "immediateCondition"))) { [17:27:48.619] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:48.619] ...future.conditions[[length(...future.conditions) + [17:27:48.619] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:48.619] if (TRUE && !signal) { [17:27:48.619] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.619] { [17:27:48.619] inherits <- base::inherits [17:27:48.619] invokeRestart <- base::invokeRestart [17:27:48.619] is.null <- base::is.null [17:27:48.619] muffled <- FALSE [17:27:48.619] if (inherits(cond, "message")) { [17:27:48.619] muffled <- grepl(pattern, "muffleMessage") [17:27:48.619] if (muffled) [17:27:48.619] invokeRestart("muffleMessage") [17:27:48.619] } [17:27:48.619] else if (inherits(cond, "warning")) { [17:27:48.619] muffled <- grepl(pattern, "muffleWarning") [17:27:48.619] if (muffled) [17:27:48.619] invokeRestart("muffleWarning") [17:27:48.619] } [17:27:48.619] else if (inherits(cond, "condition")) { [17:27:48.619] if (!is.null(pattern)) { [17:27:48.619] computeRestarts <- base::computeRestarts [17:27:48.619] grepl <- base::grepl [17:27:48.619] restarts <- computeRestarts(cond) [17:27:48.619] for (restart in restarts) { [17:27:48.619] name <- restart$name [17:27:48.619] if (is.null(name)) [17:27:48.619] next [17:27:48.619] if (!grepl(pattern, name)) [17:27:48.619] next [17:27:48.619] invokeRestart(restart) [17:27:48.619] muffled <- TRUE [17:27:48.619] break [17:27:48.619] } [17:27:48.619] } [17:27:48.619] } [17:27:48.619] invisible(muffled) [17:27:48.619] } [17:27:48.619] muffleCondition(cond, pattern = "^muffle") [17:27:48.619] } [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] if (TRUE) { [17:27:48.619] muffleCondition <- function (cond, pattern = "^muffle") [17:27:48.619] { [17:27:48.619] inherits <- base::inherits [17:27:48.619] invokeRestart <- base::invokeRestart [17:27:48.619] is.null <- base::is.null [17:27:48.619] muffled <- FALSE [17:27:48.619] if (inherits(cond, "message")) { [17:27:48.619] muffled <- grepl(pattern, "muffleMessage") [17:27:48.619] if (muffled) [17:27:48.619] invokeRestart("muffleMessage") [17:27:48.619] } [17:27:48.619] else if (inherits(cond, "warning")) { [17:27:48.619] muffled <- grepl(pattern, "muffleWarning") [17:27:48.619] if (muffled) [17:27:48.619] invokeRestart("muffleWarning") [17:27:48.619] } [17:27:48.619] else if (inherits(cond, "condition")) { [17:27:48.619] if (!is.null(pattern)) { [17:27:48.619] computeRestarts <- base::computeRestarts [17:27:48.619] grepl <- base::grepl [17:27:48.619] restarts <- computeRestarts(cond) [17:27:48.619] for (restart in restarts) { [17:27:48.619] name <- restart$name [17:27:48.619] if (is.null(name)) [17:27:48.619] next [17:27:48.619] if (!grepl(pattern, name)) [17:27:48.619] next [17:27:48.619] invokeRestart(restart) [17:27:48.619] muffled <- TRUE [17:27:48.619] break [17:27:48.619] } [17:27:48.619] } [17:27:48.619] } [17:27:48.619] invisible(muffled) [17:27:48.619] } [17:27:48.619] muffleCondition(cond, pattern = "^muffle") [17:27:48.619] } [17:27:48.619] } [17:27:48.619] } [17:27:48.619] })) [17:27:48.619] }, error = function(ex) { [17:27:48.619] base::structure(base::list(value = NULL, visible = NULL, [17:27:48.619] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:48.619] ...future.rng), started = ...future.startTime, [17:27:48.619] finished = Sys.time(), session_uuid = NA_character_, [17:27:48.619] version = "1.8"), class = "FutureResult") [17:27:48.619] }, finally = { [17:27:48.619] if (!identical(...future.workdir, getwd())) [17:27:48.619] setwd(...future.workdir) [17:27:48.619] { [17:27:48.619] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:48.619] ...future.oldOptions$nwarnings <- NULL [17:27:48.619] } [17:27:48.619] base::options(...future.oldOptions) [17:27:48.619] if (.Platform$OS.type == "windows") { [17:27:48.619] old_names <- names(...future.oldEnvVars) [17:27:48.619] envs <- base::Sys.getenv() [17:27:48.619] names <- names(envs) [17:27:48.619] common <- intersect(names, old_names) [17:27:48.619] added <- setdiff(names, old_names) [17:27:48.619] removed <- setdiff(old_names, names) [17:27:48.619] changed <- common[...future.oldEnvVars[common] != [17:27:48.619] envs[common]] [17:27:48.619] NAMES <- toupper(changed) [17:27:48.619] args <- list() [17:27:48.619] for (kk in seq_along(NAMES)) { [17:27:48.619] name <- changed[[kk]] [17:27:48.619] NAME <- NAMES[[kk]] [17:27:48.619] if (name != NAME && is.element(NAME, old_names)) [17:27:48.619] next [17:27:48.619] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:48.619] } [17:27:48.619] NAMES <- toupper(added) [17:27:48.619] for (kk in seq_along(NAMES)) { [17:27:48.619] name <- added[[kk]] [17:27:48.619] NAME <- NAMES[[kk]] [17:27:48.619] if (name != NAME && is.element(NAME, old_names)) [17:27:48.619] next [17:27:48.619] args[[name]] <- "" [17:27:48.619] } [17:27:48.619] NAMES <- toupper(removed) [17:27:48.619] for (kk in seq_along(NAMES)) { [17:27:48.619] name <- removed[[kk]] [17:27:48.619] NAME <- NAMES[[kk]] [17:27:48.619] if (name != NAME && is.element(NAME, old_names)) [17:27:48.619] next [17:27:48.619] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:48.619] } [17:27:48.619] if (length(args) > 0) [17:27:48.619] base::do.call(base::Sys.setenv, args = args) [17:27:48.619] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:48.619] } [17:27:48.619] { [17:27:48.619] if (base::length(...future.futureOptionsAdded) > [17:27:48.619] 0L) { [17:27:48.619] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:48.619] base::names(opts) <- ...future.futureOptionsAdded [17:27:48.619] base::options(opts) [17:27:48.619] } [17:27:48.619] { [17:27:48.619] { [17:27:48.619] base::options(mc.cores = ...future.mc.cores.old) [17:27:48.619] NULL [17:27:48.619] } [17:27:48.619] options(future.plan = NULL) [17:27:48.619] if (is.na(NA_character_)) [17:27:48.619] Sys.unsetenv("R_FUTURE_PLAN") [17:27:48.619] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:48.619] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:48.619] .init = FALSE) [17:27:48.619] } [17:27:48.619] } [17:27:48.619] } [17:27:48.619] }) [17:27:48.619] if (TRUE) { [17:27:48.619] base::sink(type = "output", split = FALSE) [17:27:48.619] if (TRUE) { [17:27:48.619] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:48.619] } [17:27:48.619] else { [17:27:48.619] ...future.result["stdout"] <- base::list(NULL) [17:27:48.619] } [17:27:48.619] base::close(...future.stdout) [17:27:48.619] ...future.stdout <- NULL [17:27:48.619] } [17:27:48.619] ...future.result$conditions <- ...future.conditions [17:27:48.619] ...future.result$finished <- base::Sys.time() [17:27:48.619] ...future.result [17:27:48.619] } [17:27:48.624] MultisessionFuture started [17:27:48.624] - Launch lazy future ... done [17:27:48.624] run() for 'MultisessionFuture' ... done [17:27:49.151] receiveMessageFromWorker() for ClusterFuture ... [17:27:49.152] - Validating connection of MultisessionFuture [17:27:49.152] - received message: FutureResult [17:27:49.152] - Received FutureResult [17:27:49.152] - Erased future from FutureRegistry [17:27:49.152] result() for ClusterFuture ... [17:27:49.153] - result already collected: FutureResult [17:27:49.153] result() for ClusterFuture ... done [17:27:49.153] receiveMessageFromWorker() for ClusterFuture ... done [17:27:49.153] A MultisessionFuture was resolved (result was not collected) [17:27:49.153] getGlobalsAndPackages() ... [17:27:49.153] Searching for globals... [17:27:49.155] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:49.155] Searching for globals ... DONE [17:27:49.155] Resolving globals: FALSE [17:27:49.156] [17:27:49.156] [17:27:49.156] getGlobalsAndPackages() ... DONE [17:27:49.156] run() for 'Future' ... [17:27:49.156] - state: 'created' [17:27:49.157] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:49.171] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:49.171] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:49.171] - Field: 'node' [17:27:49.172] - Field: 'label' [17:27:49.172] - Field: 'local' [17:27:49.172] - Field: 'owner' [17:27:49.172] - Field: 'envir' [17:27:49.172] - Field: 'workers' [17:27:49.173] - Field: 'packages' [17:27:49.173] - Field: 'gc' [17:27:49.173] - Field: 'conditions' [17:27:49.173] - Field: 'persistent' [17:27:49.173] - Field: 'expr' [17:27:49.173] - Field: 'uuid' [17:27:49.174] - Field: 'seed' [17:27:49.174] - Field: 'version' [17:27:49.174] - Field: 'result' [17:27:49.174] - Field: 'asynchronous' [17:27:49.174] - Field: 'calls' [17:27:49.174] - Field: 'globals' [17:27:49.175] - Field: 'stdout' [17:27:49.175] - Field: 'earlySignal' [17:27:49.175] - Field: 'lazy' [17:27:49.175] - Field: 'state' [17:27:49.175] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:49.175] - Launch lazy future ... [17:27:49.176] Packages needed by the future expression (n = 0): [17:27:49.176] Packages needed by future strategies (n = 0): [17:27:49.177] { [17:27:49.177] { [17:27:49.177] { [17:27:49.177] ...future.startTime <- base::Sys.time() [17:27:49.177] { [17:27:49.177] { [17:27:49.177] { [17:27:49.177] { [17:27:49.177] base::local({ [17:27:49.177] has_future <- base::requireNamespace("future", [17:27:49.177] quietly = TRUE) [17:27:49.177] if (has_future) { [17:27:49.177] ns <- base::getNamespace("future") [17:27:49.177] version <- ns[[".package"]][["version"]] [17:27:49.177] if (is.null(version)) [17:27:49.177] version <- utils::packageVersion("future") [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] version <- NULL [17:27:49.177] } [17:27:49.177] if (!has_future || version < "1.8.0") { [17:27:49.177] info <- base::c(r_version = base::gsub("R version ", [17:27:49.177] "", base::R.version$version.string), [17:27:49.177] platform = base::sprintf("%s (%s-bit)", [17:27:49.177] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:49.177] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:49.177] "release", "version")], collapse = " "), [17:27:49.177] hostname = base::Sys.info()[["nodename"]]) [17:27:49.177] info <- base::sprintf("%s: %s", base::names(info), [17:27:49.177] info) [17:27:49.177] info <- base::paste(info, collapse = "; ") [17:27:49.177] if (!has_future) { [17:27:49.177] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:49.177] info) [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:49.177] info, version) [17:27:49.177] } [17:27:49.177] base::stop(msg) [17:27:49.177] } [17:27:49.177] }) [17:27:49.177] } [17:27:49.177] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:49.177] base::options(mc.cores = 1L) [17:27:49.177] } [17:27:49.177] ...future.strategy.old <- future::plan("list") [17:27:49.177] options(future.plan = NULL) [17:27:49.177] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.177] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:49.177] } [17:27:49.177] ...future.workdir <- getwd() [17:27:49.177] } [17:27:49.177] ...future.oldOptions <- base::as.list(base::.Options) [17:27:49.177] ...future.oldEnvVars <- base::Sys.getenv() [17:27:49.177] } [17:27:49.177] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:49.177] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:49.177] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:49.177] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:49.177] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:49.177] future.stdout.windows.reencode = NULL, width = 80L) [17:27:49.177] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:49.177] base::names(...future.oldOptions)) [17:27:49.177] } [17:27:49.177] if (FALSE) { [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] if (TRUE) { [17:27:49.177] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:49.177] open = "w") [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:49.177] windows = "NUL", "/dev/null"), open = "w") [17:27:49.177] } [17:27:49.177] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:49.177] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:49.177] base::sink(type = "output", split = FALSE) [17:27:49.177] base::close(...future.stdout) [17:27:49.177] }, add = TRUE) [17:27:49.177] } [17:27:49.177] ...future.frame <- base::sys.nframe() [17:27:49.177] ...future.conditions <- base::list() [17:27:49.177] ...future.rng <- base::globalenv()$.Random.seed [17:27:49.177] if (FALSE) { [17:27:49.177] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:49.177] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:49.177] } [17:27:49.177] ...future.result <- base::tryCatch({ [17:27:49.177] base::withCallingHandlers({ [17:27:49.177] ...future.value <- base::withVisible(base::local({ [17:27:49.177] ...future.makeSendCondition <- base::local({ [17:27:49.177] sendCondition <- NULL [17:27:49.177] function(frame = 1L) { [17:27:49.177] if (is.function(sendCondition)) [17:27:49.177] return(sendCondition) [17:27:49.177] ns <- getNamespace("parallel") [17:27:49.177] if (exists("sendData", mode = "function", [17:27:49.177] envir = ns)) { [17:27:49.177] parallel_sendData <- get("sendData", mode = "function", [17:27:49.177] envir = ns) [17:27:49.177] envir <- sys.frame(frame) [17:27:49.177] master <- NULL [17:27:49.177] while (!identical(envir, .GlobalEnv) && [17:27:49.177] !identical(envir, emptyenv())) { [17:27:49.177] if (exists("master", mode = "list", envir = envir, [17:27:49.177] inherits = FALSE)) { [17:27:49.177] master <- get("master", mode = "list", [17:27:49.177] envir = envir, inherits = FALSE) [17:27:49.177] if (inherits(master, c("SOCKnode", [17:27:49.177] "SOCK0node"))) { [17:27:49.177] sendCondition <<- function(cond) { [17:27:49.177] data <- list(type = "VALUE", value = cond, [17:27:49.177] success = TRUE) [17:27:49.177] parallel_sendData(master, data) [17:27:49.177] } [17:27:49.177] return(sendCondition) [17:27:49.177] } [17:27:49.177] } [17:27:49.177] frame <- frame + 1L [17:27:49.177] envir <- sys.frame(frame) [17:27:49.177] } [17:27:49.177] } [17:27:49.177] sendCondition <<- function(cond) NULL [17:27:49.177] } [17:27:49.177] }) [17:27:49.177] withCallingHandlers({ [17:27:49.177] { [17:27:49.177] Sys.sleep(0.5) [17:27:49.177] list(a = 1, b = 42L) [17:27:49.177] } [17:27:49.177] }, immediateCondition = function(cond) { [17:27:49.177] sendCondition <- ...future.makeSendCondition() [17:27:49.177] sendCondition(cond) [17:27:49.177] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.177] { [17:27:49.177] inherits <- base::inherits [17:27:49.177] invokeRestart <- base::invokeRestart [17:27:49.177] is.null <- base::is.null [17:27:49.177] muffled <- FALSE [17:27:49.177] if (inherits(cond, "message")) { [17:27:49.177] muffled <- grepl(pattern, "muffleMessage") [17:27:49.177] if (muffled) [17:27:49.177] invokeRestart("muffleMessage") [17:27:49.177] } [17:27:49.177] else if (inherits(cond, "warning")) { [17:27:49.177] muffled <- grepl(pattern, "muffleWarning") [17:27:49.177] if (muffled) [17:27:49.177] invokeRestart("muffleWarning") [17:27:49.177] } [17:27:49.177] else if (inherits(cond, "condition")) { [17:27:49.177] if (!is.null(pattern)) { [17:27:49.177] computeRestarts <- base::computeRestarts [17:27:49.177] grepl <- base::grepl [17:27:49.177] restarts <- computeRestarts(cond) [17:27:49.177] for (restart in restarts) { [17:27:49.177] name <- restart$name [17:27:49.177] if (is.null(name)) [17:27:49.177] next [17:27:49.177] if (!grepl(pattern, name)) [17:27:49.177] next [17:27:49.177] invokeRestart(restart) [17:27:49.177] muffled <- TRUE [17:27:49.177] break [17:27:49.177] } [17:27:49.177] } [17:27:49.177] } [17:27:49.177] invisible(muffled) [17:27:49.177] } [17:27:49.177] muffleCondition(cond) [17:27:49.177] }) [17:27:49.177] })) [17:27:49.177] future::FutureResult(value = ...future.value$value, [17:27:49.177] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.177] ...future.rng), globalenv = if (FALSE) [17:27:49.177] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:49.177] ...future.globalenv.names)) [17:27:49.177] else NULL, started = ...future.startTime, version = "1.8") [17:27:49.177] }, condition = base::local({ [17:27:49.177] c <- base::c [17:27:49.177] inherits <- base::inherits [17:27:49.177] invokeRestart <- base::invokeRestart [17:27:49.177] length <- base::length [17:27:49.177] list <- base::list [17:27:49.177] seq.int <- base::seq.int [17:27:49.177] signalCondition <- base::signalCondition [17:27:49.177] sys.calls <- base::sys.calls [17:27:49.177] `[[` <- base::`[[` [17:27:49.177] `+` <- base::`+` [17:27:49.177] `<<-` <- base::`<<-` [17:27:49.177] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:49.177] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:49.177] 3L)] [17:27:49.177] } [17:27:49.177] function(cond) { [17:27:49.177] is_error <- inherits(cond, "error") [17:27:49.177] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:49.177] NULL) [17:27:49.177] if (is_error) { [17:27:49.177] sessionInformation <- function() { [17:27:49.177] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:49.177] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:49.177] search = base::search(), system = base::Sys.info()) [17:27:49.177] } [17:27:49.177] ...future.conditions[[length(...future.conditions) + [17:27:49.177] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:49.177] cond$call), session = sessionInformation(), [17:27:49.177] timestamp = base::Sys.time(), signaled = 0L) [17:27:49.177] signalCondition(cond) [17:27:49.177] } [17:27:49.177] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:49.177] "immediateCondition"))) { [17:27:49.177] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:49.177] ...future.conditions[[length(...future.conditions) + [17:27:49.177] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:49.177] if (TRUE && !signal) { [17:27:49.177] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.177] { [17:27:49.177] inherits <- base::inherits [17:27:49.177] invokeRestart <- base::invokeRestart [17:27:49.177] is.null <- base::is.null [17:27:49.177] muffled <- FALSE [17:27:49.177] if (inherits(cond, "message")) { [17:27:49.177] muffled <- grepl(pattern, "muffleMessage") [17:27:49.177] if (muffled) [17:27:49.177] invokeRestart("muffleMessage") [17:27:49.177] } [17:27:49.177] else if (inherits(cond, "warning")) { [17:27:49.177] muffled <- grepl(pattern, "muffleWarning") [17:27:49.177] if (muffled) [17:27:49.177] invokeRestart("muffleWarning") [17:27:49.177] } [17:27:49.177] else if (inherits(cond, "condition")) { [17:27:49.177] if (!is.null(pattern)) { [17:27:49.177] computeRestarts <- base::computeRestarts [17:27:49.177] grepl <- base::grepl [17:27:49.177] restarts <- computeRestarts(cond) [17:27:49.177] for (restart in restarts) { [17:27:49.177] name <- restart$name [17:27:49.177] if (is.null(name)) [17:27:49.177] next [17:27:49.177] if (!grepl(pattern, name)) [17:27:49.177] next [17:27:49.177] invokeRestart(restart) [17:27:49.177] muffled <- TRUE [17:27:49.177] break [17:27:49.177] } [17:27:49.177] } [17:27:49.177] } [17:27:49.177] invisible(muffled) [17:27:49.177] } [17:27:49.177] muffleCondition(cond, pattern = "^muffle") [17:27:49.177] } [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] if (TRUE) { [17:27:49.177] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.177] { [17:27:49.177] inherits <- base::inherits [17:27:49.177] invokeRestart <- base::invokeRestart [17:27:49.177] is.null <- base::is.null [17:27:49.177] muffled <- FALSE [17:27:49.177] if (inherits(cond, "message")) { [17:27:49.177] muffled <- grepl(pattern, "muffleMessage") [17:27:49.177] if (muffled) [17:27:49.177] invokeRestart("muffleMessage") [17:27:49.177] } [17:27:49.177] else if (inherits(cond, "warning")) { [17:27:49.177] muffled <- grepl(pattern, "muffleWarning") [17:27:49.177] if (muffled) [17:27:49.177] invokeRestart("muffleWarning") [17:27:49.177] } [17:27:49.177] else if (inherits(cond, "condition")) { [17:27:49.177] if (!is.null(pattern)) { [17:27:49.177] computeRestarts <- base::computeRestarts [17:27:49.177] grepl <- base::grepl [17:27:49.177] restarts <- computeRestarts(cond) [17:27:49.177] for (restart in restarts) { [17:27:49.177] name <- restart$name [17:27:49.177] if (is.null(name)) [17:27:49.177] next [17:27:49.177] if (!grepl(pattern, name)) [17:27:49.177] next [17:27:49.177] invokeRestart(restart) [17:27:49.177] muffled <- TRUE [17:27:49.177] break [17:27:49.177] } [17:27:49.177] } [17:27:49.177] } [17:27:49.177] invisible(muffled) [17:27:49.177] } [17:27:49.177] muffleCondition(cond, pattern = "^muffle") [17:27:49.177] } [17:27:49.177] } [17:27:49.177] } [17:27:49.177] })) [17:27:49.177] }, error = function(ex) { [17:27:49.177] base::structure(base::list(value = NULL, visible = NULL, [17:27:49.177] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.177] ...future.rng), started = ...future.startTime, [17:27:49.177] finished = Sys.time(), session_uuid = NA_character_, [17:27:49.177] version = "1.8"), class = "FutureResult") [17:27:49.177] }, finally = { [17:27:49.177] if (!identical(...future.workdir, getwd())) [17:27:49.177] setwd(...future.workdir) [17:27:49.177] { [17:27:49.177] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:49.177] ...future.oldOptions$nwarnings <- NULL [17:27:49.177] } [17:27:49.177] base::options(...future.oldOptions) [17:27:49.177] if (.Platform$OS.type == "windows") { [17:27:49.177] old_names <- names(...future.oldEnvVars) [17:27:49.177] envs <- base::Sys.getenv() [17:27:49.177] names <- names(envs) [17:27:49.177] common <- intersect(names, old_names) [17:27:49.177] added <- setdiff(names, old_names) [17:27:49.177] removed <- setdiff(old_names, names) [17:27:49.177] changed <- common[...future.oldEnvVars[common] != [17:27:49.177] envs[common]] [17:27:49.177] NAMES <- toupper(changed) [17:27:49.177] args <- list() [17:27:49.177] for (kk in seq_along(NAMES)) { [17:27:49.177] name <- changed[[kk]] [17:27:49.177] NAME <- NAMES[[kk]] [17:27:49.177] if (name != NAME && is.element(NAME, old_names)) [17:27:49.177] next [17:27:49.177] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.177] } [17:27:49.177] NAMES <- toupper(added) [17:27:49.177] for (kk in seq_along(NAMES)) { [17:27:49.177] name <- added[[kk]] [17:27:49.177] NAME <- NAMES[[kk]] [17:27:49.177] if (name != NAME && is.element(NAME, old_names)) [17:27:49.177] next [17:27:49.177] args[[name]] <- "" [17:27:49.177] } [17:27:49.177] NAMES <- toupper(removed) [17:27:49.177] for (kk in seq_along(NAMES)) { [17:27:49.177] name <- removed[[kk]] [17:27:49.177] NAME <- NAMES[[kk]] [17:27:49.177] if (name != NAME && is.element(NAME, old_names)) [17:27:49.177] next [17:27:49.177] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.177] } [17:27:49.177] if (length(args) > 0) [17:27:49.177] base::do.call(base::Sys.setenv, args = args) [17:27:49.177] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:49.177] } [17:27:49.177] { [17:27:49.177] if (base::length(...future.futureOptionsAdded) > [17:27:49.177] 0L) { [17:27:49.177] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:49.177] base::names(opts) <- ...future.futureOptionsAdded [17:27:49.177] base::options(opts) [17:27:49.177] } [17:27:49.177] { [17:27:49.177] { [17:27:49.177] base::options(mc.cores = ...future.mc.cores.old) [17:27:49.177] NULL [17:27:49.177] } [17:27:49.177] options(future.plan = NULL) [17:27:49.177] if (is.na(NA_character_)) [17:27:49.177] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.177] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:49.177] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:49.177] .init = FALSE) [17:27:49.177] } [17:27:49.177] } [17:27:49.177] } [17:27:49.177] }) [17:27:49.177] if (TRUE) { [17:27:49.177] base::sink(type = "output", split = FALSE) [17:27:49.177] if (TRUE) { [17:27:49.177] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:49.177] } [17:27:49.177] else { [17:27:49.177] ...future.result["stdout"] <- base::list(NULL) [17:27:49.177] } [17:27:49.177] base::close(...future.stdout) [17:27:49.177] ...future.stdout <- NULL [17:27:49.177] } [17:27:49.177] ...future.result$conditions <- ...future.conditions [17:27:49.177] ...future.result$finished <- base::Sys.time() [17:27:49.177] ...future.result [17:27:49.177] } [17:27:49.182] MultisessionFuture started [17:27:49.182] - Launch lazy future ... done [17:27:49.182] run() for 'MultisessionFuture' ... done [17:27:49.699] receiveMessageFromWorker() for ClusterFuture ... [17:27:49.700] - Validating connection of MultisessionFuture [17:27:49.700] - received message: FutureResult [17:27:49.700] - Received FutureResult [17:27:49.700] - Erased future from FutureRegistry [17:27:49.701] result() for ClusterFuture ... [17:27:49.701] - result already collected: FutureResult [17:27:49.701] result() for ClusterFuture ... done [17:27:49.701] receiveMessageFromWorker() for ClusterFuture ... done [17:27:49.701] A MultisessionFuture was resolved (result was not collected) - w/ exception ... [17:27:49.702] getGlobalsAndPackages() ... [17:27:49.702] Searching for globals... [17:27:49.702] - globals found: [2] 'list', 'stop' [17:27:49.703] Searching for globals ... DONE [17:27:49.703] Resolving globals: FALSE [17:27:49.703] [17:27:49.703] [17:27:49.704] getGlobalsAndPackages() ... DONE [17:27:49.704] run() for 'Future' ... [17:27:49.704] - state: 'created' [17:27:49.704] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:49.718] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:49.718] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:49.718] - Field: 'node' [17:27:49.719] - Field: 'label' [17:27:49.719] - Field: 'local' [17:27:49.719] - Field: 'owner' [17:27:49.719] - Field: 'envir' [17:27:49.719] - Field: 'workers' [17:27:49.719] - Field: 'packages' [17:27:49.720] - Field: 'gc' [17:27:49.720] - Field: 'conditions' [17:27:49.720] - Field: 'persistent' [17:27:49.720] - Field: 'expr' [17:27:49.720] - Field: 'uuid' [17:27:49.720] - Field: 'seed' [17:27:49.721] - Field: 'version' [17:27:49.721] - Field: 'result' [17:27:49.721] - Field: 'asynchronous' [17:27:49.721] - Field: 'calls' [17:27:49.721] - Field: 'globals' [17:27:49.722] - Field: 'stdout' [17:27:49.722] - Field: 'earlySignal' [17:27:49.722] - Field: 'lazy' [17:27:49.722] - Field: 'state' [17:27:49.722] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:49.722] - Launch lazy future ... [17:27:49.723] Packages needed by the future expression (n = 0): [17:27:49.723] Packages needed by future strategies (n = 0): [17:27:49.723] { [17:27:49.723] { [17:27:49.723] { [17:27:49.723] ...future.startTime <- base::Sys.time() [17:27:49.723] { [17:27:49.723] { [17:27:49.723] { [17:27:49.723] { [17:27:49.723] base::local({ [17:27:49.723] has_future <- base::requireNamespace("future", [17:27:49.723] quietly = TRUE) [17:27:49.723] if (has_future) { [17:27:49.723] ns <- base::getNamespace("future") [17:27:49.723] version <- ns[[".package"]][["version"]] [17:27:49.723] if (is.null(version)) [17:27:49.723] version <- utils::packageVersion("future") [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] version <- NULL [17:27:49.723] } [17:27:49.723] if (!has_future || version < "1.8.0") { [17:27:49.723] info <- base::c(r_version = base::gsub("R version ", [17:27:49.723] "", base::R.version$version.string), [17:27:49.723] platform = base::sprintf("%s (%s-bit)", [17:27:49.723] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:49.723] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:49.723] "release", "version")], collapse = " "), [17:27:49.723] hostname = base::Sys.info()[["nodename"]]) [17:27:49.723] info <- base::sprintf("%s: %s", base::names(info), [17:27:49.723] info) [17:27:49.723] info <- base::paste(info, collapse = "; ") [17:27:49.723] if (!has_future) { [17:27:49.723] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:49.723] info) [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:49.723] info, version) [17:27:49.723] } [17:27:49.723] base::stop(msg) [17:27:49.723] } [17:27:49.723] }) [17:27:49.723] } [17:27:49.723] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:49.723] base::options(mc.cores = 1L) [17:27:49.723] } [17:27:49.723] ...future.strategy.old <- future::plan("list") [17:27:49.723] options(future.plan = NULL) [17:27:49.723] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.723] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:49.723] } [17:27:49.723] ...future.workdir <- getwd() [17:27:49.723] } [17:27:49.723] ...future.oldOptions <- base::as.list(base::.Options) [17:27:49.723] ...future.oldEnvVars <- base::Sys.getenv() [17:27:49.723] } [17:27:49.723] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:49.723] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:49.723] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:49.723] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:49.723] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:49.723] future.stdout.windows.reencode = NULL, width = 80L) [17:27:49.723] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:49.723] base::names(...future.oldOptions)) [17:27:49.723] } [17:27:49.723] if (FALSE) { [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] if (TRUE) { [17:27:49.723] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:49.723] open = "w") [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:49.723] windows = "NUL", "/dev/null"), open = "w") [17:27:49.723] } [17:27:49.723] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:49.723] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:49.723] base::sink(type = "output", split = FALSE) [17:27:49.723] base::close(...future.stdout) [17:27:49.723] }, add = TRUE) [17:27:49.723] } [17:27:49.723] ...future.frame <- base::sys.nframe() [17:27:49.723] ...future.conditions <- base::list() [17:27:49.723] ...future.rng <- base::globalenv()$.Random.seed [17:27:49.723] if (FALSE) { [17:27:49.723] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:49.723] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:49.723] } [17:27:49.723] ...future.result <- base::tryCatch({ [17:27:49.723] base::withCallingHandlers({ [17:27:49.723] ...future.value <- base::withVisible(base::local({ [17:27:49.723] ...future.makeSendCondition <- base::local({ [17:27:49.723] sendCondition <- NULL [17:27:49.723] function(frame = 1L) { [17:27:49.723] if (is.function(sendCondition)) [17:27:49.723] return(sendCondition) [17:27:49.723] ns <- getNamespace("parallel") [17:27:49.723] if (exists("sendData", mode = "function", [17:27:49.723] envir = ns)) { [17:27:49.723] parallel_sendData <- get("sendData", mode = "function", [17:27:49.723] envir = ns) [17:27:49.723] envir <- sys.frame(frame) [17:27:49.723] master <- NULL [17:27:49.723] while (!identical(envir, .GlobalEnv) && [17:27:49.723] !identical(envir, emptyenv())) { [17:27:49.723] if (exists("master", mode = "list", envir = envir, [17:27:49.723] inherits = FALSE)) { [17:27:49.723] master <- get("master", mode = "list", [17:27:49.723] envir = envir, inherits = FALSE) [17:27:49.723] if (inherits(master, c("SOCKnode", [17:27:49.723] "SOCK0node"))) { [17:27:49.723] sendCondition <<- function(cond) { [17:27:49.723] data <- list(type = "VALUE", value = cond, [17:27:49.723] success = TRUE) [17:27:49.723] parallel_sendData(master, data) [17:27:49.723] } [17:27:49.723] return(sendCondition) [17:27:49.723] } [17:27:49.723] } [17:27:49.723] frame <- frame + 1L [17:27:49.723] envir <- sys.frame(frame) [17:27:49.723] } [17:27:49.723] } [17:27:49.723] sendCondition <<- function(cond) NULL [17:27:49.723] } [17:27:49.723] }) [17:27:49.723] withCallingHandlers({ [17:27:49.723] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:49.723] }, immediateCondition = function(cond) { [17:27:49.723] sendCondition <- ...future.makeSendCondition() [17:27:49.723] sendCondition(cond) [17:27:49.723] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.723] { [17:27:49.723] inherits <- base::inherits [17:27:49.723] invokeRestart <- base::invokeRestart [17:27:49.723] is.null <- base::is.null [17:27:49.723] muffled <- FALSE [17:27:49.723] if (inherits(cond, "message")) { [17:27:49.723] muffled <- grepl(pattern, "muffleMessage") [17:27:49.723] if (muffled) [17:27:49.723] invokeRestart("muffleMessage") [17:27:49.723] } [17:27:49.723] else if (inherits(cond, "warning")) { [17:27:49.723] muffled <- grepl(pattern, "muffleWarning") [17:27:49.723] if (muffled) [17:27:49.723] invokeRestart("muffleWarning") [17:27:49.723] } [17:27:49.723] else if (inherits(cond, "condition")) { [17:27:49.723] if (!is.null(pattern)) { [17:27:49.723] computeRestarts <- base::computeRestarts [17:27:49.723] grepl <- base::grepl [17:27:49.723] restarts <- computeRestarts(cond) [17:27:49.723] for (restart in restarts) { [17:27:49.723] name <- restart$name [17:27:49.723] if (is.null(name)) [17:27:49.723] next [17:27:49.723] if (!grepl(pattern, name)) [17:27:49.723] next [17:27:49.723] invokeRestart(restart) [17:27:49.723] muffled <- TRUE [17:27:49.723] break [17:27:49.723] } [17:27:49.723] } [17:27:49.723] } [17:27:49.723] invisible(muffled) [17:27:49.723] } [17:27:49.723] muffleCondition(cond) [17:27:49.723] }) [17:27:49.723] })) [17:27:49.723] future::FutureResult(value = ...future.value$value, [17:27:49.723] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.723] ...future.rng), globalenv = if (FALSE) [17:27:49.723] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:49.723] ...future.globalenv.names)) [17:27:49.723] else NULL, started = ...future.startTime, version = "1.8") [17:27:49.723] }, condition = base::local({ [17:27:49.723] c <- base::c [17:27:49.723] inherits <- base::inherits [17:27:49.723] invokeRestart <- base::invokeRestart [17:27:49.723] length <- base::length [17:27:49.723] list <- base::list [17:27:49.723] seq.int <- base::seq.int [17:27:49.723] signalCondition <- base::signalCondition [17:27:49.723] sys.calls <- base::sys.calls [17:27:49.723] `[[` <- base::`[[` [17:27:49.723] `+` <- base::`+` [17:27:49.723] `<<-` <- base::`<<-` [17:27:49.723] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:49.723] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:49.723] 3L)] [17:27:49.723] } [17:27:49.723] function(cond) { [17:27:49.723] is_error <- inherits(cond, "error") [17:27:49.723] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:49.723] NULL) [17:27:49.723] if (is_error) { [17:27:49.723] sessionInformation <- function() { [17:27:49.723] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:49.723] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:49.723] search = base::search(), system = base::Sys.info()) [17:27:49.723] } [17:27:49.723] ...future.conditions[[length(...future.conditions) + [17:27:49.723] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:49.723] cond$call), session = sessionInformation(), [17:27:49.723] timestamp = base::Sys.time(), signaled = 0L) [17:27:49.723] signalCondition(cond) [17:27:49.723] } [17:27:49.723] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:49.723] "immediateCondition"))) { [17:27:49.723] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:49.723] ...future.conditions[[length(...future.conditions) + [17:27:49.723] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:49.723] if (TRUE && !signal) { [17:27:49.723] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.723] { [17:27:49.723] inherits <- base::inherits [17:27:49.723] invokeRestart <- base::invokeRestart [17:27:49.723] is.null <- base::is.null [17:27:49.723] muffled <- FALSE [17:27:49.723] if (inherits(cond, "message")) { [17:27:49.723] muffled <- grepl(pattern, "muffleMessage") [17:27:49.723] if (muffled) [17:27:49.723] invokeRestart("muffleMessage") [17:27:49.723] } [17:27:49.723] else if (inherits(cond, "warning")) { [17:27:49.723] muffled <- grepl(pattern, "muffleWarning") [17:27:49.723] if (muffled) [17:27:49.723] invokeRestart("muffleWarning") [17:27:49.723] } [17:27:49.723] else if (inherits(cond, "condition")) { [17:27:49.723] if (!is.null(pattern)) { [17:27:49.723] computeRestarts <- base::computeRestarts [17:27:49.723] grepl <- base::grepl [17:27:49.723] restarts <- computeRestarts(cond) [17:27:49.723] for (restart in restarts) { [17:27:49.723] name <- restart$name [17:27:49.723] if (is.null(name)) [17:27:49.723] next [17:27:49.723] if (!grepl(pattern, name)) [17:27:49.723] next [17:27:49.723] invokeRestart(restart) [17:27:49.723] muffled <- TRUE [17:27:49.723] break [17:27:49.723] } [17:27:49.723] } [17:27:49.723] } [17:27:49.723] invisible(muffled) [17:27:49.723] } [17:27:49.723] muffleCondition(cond, pattern = "^muffle") [17:27:49.723] } [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] if (TRUE) { [17:27:49.723] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.723] { [17:27:49.723] inherits <- base::inherits [17:27:49.723] invokeRestart <- base::invokeRestart [17:27:49.723] is.null <- base::is.null [17:27:49.723] muffled <- FALSE [17:27:49.723] if (inherits(cond, "message")) { [17:27:49.723] muffled <- grepl(pattern, "muffleMessage") [17:27:49.723] if (muffled) [17:27:49.723] invokeRestart("muffleMessage") [17:27:49.723] } [17:27:49.723] else if (inherits(cond, "warning")) { [17:27:49.723] muffled <- grepl(pattern, "muffleWarning") [17:27:49.723] if (muffled) [17:27:49.723] invokeRestart("muffleWarning") [17:27:49.723] } [17:27:49.723] else if (inherits(cond, "condition")) { [17:27:49.723] if (!is.null(pattern)) { [17:27:49.723] computeRestarts <- base::computeRestarts [17:27:49.723] grepl <- base::grepl [17:27:49.723] restarts <- computeRestarts(cond) [17:27:49.723] for (restart in restarts) { [17:27:49.723] name <- restart$name [17:27:49.723] if (is.null(name)) [17:27:49.723] next [17:27:49.723] if (!grepl(pattern, name)) [17:27:49.723] next [17:27:49.723] invokeRestart(restart) [17:27:49.723] muffled <- TRUE [17:27:49.723] break [17:27:49.723] } [17:27:49.723] } [17:27:49.723] } [17:27:49.723] invisible(muffled) [17:27:49.723] } [17:27:49.723] muffleCondition(cond, pattern = "^muffle") [17:27:49.723] } [17:27:49.723] } [17:27:49.723] } [17:27:49.723] })) [17:27:49.723] }, error = function(ex) { [17:27:49.723] base::structure(base::list(value = NULL, visible = NULL, [17:27:49.723] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.723] ...future.rng), started = ...future.startTime, [17:27:49.723] finished = Sys.time(), session_uuid = NA_character_, [17:27:49.723] version = "1.8"), class = "FutureResult") [17:27:49.723] }, finally = { [17:27:49.723] if (!identical(...future.workdir, getwd())) [17:27:49.723] setwd(...future.workdir) [17:27:49.723] { [17:27:49.723] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:49.723] ...future.oldOptions$nwarnings <- NULL [17:27:49.723] } [17:27:49.723] base::options(...future.oldOptions) [17:27:49.723] if (.Platform$OS.type == "windows") { [17:27:49.723] old_names <- names(...future.oldEnvVars) [17:27:49.723] envs <- base::Sys.getenv() [17:27:49.723] names <- names(envs) [17:27:49.723] common <- intersect(names, old_names) [17:27:49.723] added <- setdiff(names, old_names) [17:27:49.723] removed <- setdiff(old_names, names) [17:27:49.723] changed <- common[...future.oldEnvVars[common] != [17:27:49.723] envs[common]] [17:27:49.723] NAMES <- toupper(changed) [17:27:49.723] args <- list() [17:27:49.723] for (kk in seq_along(NAMES)) { [17:27:49.723] name <- changed[[kk]] [17:27:49.723] NAME <- NAMES[[kk]] [17:27:49.723] if (name != NAME && is.element(NAME, old_names)) [17:27:49.723] next [17:27:49.723] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.723] } [17:27:49.723] NAMES <- toupper(added) [17:27:49.723] for (kk in seq_along(NAMES)) { [17:27:49.723] name <- added[[kk]] [17:27:49.723] NAME <- NAMES[[kk]] [17:27:49.723] if (name != NAME && is.element(NAME, old_names)) [17:27:49.723] next [17:27:49.723] args[[name]] <- "" [17:27:49.723] } [17:27:49.723] NAMES <- toupper(removed) [17:27:49.723] for (kk in seq_along(NAMES)) { [17:27:49.723] name <- removed[[kk]] [17:27:49.723] NAME <- NAMES[[kk]] [17:27:49.723] if (name != NAME && is.element(NAME, old_names)) [17:27:49.723] next [17:27:49.723] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.723] } [17:27:49.723] if (length(args) > 0) [17:27:49.723] base::do.call(base::Sys.setenv, args = args) [17:27:49.723] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:49.723] } [17:27:49.723] { [17:27:49.723] if (base::length(...future.futureOptionsAdded) > [17:27:49.723] 0L) { [17:27:49.723] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:49.723] base::names(opts) <- ...future.futureOptionsAdded [17:27:49.723] base::options(opts) [17:27:49.723] } [17:27:49.723] { [17:27:49.723] { [17:27:49.723] base::options(mc.cores = ...future.mc.cores.old) [17:27:49.723] NULL [17:27:49.723] } [17:27:49.723] options(future.plan = NULL) [17:27:49.723] if (is.na(NA_character_)) [17:27:49.723] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.723] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:49.723] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:49.723] .init = FALSE) [17:27:49.723] } [17:27:49.723] } [17:27:49.723] } [17:27:49.723] }) [17:27:49.723] if (TRUE) { [17:27:49.723] base::sink(type = "output", split = FALSE) [17:27:49.723] if (TRUE) { [17:27:49.723] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:49.723] } [17:27:49.723] else { [17:27:49.723] ...future.result["stdout"] <- base::list(NULL) [17:27:49.723] } [17:27:49.723] base::close(...future.stdout) [17:27:49.723] ...future.stdout <- NULL [17:27:49.723] } [17:27:49.723] ...future.result$conditions <- ...future.conditions [17:27:49.723] ...future.result$finished <- base::Sys.time() [17:27:49.723] ...future.result [17:27:49.723] } [17:27:49.729] MultisessionFuture started [17:27:49.729] - Launch lazy future ... done [17:27:49.729] run() for 'MultisessionFuture' ... done [17:27:49.743] receiveMessageFromWorker() for ClusterFuture ... [17:27:49.743] - Validating connection of MultisessionFuture [17:27:49.744] - received message: FutureResult [17:27:49.744] - Received FutureResult [17:27:49.744] - Erased future from FutureRegistry [17:27:49.744] result() for ClusterFuture ... [17:27:49.744] - result already collected: FutureResult [17:27:49.745] result() for ClusterFuture ... done [17:27:49.745] signalConditions() ... [17:27:49.745] - include = 'immediateCondition' [17:27:49.745] - exclude = [17:27:49.745] - resignal = FALSE [17:27:49.745] - Number of conditions: 1 [17:27:49.746] signalConditions() ... done [17:27:49.746] receiveMessageFromWorker() for ClusterFuture ... done [17:27:49.746] A MultisessionFuture was resolved (result was not collected) [17:27:49.746] getGlobalsAndPackages() ... [17:27:49.746] Searching for globals... [17:27:49.747] - globals found: [2] 'list', 'stop' [17:27:49.747] Searching for globals ... DONE [17:27:49.747] Resolving globals: FALSE [17:27:49.748] [17:27:49.748] [17:27:49.748] getGlobalsAndPackages() ... DONE [17:27:49.748] run() for 'Future' ... [17:27:49.749] - state: 'created' [17:27:49.749] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:49.762] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:49.763] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:49.763] - Field: 'node' [17:27:49.763] - Field: 'label' [17:27:49.763] - Field: 'local' [17:27:49.763] - Field: 'owner' [17:27:49.764] - Field: 'envir' [17:27:49.764] - Field: 'workers' [17:27:49.764] - Field: 'packages' [17:27:49.764] - Field: 'gc' [17:27:49.764] - Field: 'conditions' [17:27:49.764] - Field: 'persistent' [17:27:49.765] - Field: 'expr' [17:27:49.765] - Field: 'uuid' [17:27:49.765] - Field: 'seed' [17:27:49.765] - Field: 'version' [17:27:49.765] - Field: 'result' [17:27:49.765] - Field: 'asynchronous' [17:27:49.766] - Field: 'calls' [17:27:49.766] - Field: 'globals' [17:27:49.766] - Field: 'stdout' [17:27:49.766] - Field: 'earlySignal' [17:27:49.766] - Field: 'lazy' [17:27:49.767] - Field: 'state' [17:27:49.767] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:49.767] - Launch lazy future ... [17:27:49.767] Packages needed by the future expression (n = 0): [17:27:49.767] Packages needed by future strategies (n = 0): [17:27:49.768] { [17:27:49.768] { [17:27:49.768] { [17:27:49.768] ...future.startTime <- base::Sys.time() [17:27:49.768] { [17:27:49.768] { [17:27:49.768] { [17:27:49.768] { [17:27:49.768] base::local({ [17:27:49.768] has_future <- base::requireNamespace("future", [17:27:49.768] quietly = TRUE) [17:27:49.768] if (has_future) { [17:27:49.768] ns <- base::getNamespace("future") [17:27:49.768] version <- ns[[".package"]][["version"]] [17:27:49.768] if (is.null(version)) [17:27:49.768] version <- utils::packageVersion("future") [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] version <- NULL [17:27:49.768] } [17:27:49.768] if (!has_future || version < "1.8.0") { [17:27:49.768] info <- base::c(r_version = base::gsub("R version ", [17:27:49.768] "", base::R.version$version.string), [17:27:49.768] platform = base::sprintf("%s (%s-bit)", [17:27:49.768] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:49.768] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:49.768] "release", "version")], collapse = " "), [17:27:49.768] hostname = base::Sys.info()[["nodename"]]) [17:27:49.768] info <- base::sprintf("%s: %s", base::names(info), [17:27:49.768] info) [17:27:49.768] info <- base::paste(info, collapse = "; ") [17:27:49.768] if (!has_future) { [17:27:49.768] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:49.768] info) [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:49.768] info, version) [17:27:49.768] } [17:27:49.768] base::stop(msg) [17:27:49.768] } [17:27:49.768] }) [17:27:49.768] } [17:27:49.768] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:49.768] base::options(mc.cores = 1L) [17:27:49.768] } [17:27:49.768] ...future.strategy.old <- future::plan("list") [17:27:49.768] options(future.plan = NULL) [17:27:49.768] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.768] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:49.768] } [17:27:49.768] ...future.workdir <- getwd() [17:27:49.768] } [17:27:49.768] ...future.oldOptions <- base::as.list(base::.Options) [17:27:49.768] ...future.oldEnvVars <- base::Sys.getenv() [17:27:49.768] } [17:27:49.768] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:49.768] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:49.768] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:49.768] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:49.768] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:49.768] future.stdout.windows.reencode = NULL, width = 80L) [17:27:49.768] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:49.768] base::names(...future.oldOptions)) [17:27:49.768] } [17:27:49.768] if (FALSE) { [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] if (TRUE) { [17:27:49.768] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:49.768] open = "w") [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:49.768] windows = "NUL", "/dev/null"), open = "w") [17:27:49.768] } [17:27:49.768] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:49.768] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:49.768] base::sink(type = "output", split = FALSE) [17:27:49.768] base::close(...future.stdout) [17:27:49.768] }, add = TRUE) [17:27:49.768] } [17:27:49.768] ...future.frame <- base::sys.nframe() [17:27:49.768] ...future.conditions <- base::list() [17:27:49.768] ...future.rng <- base::globalenv()$.Random.seed [17:27:49.768] if (FALSE) { [17:27:49.768] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:49.768] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:49.768] } [17:27:49.768] ...future.result <- base::tryCatch({ [17:27:49.768] base::withCallingHandlers({ [17:27:49.768] ...future.value <- base::withVisible(base::local({ [17:27:49.768] ...future.makeSendCondition <- base::local({ [17:27:49.768] sendCondition <- NULL [17:27:49.768] function(frame = 1L) { [17:27:49.768] if (is.function(sendCondition)) [17:27:49.768] return(sendCondition) [17:27:49.768] ns <- getNamespace("parallel") [17:27:49.768] if (exists("sendData", mode = "function", [17:27:49.768] envir = ns)) { [17:27:49.768] parallel_sendData <- get("sendData", mode = "function", [17:27:49.768] envir = ns) [17:27:49.768] envir <- sys.frame(frame) [17:27:49.768] master <- NULL [17:27:49.768] while (!identical(envir, .GlobalEnv) && [17:27:49.768] !identical(envir, emptyenv())) { [17:27:49.768] if (exists("master", mode = "list", envir = envir, [17:27:49.768] inherits = FALSE)) { [17:27:49.768] master <- get("master", mode = "list", [17:27:49.768] envir = envir, inherits = FALSE) [17:27:49.768] if (inherits(master, c("SOCKnode", [17:27:49.768] "SOCK0node"))) { [17:27:49.768] sendCondition <<- function(cond) { [17:27:49.768] data <- list(type = "VALUE", value = cond, [17:27:49.768] success = TRUE) [17:27:49.768] parallel_sendData(master, data) [17:27:49.768] } [17:27:49.768] return(sendCondition) [17:27:49.768] } [17:27:49.768] } [17:27:49.768] frame <- frame + 1L [17:27:49.768] envir <- sys.frame(frame) [17:27:49.768] } [17:27:49.768] } [17:27:49.768] sendCondition <<- function(cond) NULL [17:27:49.768] } [17:27:49.768] }) [17:27:49.768] withCallingHandlers({ [17:27:49.768] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:49.768] }, immediateCondition = function(cond) { [17:27:49.768] sendCondition <- ...future.makeSendCondition() [17:27:49.768] sendCondition(cond) [17:27:49.768] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.768] { [17:27:49.768] inherits <- base::inherits [17:27:49.768] invokeRestart <- base::invokeRestart [17:27:49.768] is.null <- base::is.null [17:27:49.768] muffled <- FALSE [17:27:49.768] if (inherits(cond, "message")) { [17:27:49.768] muffled <- grepl(pattern, "muffleMessage") [17:27:49.768] if (muffled) [17:27:49.768] invokeRestart("muffleMessage") [17:27:49.768] } [17:27:49.768] else if (inherits(cond, "warning")) { [17:27:49.768] muffled <- grepl(pattern, "muffleWarning") [17:27:49.768] if (muffled) [17:27:49.768] invokeRestart("muffleWarning") [17:27:49.768] } [17:27:49.768] else if (inherits(cond, "condition")) { [17:27:49.768] if (!is.null(pattern)) { [17:27:49.768] computeRestarts <- base::computeRestarts [17:27:49.768] grepl <- base::grepl [17:27:49.768] restarts <- computeRestarts(cond) [17:27:49.768] for (restart in restarts) { [17:27:49.768] name <- restart$name [17:27:49.768] if (is.null(name)) [17:27:49.768] next [17:27:49.768] if (!grepl(pattern, name)) [17:27:49.768] next [17:27:49.768] invokeRestart(restart) [17:27:49.768] muffled <- TRUE [17:27:49.768] break [17:27:49.768] } [17:27:49.768] } [17:27:49.768] } [17:27:49.768] invisible(muffled) [17:27:49.768] } [17:27:49.768] muffleCondition(cond) [17:27:49.768] }) [17:27:49.768] })) [17:27:49.768] future::FutureResult(value = ...future.value$value, [17:27:49.768] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.768] ...future.rng), globalenv = if (FALSE) [17:27:49.768] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:49.768] ...future.globalenv.names)) [17:27:49.768] else NULL, started = ...future.startTime, version = "1.8") [17:27:49.768] }, condition = base::local({ [17:27:49.768] c <- base::c [17:27:49.768] inherits <- base::inherits [17:27:49.768] invokeRestart <- base::invokeRestart [17:27:49.768] length <- base::length [17:27:49.768] list <- base::list [17:27:49.768] seq.int <- base::seq.int [17:27:49.768] signalCondition <- base::signalCondition [17:27:49.768] sys.calls <- base::sys.calls [17:27:49.768] `[[` <- base::`[[` [17:27:49.768] `+` <- base::`+` [17:27:49.768] `<<-` <- base::`<<-` [17:27:49.768] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:49.768] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:49.768] 3L)] [17:27:49.768] } [17:27:49.768] function(cond) { [17:27:49.768] is_error <- inherits(cond, "error") [17:27:49.768] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:49.768] NULL) [17:27:49.768] if (is_error) { [17:27:49.768] sessionInformation <- function() { [17:27:49.768] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:49.768] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:49.768] search = base::search(), system = base::Sys.info()) [17:27:49.768] } [17:27:49.768] ...future.conditions[[length(...future.conditions) + [17:27:49.768] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:49.768] cond$call), session = sessionInformation(), [17:27:49.768] timestamp = base::Sys.time(), signaled = 0L) [17:27:49.768] signalCondition(cond) [17:27:49.768] } [17:27:49.768] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:49.768] "immediateCondition"))) { [17:27:49.768] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:49.768] ...future.conditions[[length(...future.conditions) + [17:27:49.768] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:49.768] if (TRUE && !signal) { [17:27:49.768] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.768] { [17:27:49.768] inherits <- base::inherits [17:27:49.768] invokeRestart <- base::invokeRestart [17:27:49.768] is.null <- base::is.null [17:27:49.768] muffled <- FALSE [17:27:49.768] if (inherits(cond, "message")) { [17:27:49.768] muffled <- grepl(pattern, "muffleMessage") [17:27:49.768] if (muffled) [17:27:49.768] invokeRestart("muffleMessage") [17:27:49.768] } [17:27:49.768] else if (inherits(cond, "warning")) { [17:27:49.768] muffled <- grepl(pattern, "muffleWarning") [17:27:49.768] if (muffled) [17:27:49.768] invokeRestart("muffleWarning") [17:27:49.768] } [17:27:49.768] else if (inherits(cond, "condition")) { [17:27:49.768] if (!is.null(pattern)) { [17:27:49.768] computeRestarts <- base::computeRestarts [17:27:49.768] grepl <- base::grepl [17:27:49.768] restarts <- computeRestarts(cond) [17:27:49.768] for (restart in restarts) { [17:27:49.768] name <- restart$name [17:27:49.768] if (is.null(name)) [17:27:49.768] next [17:27:49.768] if (!grepl(pattern, name)) [17:27:49.768] next [17:27:49.768] invokeRestart(restart) [17:27:49.768] muffled <- TRUE [17:27:49.768] break [17:27:49.768] } [17:27:49.768] } [17:27:49.768] } [17:27:49.768] invisible(muffled) [17:27:49.768] } [17:27:49.768] muffleCondition(cond, pattern = "^muffle") [17:27:49.768] } [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] if (TRUE) { [17:27:49.768] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.768] { [17:27:49.768] inherits <- base::inherits [17:27:49.768] invokeRestart <- base::invokeRestart [17:27:49.768] is.null <- base::is.null [17:27:49.768] muffled <- FALSE [17:27:49.768] if (inherits(cond, "message")) { [17:27:49.768] muffled <- grepl(pattern, "muffleMessage") [17:27:49.768] if (muffled) [17:27:49.768] invokeRestart("muffleMessage") [17:27:49.768] } [17:27:49.768] else if (inherits(cond, "warning")) { [17:27:49.768] muffled <- grepl(pattern, "muffleWarning") [17:27:49.768] if (muffled) [17:27:49.768] invokeRestart("muffleWarning") [17:27:49.768] } [17:27:49.768] else if (inherits(cond, "condition")) { [17:27:49.768] if (!is.null(pattern)) { [17:27:49.768] computeRestarts <- base::computeRestarts [17:27:49.768] grepl <- base::grepl [17:27:49.768] restarts <- computeRestarts(cond) [17:27:49.768] for (restart in restarts) { [17:27:49.768] name <- restart$name [17:27:49.768] if (is.null(name)) [17:27:49.768] next [17:27:49.768] if (!grepl(pattern, name)) [17:27:49.768] next [17:27:49.768] invokeRestart(restart) [17:27:49.768] muffled <- TRUE [17:27:49.768] break [17:27:49.768] } [17:27:49.768] } [17:27:49.768] } [17:27:49.768] invisible(muffled) [17:27:49.768] } [17:27:49.768] muffleCondition(cond, pattern = "^muffle") [17:27:49.768] } [17:27:49.768] } [17:27:49.768] } [17:27:49.768] })) [17:27:49.768] }, error = function(ex) { [17:27:49.768] base::structure(base::list(value = NULL, visible = NULL, [17:27:49.768] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.768] ...future.rng), started = ...future.startTime, [17:27:49.768] finished = Sys.time(), session_uuid = NA_character_, [17:27:49.768] version = "1.8"), class = "FutureResult") [17:27:49.768] }, finally = { [17:27:49.768] if (!identical(...future.workdir, getwd())) [17:27:49.768] setwd(...future.workdir) [17:27:49.768] { [17:27:49.768] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:49.768] ...future.oldOptions$nwarnings <- NULL [17:27:49.768] } [17:27:49.768] base::options(...future.oldOptions) [17:27:49.768] if (.Platform$OS.type == "windows") { [17:27:49.768] old_names <- names(...future.oldEnvVars) [17:27:49.768] envs <- base::Sys.getenv() [17:27:49.768] names <- names(envs) [17:27:49.768] common <- intersect(names, old_names) [17:27:49.768] added <- setdiff(names, old_names) [17:27:49.768] removed <- setdiff(old_names, names) [17:27:49.768] changed <- common[...future.oldEnvVars[common] != [17:27:49.768] envs[common]] [17:27:49.768] NAMES <- toupper(changed) [17:27:49.768] args <- list() [17:27:49.768] for (kk in seq_along(NAMES)) { [17:27:49.768] name <- changed[[kk]] [17:27:49.768] NAME <- NAMES[[kk]] [17:27:49.768] if (name != NAME && is.element(NAME, old_names)) [17:27:49.768] next [17:27:49.768] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.768] } [17:27:49.768] NAMES <- toupper(added) [17:27:49.768] for (kk in seq_along(NAMES)) { [17:27:49.768] name <- added[[kk]] [17:27:49.768] NAME <- NAMES[[kk]] [17:27:49.768] if (name != NAME && is.element(NAME, old_names)) [17:27:49.768] next [17:27:49.768] args[[name]] <- "" [17:27:49.768] } [17:27:49.768] NAMES <- toupper(removed) [17:27:49.768] for (kk in seq_along(NAMES)) { [17:27:49.768] name <- removed[[kk]] [17:27:49.768] NAME <- NAMES[[kk]] [17:27:49.768] if (name != NAME && is.element(NAME, old_names)) [17:27:49.768] next [17:27:49.768] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.768] } [17:27:49.768] if (length(args) > 0) [17:27:49.768] base::do.call(base::Sys.setenv, args = args) [17:27:49.768] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:49.768] } [17:27:49.768] { [17:27:49.768] if (base::length(...future.futureOptionsAdded) > [17:27:49.768] 0L) { [17:27:49.768] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:49.768] base::names(opts) <- ...future.futureOptionsAdded [17:27:49.768] base::options(opts) [17:27:49.768] } [17:27:49.768] { [17:27:49.768] { [17:27:49.768] base::options(mc.cores = ...future.mc.cores.old) [17:27:49.768] NULL [17:27:49.768] } [17:27:49.768] options(future.plan = NULL) [17:27:49.768] if (is.na(NA_character_)) [17:27:49.768] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.768] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:49.768] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:49.768] .init = FALSE) [17:27:49.768] } [17:27:49.768] } [17:27:49.768] } [17:27:49.768] }) [17:27:49.768] if (TRUE) { [17:27:49.768] base::sink(type = "output", split = FALSE) [17:27:49.768] if (TRUE) { [17:27:49.768] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:49.768] } [17:27:49.768] else { [17:27:49.768] ...future.result["stdout"] <- base::list(NULL) [17:27:49.768] } [17:27:49.768] base::close(...future.stdout) [17:27:49.768] ...future.stdout <- NULL [17:27:49.768] } [17:27:49.768] ...future.result$conditions <- ...future.conditions [17:27:49.768] ...future.result$finished <- base::Sys.time() [17:27:49.768] ...future.result [17:27:49.768] } [17:27:49.773] MultisessionFuture started [17:27:49.774] - Launch lazy future ... done [17:27:49.774] run() for 'MultisessionFuture' ... done [17:27:49.789] receiveMessageFromWorker() for ClusterFuture ... [17:27:49.789] - Validating connection of MultisessionFuture [17:27:49.789] - received message: FutureResult [17:27:49.790] - Received FutureResult [17:27:49.790] - Erased future from FutureRegistry [17:27:49.790] result() for ClusterFuture ... [17:27:49.790] - result already collected: FutureResult [17:27:49.790] result() for ClusterFuture ... done [17:27:49.790] signalConditions() ... [17:27:49.791] - include = 'immediateCondition' [17:27:49.791] - exclude = [17:27:49.791] - resignal = FALSE [17:27:49.791] - Number of conditions: 1 [17:27:49.791] signalConditions() ... done [17:27:49.791] receiveMessageFromWorker() for ClusterFuture ... done [17:27:49.792] A MultisessionFuture was resolved (result was not collected) - result = FALSE, recursive = TRUE ... DONE - result = FALSE, recursive = -1 ... [17:27:49.792] getGlobalsAndPackages() ... [17:27:49.792] Searching for globals... [17:27:49.793] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:49.794] Searching for globals ... DONE [17:27:49.794] Resolving globals: FALSE [17:27:49.794] [17:27:49.794] [17:27:49.795] getGlobalsAndPackages() ... DONE [17:27:49.795] run() for 'Future' ... [17:27:49.795] - state: 'created' [17:27:49.795] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:49.809] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:49.809] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:49.809] - Field: 'node' [17:27:49.810] - Field: 'label' [17:27:49.810] - Field: 'local' [17:27:49.810] - Field: 'owner' [17:27:49.810] - Field: 'envir' [17:27:49.810] - Field: 'workers' [17:27:49.810] - Field: 'packages' [17:27:49.811] - Field: 'gc' [17:27:49.811] - Field: 'conditions' [17:27:49.811] - Field: 'persistent' [17:27:49.811] - Field: 'expr' [17:27:49.811] - Field: 'uuid' [17:27:49.812] - Field: 'seed' [17:27:49.812] - Field: 'version' [17:27:49.812] - Field: 'result' [17:27:49.812] - Field: 'asynchronous' [17:27:49.812] - Field: 'calls' [17:27:49.812] - Field: 'globals' [17:27:49.813] - Field: 'stdout' [17:27:49.813] - Field: 'earlySignal' [17:27:49.813] - Field: 'lazy' [17:27:49.813] - Field: 'state' [17:27:49.813] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:49.813] - Launch lazy future ... [17:27:49.814] Packages needed by the future expression (n = 0): [17:27:49.814] Packages needed by future strategies (n = 0): [17:27:49.815] { [17:27:49.815] { [17:27:49.815] { [17:27:49.815] ...future.startTime <- base::Sys.time() [17:27:49.815] { [17:27:49.815] { [17:27:49.815] { [17:27:49.815] { [17:27:49.815] base::local({ [17:27:49.815] has_future <- base::requireNamespace("future", [17:27:49.815] quietly = TRUE) [17:27:49.815] if (has_future) { [17:27:49.815] ns <- base::getNamespace("future") [17:27:49.815] version <- ns[[".package"]][["version"]] [17:27:49.815] if (is.null(version)) [17:27:49.815] version <- utils::packageVersion("future") [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] version <- NULL [17:27:49.815] } [17:27:49.815] if (!has_future || version < "1.8.0") { [17:27:49.815] info <- base::c(r_version = base::gsub("R version ", [17:27:49.815] "", base::R.version$version.string), [17:27:49.815] platform = base::sprintf("%s (%s-bit)", [17:27:49.815] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:49.815] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:49.815] "release", "version")], collapse = " "), [17:27:49.815] hostname = base::Sys.info()[["nodename"]]) [17:27:49.815] info <- base::sprintf("%s: %s", base::names(info), [17:27:49.815] info) [17:27:49.815] info <- base::paste(info, collapse = "; ") [17:27:49.815] if (!has_future) { [17:27:49.815] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:49.815] info) [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:49.815] info, version) [17:27:49.815] } [17:27:49.815] base::stop(msg) [17:27:49.815] } [17:27:49.815] }) [17:27:49.815] } [17:27:49.815] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:49.815] base::options(mc.cores = 1L) [17:27:49.815] } [17:27:49.815] ...future.strategy.old <- future::plan("list") [17:27:49.815] options(future.plan = NULL) [17:27:49.815] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.815] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:49.815] } [17:27:49.815] ...future.workdir <- getwd() [17:27:49.815] } [17:27:49.815] ...future.oldOptions <- base::as.list(base::.Options) [17:27:49.815] ...future.oldEnvVars <- base::Sys.getenv() [17:27:49.815] } [17:27:49.815] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:49.815] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:49.815] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:49.815] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:49.815] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:49.815] future.stdout.windows.reencode = NULL, width = 80L) [17:27:49.815] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:49.815] base::names(...future.oldOptions)) [17:27:49.815] } [17:27:49.815] if (FALSE) { [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] if (TRUE) { [17:27:49.815] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:49.815] open = "w") [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:49.815] windows = "NUL", "/dev/null"), open = "w") [17:27:49.815] } [17:27:49.815] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:49.815] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:49.815] base::sink(type = "output", split = FALSE) [17:27:49.815] base::close(...future.stdout) [17:27:49.815] }, add = TRUE) [17:27:49.815] } [17:27:49.815] ...future.frame <- base::sys.nframe() [17:27:49.815] ...future.conditions <- base::list() [17:27:49.815] ...future.rng <- base::globalenv()$.Random.seed [17:27:49.815] if (FALSE) { [17:27:49.815] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:49.815] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:49.815] } [17:27:49.815] ...future.result <- base::tryCatch({ [17:27:49.815] base::withCallingHandlers({ [17:27:49.815] ...future.value <- base::withVisible(base::local({ [17:27:49.815] ...future.makeSendCondition <- base::local({ [17:27:49.815] sendCondition <- NULL [17:27:49.815] function(frame = 1L) { [17:27:49.815] if (is.function(sendCondition)) [17:27:49.815] return(sendCondition) [17:27:49.815] ns <- getNamespace("parallel") [17:27:49.815] if (exists("sendData", mode = "function", [17:27:49.815] envir = ns)) { [17:27:49.815] parallel_sendData <- get("sendData", mode = "function", [17:27:49.815] envir = ns) [17:27:49.815] envir <- sys.frame(frame) [17:27:49.815] master <- NULL [17:27:49.815] while (!identical(envir, .GlobalEnv) && [17:27:49.815] !identical(envir, emptyenv())) { [17:27:49.815] if (exists("master", mode = "list", envir = envir, [17:27:49.815] inherits = FALSE)) { [17:27:49.815] master <- get("master", mode = "list", [17:27:49.815] envir = envir, inherits = FALSE) [17:27:49.815] if (inherits(master, c("SOCKnode", [17:27:49.815] "SOCK0node"))) { [17:27:49.815] sendCondition <<- function(cond) { [17:27:49.815] data <- list(type = "VALUE", value = cond, [17:27:49.815] success = TRUE) [17:27:49.815] parallel_sendData(master, data) [17:27:49.815] } [17:27:49.815] return(sendCondition) [17:27:49.815] } [17:27:49.815] } [17:27:49.815] frame <- frame + 1L [17:27:49.815] envir <- sys.frame(frame) [17:27:49.815] } [17:27:49.815] } [17:27:49.815] sendCondition <<- function(cond) NULL [17:27:49.815] } [17:27:49.815] }) [17:27:49.815] withCallingHandlers({ [17:27:49.815] { [17:27:49.815] Sys.sleep(0.5) [17:27:49.815] list(a = 1, b = 42L) [17:27:49.815] } [17:27:49.815] }, immediateCondition = function(cond) { [17:27:49.815] sendCondition <- ...future.makeSendCondition() [17:27:49.815] sendCondition(cond) [17:27:49.815] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.815] { [17:27:49.815] inherits <- base::inherits [17:27:49.815] invokeRestart <- base::invokeRestart [17:27:49.815] is.null <- base::is.null [17:27:49.815] muffled <- FALSE [17:27:49.815] if (inherits(cond, "message")) { [17:27:49.815] muffled <- grepl(pattern, "muffleMessage") [17:27:49.815] if (muffled) [17:27:49.815] invokeRestart("muffleMessage") [17:27:49.815] } [17:27:49.815] else if (inherits(cond, "warning")) { [17:27:49.815] muffled <- grepl(pattern, "muffleWarning") [17:27:49.815] if (muffled) [17:27:49.815] invokeRestart("muffleWarning") [17:27:49.815] } [17:27:49.815] else if (inherits(cond, "condition")) { [17:27:49.815] if (!is.null(pattern)) { [17:27:49.815] computeRestarts <- base::computeRestarts [17:27:49.815] grepl <- base::grepl [17:27:49.815] restarts <- computeRestarts(cond) [17:27:49.815] for (restart in restarts) { [17:27:49.815] name <- restart$name [17:27:49.815] if (is.null(name)) [17:27:49.815] next [17:27:49.815] if (!grepl(pattern, name)) [17:27:49.815] next [17:27:49.815] invokeRestart(restart) [17:27:49.815] muffled <- TRUE [17:27:49.815] break [17:27:49.815] } [17:27:49.815] } [17:27:49.815] } [17:27:49.815] invisible(muffled) [17:27:49.815] } [17:27:49.815] muffleCondition(cond) [17:27:49.815] }) [17:27:49.815] })) [17:27:49.815] future::FutureResult(value = ...future.value$value, [17:27:49.815] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.815] ...future.rng), globalenv = if (FALSE) [17:27:49.815] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:49.815] ...future.globalenv.names)) [17:27:49.815] else NULL, started = ...future.startTime, version = "1.8") [17:27:49.815] }, condition = base::local({ [17:27:49.815] c <- base::c [17:27:49.815] inherits <- base::inherits [17:27:49.815] invokeRestart <- base::invokeRestart [17:27:49.815] length <- base::length [17:27:49.815] list <- base::list [17:27:49.815] seq.int <- base::seq.int [17:27:49.815] signalCondition <- base::signalCondition [17:27:49.815] sys.calls <- base::sys.calls [17:27:49.815] `[[` <- base::`[[` [17:27:49.815] `+` <- base::`+` [17:27:49.815] `<<-` <- base::`<<-` [17:27:49.815] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:49.815] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:49.815] 3L)] [17:27:49.815] } [17:27:49.815] function(cond) { [17:27:49.815] is_error <- inherits(cond, "error") [17:27:49.815] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:49.815] NULL) [17:27:49.815] if (is_error) { [17:27:49.815] sessionInformation <- function() { [17:27:49.815] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:49.815] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:49.815] search = base::search(), system = base::Sys.info()) [17:27:49.815] } [17:27:49.815] ...future.conditions[[length(...future.conditions) + [17:27:49.815] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:49.815] cond$call), session = sessionInformation(), [17:27:49.815] timestamp = base::Sys.time(), signaled = 0L) [17:27:49.815] signalCondition(cond) [17:27:49.815] } [17:27:49.815] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:49.815] "immediateCondition"))) { [17:27:49.815] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:49.815] ...future.conditions[[length(...future.conditions) + [17:27:49.815] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:49.815] if (TRUE && !signal) { [17:27:49.815] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.815] { [17:27:49.815] inherits <- base::inherits [17:27:49.815] invokeRestart <- base::invokeRestart [17:27:49.815] is.null <- base::is.null [17:27:49.815] muffled <- FALSE [17:27:49.815] if (inherits(cond, "message")) { [17:27:49.815] muffled <- grepl(pattern, "muffleMessage") [17:27:49.815] if (muffled) [17:27:49.815] invokeRestart("muffleMessage") [17:27:49.815] } [17:27:49.815] else if (inherits(cond, "warning")) { [17:27:49.815] muffled <- grepl(pattern, "muffleWarning") [17:27:49.815] if (muffled) [17:27:49.815] invokeRestart("muffleWarning") [17:27:49.815] } [17:27:49.815] else if (inherits(cond, "condition")) { [17:27:49.815] if (!is.null(pattern)) { [17:27:49.815] computeRestarts <- base::computeRestarts [17:27:49.815] grepl <- base::grepl [17:27:49.815] restarts <- computeRestarts(cond) [17:27:49.815] for (restart in restarts) { [17:27:49.815] name <- restart$name [17:27:49.815] if (is.null(name)) [17:27:49.815] next [17:27:49.815] if (!grepl(pattern, name)) [17:27:49.815] next [17:27:49.815] invokeRestart(restart) [17:27:49.815] muffled <- TRUE [17:27:49.815] break [17:27:49.815] } [17:27:49.815] } [17:27:49.815] } [17:27:49.815] invisible(muffled) [17:27:49.815] } [17:27:49.815] muffleCondition(cond, pattern = "^muffle") [17:27:49.815] } [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] if (TRUE) { [17:27:49.815] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.815] { [17:27:49.815] inherits <- base::inherits [17:27:49.815] invokeRestart <- base::invokeRestart [17:27:49.815] is.null <- base::is.null [17:27:49.815] muffled <- FALSE [17:27:49.815] if (inherits(cond, "message")) { [17:27:49.815] muffled <- grepl(pattern, "muffleMessage") [17:27:49.815] if (muffled) [17:27:49.815] invokeRestart("muffleMessage") [17:27:49.815] } [17:27:49.815] else if (inherits(cond, "warning")) { [17:27:49.815] muffled <- grepl(pattern, "muffleWarning") [17:27:49.815] if (muffled) [17:27:49.815] invokeRestart("muffleWarning") [17:27:49.815] } [17:27:49.815] else if (inherits(cond, "condition")) { [17:27:49.815] if (!is.null(pattern)) { [17:27:49.815] computeRestarts <- base::computeRestarts [17:27:49.815] grepl <- base::grepl [17:27:49.815] restarts <- computeRestarts(cond) [17:27:49.815] for (restart in restarts) { [17:27:49.815] name <- restart$name [17:27:49.815] if (is.null(name)) [17:27:49.815] next [17:27:49.815] if (!grepl(pattern, name)) [17:27:49.815] next [17:27:49.815] invokeRestart(restart) [17:27:49.815] muffled <- TRUE [17:27:49.815] break [17:27:49.815] } [17:27:49.815] } [17:27:49.815] } [17:27:49.815] invisible(muffled) [17:27:49.815] } [17:27:49.815] muffleCondition(cond, pattern = "^muffle") [17:27:49.815] } [17:27:49.815] } [17:27:49.815] } [17:27:49.815] })) [17:27:49.815] }, error = function(ex) { [17:27:49.815] base::structure(base::list(value = NULL, visible = NULL, [17:27:49.815] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.815] ...future.rng), started = ...future.startTime, [17:27:49.815] finished = Sys.time(), session_uuid = NA_character_, [17:27:49.815] version = "1.8"), class = "FutureResult") [17:27:49.815] }, finally = { [17:27:49.815] if (!identical(...future.workdir, getwd())) [17:27:49.815] setwd(...future.workdir) [17:27:49.815] { [17:27:49.815] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:49.815] ...future.oldOptions$nwarnings <- NULL [17:27:49.815] } [17:27:49.815] base::options(...future.oldOptions) [17:27:49.815] if (.Platform$OS.type == "windows") { [17:27:49.815] old_names <- names(...future.oldEnvVars) [17:27:49.815] envs <- base::Sys.getenv() [17:27:49.815] names <- names(envs) [17:27:49.815] common <- intersect(names, old_names) [17:27:49.815] added <- setdiff(names, old_names) [17:27:49.815] removed <- setdiff(old_names, names) [17:27:49.815] changed <- common[...future.oldEnvVars[common] != [17:27:49.815] envs[common]] [17:27:49.815] NAMES <- toupper(changed) [17:27:49.815] args <- list() [17:27:49.815] for (kk in seq_along(NAMES)) { [17:27:49.815] name <- changed[[kk]] [17:27:49.815] NAME <- NAMES[[kk]] [17:27:49.815] if (name != NAME && is.element(NAME, old_names)) [17:27:49.815] next [17:27:49.815] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.815] } [17:27:49.815] NAMES <- toupper(added) [17:27:49.815] for (kk in seq_along(NAMES)) { [17:27:49.815] name <- added[[kk]] [17:27:49.815] NAME <- NAMES[[kk]] [17:27:49.815] if (name != NAME && is.element(NAME, old_names)) [17:27:49.815] next [17:27:49.815] args[[name]] <- "" [17:27:49.815] } [17:27:49.815] NAMES <- toupper(removed) [17:27:49.815] for (kk in seq_along(NAMES)) { [17:27:49.815] name <- removed[[kk]] [17:27:49.815] NAME <- NAMES[[kk]] [17:27:49.815] if (name != NAME && is.element(NAME, old_names)) [17:27:49.815] next [17:27:49.815] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.815] } [17:27:49.815] if (length(args) > 0) [17:27:49.815] base::do.call(base::Sys.setenv, args = args) [17:27:49.815] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:49.815] } [17:27:49.815] { [17:27:49.815] if (base::length(...future.futureOptionsAdded) > [17:27:49.815] 0L) { [17:27:49.815] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:49.815] base::names(opts) <- ...future.futureOptionsAdded [17:27:49.815] base::options(opts) [17:27:49.815] } [17:27:49.815] { [17:27:49.815] { [17:27:49.815] base::options(mc.cores = ...future.mc.cores.old) [17:27:49.815] NULL [17:27:49.815] } [17:27:49.815] options(future.plan = NULL) [17:27:49.815] if (is.na(NA_character_)) [17:27:49.815] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.815] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:49.815] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:49.815] .init = FALSE) [17:27:49.815] } [17:27:49.815] } [17:27:49.815] } [17:27:49.815] }) [17:27:49.815] if (TRUE) { [17:27:49.815] base::sink(type = "output", split = FALSE) [17:27:49.815] if (TRUE) { [17:27:49.815] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:49.815] } [17:27:49.815] else { [17:27:49.815] ...future.result["stdout"] <- base::list(NULL) [17:27:49.815] } [17:27:49.815] base::close(...future.stdout) [17:27:49.815] ...future.stdout <- NULL [17:27:49.815] } [17:27:49.815] ...future.result$conditions <- ...future.conditions [17:27:49.815] ...future.result$finished <- base::Sys.time() [17:27:49.815] ...future.result [17:27:49.815] } [17:27:49.820] MultisessionFuture started [17:27:49.820] - Launch lazy future ... done [17:27:49.821] run() for 'MultisessionFuture' ... done [17:27:49.821] getGlobalsAndPackages() ... [17:27:49.821] Searching for globals... [17:27:49.822] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:49.823] Searching for globals ... DONE [17:27:49.823] Resolving globals: FALSE [17:27:49.823] [17:27:49.823] [17:27:49.823] getGlobalsAndPackages() ... DONE - w/ exception ... [17:27:49.824] getGlobalsAndPackages() ... [17:27:49.824] Searching for globals... [17:27:49.825] - globals found: [2] 'list', 'stop' [17:27:49.825] Searching for globals ... DONE [17:27:49.825] Resolving globals: FALSE [17:27:49.825] [17:27:49.826] [17:27:49.826] getGlobalsAndPackages() ... DONE [17:27:49.826] run() for 'Future' ... [17:27:49.826] - state: 'created' [17:27:49.827] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:49.840] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:49.841] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:49.841] - Field: 'node' [17:27:49.841] - Field: 'label' [17:27:49.841] - Field: 'local' [17:27:49.841] - Field: 'owner' [17:27:49.842] - Field: 'envir' [17:27:49.842] - Field: 'workers' [17:27:49.842] - Field: 'packages' [17:27:49.842] - Field: 'gc' [17:27:49.842] - Field: 'conditions' [17:27:49.842] - Field: 'persistent' [17:27:49.843] - Field: 'expr' [17:27:49.843] - Field: 'uuid' [17:27:49.843] - Field: 'seed' [17:27:49.843] - Field: 'version' [17:27:49.843] - Field: 'result' [17:27:49.844] - Field: 'asynchronous' [17:27:49.844] - Field: 'calls' [17:27:49.844] - Field: 'globals' [17:27:49.844] - Field: 'stdout' [17:27:49.844] - Field: 'earlySignal' [17:27:49.844] - Field: 'lazy' [17:27:49.845] - Field: 'state' [17:27:49.845] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:49.845] - Launch lazy future ... [17:27:49.845] Packages needed by the future expression (n = 0): [17:27:49.845] Packages needed by future strategies (n = 0): [17:27:49.846] { [17:27:49.846] { [17:27:49.846] { [17:27:49.846] ...future.startTime <- base::Sys.time() [17:27:49.846] { [17:27:49.846] { [17:27:49.846] { [17:27:49.846] { [17:27:49.846] base::local({ [17:27:49.846] has_future <- base::requireNamespace("future", [17:27:49.846] quietly = TRUE) [17:27:49.846] if (has_future) { [17:27:49.846] ns <- base::getNamespace("future") [17:27:49.846] version <- ns[[".package"]][["version"]] [17:27:49.846] if (is.null(version)) [17:27:49.846] version <- utils::packageVersion("future") [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] version <- NULL [17:27:49.846] } [17:27:49.846] if (!has_future || version < "1.8.0") { [17:27:49.846] info <- base::c(r_version = base::gsub("R version ", [17:27:49.846] "", base::R.version$version.string), [17:27:49.846] platform = base::sprintf("%s (%s-bit)", [17:27:49.846] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:49.846] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:49.846] "release", "version")], collapse = " "), [17:27:49.846] hostname = base::Sys.info()[["nodename"]]) [17:27:49.846] info <- base::sprintf("%s: %s", base::names(info), [17:27:49.846] info) [17:27:49.846] info <- base::paste(info, collapse = "; ") [17:27:49.846] if (!has_future) { [17:27:49.846] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:49.846] info) [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:49.846] info, version) [17:27:49.846] } [17:27:49.846] base::stop(msg) [17:27:49.846] } [17:27:49.846] }) [17:27:49.846] } [17:27:49.846] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:49.846] base::options(mc.cores = 1L) [17:27:49.846] } [17:27:49.846] ...future.strategy.old <- future::plan("list") [17:27:49.846] options(future.plan = NULL) [17:27:49.846] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.846] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:49.846] } [17:27:49.846] ...future.workdir <- getwd() [17:27:49.846] } [17:27:49.846] ...future.oldOptions <- base::as.list(base::.Options) [17:27:49.846] ...future.oldEnvVars <- base::Sys.getenv() [17:27:49.846] } [17:27:49.846] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:49.846] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:49.846] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:49.846] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:49.846] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:49.846] future.stdout.windows.reencode = NULL, width = 80L) [17:27:49.846] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:49.846] base::names(...future.oldOptions)) [17:27:49.846] } [17:27:49.846] if (FALSE) { [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] if (TRUE) { [17:27:49.846] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:49.846] open = "w") [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:49.846] windows = "NUL", "/dev/null"), open = "w") [17:27:49.846] } [17:27:49.846] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:49.846] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:49.846] base::sink(type = "output", split = FALSE) [17:27:49.846] base::close(...future.stdout) [17:27:49.846] }, add = TRUE) [17:27:49.846] } [17:27:49.846] ...future.frame <- base::sys.nframe() [17:27:49.846] ...future.conditions <- base::list() [17:27:49.846] ...future.rng <- base::globalenv()$.Random.seed [17:27:49.846] if (FALSE) { [17:27:49.846] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:49.846] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:49.846] } [17:27:49.846] ...future.result <- base::tryCatch({ [17:27:49.846] base::withCallingHandlers({ [17:27:49.846] ...future.value <- base::withVisible(base::local({ [17:27:49.846] ...future.makeSendCondition <- base::local({ [17:27:49.846] sendCondition <- NULL [17:27:49.846] function(frame = 1L) { [17:27:49.846] if (is.function(sendCondition)) [17:27:49.846] return(sendCondition) [17:27:49.846] ns <- getNamespace("parallel") [17:27:49.846] if (exists("sendData", mode = "function", [17:27:49.846] envir = ns)) { [17:27:49.846] parallel_sendData <- get("sendData", mode = "function", [17:27:49.846] envir = ns) [17:27:49.846] envir <- sys.frame(frame) [17:27:49.846] master <- NULL [17:27:49.846] while (!identical(envir, .GlobalEnv) && [17:27:49.846] !identical(envir, emptyenv())) { [17:27:49.846] if (exists("master", mode = "list", envir = envir, [17:27:49.846] inherits = FALSE)) { [17:27:49.846] master <- get("master", mode = "list", [17:27:49.846] envir = envir, inherits = FALSE) [17:27:49.846] if (inherits(master, c("SOCKnode", [17:27:49.846] "SOCK0node"))) { [17:27:49.846] sendCondition <<- function(cond) { [17:27:49.846] data <- list(type = "VALUE", value = cond, [17:27:49.846] success = TRUE) [17:27:49.846] parallel_sendData(master, data) [17:27:49.846] } [17:27:49.846] return(sendCondition) [17:27:49.846] } [17:27:49.846] } [17:27:49.846] frame <- frame + 1L [17:27:49.846] envir <- sys.frame(frame) [17:27:49.846] } [17:27:49.846] } [17:27:49.846] sendCondition <<- function(cond) NULL [17:27:49.846] } [17:27:49.846] }) [17:27:49.846] withCallingHandlers({ [17:27:49.846] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:49.846] }, immediateCondition = function(cond) { [17:27:49.846] sendCondition <- ...future.makeSendCondition() [17:27:49.846] sendCondition(cond) [17:27:49.846] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.846] { [17:27:49.846] inherits <- base::inherits [17:27:49.846] invokeRestart <- base::invokeRestart [17:27:49.846] is.null <- base::is.null [17:27:49.846] muffled <- FALSE [17:27:49.846] if (inherits(cond, "message")) { [17:27:49.846] muffled <- grepl(pattern, "muffleMessage") [17:27:49.846] if (muffled) [17:27:49.846] invokeRestart("muffleMessage") [17:27:49.846] } [17:27:49.846] else if (inherits(cond, "warning")) { [17:27:49.846] muffled <- grepl(pattern, "muffleWarning") [17:27:49.846] if (muffled) [17:27:49.846] invokeRestart("muffleWarning") [17:27:49.846] } [17:27:49.846] else if (inherits(cond, "condition")) { [17:27:49.846] if (!is.null(pattern)) { [17:27:49.846] computeRestarts <- base::computeRestarts [17:27:49.846] grepl <- base::grepl [17:27:49.846] restarts <- computeRestarts(cond) [17:27:49.846] for (restart in restarts) { [17:27:49.846] name <- restart$name [17:27:49.846] if (is.null(name)) [17:27:49.846] next [17:27:49.846] if (!grepl(pattern, name)) [17:27:49.846] next [17:27:49.846] invokeRestart(restart) [17:27:49.846] muffled <- TRUE [17:27:49.846] break [17:27:49.846] } [17:27:49.846] } [17:27:49.846] } [17:27:49.846] invisible(muffled) [17:27:49.846] } [17:27:49.846] muffleCondition(cond) [17:27:49.846] }) [17:27:49.846] })) [17:27:49.846] future::FutureResult(value = ...future.value$value, [17:27:49.846] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.846] ...future.rng), globalenv = if (FALSE) [17:27:49.846] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:49.846] ...future.globalenv.names)) [17:27:49.846] else NULL, started = ...future.startTime, version = "1.8") [17:27:49.846] }, condition = base::local({ [17:27:49.846] c <- base::c [17:27:49.846] inherits <- base::inherits [17:27:49.846] invokeRestart <- base::invokeRestart [17:27:49.846] length <- base::length [17:27:49.846] list <- base::list [17:27:49.846] seq.int <- base::seq.int [17:27:49.846] signalCondition <- base::signalCondition [17:27:49.846] sys.calls <- base::sys.calls [17:27:49.846] `[[` <- base::`[[` [17:27:49.846] `+` <- base::`+` [17:27:49.846] `<<-` <- base::`<<-` [17:27:49.846] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:49.846] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:49.846] 3L)] [17:27:49.846] } [17:27:49.846] function(cond) { [17:27:49.846] is_error <- inherits(cond, "error") [17:27:49.846] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:49.846] NULL) [17:27:49.846] if (is_error) { [17:27:49.846] sessionInformation <- function() { [17:27:49.846] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:49.846] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:49.846] search = base::search(), system = base::Sys.info()) [17:27:49.846] } [17:27:49.846] ...future.conditions[[length(...future.conditions) + [17:27:49.846] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:49.846] cond$call), session = sessionInformation(), [17:27:49.846] timestamp = base::Sys.time(), signaled = 0L) [17:27:49.846] signalCondition(cond) [17:27:49.846] } [17:27:49.846] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:49.846] "immediateCondition"))) { [17:27:49.846] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:49.846] ...future.conditions[[length(...future.conditions) + [17:27:49.846] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:49.846] if (TRUE && !signal) { [17:27:49.846] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.846] { [17:27:49.846] inherits <- base::inherits [17:27:49.846] invokeRestart <- base::invokeRestart [17:27:49.846] is.null <- base::is.null [17:27:49.846] muffled <- FALSE [17:27:49.846] if (inherits(cond, "message")) { [17:27:49.846] muffled <- grepl(pattern, "muffleMessage") [17:27:49.846] if (muffled) [17:27:49.846] invokeRestart("muffleMessage") [17:27:49.846] } [17:27:49.846] else if (inherits(cond, "warning")) { [17:27:49.846] muffled <- grepl(pattern, "muffleWarning") [17:27:49.846] if (muffled) [17:27:49.846] invokeRestart("muffleWarning") [17:27:49.846] } [17:27:49.846] else if (inherits(cond, "condition")) { [17:27:49.846] if (!is.null(pattern)) { [17:27:49.846] computeRestarts <- base::computeRestarts [17:27:49.846] grepl <- base::grepl [17:27:49.846] restarts <- computeRestarts(cond) [17:27:49.846] for (restart in restarts) { [17:27:49.846] name <- restart$name [17:27:49.846] if (is.null(name)) [17:27:49.846] next [17:27:49.846] if (!grepl(pattern, name)) [17:27:49.846] next [17:27:49.846] invokeRestart(restart) [17:27:49.846] muffled <- TRUE [17:27:49.846] break [17:27:49.846] } [17:27:49.846] } [17:27:49.846] } [17:27:49.846] invisible(muffled) [17:27:49.846] } [17:27:49.846] muffleCondition(cond, pattern = "^muffle") [17:27:49.846] } [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] if (TRUE) { [17:27:49.846] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.846] { [17:27:49.846] inherits <- base::inherits [17:27:49.846] invokeRestart <- base::invokeRestart [17:27:49.846] is.null <- base::is.null [17:27:49.846] muffled <- FALSE [17:27:49.846] if (inherits(cond, "message")) { [17:27:49.846] muffled <- grepl(pattern, "muffleMessage") [17:27:49.846] if (muffled) [17:27:49.846] invokeRestart("muffleMessage") [17:27:49.846] } [17:27:49.846] else if (inherits(cond, "warning")) { [17:27:49.846] muffled <- grepl(pattern, "muffleWarning") [17:27:49.846] if (muffled) [17:27:49.846] invokeRestart("muffleWarning") [17:27:49.846] } [17:27:49.846] else if (inherits(cond, "condition")) { [17:27:49.846] if (!is.null(pattern)) { [17:27:49.846] computeRestarts <- base::computeRestarts [17:27:49.846] grepl <- base::grepl [17:27:49.846] restarts <- computeRestarts(cond) [17:27:49.846] for (restart in restarts) { [17:27:49.846] name <- restart$name [17:27:49.846] if (is.null(name)) [17:27:49.846] next [17:27:49.846] if (!grepl(pattern, name)) [17:27:49.846] next [17:27:49.846] invokeRestart(restart) [17:27:49.846] muffled <- TRUE [17:27:49.846] break [17:27:49.846] } [17:27:49.846] } [17:27:49.846] } [17:27:49.846] invisible(muffled) [17:27:49.846] } [17:27:49.846] muffleCondition(cond, pattern = "^muffle") [17:27:49.846] } [17:27:49.846] } [17:27:49.846] } [17:27:49.846] })) [17:27:49.846] }, error = function(ex) { [17:27:49.846] base::structure(base::list(value = NULL, visible = NULL, [17:27:49.846] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.846] ...future.rng), started = ...future.startTime, [17:27:49.846] finished = Sys.time(), session_uuid = NA_character_, [17:27:49.846] version = "1.8"), class = "FutureResult") [17:27:49.846] }, finally = { [17:27:49.846] if (!identical(...future.workdir, getwd())) [17:27:49.846] setwd(...future.workdir) [17:27:49.846] { [17:27:49.846] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:49.846] ...future.oldOptions$nwarnings <- NULL [17:27:49.846] } [17:27:49.846] base::options(...future.oldOptions) [17:27:49.846] if (.Platform$OS.type == "windows") { [17:27:49.846] old_names <- names(...future.oldEnvVars) [17:27:49.846] envs <- base::Sys.getenv() [17:27:49.846] names <- names(envs) [17:27:49.846] common <- intersect(names, old_names) [17:27:49.846] added <- setdiff(names, old_names) [17:27:49.846] removed <- setdiff(old_names, names) [17:27:49.846] changed <- common[...future.oldEnvVars[common] != [17:27:49.846] envs[common]] [17:27:49.846] NAMES <- toupper(changed) [17:27:49.846] args <- list() [17:27:49.846] for (kk in seq_along(NAMES)) { [17:27:49.846] name <- changed[[kk]] [17:27:49.846] NAME <- NAMES[[kk]] [17:27:49.846] if (name != NAME && is.element(NAME, old_names)) [17:27:49.846] next [17:27:49.846] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.846] } [17:27:49.846] NAMES <- toupper(added) [17:27:49.846] for (kk in seq_along(NAMES)) { [17:27:49.846] name <- added[[kk]] [17:27:49.846] NAME <- NAMES[[kk]] [17:27:49.846] if (name != NAME && is.element(NAME, old_names)) [17:27:49.846] next [17:27:49.846] args[[name]] <- "" [17:27:49.846] } [17:27:49.846] NAMES <- toupper(removed) [17:27:49.846] for (kk in seq_along(NAMES)) { [17:27:49.846] name <- removed[[kk]] [17:27:49.846] NAME <- NAMES[[kk]] [17:27:49.846] if (name != NAME && is.element(NAME, old_names)) [17:27:49.846] next [17:27:49.846] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.846] } [17:27:49.846] if (length(args) > 0) [17:27:49.846] base::do.call(base::Sys.setenv, args = args) [17:27:49.846] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:49.846] } [17:27:49.846] { [17:27:49.846] if (base::length(...future.futureOptionsAdded) > [17:27:49.846] 0L) { [17:27:49.846] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:49.846] base::names(opts) <- ...future.futureOptionsAdded [17:27:49.846] base::options(opts) [17:27:49.846] } [17:27:49.846] { [17:27:49.846] { [17:27:49.846] base::options(mc.cores = ...future.mc.cores.old) [17:27:49.846] NULL [17:27:49.846] } [17:27:49.846] options(future.plan = NULL) [17:27:49.846] if (is.na(NA_character_)) [17:27:49.846] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.846] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:49.846] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:49.846] .init = FALSE) [17:27:49.846] } [17:27:49.846] } [17:27:49.846] } [17:27:49.846] }) [17:27:49.846] if (TRUE) { [17:27:49.846] base::sink(type = "output", split = FALSE) [17:27:49.846] if (TRUE) { [17:27:49.846] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:49.846] } [17:27:49.846] else { [17:27:49.846] ...future.result["stdout"] <- base::list(NULL) [17:27:49.846] } [17:27:49.846] base::close(...future.stdout) [17:27:49.846] ...future.stdout <- NULL [17:27:49.846] } [17:27:49.846] ...future.result$conditions <- ...future.conditions [17:27:49.846] ...future.result$finished <- base::Sys.time() [17:27:49.846] ...future.result [17:27:49.846] } [17:27:49.931] MultisessionFuture started [17:27:49.931] - Launch lazy future ... done [17:27:49.931] run() for 'MultisessionFuture' ... done [17:27:49.932] getGlobalsAndPackages() ... [17:27:49.932] Searching for globals... [17:27:49.935] - globals found: [2] 'list', 'stop' [17:27:49.935] Searching for globals ... DONE [17:27:49.935] Resolving globals: FALSE [17:27:49.936] [17:27:49.936] [17:27:49.936] getGlobalsAndPackages() ... DONE - result = FALSE, recursive = -1 ... DONE - result = FALSE, recursive = 0 ... [17:27:49.937] getGlobalsAndPackages() ... [17:27:49.937] Searching for globals... [17:27:49.938] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:49.938] Searching for globals ... DONE [17:27:49.938] Resolving globals: FALSE [17:27:49.939] [17:27:49.939] [17:27:49.939] getGlobalsAndPackages() ... DONE [17:27:49.939] run() for 'Future' ... [17:27:49.940] - state: 'created' [17:27:49.940] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:49.954] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:49.954] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:49.954] - Field: 'node' [17:27:49.955] - Field: 'label' [17:27:49.955] - Field: 'local' [17:27:49.955] - Field: 'owner' [17:27:49.955] - Field: 'envir' [17:27:49.955] - Field: 'workers' [17:27:49.955] - Field: 'packages' [17:27:49.956] - Field: 'gc' [17:27:49.956] - Field: 'conditions' [17:27:49.956] - Field: 'persistent' [17:27:49.956] - Field: 'expr' [17:27:49.956] - Field: 'uuid' [17:27:49.956] - Field: 'seed' [17:27:49.957] - Field: 'version' [17:27:49.957] - Field: 'result' [17:27:49.957] - Field: 'asynchronous' [17:27:49.957] - Field: 'calls' [17:27:49.957] - Field: 'globals' [17:27:49.958] - Field: 'stdout' [17:27:49.958] - Field: 'earlySignal' [17:27:49.958] - Field: 'lazy' [17:27:49.958] - Field: 'state' [17:27:49.958] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:49.958] - Launch lazy future ... [17:27:49.959] Packages needed by the future expression (n = 0): [17:27:49.959] Packages needed by future strategies (n = 0): [17:27:49.959] { [17:27:49.959] { [17:27:49.959] { [17:27:49.959] ...future.startTime <- base::Sys.time() [17:27:49.959] { [17:27:49.959] { [17:27:49.959] { [17:27:49.959] { [17:27:49.959] base::local({ [17:27:49.959] has_future <- base::requireNamespace("future", [17:27:49.959] quietly = TRUE) [17:27:49.959] if (has_future) { [17:27:49.959] ns <- base::getNamespace("future") [17:27:49.959] version <- ns[[".package"]][["version"]] [17:27:49.959] if (is.null(version)) [17:27:49.959] version <- utils::packageVersion("future") [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] version <- NULL [17:27:49.959] } [17:27:49.959] if (!has_future || version < "1.8.0") { [17:27:49.959] info <- base::c(r_version = base::gsub("R version ", [17:27:49.959] "", base::R.version$version.string), [17:27:49.959] platform = base::sprintf("%s (%s-bit)", [17:27:49.959] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:49.959] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:49.959] "release", "version")], collapse = " "), [17:27:49.959] hostname = base::Sys.info()[["nodename"]]) [17:27:49.959] info <- base::sprintf("%s: %s", base::names(info), [17:27:49.959] info) [17:27:49.959] info <- base::paste(info, collapse = "; ") [17:27:49.959] if (!has_future) { [17:27:49.959] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:49.959] info) [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:49.959] info, version) [17:27:49.959] } [17:27:49.959] base::stop(msg) [17:27:49.959] } [17:27:49.959] }) [17:27:49.959] } [17:27:49.959] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:49.959] base::options(mc.cores = 1L) [17:27:49.959] } [17:27:49.959] ...future.strategy.old <- future::plan("list") [17:27:49.959] options(future.plan = NULL) [17:27:49.959] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.959] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:49.959] } [17:27:49.959] ...future.workdir <- getwd() [17:27:49.959] } [17:27:49.959] ...future.oldOptions <- base::as.list(base::.Options) [17:27:49.959] ...future.oldEnvVars <- base::Sys.getenv() [17:27:49.959] } [17:27:49.959] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:49.959] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:49.959] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:49.959] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:49.959] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:49.959] future.stdout.windows.reencode = NULL, width = 80L) [17:27:49.959] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:49.959] base::names(...future.oldOptions)) [17:27:49.959] } [17:27:49.959] if (FALSE) { [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] if (TRUE) { [17:27:49.959] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:49.959] open = "w") [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:49.959] windows = "NUL", "/dev/null"), open = "w") [17:27:49.959] } [17:27:49.959] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:49.959] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:49.959] base::sink(type = "output", split = FALSE) [17:27:49.959] base::close(...future.stdout) [17:27:49.959] }, add = TRUE) [17:27:49.959] } [17:27:49.959] ...future.frame <- base::sys.nframe() [17:27:49.959] ...future.conditions <- base::list() [17:27:49.959] ...future.rng <- base::globalenv()$.Random.seed [17:27:49.959] if (FALSE) { [17:27:49.959] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:49.959] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:49.959] } [17:27:49.959] ...future.result <- base::tryCatch({ [17:27:49.959] base::withCallingHandlers({ [17:27:49.959] ...future.value <- base::withVisible(base::local({ [17:27:49.959] ...future.makeSendCondition <- base::local({ [17:27:49.959] sendCondition <- NULL [17:27:49.959] function(frame = 1L) { [17:27:49.959] if (is.function(sendCondition)) [17:27:49.959] return(sendCondition) [17:27:49.959] ns <- getNamespace("parallel") [17:27:49.959] if (exists("sendData", mode = "function", [17:27:49.959] envir = ns)) { [17:27:49.959] parallel_sendData <- get("sendData", mode = "function", [17:27:49.959] envir = ns) [17:27:49.959] envir <- sys.frame(frame) [17:27:49.959] master <- NULL [17:27:49.959] while (!identical(envir, .GlobalEnv) && [17:27:49.959] !identical(envir, emptyenv())) { [17:27:49.959] if (exists("master", mode = "list", envir = envir, [17:27:49.959] inherits = FALSE)) { [17:27:49.959] master <- get("master", mode = "list", [17:27:49.959] envir = envir, inherits = FALSE) [17:27:49.959] if (inherits(master, c("SOCKnode", [17:27:49.959] "SOCK0node"))) { [17:27:49.959] sendCondition <<- function(cond) { [17:27:49.959] data <- list(type = "VALUE", value = cond, [17:27:49.959] success = TRUE) [17:27:49.959] parallel_sendData(master, data) [17:27:49.959] } [17:27:49.959] return(sendCondition) [17:27:49.959] } [17:27:49.959] } [17:27:49.959] frame <- frame + 1L [17:27:49.959] envir <- sys.frame(frame) [17:27:49.959] } [17:27:49.959] } [17:27:49.959] sendCondition <<- function(cond) NULL [17:27:49.959] } [17:27:49.959] }) [17:27:49.959] withCallingHandlers({ [17:27:49.959] { [17:27:49.959] Sys.sleep(0.5) [17:27:49.959] list(a = 1, b = 42L) [17:27:49.959] } [17:27:49.959] }, immediateCondition = function(cond) { [17:27:49.959] sendCondition <- ...future.makeSendCondition() [17:27:49.959] sendCondition(cond) [17:27:49.959] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.959] { [17:27:49.959] inherits <- base::inherits [17:27:49.959] invokeRestart <- base::invokeRestart [17:27:49.959] is.null <- base::is.null [17:27:49.959] muffled <- FALSE [17:27:49.959] if (inherits(cond, "message")) { [17:27:49.959] muffled <- grepl(pattern, "muffleMessage") [17:27:49.959] if (muffled) [17:27:49.959] invokeRestart("muffleMessage") [17:27:49.959] } [17:27:49.959] else if (inherits(cond, "warning")) { [17:27:49.959] muffled <- grepl(pattern, "muffleWarning") [17:27:49.959] if (muffled) [17:27:49.959] invokeRestart("muffleWarning") [17:27:49.959] } [17:27:49.959] else if (inherits(cond, "condition")) { [17:27:49.959] if (!is.null(pattern)) { [17:27:49.959] computeRestarts <- base::computeRestarts [17:27:49.959] grepl <- base::grepl [17:27:49.959] restarts <- computeRestarts(cond) [17:27:49.959] for (restart in restarts) { [17:27:49.959] name <- restart$name [17:27:49.959] if (is.null(name)) [17:27:49.959] next [17:27:49.959] if (!grepl(pattern, name)) [17:27:49.959] next [17:27:49.959] invokeRestart(restart) [17:27:49.959] muffled <- TRUE [17:27:49.959] break [17:27:49.959] } [17:27:49.959] } [17:27:49.959] } [17:27:49.959] invisible(muffled) [17:27:49.959] } [17:27:49.959] muffleCondition(cond) [17:27:49.959] }) [17:27:49.959] })) [17:27:49.959] future::FutureResult(value = ...future.value$value, [17:27:49.959] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.959] ...future.rng), globalenv = if (FALSE) [17:27:49.959] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:49.959] ...future.globalenv.names)) [17:27:49.959] else NULL, started = ...future.startTime, version = "1.8") [17:27:49.959] }, condition = base::local({ [17:27:49.959] c <- base::c [17:27:49.959] inherits <- base::inherits [17:27:49.959] invokeRestart <- base::invokeRestart [17:27:49.959] length <- base::length [17:27:49.959] list <- base::list [17:27:49.959] seq.int <- base::seq.int [17:27:49.959] signalCondition <- base::signalCondition [17:27:49.959] sys.calls <- base::sys.calls [17:27:49.959] `[[` <- base::`[[` [17:27:49.959] `+` <- base::`+` [17:27:49.959] `<<-` <- base::`<<-` [17:27:49.959] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:49.959] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:49.959] 3L)] [17:27:49.959] } [17:27:49.959] function(cond) { [17:27:49.959] is_error <- inherits(cond, "error") [17:27:49.959] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:49.959] NULL) [17:27:49.959] if (is_error) { [17:27:49.959] sessionInformation <- function() { [17:27:49.959] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:49.959] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:49.959] search = base::search(), system = base::Sys.info()) [17:27:49.959] } [17:27:49.959] ...future.conditions[[length(...future.conditions) + [17:27:49.959] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:49.959] cond$call), session = sessionInformation(), [17:27:49.959] timestamp = base::Sys.time(), signaled = 0L) [17:27:49.959] signalCondition(cond) [17:27:49.959] } [17:27:49.959] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:49.959] "immediateCondition"))) { [17:27:49.959] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:49.959] ...future.conditions[[length(...future.conditions) + [17:27:49.959] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:49.959] if (TRUE && !signal) { [17:27:49.959] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.959] { [17:27:49.959] inherits <- base::inherits [17:27:49.959] invokeRestart <- base::invokeRestart [17:27:49.959] is.null <- base::is.null [17:27:49.959] muffled <- FALSE [17:27:49.959] if (inherits(cond, "message")) { [17:27:49.959] muffled <- grepl(pattern, "muffleMessage") [17:27:49.959] if (muffled) [17:27:49.959] invokeRestart("muffleMessage") [17:27:49.959] } [17:27:49.959] else if (inherits(cond, "warning")) { [17:27:49.959] muffled <- grepl(pattern, "muffleWarning") [17:27:49.959] if (muffled) [17:27:49.959] invokeRestart("muffleWarning") [17:27:49.959] } [17:27:49.959] else if (inherits(cond, "condition")) { [17:27:49.959] if (!is.null(pattern)) { [17:27:49.959] computeRestarts <- base::computeRestarts [17:27:49.959] grepl <- base::grepl [17:27:49.959] restarts <- computeRestarts(cond) [17:27:49.959] for (restart in restarts) { [17:27:49.959] name <- restart$name [17:27:49.959] if (is.null(name)) [17:27:49.959] next [17:27:49.959] if (!grepl(pattern, name)) [17:27:49.959] next [17:27:49.959] invokeRestart(restart) [17:27:49.959] muffled <- TRUE [17:27:49.959] break [17:27:49.959] } [17:27:49.959] } [17:27:49.959] } [17:27:49.959] invisible(muffled) [17:27:49.959] } [17:27:49.959] muffleCondition(cond, pattern = "^muffle") [17:27:49.959] } [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] if (TRUE) { [17:27:49.959] muffleCondition <- function (cond, pattern = "^muffle") [17:27:49.959] { [17:27:49.959] inherits <- base::inherits [17:27:49.959] invokeRestart <- base::invokeRestart [17:27:49.959] is.null <- base::is.null [17:27:49.959] muffled <- FALSE [17:27:49.959] if (inherits(cond, "message")) { [17:27:49.959] muffled <- grepl(pattern, "muffleMessage") [17:27:49.959] if (muffled) [17:27:49.959] invokeRestart("muffleMessage") [17:27:49.959] } [17:27:49.959] else if (inherits(cond, "warning")) { [17:27:49.959] muffled <- grepl(pattern, "muffleWarning") [17:27:49.959] if (muffled) [17:27:49.959] invokeRestart("muffleWarning") [17:27:49.959] } [17:27:49.959] else if (inherits(cond, "condition")) { [17:27:49.959] if (!is.null(pattern)) { [17:27:49.959] computeRestarts <- base::computeRestarts [17:27:49.959] grepl <- base::grepl [17:27:49.959] restarts <- computeRestarts(cond) [17:27:49.959] for (restart in restarts) { [17:27:49.959] name <- restart$name [17:27:49.959] if (is.null(name)) [17:27:49.959] next [17:27:49.959] if (!grepl(pattern, name)) [17:27:49.959] next [17:27:49.959] invokeRestart(restart) [17:27:49.959] muffled <- TRUE [17:27:49.959] break [17:27:49.959] } [17:27:49.959] } [17:27:49.959] } [17:27:49.959] invisible(muffled) [17:27:49.959] } [17:27:49.959] muffleCondition(cond, pattern = "^muffle") [17:27:49.959] } [17:27:49.959] } [17:27:49.959] } [17:27:49.959] })) [17:27:49.959] }, error = function(ex) { [17:27:49.959] base::structure(base::list(value = NULL, visible = NULL, [17:27:49.959] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:49.959] ...future.rng), started = ...future.startTime, [17:27:49.959] finished = Sys.time(), session_uuid = NA_character_, [17:27:49.959] version = "1.8"), class = "FutureResult") [17:27:49.959] }, finally = { [17:27:49.959] if (!identical(...future.workdir, getwd())) [17:27:49.959] setwd(...future.workdir) [17:27:49.959] { [17:27:49.959] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:49.959] ...future.oldOptions$nwarnings <- NULL [17:27:49.959] } [17:27:49.959] base::options(...future.oldOptions) [17:27:49.959] if (.Platform$OS.type == "windows") { [17:27:49.959] old_names <- names(...future.oldEnvVars) [17:27:49.959] envs <- base::Sys.getenv() [17:27:49.959] names <- names(envs) [17:27:49.959] common <- intersect(names, old_names) [17:27:49.959] added <- setdiff(names, old_names) [17:27:49.959] removed <- setdiff(old_names, names) [17:27:49.959] changed <- common[...future.oldEnvVars[common] != [17:27:49.959] envs[common]] [17:27:49.959] NAMES <- toupper(changed) [17:27:49.959] args <- list() [17:27:49.959] for (kk in seq_along(NAMES)) { [17:27:49.959] name <- changed[[kk]] [17:27:49.959] NAME <- NAMES[[kk]] [17:27:49.959] if (name != NAME && is.element(NAME, old_names)) [17:27:49.959] next [17:27:49.959] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.959] } [17:27:49.959] NAMES <- toupper(added) [17:27:49.959] for (kk in seq_along(NAMES)) { [17:27:49.959] name <- added[[kk]] [17:27:49.959] NAME <- NAMES[[kk]] [17:27:49.959] if (name != NAME && is.element(NAME, old_names)) [17:27:49.959] next [17:27:49.959] args[[name]] <- "" [17:27:49.959] } [17:27:49.959] NAMES <- toupper(removed) [17:27:49.959] for (kk in seq_along(NAMES)) { [17:27:49.959] name <- removed[[kk]] [17:27:49.959] NAME <- NAMES[[kk]] [17:27:49.959] if (name != NAME && is.element(NAME, old_names)) [17:27:49.959] next [17:27:49.959] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:49.959] } [17:27:49.959] if (length(args) > 0) [17:27:49.959] base::do.call(base::Sys.setenv, args = args) [17:27:49.959] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:49.959] } [17:27:49.959] { [17:27:49.959] if (base::length(...future.futureOptionsAdded) > [17:27:49.959] 0L) { [17:27:49.959] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:49.959] base::names(opts) <- ...future.futureOptionsAdded [17:27:49.959] base::options(opts) [17:27:49.959] } [17:27:49.959] { [17:27:49.959] { [17:27:49.959] base::options(mc.cores = ...future.mc.cores.old) [17:27:49.959] NULL [17:27:49.959] } [17:27:49.959] options(future.plan = NULL) [17:27:49.959] if (is.na(NA_character_)) [17:27:49.959] Sys.unsetenv("R_FUTURE_PLAN") [17:27:49.959] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:49.959] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:49.959] .init = FALSE) [17:27:49.959] } [17:27:49.959] } [17:27:49.959] } [17:27:49.959] }) [17:27:49.959] if (TRUE) { [17:27:49.959] base::sink(type = "output", split = FALSE) [17:27:49.959] if (TRUE) { [17:27:49.959] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:49.959] } [17:27:49.959] else { [17:27:49.959] ...future.result["stdout"] <- base::list(NULL) [17:27:49.959] } [17:27:49.959] base::close(...future.stdout) [17:27:49.959] ...future.stdout <- NULL [17:27:49.959] } [17:27:49.959] ...future.result$conditions <- ...future.conditions [17:27:49.959] ...future.result$finished <- base::Sys.time() [17:27:49.959] ...future.result [17:27:49.959] } [17:27:49.964] Poll #1 (0): usedNodes() = 2, workers = 2 [17:27:50.186] receiveMessageFromWorker() for ClusterFuture ... [17:27:50.186] - Validating connection of MultisessionFuture [17:27:50.186] - received message: FutureResult [17:27:50.187] - Received FutureResult [17:27:50.187] - Erased future from FutureRegistry [17:27:50.187] result() for ClusterFuture ... [17:27:50.187] - result already collected: FutureResult [17:27:50.187] result() for ClusterFuture ... done [17:27:50.187] signalConditions() ... [17:27:50.188] - include = 'immediateCondition' [17:27:50.188] - exclude = [17:27:50.188] - resignal = FALSE [17:27:50.188] - Number of conditions: 1 [17:27:50.188] signalConditions() ... done [17:27:50.188] receiveMessageFromWorker() for ClusterFuture ... done [17:27:50.189] result() for ClusterFuture ... [17:27:50.189] - result already collected: FutureResult [17:27:50.189] result() for ClusterFuture ... done [17:27:50.189] result() for ClusterFuture ... [17:27:50.189] - result already collected: FutureResult [17:27:50.189] result() for ClusterFuture ... done [17:27:50.190] signalConditions() ... [17:27:50.190] - include = 'immediateCondition' [17:27:50.190] - exclude = [17:27:50.190] - resignal = FALSE [17:27:50.190] - Number of conditions: 1 [17:27:50.190] signalConditions() ... done [17:27:50.192] MultisessionFuture started [17:27:50.192] - Launch lazy future ... done [17:27:50.192] run() for 'MultisessionFuture' ... done [17:27:50.716] receiveMessageFromWorker() for ClusterFuture ... [17:27:50.716] - Validating connection of MultisessionFuture [17:27:50.716] - received message: FutureResult [17:27:50.717] - Received FutureResult [17:27:50.717] - Erased future from FutureRegistry [17:27:50.717] result() for ClusterFuture ... [17:27:50.717] - result already collected: FutureResult [17:27:50.717] result() for ClusterFuture ... done [17:27:50.717] receiveMessageFromWorker() for ClusterFuture ... done [17:27:50.718] A MultisessionFuture was resolved (result was not collected) [17:27:50.718] getGlobalsAndPackages() ... [17:27:50.718] Searching for globals... [17:27:50.719] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:50.719] Searching for globals ... DONE [17:27:50.720] Resolving globals: FALSE [17:27:50.720] [17:27:50.720] [17:27:50.720] getGlobalsAndPackages() ... DONE [17:27:50.721] run() for 'Future' ... [17:27:50.721] - state: 'created' [17:27:50.721] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:50.736] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:50.736] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:50.736] - Field: 'node' [17:27:50.737] - Field: 'label' [17:27:50.737] - Field: 'local' [17:27:50.737] - Field: 'owner' [17:27:50.737] - Field: 'envir' [17:27:50.737] - Field: 'workers' [17:27:50.738] - Field: 'packages' [17:27:50.738] - Field: 'gc' [17:27:50.738] - Field: 'conditions' [17:27:50.738] - Field: 'persistent' [17:27:50.738] - Field: 'expr' [17:27:50.738] - Field: 'uuid' [17:27:50.739] - Field: 'seed' [17:27:50.739] - Field: 'version' [17:27:50.739] - Field: 'result' [17:27:50.739] - Field: 'asynchronous' [17:27:50.739] - Field: 'calls' [17:27:50.739] - Field: 'globals' [17:27:50.740] - Field: 'stdout' [17:27:50.740] - Field: 'earlySignal' [17:27:50.740] - Field: 'lazy' [17:27:50.740] - Field: 'state' [17:27:50.740] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:50.740] - Launch lazy future ... [17:27:50.741] Packages needed by the future expression (n = 0): [17:27:50.741] Packages needed by future strategies (n = 0): [17:27:50.742] { [17:27:50.742] { [17:27:50.742] { [17:27:50.742] ...future.startTime <- base::Sys.time() [17:27:50.742] { [17:27:50.742] { [17:27:50.742] { [17:27:50.742] { [17:27:50.742] base::local({ [17:27:50.742] has_future <- base::requireNamespace("future", [17:27:50.742] quietly = TRUE) [17:27:50.742] if (has_future) { [17:27:50.742] ns <- base::getNamespace("future") [17:27:50.742] version <- ns[[".package"]][["version"]] [17:27:50.742] if (is.null(version)) [17:27:50.742] version <- utils::packageVersion("future") [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] version <- NULL [17:27:50.742] } [17:27:50.742] if (!has_future || version < "1.8.0") { [17:27:50.742] info <- base::c(r_version = base::gsub("R version ", [17:27:50.742] "", base::R.version$version.string), [17:27:50.742] platform = base::sprintf("%s (%s-bit)", [17:27:50.742] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:50.742] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:50.742] "release", "version")], collapse = " "), [17:27:50.742] hostname = base::Sys.info()[["nodename"]]) [17:27:50.742] info <- base::sprintf("%s: %s", base::names(info), [17:27:50.742] info) [17:27:50.742] info <- base::paste(info, collapse = "; ") [17:27:50.742] if (!has_future) { [17:27:50.742] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:50.742] info) [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:50.742] info, version) [17:27:50.742] } [17:27:50.742] base::stop(msg) [17:27:50.742] } [17:27:50.742] }) [17:27:50.742] } [17:27:50.742] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:50.742] base::options(mc.cores = 1L) [17:27:50.742] } [17:27:50.742] ...future.strategy.old <- future::plan("list") [17:27:50.742] options(future.plan = NULL) [17:27:50.742] Sys.unsetenv("R_FUTURE_PLAN") [17:27:50.742] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:50.742] } [17:27:50.742] ...future.workdir <- getwd() [17:27:50.742] } [17:27:50.742] ...future.oldOptions <- base::as.list(base::.Options) [17:27:50.742] ...future.oldEnvVars <- base::Sys.getenv() [17:27:50.742] } [17:27:50.742] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:50.742] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:50.742] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:50.742] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:50.742] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:50.742] future.stdout.windows.reencode = NULL, width = 80L) [17:27:50.742] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:50.742] base::names(...future.oldOptions)) [17:27:50.742] } [17:27:50.742] if (FALSE) { [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] if (TRUE) { [17:27:50.742] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:50.742] open = "w") [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:50.742] windows = "NUL", "/dev/null"), open = "w") [17:27:50.742] } [17:27:50.742] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:50.742] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:50.742] base::sink(type = "output", split = FALSE) [17:27:50.742] base::close(...future.stdout) [17:27:50.742] }, add = TRUE) [17:27:50.742] } [17:27:50.742] ...future.frame <- base::sys.nframe() [17:27:50.742] ...future.conditions <- base::list() [17:27:50.742] ...future.rng <- base::globalenv()$.Random.seed [17:27:50.742] if (FALSE) { [17:27:50.742] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:50.742] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:50.742] } [17:27:50.742] ...future.result <- base::tryCatch({ [17:27:50.742] base::withCallingHandlers({ [17:27:50.742] ...future.value <- base::withVisible(base::local({ [17:27:50.742] ...future.makeSendCondition <- base::local({ [17:27:50.742] sendCondition <- NULL [17:27:50.742] function(frame = 1L) { [17:27:50.742] if (is.function(sendCondition)) [17:27:50.742] return(sendCondition) [17:27:50.742] ns <- getNamespace("parallel") [17:27:50.742] if (exists("sendData", mode = "function", [17:27:50.742] envir = ns)) { [17:27:50.742] parallel_sendData <- get("sendData", mode = "function", [17:27:50.742] envir = ns) [17:27:50.742] envir <- sys.frame(frame) [17:27:50.742] master <- NULL [17:27:50.742] while (!identical(envir, .GlobalEnv) && [17:27:50.742] !identical(envir, emptyenv())) { [17:27:50.742] if (exists("master", mode = "list", envir = envir, [17:27:50.742] inherits = FALSE)) { [17:27:50.742] master <- get("master", mode = "list", [17:27:50.742] envir = envir, inherits = FALSE) [17:27:50.742] if (inherits(master, c("SOCKnode", [17:27:50.742] "SOCK0node"))) { [17:27:50.742] sendCondition <<- function(cond) { [17:27:50.742] data <- list(type = "VALUE", value = cond, [17:27:50.742] success = TRUE) [17:27:50.742] parallel_sendData(master, data) [17:27:50.742] } [17:27:50.742] return(sendCondition) [17:27:50.742] } [17:27:50.742] } [17:27:50.742] frame <- frame + 1L [17:27:50.742] envir <- sys.frame(frame) [17:27:50.742] } [17:27:50.742] } [17:27:50.742] sendCondition <<- function(cond) NULL [17:27:50.742] } [17:27:50.742] }) [17:27:50.742] withCallingHandlers({ [17:27:50.742] { [17:27:50.742] Sys.sleep(0.5) [17:27:50.742] list(a = 1, b = 42L) [17:27:50.742] } [17:27:50.742] }, immediateCondition = function(cond) { [17:27:50.742] sendCondition <- ...future.makeSendCondition() [17:27:50.742] sendCondition(cond) [17:27:50.742] muffleCondition <- function (cond, pattern = "^muffle") [17:27:50.742] { [17:27:50.742] inherits <- base::inherits [17:27:50.742] invokeRestart <- base::invokeRestart [17:27:50.742] is.null <- base::is.null [17:27:50.742] muffled <- FALSE [17:27:50.742] if (inherits(cond, "message")) { [17:27:50.742] muffled <- grepl(pattern, "muffleMessage") [17:27:50.742] if (muffled) [17:27:50.742] invokeRestart("muffleMessage") [17:27:50.742] } [17:27:50.742] else if (inherits(cond, "warning")) { [17:27:50.742] muffled <- grepl(pattern, "muffleWarning") [17:27:50.742] if (muffled) [17:27:50.742] invokeRestart("muffleWarning") [17:27:50.742] } [17:27:50.742] else if (inherits(cond, "condition")) { [17:27:50.742] if (!is.null(pattern)) { [17:27:50.742] computeRestarts <- base::computeRestarts [17:27:50.742] grepl <- base::grepl [17:27:50.742] restarts <- computeRestarts(cond) [17:27:50.742] for (restart in restarts) { [17:27:50.742] name <- restart$name [17:27:50.742] if (is.null(name)) [17:27:50.742] next [17:27:50.742] if (!grepl(pattern, name)) [17:27:50.742] next [17:27:50.742] invokeRestart(restart) [17:27:50.742] muffled <- TRUE [17:27:50.742] break [17:27:50.742] } [17:27:50.742] } [17:27:50.742] } [17:27:50.742] invisible(muffled) [17:27:50.742] } [17:27:50.742] muffleCondition(cond) [17:27:50.742] }) [17:27:50.742] })) [17:27:50.742] future::FutureResult(value = ...future.value$value, [17:27:50.742] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:50.742] ...future.rng), globalenv = if (FALSE) [17:27:50.742] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:50.742] ...future.globalenv.names)) [17:27:50.742] else NULL, started = ...future.startTime, version = "1.8") [17:27:50.742] }, condition = base::local({ [17:27:50.742] c <- base::c [17:27:50.742] inherits <- base::inherits [17:27:50.742] invokeRestart <- base::invokeRestart [17:27:50.742] length <- base::length [17:27:50.742] list <- base::list [17:27:50.742] seq.int <- base::seq.int [17:27:50.742] signalCondition <- base::signalCondition [17:27:50.742] sys.calls <- base::sys.calls [17:27:50.742] `[[` <- base::`[[` [17:27:50.742] `+` <- base::`+` [17:27:50.742] `<<-` <- base::`<<-` [17:27:50.742] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:50.742] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:50.742] 3L)] [17:27:50.742] } [17:27:50.742] function(cond) { [17:27:50.742] is_error <- inherits(cond, "error") [17:27:50.742] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:50.742] NULL) [17:27:50.742] if (is_error) { [17:27:50.742] sessionInformation <- function() { [17:27:50.742] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:50.742] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:50.742] search = base::search(), system = base::Sys.info()) [17:27:50.742] } [17:27:50.742] ...future.conditions[[length(...future.conditions) + [17:27:50.742] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:50.742] cond$call), session = sessionInformation(), [17:27:50.742] timestamp = base::Sys.time(), signaled = 0L) [17:27:50.742] signalCondition(cond) [17:27:50.742] } [17:27:50.742] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:50.742] "immediateCondition"))) { [17:27:50.742] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:50.742] ...future.conditions[[length(...future.conditions) + [17:27:50.742] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:50.742] if (TRUE && !signal) { [17:27:50.742] muffleCondition <- function (cond, pattern = "^muffle") [17:27:50.742] { [17:27:50.742] inherits <- base::inherits [17:27:50.742] invokeRestart <- base::invokeRestart [17:27:50.742] is.null <- base::is.null [17:27:50.742] muffled <- FALSE [17:27:50.742] if (inherits(cond, "message")) { [17:27:50.742] muffled <- grepl(pattern, "muffleMessage") [17:27:50.742] if (muffled) [17:27:50.742] invokeRestart("muffleMessage") [17:27:50.742] } [17:27:50.742] else if (inherits(cond, "warning")) { [17:27:50.742] muffled <- grepl(pattern, "muffleWarning") [17:27:50.742] if (muffled) [17:27:50.742] invokeRestart("muffleWarning") [17:27:50.742] } [17:27:50.742] else if (inherits(cond, "condition")) { [17:27:50.742] if (!is.null(pattern)) { [17:27:50.742] computeRestarts <- base::computeRestarts [17:27:50.742] grepl <- base::grepl [17:27:50.742] restarts <- computeRestarts(cond) [17:27:50.742] for (restart in restarts) { [17:27:50.742] name <- restart$name [17:27:50.742] if (is.null(name)) [17:27:50.742] next [17:27:50.742] if (!grepl(pattern, name)) [17:27:50.742] next [17:27:50.742] invokeRestart(restart) [17:27:50.742] muffled <- TRUE [17:27:50.742] break [17:27:50.742] } [17:27:50.742] } [17:27:50.742] } [17:27:50.742] invisible(muffled) [17:27:50.742] } [17:27:50.742] muffleCondition(cond, pattern = "^muffle") [17:27:50.742] } [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] if (TRUE) { [17:27:50.742] muffleCondition <- function (cond, pattern = "^muffle") [17:27:50.742] { [17:27:50.742] inherits <- base::inherits [17:27:50.742] invokeRestart <- base::invokeRestart [17:27:50.742] is.null <- base::is.null [17:27:50.742] muffled <- FALSE [17:27:50.742] if (inherits(cond, "message")) { [17:27:50.742] muffled <- grepl(pattern, "muffleMessage") [17:27:50.742] if (muffled) [17:27:50.742] invokeRestart("muffleMessage") [17:27:50.742] } [17:27:50.742] else if (inherits(cond, "warning")) { [17:27:50.742] muffled <- grepl(pattern, "muffleWarning") [17:27:50.742] if (muffled) [17:27:50.742] invokeRestart("muffleWarning") [17:27:50.742] } [17:27:50.742] else if (inherits(cond, "condition")) { [17:27:50.742] if (!is.null(pattern)) { [17:27:50.742] computeRestarts <- base::computeRestarts [17:27:50.742] grepl <- base::grepl [17:27:50.742] restarts <- computeRestarts(cond) [17:27:50.742] for (restart in restarts) { [17:27:50.742] name <- restart$name [17:27:50.742] if (is.null(name)) [17:27:50.742] next [17:27:50.742] if (!grepl(pattern, name)) [17:27:50.742] next [17:27:50.742] invokeRestart(restart) [17:27:50.742] muffled <- TRUE [17:27:50.742] break [17:27:50.742] } [17:27:50.742] } [17:27:50.742] } [17:27:50.742] invisible(muffled) [17:27:50.742] } [17:27:50.742] muffleCondition(cond, pattern = "^muffle") [17:27:50.742] } [17:27:50.742] } [17:27:50.742] } [17:27:50.742] })) [17:27:50.742] }, error = function(ex) { [17:27:50.742] base::structure(base::list(value = NULL, visible = NULL, [17:27:50.742] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:50.742] ...future.rng), started = ...future.startTime, [17:27:50.742] finished = Sys.time(), session_uuid = NA_character_, [17:27:50.742] version = "1.8"), class = "FutureResult") [17:27:50.742] }, finally = { [17:27:50.742] if (!identical(...future.workdir, getwd())) [17:27:50.742] setwd(...future.workdir) [17:27:50.742] { [17:27:50.742] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:50.742] ...future.oldOptions$nwarnings <- NULL [17:27:50.742] } [17:27:50.742] base::options(...future.oldOptions) [17:27:50.742] if (.Platform$OS.type == "windows") { [17:27:50.742] old_names <- names(...future.oldEnvVars) [17:27:50.742] envs <- base::Sys.getenv() [17:27:50.742] names <- names(envs) [17:27:50.742] common <- intersect(names, old_names) [17:27:50.742] added <- setdiff(names, old_names) [17:27:50.742] removed <- setdiff(old_names, names) [17:27:50.742] changed <- common[...future.oldEnvVars[common] != [17:27:50.742] envs[common]] [17:27:50.742] NAMES <- toupper(changed) [17:27:50.742] args <- list() [17:27:50.742] for (kk in seq_along(NAMES)) { [17:27:50.742] name <- changed[[kk]] [17:27:50.742] NAME <- NAMES[[kk]] [17:27:50.742] if (name != NAME && is.element(NAME, old_names)) [17:27:50.742] next [17:27:50.742] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:50.742] } [17:27:50.742] NAMES <- toupper(added) [17:27:50.742] for (kk in seq_along(NAMES)) { [17:27:50.742] name <- added[[kk]] [17:27:50.742] NAME <- NAMES[[kk]] [17:27:50.742] if (name != NAME && is.element(NAME, old_names)) [17:27:50.742] next [17:27:50.742] args[[name]] <- "" [17:27:50.742] } [17:27:50.742] NAMES <- toupper(removed) [17:27:50.742] for (kk in seq_along(NAMES)) { [17:27:50.742] name <- removed[[kk]] [17:27:50.742] NAME <- NAMES[[kk]] [17:27:50.742] if (name != NAME && is.element(NAME, old_names)) [17:27:50.742] next [17:27:50.742] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:50.742] } [17:27:50.742] if (length(args) > 0) [17:27:50.742] base::do.call(base::Sys.setenv, args = args) [17:27:50.742] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:50.742] } [17:27:50.742] { [17:27:50.742] if (base::length(...future.futureOptionsAdded) > [17:27:50.742] 0L) { [17:27:50.742] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:50.742] base::names(opts) <- ...future.futureOptionsAdded [17:27:50.742] base::options(opts) [17:27:50.742] } [17:27:50.742] { [17:27:50.742] { [17:27:50.742] base::options(mc.cores = ...future.mc.cores.old) [17:27:50.742] NULL [17:27:50.742] } [17:27:50.742] options(future.plan = NULL) [17:27:50.742] if (is.na(NA_character_)) [17:27:50.742] Sys.unsetenv("R_FUTURE_PLAN") [17:27:50.742] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:50.742] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:50.742] .init = FALSE) [17:27:50.742] } [17:27:50.742] } [17:27:50.742] } [17:27:50.742] }) [17:27:50.742] if (TRUE) { [17:27:50.742] base::sink(type = "output", split = FALSE) [17:27:50.742] if (TRUE) { [17:27:50.742] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:50.742] } [17:27:50.742] else { [17:27:50.742] ...future.result["stdout"] <- base::list(NULL) [17:27:50.742] } [17:27:50.742] base::close(...future.stdout) [17:27:50.742] ...future.stdout <- NULL [17:27:50.742] } [17:27:50.742] ...future.result$conditions <- ...future.conditions [17:27:50.742] ...future.result$finished <- base::Sys.time() [17:27:50.742] ...future.result [17:27:50.742] } [17:27:50.747] MultisessionFuture started [17:27:50.747] - Launch lazy future ... done [17:27:50.747] run() for 'MultisessionFuture' ... done [17:27:51.266] receiveMessageFromWorker() for ClusterFuture ... [17:27:51.267] - Validating connection of MultisessionFuture [17:27:51.267] - received message: FutureResult [17:27:51.267] - Received FutureResult [17:27:51.267] - Erased future from FutureRegistry [17:27:51.267] result() for ClusterFuture ... [17:27:51.268] - result already collected: FutureResult [17:27:51.268] result() for ClusterFuture ... done [17:27:51.268] receiveMessageFromWorker() for ClusterFuture ... done [17:27:51.268] A MultisessionFuture was resolved (result was not collected) - w/ exception ... [17:27:51.268] getGlobalsAndPackages() ... [17:27:51.269] Searching for globals... [17:27:51.269] - globals found: [2] 'list', 'stop' [17:27:51.270] Searching for globals ... DONE [17:27:51.270] Resolving globals: FALSE [17:27:51.270] [17:27:51.270] [17:27:51.270] getGlobalsAndPackages() ... DONE [17:27:51.271] run() for 'Future' ... [17:27:51.271] - state: 'created' [17:27:51.271] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:51.285] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:51.285] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:51.285] - Field: 'node' [17:27:51.285] - Field: 'label' [17:27:51.285] - Field: 'local' [17:27:51.286] - Field: 'owner' [17:27:51.286] - Field: 'envir' [17:27:51.286] - Field: 'workers' [17:27:51.286] - Field: 'packages' [17:27:51.286] - Field: 'gc' [17:27:51.286] - Field: 'conditions' [17:27:51.287] - Field: 'persistent' [17:27:51.287] - Field: 'expr' [17:27:51.287] - Field: 'uuid' [17:27:51.287] - Field: 'seed' [17:27:51.287] - Field: 'version' [17:27:51.288] - Field: 'result' [17:27:51.288] - Field: 'asynchronous' [17:27:51.288] - Field: 'calls' [17:27:51.288] - Field: 'globals' [17:27:51.288] - Field: 'stdout' [17:27:51.288] - Field: 'earlySignal' [17:27:51.289] - Field: 'lazy' [17:27:51.289] - Field: 'state' [17:27:51.289] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:51.289] - Launch lazy future ... [17:27:51.289] Packages needed by the future expression (n = 0): [17:27:51.290] Packages needed by future strategies (n = 0): [17:27:51.290] { [17:27:51.290] { [17:27:51.290] { [17:27:51.290] ...future.startTime <- base::Sys.time() [17:27:51.290] { [17:27:51.290] { [17:27:51.290] { [17:27:51.290] { [17:27:51.290] base::local({ [17:27:51.290] has_future <- base::requireNamespace("future", [17:27:51.290] quietly = TRUE) [17:27:51.290] if (has_future) { [17:27:51.290] ns <- base::getNamespace("future") [17:27:51.290] version <- ns[[".package"]][["version"]] [17:27:51.290] if (is.null(version)) [17:27:51.290] version <- utils::packageVersion("future") [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] version <- NULL [17:27:51.290] } [17:27:51.290] if (!has_future || version < "1.8.0") { [17:27:51.290] info <- base::c(r_version = base::gsub("R version ", [17:27:51.290] "", base::R.version$version.string), [17:27:51.290] platform = base::sprintf("%s (%s-bit)", [17:27:51.290] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:51.290] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:51.290] "release", "version")], collapse = " "), [17:27:51.290] hostname = base::Sys.info()[["nodename"]]) [17:27:51.290] info <- base::sprintf("%s: %s", base::names(info), [17:27:51.290] info) [17:27:51.290] info <- base::paste(info, collapse = "; ") [17:27:51.290] if (!has_future) { [17:27:51.290] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:51.290] info) [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:51.290] info, version) [17:27:51.290] } [17:27:51.290] base::stop(msg) [17:27:51.290] } [17:27:51.290] }) [17:27:51.290] } [17:27:51.290] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:51.290] base::options(mc.cores = 1L) [17:27:51.290] } [17:27:51.290] ...future.strategy.old <- future::plan("list") [17:27:51.290] options(future.plan = NULL) [17:27:51.290] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.290] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:51.290] } [17:27:51.290] ...future.workdir <- getwd() [17:27:51.290] } [17:27:51.290] ...future.oldOptions <- base::as.list(base::.Options) [17:27:51.290] ...future.oldEnvVars <- base::Sys.getenv() [17:27:51.290] } [17:27:51.290] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:51.290] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:51.290] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:51.290] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:51.290] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:51.290] future.stdout.windows.reencode = NULL, width = 80L) [17:27:51.290] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:51.290] base::names(...future.oldOptions)) [17:27:51.290] } [17:27:51.290] if (FALSE) { [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] if (TRUE) { [17:27:51.290] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:51.290] open = "w") [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:51.290] windows = "NUL", "/dev/null"), open = "w") [17:27:51.290] } [17:27:51.290] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:51.290] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:51.290] base::sink(type = "output", split = FALSE) [17:27:51.290] base::close(...future.stdout) [17:27:51.290] }, add = TRUE) [17:27:51.290] } [17:27:51.290] ...future.frame <- base::sys.nframe() [17:27:51.290] ...future.conditions <- base::list() [17:27:51.290] ...future.rng <- base::globalenv()$.Random.seed [17:27:51.290] if (FALSE) { [17:27:51.290] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:51.290] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:51.290] } [17:27:51.290] ...future.result <- base::tryCatch({ [17:27:51.290] base::withCallingHandlers({ [17:27:51.290] ...future.value <- base::withVisible(base::local({ [17:27:51.290] ...future.makeSendCondition <- base::local({ [17:27:51.290] sendCondition <- NULL [17:27:51.290] function(frame = 1L) { [17:27:51.290] if (is.function(sendCondition)) [17:27:51.290] return(sendCondition) [17:27:51.290] ns <- getNamespace("parallel") [17:27:51.290] if (exists("sendData", mode = "function", [17:27:51.290] envir = ns)) { [17:27:51.290] parallel_sendData <- get("sendData", mode = "function", [17:27:51.290] envir = ns) [17:27:51.290] envir <- sys.frame(frame) [17:27:51.290] master <- NULL [17:27:51.290] while (!identical(envir, .GlobalEnv) && [17:27:51.290] !identical(envir, emptyenv())) { [17:27:51.290] if (exists("master", mode = "list", envir = envir, [17:27:51.290] inherits = FALSE)) { [17:27:51.290] master <- get("master", mode = "list", [17:27:51.290] envir = envir, inherits = FALSE) [17:27:51.290] if (inherits(master, c("SOCKnode", [17:27:51.290] "SOCK0node"))) { [17:27:51.290] sendCondition <<- function(cond) { [17:27:51.290] data <- list(type = "VALUE", value = cond, [17:27:51.290] success = TRUE) [17:27:51.290] parallel_sendData(master, data) [17:27:51.290] } [17:27:51.290] return(sendCondition) [17:27:51.290] } [17:27:51.290] } [17:27:51.290] frame <- frame + 1L [17:27:51.290] envir <- sys.frame(frame) [17:27:51.290] } [17:27:51.290] } [17:27:51.290] sendCondition <<- function(cond) NULL [17:27:51.290] } [17:27:51.290] }) [17:27:51.290] withCallingHandlers({ [17:27:51.290] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:51.290] }, immediateCondition = function(cond) { [17:27:51.290] sendCondition <- ...future.makeSendCondition() [17:27:51.290] sendCondition(cond) [17:27:51.290] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.290] { [17:27:51.290] inherits <- base::inherits [17:27:51.290] invokeRestart <- base::invokeRestart [17:27:51.290] is.null <- base::is.null [17:27:51.290] muffled <- FALSE [17:27:51.290] if (inherits(cond, "message")) { [17:27:51.290] muffled <- grepl(pattern, "muffleMessage") [17:27:51.290] if (muffled) [17:27:51.290] invokeRestart("muffleMessage") [17:27:51.290] } [17:27:51.290] else if (inherits(cond, "warning")) { [17:27:51.290] muffled <- grepl(pattern, "muffleWarning") [17:27:51.290] if (muffled) [17:27:51.290] invokeRestart("muffleWarning") [17:27:51.290] } [17:27:51.290] else if (inherits(cond, "condition")) { [17:27:51.290] if (!is.null(pattern)) { [17:27:51.290] computeRestarts <- base::computeRestarts [17:27:51.290] grepl <- base::grepl [17:27:51.290] restarts <- computeRestarts(cond) [17:27:51.290] for (restart in restarts) { [17:27:51.290] name <- restart$name [17:27:51.290] if (is.null(name)) [17:27:51.290] next [17:27:51.290] if (!grepl(pattern, name)) [17:27:51.290] next [17:27:51.290] invokeRestart(restart) [17:27:51.290] muffled <- TRUE [17:27:51.290] break [17:27:51.290] } [17:27:51.290] } [17:27:51.290] } [17:27:51.290] invisible(muffled) [17:27:51.290] } [17:27:51.290] muffleCondition(cond) [17:27:51.290] }) [17:27:51.290] })) [17:27:51.290] future::FutureResult(value = ...future.value$value, [17:27:51.290] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.290] ...future.rng), globalenv = if (FALSE) [17:27:51.290] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:51.290] ...future.globalenv.names)) [17:27:51.290] else NULL, started = ...future.startTime, version = "1.8") [17:27:51.290] }, condition = base::local({ [17:27:51.290] c <- base::c [17:27:51.290] inherits <- base::inherits [17:27:51.290] invokeRestart <- base::invokeRestart [17:27:51.290] length <- base::length [17:27:51.290] list <- base::list [17:27:51.290] seq.int <- base::seq.int [17:27:51.290] signalCondition <- base::signalCondition [17:27:51.290] sys.calls <- base::sys.calls [17:27:51.290] `[[` <- base::`[[` [17:27:51.290] `+` <- base::`+` [17:27:51.290] `<<-` <- base::`<<-` [17:27:51.290] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:51.290] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:51.290] 3L)] [17:27:51.290] } [17:27:51.290] function(cond) { [17:27:51.290] is_error <- inherits(cond, "error") [17:27:51.290] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:51.290] NULL) [17:27:51.290] if (is_error) { [17:27:51.290] sessionInformation <- function() { [17:27:51.290] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:51.290] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:51.290] search = base::search(), system = base::Sys.info()) [17:27:51.290] } [17:27:51.290] ...future.conditions[[length(...future.conditions) + [17:27:51.290] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:51.290] cond$call), session = sessionInformation(), [17:27:51.290] timestamp = base::Sys.time(), signaled = 0L) [17:27:51.290] signalCondition(cond) [17:27:51.290] } [17:27:51.290] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:51.290] "immediateCondition"))) { [17:27:51.290] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:51.290] ...future.conditions[[length(...future.conditions) + [17:27:51.290] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:51.290] if (TRUE && !signal) { [17:27:51.290] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.290] { [17:27:51.290] inherits <- base::inherits [17:27:51.290] invokeRestart <- base::invokeRestart [17:27:51.290] is.null <- base::is.null [17:27:51.290] muffled <- FALSE [17:27:51.290] if (inherits(cond, "message")) { [17:27:51.290] muffled <- grepl(pattern, "muffleMessage") [17:27:51.290] if (muffled) [17:27:51.290] invokeRestart("muffleMessage") [17:27:51.290] } [17:27:51.290] else if (inherits(cond, "warning")) { [17:27:51.290] muffled <- grepl(pattern, "muffleWarning") [17:27:51.290] if (muffled) [17:27:51.290] invokeRestart("muffleWarning") [17:27:51.290] } [17:27:51.290] else if (inherits(cond, "condition")) { [17:27:51.290] if (!is.null(pattern)) { [17:27:51.290] computeRestarts <- base::computeRestarts [17:27:51.290] grepl <- base::grepl [17:27:51.290] restarts <- computeRestarts(cond) [17:27:51.290] for (restart in restarts) { [17:27:51.290] name <- restart$name [17:27:51.290] if (is.null(name)) [17:27:51.290] next [17:27:51.290] if (!grepl(pattern, name)) [17:27:51.290] next [17:27:51.290] invokeRestart(restart) [17:27:51.290] muffled <- TRUE [17:27:51.290] break [17:27:51.290] } [17:27:51.290] } [17:27:51.290] } [17:27:51.290] invisible(muffled) [17:27:51.290] } [17:27:51.290] muffleCondition(cond, pattern = "^muffle") [17:27:51.290] } [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] if (TRUE) { [17:27:51.290] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.290] { [17:27:51.290] inherits <- base::inherits [17:27:51.290] invokeRestart <- base::invokeRestart [17:27:51.290] is.null <- base::is.null [17:27:51.290] muffled <- FALSE [17:27:51.290] if (inherits(cond, "message")) { [17:27:51.290] muffled <- grepl(pattern, "muffleMessage") [17:27:51.290] if (muffled) [17:27:51.290] invokeRestart("muffleMessage") [17:27:51.290] } [17:27:51.290] else if (inherits(cond, "warning")) { [17:27:51.290] muffled <- grepl(pattern, "muffleWarning") [17:27:51.290] if (muffled) [17:27:51.290] invokeRestart("muffleWarning") [17:27:51.290] } [17:27:51.290] else if (inherits(cond, "condition")) { [17:27:51.290] if (!is.null(pattern)) { [17:27:51.290] computeRestarts <- base::computeRestarts [17:27:51.290] grepl <- base::grepl [17:27:51.290] restarts <- computeRestarts(cond) [17:27:51.290] for (restart in restarts) { [17:27:51.290] name <- restart$name [17:27:51.290] if (is.null(name)) [17:27:51.290] next [17:27:51.290] if (!grepl(pattern, name)) [17:27:51.290] next [17:27:51.290] invokeRestart(restart) [17:27:51.290] muffled <- TRUE [17:27:51.290] break [17:27:51.290] } [17:27:51.290] } [17:27:51.290] } [17:27:51.290] invisible(muffled) [17:27:51.290] } [17:27:51.290] muffleCondition(cond, pattern = "^muffle") [17:27:51.290] } [17:27:51.290] } [17:27:51.290] } [17:27:51.290] })) [17:27:51.290] }, error = function(ex) { [17:27:51.290] base::structure(base::list(value = NULL, visible = NULL, [17:27:51.290] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.290] ...future.rng), started = ...future.startTime, [17:27:51.290] finished = Sys.time(), session_uuid = NA_character_, [17:27:51.290] version = "1.8"), class = "FutureResult") [17:27:51.290] }, finally = { [17:27:51.290] if (!identical(...future.workdir, getwd())) [17:27:51.290] setwd(...future.workdir) [17:27:51.290] { [17:27:51.290] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:51.290] ...future.oldOptions$nwarnings <- NULL [17:27:51.290] } [17:27:51.290] base::options(...future.oldOptions) [17:27:51.290] if (.Platform$OS.type == "windows") { [17:27:51.290] old_names <- names(...future.oldEnvVars) [17:27:51.290] envs <- base::Sys.getenv() [17:27:51.290] names <- names(envs) [17:27:51.290] common <- intersect(names, old_names) [17:27:51.290] added <- setdiff(names, old_names) [17:27:51.290] removed <- setdiff(old_names, names) [17:27:51.290] changed <- common[...future.oldEnvVars[common] != [17:27:51.290] envs[common]] [17:27:51.290] NAMES <- toupper(changed) [17:27:51.290] args <- list() [17:27:51.290] for (kk in seq_along(NAMES)) { [17:27:51.290] name <- changed[[kk]] [17:27:51.290] NAME <- NAMES[[kk]] [17:27:51.290] if (name != NAME && is.element(NAME, old_names)) [17:27:51.290] next [17:27:51.290] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.290] } [17:27:51.290] NAMES <- toupper(added) [17:27:51.290] for (kk in seq_along(NAMES)) { [17:27:51.290] name <- added[[kk]] [17:27:51.290] NAME <- NAMES[[kk]] [17:27:51.290] if (name != NAME && is.element(NAME, old_names)) [17:27:51.290] next [17:27:51.290] args[[name]] <- "" [17:27:51.290] } [17:27:51.290] NAMES <- toupper(removed) [17:27:51.290] for (kk in seq_along(NAMES)) { [17:27:51.290] name <- removed[[kk]] [17:27:51.290] NAME <- NAMES[[kk]] [17:27:51.290] if (name != NAME && is.element(NAME, old_names)) [17:27:51.290] next [17:27:51.290] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.290] } [17:27:51.290] if (length(args) > 0) [17:27:51.290] base::do.call(base::Sys.setenv, args = args) [17:27:51.290] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:51.290] } [17:27:51.290] { [17:27:51.290] if (base::length(...future.futureOptionsAdded) > [17:27:51.290] 0L) { [17:27:51.290] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:51.290] base::names(opts) <- ...future.futureOptionsAdded [17:27:51.290] base::options(opts) [17:27:51.290] } [17:27:51.290] { [17:27:51.290] { [17:27:51.290] base::options(mc.cores = ...future.mc.cores.old) [17:27:51.290] NULL [17:27:51.290] } [17:27:51.290] options(future.plan = NULL) [17:27:51.290] if (is.na(NA_character_)) [17:27:51.290] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.290] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:51.290] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:51.290] .init = FALSE) [17:27:51.290] } [17:27:51.290] } [17:27:51.290] } [17:27:51.290] }) [17:27:51.290] if (TRUE) { [17:27:51.290] base::sink(type = "output", split = FALSE) [17:27:51.290] if (TRUE) { [17:27:51.290] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:51.290] } [17:27:51.290] else { [17:27:51.290] ...future.result["stdout"] <- base::list(NULL) [17:27:51.290] } [17:27:51.290] base::close(...future.stdout) [17:27:51.290] ...future.stdout <- NULL [17:27:51.290] } [17:27:51.290] ...future.result$conditions <- ...future.conditions [17:27:51.290] ...future.result$finished <- base::Sys.time() [17:27:51.290] ...future.result [17:27:51.290] } [17:27:51.296] MultisessionFuture started [17:27:51.296] - Launch lazy future ... done [17:27:51.296] run() for 'MultisessionFuture' ... done [17:27:51.310] receiveMessageFromWorker() for ClusterFuture ... [17:27:51.311] - Validating connection of MultisessionFuture [17:27:51.311] - received message: FutureResult [17:27:51.311] - Received FutureResult [17:27:51.312] - Erased future from FutureRegistry [17:27:51.312] result() for ClusterFuture ... [17:27:51.312] - result already collected: FutureResult [17:27:51.312] result() for ClusterFuture ... done [17:27:51.312] signalConditions() ... [17:27:51.312] - include = 'immediateCondition' [17:27:51.312] - exclude = [17:27:51.313] - resignal = FALSE [17:27:51.313] - Number of conditions: 1 [17:27:51.313] signalConditions() ... done [17:27:51.313] receiveMessageFromWorker() for ClusterFuture ... done [17:27:51.313] A MultisessionFuture was resolved (result was not collected) [17:27:51.313] getGlobalsAndPackages() ... [17:27:51.314] Searching for globals... [17:27:51.314] - globals found: [2] 'list', 'stop' [17:27:51.315] Searching for globals ... DONE [17:27:51.315] Resolving globals: FALSE [17:27:51.315] [17:27:51.315] [17:27:51.315] getGlobalsAndPackages() ... DONE [17:27:51.316] run() for 'Future' ... [17:27:51.316] - state: 'created' [17:27:51.316] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:51.330] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:51.330] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:51.330] - Field: 'node' [17:27:51.330] - Field: 'label' [17:27:51.331] - Field: 'local' [17:27:51.331] - Field: 'owner' [17:27:51.331] - Field: 'envir' [17:27:51.331] - Field: 'workers' [17:27:51.331] - Field: 'packages' [17:27:51.332] - Field: 'gc' [17:27:51.332] - Field: 'conditions' [17:27:51.332] - Field: 'persistent' [17:27:51.332] - Field: 'expr' [17:27:51.332] - Field: 'uuid' [17:27:51.332] - Field: 'seed' [17:27:51.333] - Field: 'version' [17:27:51.333] - Field: 'result' [17:27:51.333] - Field: 'asynchronous' [17:27:51.333] - Field: 'calls' [17:27:51.333] - Field: 'globals' [17:27:51.333] - Field: 'stdout' [17:27:51.334] - Field: 'earlySignal' [17:27:51.334] - Field: 'lazy' [17:27:51.334] - Field: 'state' [17:27:51.334] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:51.334] - Launch lazy future ... [17:27:51.335] Packages needed by the future expression (n = 0): [17:27:51.335] Packages needed by future strategies (n = 0): [17:27:51.335] { [17:27:51.335] { [17:27:51.335] { [17:27:51.335] ...future.startTime <- base::Sys.time() [17:27:51.335] { [17:27:51.335] { [17:27:51.335] { [17:27:51.335] { [17:27:51.335] base::local({ [17:27:51.335] has_future <- base::requireNamespace("future", [17:27:51.335] quietly = TRUE) [17:27:51.335] if (has_future) { [17:27:51.335] ns <- base::getNamespace("future") [17:27:51.335] version <- ns[[".package"]][["version"]] [17:27:51.335] if (is.null(version)) [17:27:51.335] version <- utils::packageVersion("future") [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] version <- NULL [17:27:51.335] } [17:27:51.335] if (!has_future || version < "1.8.0") { [17:27:51.335] info <- base::c(r_version = base::gsub("R version ", [17:27:51.335] "", base::R.version$version.string), [17:27:51.335] platform = base::sprintf("%s (%s-bit)", [17:27:51.335] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:51.335] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:51.335] "release", "version")], collapse = " "), [17:27:51.335] hostname = base::Sys.info()[["nodename"]]) [17:27:51.335] info <- base::sprintf("%s: %s", base::names(info), [17:27:51.335] info) [17:27:51.335] info <- base::paste(info, collapse = "; ") [17:27:51.335] if (!has_future) { [17:27:51.335] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:51.335] info) [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:51.335] info, version) [17:27:51.335] } [17:27:51.335] base::stop(msg) [17:27:51.335] } [17:27:51.335] }) [17:27:51.335] } [17:27:51.335] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:51.335] base::options(mc.cores = 1L) [17:27:51.335] } [17:27:51.335] ...future.strategy.old <- future::plan("list") [17:27:51.335] options(future.plan = NULL) [17:27:51.335] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.335] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:51.335] } [17:27:51.335] ...future.workdir <- getwd() [17:27:51.335] } [17:27:51.335] ...future.oldOptions <- base::as.list(base::.Options) [17:27:51.335] ...future.oldEnvVars <- base::Sys.getenv() [17:27:51.335] } [17:27:51.335] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:51.335] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:51.335] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:51.335] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:51.335] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:51.335] future.stdout.windows.reencode = NULL, width = 80L) [17:27:51.335] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:51.335] base::names(...future.oldOptions)) [17:27:51.335] } [17:27:51.335] if (FALSE) { [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] if (TRUE) { [17:27:51.335] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:51.335] open = "w") [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:51.335] windows = "NUL", "/dev/null"), open = "w") [17:27:51.335] } [17:27:51.335] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:51.335] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:51.335] base::sink(type = "output", split = FALSE) [17:27:51.335] base::close(...future.stdout) [17:27:51.335] }, add = TRUE) [17:27:51.335] } [17:27:51.335] ...future.frame <- base::sys.nframe() [17:27:51.335] ...future.conditions <- base::list() [17:27:51.335] ...future.rng <- base::globalenv()$.Random.seed [17:27:51.335] if (FALSE) { [17:27:51.335] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:51.335] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:51.335] } [17:27:51.335] ...future.result <- base::tryCatch({ [17:27:51.335] base::withCallingHandlers({ [17:27:51.335] ...future.value <- base::withVisible(base::local({ [17:27:51.335] ...future.makeSendCondition <- base::local({ [17:27:51.335] sendCondition <- NULL [17:27:51.335] function(frame = 1L) { [17:27:51.335] if (is.function(sendCondition)) [17:27:51.335] return(sendCondition) [17:27:51.335] ns <- getNamespace("parallel") [17:27:51.335] if (exists("sendData", mode = "function", [17:27:51.335] envir = ns)) { [17:27:51.335] parallel_sendData <- get("sendData", mode = "function", [17:27:51.335] envir = ns) [17:27:51.335] envir <- sys.frame(frame) [17:27:51.335] master <- NULL [17:27:51.335] while (!identical(envir, .GlobalEnv) && [17:27:51.335] !identical(envir, emptyenv())) { [17:27:51.335] if (exists("master", mode = "list", envir = envir, [17:27:51.335] inherits = FALSE)) { [17:27:51.335] master <- get("master", mode = "list", [17:27:51.335] envir = envir, inherits = FALSE) [17:27:51.335] if (inherits(master, c("SOCKnode", [17:27:51.335] "SOCK0node"))) { [17:27:51.335] sendCondition <<- function(cond) { [17:27:51.335] data <- list(type = "VALUE", value = cond, [17:27:51.335] success = TRUE) [17:27:51.335] parallel_sendData(master, data) [17:27:51.335] } [17:27:51.335] return(sendCondition) [17:27:51.335] } [17:27:51.335] } [17:27:51.335] frame <- frame + 1L [17:27:51.335] envir <- sys.frame(frame) [17:27:51.335] } [17:27:51.335] } [17:27:51.335] sendCondition <<- function(cond) NULL [17:27:51.335] } [17:27:51.335] }) [17:27:51.335] withCallingHandlers({ [17:27:51.335] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:51.335] }, immediateCondition = function(cond) { [17:27:51.335] sendCondition <- ...future.makeSendCondition() [17:27:51.335] sendCondition(cond) [17:27:51.335] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.335] { [17:27:51.335] inherits <- base::inherits [17:27:51.335] invokeRestart <- base::invokeRestart [17:27:51.335] is.null <- base::is.null [17:27:51.335] muffled <- FALSE [17:27:51.335] if (inherits(cond, "message")) { [17:27:51.335] muffled <- grepl(pattern, "muffleMessage") [17:27:51.335] if (muffled) [17:27:51.335] invokeRestart("muffleMessage") [17:27:51.335] } [17:27:51.335] else if (inherits(cond, "warning")) { [17:27:51.335] muffled <- grepl(pattern, "muffleWarning") [17:27:51.335] if (muffled) [17:27:51.335] invokeRestart("muffleWarning") [17:27:51.335] } [17:27:51.335] else if (inherits(cond, "condition")) { [17:27:51.335] if (!is.null(pattern)) { [17:27:51.335] computeRestarts <- base::computeRestarts [17:27:51.335] grepl <- base::grepl [17:27:51.335] restarts <- computeRestarts(cond) [17:27:51.335] for (restart in restarts) { [17:27:51.335] name <- restart$name [17:27:51.335] if (is.null(name)) [17:27:51.335] next [17:27:51.335] if (!grepl(pattern, name)) [17:27:51.335] next [17:27:51.335] invokeRestart(restart) [17:27:51.335] muffled <- TRUE [17:27:51.335] break [17:27:51.335] } [17:27:51.335] } [17:27:51.335] } [17:27:51.335] invisible(muffled) [17:27:51.335] } [17:27:51.335] muffleCondition(cond) [17:27:51.335] }) [17:27:51.335] })) [17:27:51.335] future::FutureResult(value = ...future.value$value, [17:27:51.335] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.335] ...future.rng), globalenv = if (FALSE) [17:27:51.335] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:51.335] ...future.globalenv.names)) [17:27:51.335] else NULL, started = ...future.startTime, version = "1.8") [17:27:51.335] }, condition = base::local({ [17:27:51.335] c <- base::c [17:27:51.335] inherits <- base::inherits [17:27:51.335] invokeRestart <- base::invokeRestart [17:27:51.335] length <- base::length [17:27:51.335] list <- base::list [17:27:51.335] seq.int <- base::seq.int [17:27:51.335] signalCondition <- base::signalCondition [17:27:51.335] sys.calls <- base::sys.calls [17:27:51.335] `[[` <- base::`[[` [17:27:51.335] `+` <- base::`+` [17:27:51.335] `<<-` <- base::`<<-` [17:27:51.335] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:51.335] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:51.335] 3L)] [17:27:51.335] } [17:27:51.335] function(cond) { [17:27:51.335] is_error <- inherits(cond, "error") [17:27:51.335] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:51.335] NULL) [17:27:51.335] if (is_error) { [17:27:51.335] sessionInformation <- function() { [17:27:51.335] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:51.335] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:51.335] search = base::search(), system = base::Sys.info()) [17:27:51.335] } [17:27:51.335] ...future.conditions[[length(...future.conditions) + [17:27:51.335] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:51.335] cond$call), session = sessionInformation(), [17:27:51.335] timestamp = base::Sys.time(), signaled = 0L) [17:27:51.335] signalCondition(cond) [17:27:51.335] } [17:27:51.335] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:51.335] "immediateCondition"))) { [17:27:51.335] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:51.335] ...future.conditions[[length(...future.conditions) + [17:27:51.335] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:51.335] if (TRUE && !signal) { [17:27:51.335] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.335] { [17:27:51.335] inherits <- base::inherits [17:27:51.335] invokeRestart <- base::invokeRestart [17:27:51.335] is.null <- base::is.null [17:27:51.335] muffled <- FALSE [17:27:51.335] if (inherits(cond, "message")) { [17:27:51.335] muffled <- grepl(pattern, "muffleMessage") [17:27:51.335] if (muffled) [17:27:51.335] invokeRestart("muffleMessage") [17:27:51.335] } [17:27:51.335] else if (inherits(cond, "warning")) { [17:27:51.335] muffled <- grepl(pattern, "muffleWarning") [17:27:51.335] if (muffled) [17:27:51.335] invokeRestart("muffleWarning") [17:27:51.335] } [17:27:51.335] else if (inherits(cond, "condition")) { [17:27:51.335] if (!is.null(pattern)) { [17:27:51.335] computeRestarts <- base::computeRestarts [17:27:51.335] grepl <- base::grepl [17:27:51.335] restarts <- computeRestarts(cond) [17:27:51.335] for (restart in restarts) { [17:27:51.335] name <- restart$name [17:27:51.335] if (is.null(name)) [17:27:51.335] next [17:27:51.335] if (!grepl(pattern, name)) [17:27:51.335] next [17:27:51.335] invokeRestart(restart) [17:27:51.335] muffled <- TRUE [17:27:51.335] break [17:27:51.335] } [17:27:51.335] } [17:27:51.335] } [17:27:51.335] invisible(muffled) [17:27:51.335] } [17:27:51.335] muffleCondition(cond, pattern = "^muffle") [17:27:51.335] } [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] if (TRUE) { [17:27:51.335] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.335] { [17:27:51.335] inherits <- base::inherits [17:27:51.335] invokeRestart <- base::invokeRestart [17:27:51.335] is.null <- base::is.null [17:27:51.335] muffled <- FALSE [17:27:51.335] if (inherits(cond, "message")) { [17:27:51.335] muffled <- grepl(pattern, "muffleMessage") [17:27:51.335] if (muffled) [17:27:51.335] invokeRestart("muffleMessage") [17:27:51.335] } [17:27:51.335] else if (inherits(cond, "warning")) { [17:27:51.335] muffled <- grepl(pattern, "muffleWarning") [17:27:51.335] if (muffled) [17:27:51.335] invokeRestart("muffleWarning") [17:27:51.335] } [17:27:51.335] else if (inherits(cond, "condition")) { [17:27:51.335] if (!is.null(pattern)) { [17:27:51.335] computeRestarts <- base::computeRestarts [17:27:51.335] grepl <- base::grepl [17:27:51.335] restarts <- computeRestarts(cond) [17:27:51.335] for (restart in restarts) { [17:27:51.335] name <- restart$name [17:27:51.335] if (is.null(name)) [17:27:51.335] next [17:27:51.335] if (!grepl(pattern, name)) [17:27:51.335] next [17:27:51.335] invokeRestart(restart) [17:27:51.335] muffled <- TRUE [17:27:51.335] break [17:27:51.335] } [17:27:51.335] } [17:27:51.335] } [17:27:51.335] invisible(muffled) [17:27:51.335] } [17:27:51.335] muffleCondition(cond, pattern = "^muffle") [17:27:51.335] } [17:27:51.335] } [17:27:51.335] } [17:27:51.335] })) [17:27:51.335] }, error = function(ex) { [17:27:51.335] base::structure(base::list(value = NULL, visible = NULL, [17:27:51.335] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.335] ...future.rng), started = ...future.startTime, [17:27:51.335] finished = Sys.time(), session_uuid = NA_character_, [17:27:51.335] version = "1.8"), class = "FutureResult") [17:27:51.335] }, finally = { [17:27:51.335] if (!identical(...future.workdir, getwd())) [17:27:51.335] setwd(...future.workdir) [17:27:51.335] { [17:27:51.335] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:51.335] ...future.oldOptions$nwarnings <- NULL [17:27:51.335] } [17:27:51.335] base::options(...future.oldOptions) [17:27:51.335] if (.Platform$OS.type == "windows") { [17:27:51.335] old_names <- names(...future.oldEnvVars) [17:27:51.335] envs <- base::Sys.getenv() [17:27:51.335] names <- names(envs) [17:27:51.335] common <- intersect(names, old_names) [17:27:51.335] added <- setdiff(names, old_names) [17:27:51.335] removed <- setdiff(old_names, names) [17:27:51.335] changed <- common[...future.oldEnvVars[common] != [17:27:51.335] envs[common]] [17:27:51.335] NAMES <- toupper(changed) [17:27:51.335] args <- list() [17:27:51.335] for (kk in seq_along(NAMES)) { [17:27:51.335] name <- changed[[kk]] [17:27:51.335] NAME <- NAMES[[kk]] [17:27:51.335] if (name != NAME && is.element(NAME, old_names)) [17:27:51.335] next [17:27:51.335] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.335] } [17:27:51.335] NAMES <- toupper(added) [17:27:51.335] for (kk in seq_along(NAMES)) { [17:27:51.335] name <- added[[kk]] [17:27:51.335] NAME <- NAMES[[kk]] [17:27:51.335] if (name != NAME && is.element(NAME, old_names)) [17:27:51.335] next [17:27:51.335] args[[name]] <- "" [17:27:51.335] } [17:27:51.335] NAMES <- toupper(removed) [17:27:51.335] for (kk in seq_along(NAMES)) { [17:27:51.335] name <- removed[[kk]] [17:27:51.335] NAME <- NAMES[[kk]] [17:27:51.335] if (name != NAME && is.element(NAME, old_names)) [17:27:51.335] next [17:27:51.335] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.335] } [17:27:51.335] if (length(args) > 0) [17:27:51.335] base::do.call(base::Sys.setenv, args = args) [17:27:51.335] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:51.335] } [17:27:51.335] { [17:27:51.335] if (base::length(...future.futureOptionsAdded) > [17:27:51.335] 0L) { [17:27:51.335] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:51.335] base::names(opts) <- ...future.futureOptionsAdded [17:27:51.335] base::options(opts) [17:27:51.335] } [17:27:51.335] { [17:27:51.335] { [17:27:51.335] base::options(mc.cores = ...future.mc.cores.old) [17:27:51.335] NULL [17:27:51.335] } [17:27:51.335] options(future.plan = NULL) [17:27:51.335] if (is.na(NA_character_)) [17:27:51.335] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.335] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:51.335] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:51.335] .init = FALSE) [17:27:51.335] } [17:27:51.335] } [17:27:51.335] } [17:27:51.335] }) [17:27:51.335] if (TRUE) { [17:27:51.335] base::sink(type = "output", split = FALSE) [17:27:51.335] if (TRUE) { [17:27:51.335] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:51.335] } [17:27:51.335] else { [17:27:51.335] ...future.result["stdout"] <- base::list(NULL) [17:27:51.335] } [17:27:51.335] base::close(...future.stdout) [17:27:51.335] ...future.stdout <- NULL [17:27:51.335] } [17:27:51.335] ...future.result$conditions <- ...future.conditions [17:27:51.335] ...future.result$finished <- base::Sys.time() [17:27:51.335] ...future.result [17:27:51.335] } [17:27:51.341] MultisessionFuture started [17:27:51.341] - Launch lazy future ... done [17:27:51.341] run() for 'MultisessionFuture' ... done [17:27:51.355] receiveMessageFromWorker() for ClusterFuture ... [17:27:51.356] - Validating connection of MultisessionFuture [17:27:51.356] - received message: FutureResult [17:27:51.356] - Received FutureResult [17:27:51.356] - Erased future from FutureRegistry [17:27:51.357] result() for ClusterFuture ... [17:27:51.357] - result already collected: FutureResult [17:27:51.357] result() for ClusterFuture ... done [17:27:51.357] signalConditions() ... [17:27:51.357] - include = 'immediateCondition' [17:27:51.357] - exclude = [17:27:51.358] - resignal = FALSE [17:27:51.358] - Number of conditions: 1 [17:27:51.358] signalConditions() ... done [17:27:51.358] receiveMessageFromWorker() for ClusterFuture ... done [17:27:51.358] A MultisessionFuture was resolved (result was not collected) - result = FALSE, recursive = 0 ... DONE - result = FALSE, recursive = 1 ... [17:27:51.359] getGlobalsAndPackages() ... [17:27:51.359] Searching for globals... [17:27:51.360] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:51.360] Searching for globals ... DONE [17:27:51.360] Resolving globals: FALSE [17:27:51.361] [17:27:51.361] [17:27:51.361] getGlobalsAndPackages() ... DONE [17:27:51.361] run() for 'Future' ... [17:27:51.362] - state: 'created' [17:27:51.362] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:51.375] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:51.376] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:51.376] - Field: 'node' [17:27:51.376] - Field: 'label' [17:27:51.376] - Field: 'local' [17:27:51.376] - Field: 'owner' [17:27:51.377] - Field: 'envir' [17:27:51.377] - Field: 'workers' [17:27:51.377] - Field: 'packages' [17:27:51.377] - Field: 'gc' [17:27:51.377] - Field: 'conditions' [17:27:51.377] - Field: 'persistent' [17:27:51.378] - Field: 'expr' [17:27:51.378] - Field: 'uuid' [17:27:51.378] - Field: 'seed' [17:27:51.378] - Field: 'version' [17:27:51.378] - Field: 'result' [17:27:51.379] - Field: 'asynchronous' [17:27:51.379] - Field: 'calls' [17:27:51.379] - Field: 'globals' [17:27:51.379] - Field: 'stdout' [17:27:51.379] - Field: 'earlySignal' [17:27:51.379] - Field: 'lazy' [17:27:51.380] - Field: 'state' [17:27:51.380] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:51.380] - Launch lazy future ... [17:27:51.380] Packages needed by the future expression (n = 0): [17:27:51.380] Packages needed by future strategies (n = 0): [17:27:51.381] { [17:27:51.381] { [17:27:51.381] { [17:27:51.381] ...future.startTime <- base::Sys.time() [17:27:51.381] { [17:27:51.381] { [17:27:51.381] { [17:27:51.381] { [17:27:51.381] base::local({ [17:27:51.381] has_future <- base::requireNamespace("future", [17:27:51.381] quietly = TRUE) [17:27:51.381] if (has_future) { [17:27:51.381] ns <- base::getNamespace("future") [17:27:51.381] version <- ns[[".package"]][["version"]] [17:27:51.381] if (is.null(version)) [17:27:51.381] version <- utils::packageVersion("future") [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] version <- NULL [17:27:51.381] } [17:27:51.381] if (!has_future || version < "1.8.0") { [17:27:51.381] info <- base::c(r_version = base::gsub("R version ", [17:27:51.381] "", base::R.version$version.string), [17:27:51.381] platform = base::sprintf("%s (%s-bit)", [17:27:51.381] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:51.381] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:51.381] "release", "version")], collapse = " "), [17:27:51.381] hostname = base::Sys.info()[["nodename"]]) [17:27:51.381] info <- base::sprintf("%s: %s", base::names(info), [17:27:51.381] info) [17:27:51.381] info <- base::paste(info, collapse = "; ") [17:27:51.381] if (!has_future) { [17:27:51.381] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:51.381] info) [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:51.381] info, version) [17:27:51.381] } [17:27:51.381] base::stop(msg) [17:27:51.381] } [17:27:51.381] }) [17:27:51.381] } [17:27:51.381] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:51.381] base::options(mc.cores = 1L) [17:27:51.381] } [17:27:51.381] ...future.strategy.old <- future::plan("list") [17:27:51.381] options(future.plan = NULL) [17:27:51.381] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.381] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:51.381] } [17:27:51.381] ...future.workdir <- getwd() [17:27:51.381] } [17:27:51.381] ...future.oldOptions <- base::as.list(base::.Options) [17:27:51.381] ...future.oldEnvVars <- base::Sys.getenv() [17:27:51.381] } [17:27:51.381] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:51.381] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:51.381] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:51.381] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:51.381] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:51.381] future.stdout.windows.reencode = NULL, width = 80L) [17:27:51.381] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:51.381] base::names(...future.oldOptions)) [17:27:51.381] } [17:27:51.381] if (FALSE) { [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] if (TRUE) { [17:27:51.381] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:51.381] open = "w") [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:51.381] windows = "NUL", "/dev/null"), open = "w") [17:27:51.381] } [17:27:51.381] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:51.381] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:51.381] base::sink(type = "output", split = FALSE) [17:27:51.381] base::close(...future.stdout) [17:27:51.381] }, add = TRUE) [17:27:51.381] } [17:27:51.381] ...future.frame <- base::sys.nframe() [17:27:51.381] ...future.conditions <- base::list() [17:27:51.381] ...future.rng <- base::globalenv()$.Random.seed [17:27:51.381] if (FALSE) { [17:27:51.381] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:51.381] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:51.381] } [17:27:51.381] ...future.result <- base::tryCatch({ [17:27:51.381] base::withCallingHandlers({ [17:27:51.381] ...future.value <- base::withVisible(base::local({ [17:27:51.381] ...future.makeSendCondition <- base::local({ [17:27:51.381] sendCondition <- NULL [17:27:51.381] function(frame = 1L) { [17:27:51.381] if (is.function(sendCondition)) [17:27:51.381] return(sendCondition) [17:27:51.381] ns <- getNamespace("parallel") [17:27:51.381] if (exists("sendData", mode = "function", [17:27:51.381] envir = ns)) { [17:27:51.381] parallel_sendData <- get("sendData", mode = "function", [17:27:51.381] envir = ns) [17:27:51.381] envir <- sys.frame(frame) [17:27:51.381] master <- NULL [17:27:51.381] while (!identical(envir, .GlobalEnv) && [17:27:51.381] !identical(envir, emptyenv())) { [17:27:51.381] if (exists("master", mode = "list", envir = envir, [17:27:51.381] inherits = FALSE)) { [17:27:51.381] master <- get("master", mode = "list", [17:27:51.381] envir = envir, inherits = FALSE) [17:27:51.381] if (inherits(master, c("SOCKnode", [17:27:51.381] "SOCK0node"))) { [17:27:51.381] sendCondition <<- function(cond) { [17:27:51.381] data <- list(type = "VALUE", value = cond, [17:27:51.381] success = TRUE) [17:27:51.381] parallel_sendData(master, data) [17:27:51.381] } [17:27:51.381] return(sendCondition) [17:27:51.381] } [17:27:51.381] } [17:27:51.381] frame <- frame + 1L [17:27:51.381] envir <- sys.frame(frame) [17:27:51.381] } [17:27:51.381] } [17:27:51.381] sendCondition <<- function(cond) NULL [17:27:51.381] } [17:27:51.381] }) [17:27:51.381] withCallingHandlers({ [17:27:51.381] { [17:27:51.381] Sys.sleep(0.5) [17:27:51.381] list(a = 1, b = 42L) [17:27:51.381] } [17:27:51.381] }, immediateCondition = function(cond) { [17:27:51.381] sendCondition <- ...future.makeSendCondition() [17:27:51.381] sendCondition(cond) [17:27:51.381] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.381] { [17:27:51.381] inherits <- base::inherits [17:27:51.381] invokeRestart <- base::invokeRestart [17:27:51.381] is.null <- base::is.null [17:27:51.381] muffled <- FALSE [17:27:51.381] if (inherits(cond, "message")) { [17:27:51.381] muffled <- grepl(pattern, "muffleMessage") [17:27:51.381] if (muffled) [17:27:51.381] invokeRestart("muffleMessage") [17:27:51.381] } [17:27:51.381] else if (inherits(cond, "warning")) { [17:27:51.381] muffled <- grepl(pattern, "muffleWarning") [17:27:51.381] if (muffled) [17:27:51.381] invokeRestart("muffleWarning") [17:27:51.381] } [17:27:51.381] else if (inherits(cond, "condition")) { [17:27:51.381] if (!is.null(pattern)) { [17:27:51.381] computeRestarts <- base::computeRestarts [17:27:51.381] grepl <- base::grepl [17:27:51.381] restarts <- computeRestarts(cond) [17:27:51.381] for (restart in restarts) { [17:27:51.381] name <- restart$name [17:27:51.381] if (is.null(name)) [17:27:51.381] next [17:27:51.381] if (!grepl(pattern, name)) [17:27:51.381] next [17:27:51.381] invokeRestart(restart) [17:27:51.381] muffled <- TRUE [17:27:51.381] break [17:27:51.381] } [17:27:51.381] } [17:27:51.381] } [17:27:51.381] invisible(muffled) [17:27:51.381] } [17:27:51.381] muffleCondition(cond) [17:27:51.381] }) [17:27:51.381] })) [17:27:51.381] future::FutureResult(value = ...future.value$value, [17:27:51.381] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.381] ...future.rng), globalenv = if (FALSE) [17:27:51.381] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:51.381] ...future.globalenv.names)) [17:27:51.381] else NULL, started = ...future.startTime, version = "1.8") [17:27:51.381] }, condition = base::local({ [17:27:51.381] c <- base::c [17:27:51.381] inherits <- base::inherits [17:27:51.381] invokeRestart <- base::invokeRestart [17:27:51.381] length <- base::length [17:27:51.381] list <- base::list [17:27:51.381] seq.int <- base::seq.int [17:27:51.381] signalCondition <- base::signalCondition [17:27:51.381] sys.calls <- base::sys.calls [17:27:51.381] `[[` <- base::`[[` [17:27:51.381] `+` <- base::`+` [17:27:51.381] `<<-` <- base::`<<-` [17:27:51.381] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:51.381] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:51.381] 3L)] [17:27:51.381] } [17:27:51.381] function(cond) { [17:27:51.381] is_error <- inherits(cond, "error") [17:27:51.381] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:51.381] NULL) [17:27:51.381] if (is_error) { [17:27:51.381] sessionInformation <- function() { [17:27:51.381] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:51.381] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:51.381] search = base::search(), system = base::Sys.info()) [17:27:51.381] } [17:27:51.381] ...future.conditions[[length(...future.conditions) + [17:27:51.381] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:51.381] cond$call), session = sessionInformation(), [17:27:51.381] timestamp = base::Sys.time(), signaled = 0L) [17:27:51.381] signalCondition(cond) [17:27:51.381] } [17:27:51.381] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:51.381] "immediateCondition"))) { [17:27:51.381] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:51.381] ...future.conditions[[length(...future.conditions) + [17:27:51.381] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:51.381] if (TRUE && !signal) { [17:27:51.381] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.381] { [17:27:51.381] inherits <- base::inherits [17:27:51.381] invokeRestart <- base::invokeRestart [17:27:51.381] is.null <- base::is.null [17:27:51.381] muffled <- FALSE [17:27:51.381] if (inherits(cond, "message")) { [17:27:51.381] muffled <- grepl(pattern, "muffleMessage") [17:27:51.381] if (muffled) [17:27:51.381] invokeRestart("muffleMessage") [17:27:51.381] } [17:27:51.381] else if (inherits(cond, "warning")) { [17:27:51.381] muffled <- grepl(pattern, "muffleWarning") [17:27:51.381] if (muffled) [17:27:51.381] invokeRestart("muffleWarning") [17:27:51.381] } [17:27:51.381] else if (inherits(cond, "condition")) { [17:27:51.381] if (!is.null(pattern)) { [17:27:51.381] computeRestarts <- base::computeRestarts [17:27:51.381] grepl <- base::grepl [17:27:51.381] restarts <- computeRestarts(cond) [17:27:51.381] for (restart in restarts) { [17:27:51.381] name <- restart$name [17:27:51.381] if (is.null(name)) [17:27:51.381] next [17:27:51.381] if (!grepl(pattern, name)) [17:27:51.381] next [17:27:51.381] invokeRestart(restart) [17:27:51.381] muffled <- TRUE [17:27:51.381] break [17:27:51.381] } [17:27:51.381] } [17:27:51.381] } [17:27:51.381] invisible(muffled) [17:27:51.381] } [17:27:51.381] muffleCondition(cond, pattern = "^muffle") [17:27:51.381] } [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] if (TRUE) { [17:27:51.381] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.381] { [17:27:51.381] inherits <- base::inherits [17:27:51.381] invokeRestart <- base::invokeRestart [17:27:51.381] is.null <- base::is.null [17:27:51.381] muffled <- FALSE [17:27:51.381] if (inherits(cond, "message")) { [17:27:51.381] muffled <- grepl(pattern, "muffleMessage") [17:27:51.381] if (muffled) [17:27:51.381] invokeRestart("muffleMessage") [17:27:51.381] } [17:27:51.381] else if (inherits(cond, "warning")) { [17:27:51.381] muffled <- grepl(pattern, "muffleWarning") [17:27:51.381] if (muffled) [17:27:51.381] invokeRestart("muffleWarning") [17:27:51.381] } [17:27:51.381] else if (inherits(cond, "condition")) { [17:27:51.381] if (!is.null(pattern)) { [17:27:51.381] computeRestarts <- base::computeRestarts [17:27:51.381] grepl <- base::grepl [17:27:51.381] restarts <- computeRestarts(cond) [17:27:51.381] for (restart in restarts) { [17:27:51.381] name <- restart$name [17:27:51.381] if (is.null(name)) [17:27:51.381] next [17:27:51.381] if (!grepl(pattern, name)) [17:27:51.381] next [17:27:51.381] invokeRestart(restart) [17:27:51.381] muffled <- TRUE [17:27:51.381] break [17:27:51.381] } [17:27:51.381] } [17:27:51.381] } [17:27:51.381] invisible(muffled) [17:27:51.381] } [17:27:51.381] muffleCondition(cond, pattern = "^muffle") [17:27:51.381] } [17:27:51.381] } [17:27:51.381] } [17:27:51.381] })) [17:27:51.381] }, error = function(ex) { [17:27:51.381] base::structure(base::list(value = NULL, visible = NULL, [17:27:51.381] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.381] ...future.rng), started = ...future.startTime, [17:27:51.381] finished = Sys.time(), session_uuid = NA_character_, [17:27:51.381] version = "1.8"), class = "FutureResult") [17:27:51.381] }, finally = { [17:27:51.381] if (!identical(...future.workdir, getwd())) [17:27:51.381] setwd(...future.workdir) [17:27:51.381] { [17:27:51.381] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:51.381] ...future.oldOptions$nwarnings <- NULL [17:27:51.381] } [17:27:51.381] base::options(...future.oldOptions) [17:27:51.381] if (.Platform$OS.type == "windows") { [17:27:51.381] old_names <- names(...future.oldEnvVars) [17:27:51.381] envs <- base::Sys.getenv() [17:27:51.381] names <- names(envs) [17:27:51.381] common <- intersect(names, old_names) [17:27:51.381] added <- setdiff(names, old_names) [17:27:51.381] removed <- setdiff(old_names, names) [17:27:51.381] changed <- common[...future.oldEnvVars[common] != [17:27:51.381] envs[common]] [17:27:51.381] NAMES <- toupper(changed) [17:27:51.381] args <- list() [17:27:51.381] for (kk in seq_along(NAMES)) { [17:27:51.381] name <- changed[[kk]] [17:27:51.381] NAME <- NAMES[[kk]] [17:27:51.381] if (name != NAME && is.element(NAME, old_names)) [17:27:51.381] next [17:27:51.381] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.381] } [17:27:51.381] NAMES <- toupper(added) [17:27:51.381] for (kk in seq_along(NAMES)) { [17:27:51.381] name <- added[[kk]] [17:27:51.381] NAME <- NAMES[[kk]] [17:27:51.381] if (name != NAME && is.element(NAME, old_names)) [17:27:51.381] next [17:27:51.381] args[[name]] <- "" [17:27:51.381] } [17:27:51.381] NAMES <- toupper(removed) [17:27:51.381] for (kk in seq_along(NAMES)) { [17:27:51.381] name <- removed[[kk]] [17:27:51.381] NAME <- NAMES[[kk]] [17:27:51.381] if (name != NAME && is.element(NAME, old_names)) [17:27:51.381] next [17:27:51.381] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.381] } [17:27:51.381] if (length(args) > 0) [17:27:51.381] base::do.call(base::Sys.setenv, args = args) [17:27:51.381] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:51.381] } [17:27:51.381] { [17:27:51.381] if (base::length(...future.futureOptionsAdded) > [17:27:51.381] 0L) { [17:27:51.381] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:51.381] base::names(opts) <- ...future.futureOptionsAdded [17:27:51.381] base::options(opts) [17:27:51.381] } [17:27:51.381] { [17:27:51.381] { [17:27:51.381] base::options(mc.cores = ...future.mc.cores.old) [17:27:51.381] NULL [17:27:51.381] } [17:27:51.381] options(future.plan = NULL) [17:27:51.381] if (is.na(NA_character_)) [17:27:51.381] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.381] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:51.381] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:51.381] .init = FALSE) [17:27:51.381] } [17:27:51.381] } [17:27:51.381] } [17:27:51.381] }) [17:27:51.381] if (TRUE) { [17:27:51.381] base::sink(type = "output", split = FALSE) [17:27:51.381] if (TRUE) { [17:27:51.381] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:51.381] } [17:27:51.381] else { [17:27:51.381] ...future.result["stdout"] <- base::list(NULL) [17:27:51.381] } [17:27:51.381] base::close(...future.stdout) [17:27:51.381] ...future.stdout <- NULL [17:27:51.381] } [17:27:51.381] ...future.result$conditions <- ...future.conditions [17:27:51.381] ...future.result$finished <- base::Sys.time() [17:27:51.381] ...future.result [17:27:51.381] } [17:27:51.387] MultisessionFuture started [17:27:51.387] - Launch lazy future ... done [17:27:51.387] run() for 'MultisessionFuture' ... done [17:27:51.906] receiveMessageFromWorker() for ClusterFuture ... [17:27:51.907] - Validating connection of MultisessionFuture [17:27:51.907] - received message: FutureResult [17:27:51.907] - Received FutureResult [17:27:51.907] - Erased future from FutureRegistry [17:27:51.908] result() for ClusterFuture ... [17:27:51.908] - result already collected: FutureResult [17:27:51.908] result() for ClusterFuture ... done [17:27:51.908] receiveMessageFromWorker() for ClusterFuture ... done [17:27:51.908] A MultisessionFuture was resolved (result was not collected) [17:27:51.908] getGlobalsAndPackages() ... [17:27:51.909] Searching for globals... [17:27:51.910] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:51.910] Searching for globals ... DONE [17:27:51.910] Resolving globals: FALSE [17:27:51.911] [17:27:51.911] [17:27:51.911] getGlobalsAndPackages() ... DONE [17:27:51.911] run() for 'Future' ... [17:27:51.912] - state: 'created' [17:27:51.912] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:51.925] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:51.926] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:51.926] - Field: 'node' [17:27:51.926] - Field: 'label' [17:27:51.926] - Field: 'local' [17:27:51.926] - Field: 'owner' [17:27:51.926] - Field: 'envir' [17:27:51.927] - Field: 'workers' [17:27:51.927] - Field: 'packages' [17:27:51.927] - Field: 'gc' [17:27:51.927] - Field: 'conditions' [17:27:51.927] - Field: 'persistent' [17:27:51.928] - Field: 'expr' [17:27:51.928] - Field: 'uuid' [17:27:51.928] - Field: 'seed' [17:27:51.928] - Field: 'version' [17:27:51.928] - Field: 'result' [17:27:51.928] - Field: 'asynchronous' [17:27:51.929] - Field: 'calls' [17:27:51.929] - Field: 'globals' [17:27:51.929] - Field: 'stdout' [17:27:51.929] - Field: 'earlySignal' [17:27:51.929] - Field: 'lazy' [17:27:51.929] - Field: 'state' [17:27:51.930] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:51.930] - Launch lazy future ... [17:27:51.930] Packages needed by the future expression (n = 0): [17:27:51.930] Packages needed by future strategies (n = 0): [17:27:51.931] { [17:27:51.931] { [17:27:51.931] { [17:27:51.931] ...future.startTime <- base::Sys.time() [17:27:51.931] { [17:27:51.931] { [17:27:51.931] { [17:27:51.931] { [17:27:51.931] base::local({ [17:27:51.931] has_future <- base::requireNamespace("future", [17:27:51.931] quietly = TRUE) [17:27:51.931] if (has_future) { [17:27:51.931] ns <- base::getNamespace("future") [17:27:51.931] version <- ns[[".package"]][["version"]] [17:27:51.931] if (is.null(version)) [17:27:51.931] version <- utils::packageVersion("future") [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] version <- NULL [17:27:51.931] } [17:27:51.931] if (!has_future || version < "1.8.0") { [17:27:51.931] info <- base::c(r_version = base::gsub("R version ", [17:27:51.931] "", base::R.version$version.string), [17:27:51.931] platform = base::sprintf("%s (%s-bit)", [17:27:51.931] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:51.931] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:51.931] "release", "version")], collapse = " "), [17:27:51.931] hostname = base::Sys.info()[["nodename"]]) [17:27:51.931] info <- base::sprintf("%s: %s", base::names(info), [17:27:51.931] info) [17:27:51.931] info <- base::paste(info, collapse = "; ") [17:27:51.931] if (!has_future) { [17:27:51.931] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:51.931] info) [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:51.931] info, version) [17:27:51.931] } [17:27:51.931] base::stop(msg) [17:27:51.931] } [17:27:51.931] }) [17:27:51.931] } [17:27:51.931] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:51.931] base::options(mc.cores = 1L) [17:27:51.931] } [17:27:51.931] ...future.strategy.old <- future::plan("list") [17:27:51.931] options(future.plan = NULL) [17:27:51.931] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.931] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:51.931] } [17:27:51.931] ...future.workdir <- getwd() [17:27:51.931] } [17:27:51.931] ...future.oldOptions <- base::as.list(base::.Options) [17:27:51.931] ...future.oldEnvVars <- base::Sys.getenv() [17:27:51.931] } [17:27:51.931] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:51.931] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:51.931] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:51.931] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:51.931] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:51.931] future.stdout.windows.reencode = NULL, width = 80L) [17:27:51.931] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:51.931] base::names(...future.oldOptions)) [17:27:51.931] } [17:27:51.931] if (FALSE) { [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] if (TRUE) { [17:27:51.931] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:51.931] open = "w") [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:51.931] windows = "NUL", "/dev/null"), open = "w") [17:27:51.931] } [17:27:51.931] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:51.931] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:51.931] base::sink(type = "output", split = FALSE) [17:27:51.931] base::close(...future.stdout) [17:27:51.931] }, add = TRUE) [17:27:51.931] } [17:27:51.931] ...future.frame <- base::sys.nframe() [17:27:51.931] ...future.conditions <- base::list() [17:27:51.931] ...future.rng <- base::globalenv()$.Random.seed [17:27:51.931] if (FALSE) { [17:27:51.931] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:51.931] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:51.931] } [17:27:51.931] ...future.result <- base::tryCatch({ [17:27:51.931] base::withCallingHandlers({ [17:27:51.931] ...future.value <- base::withVisible(base::local({ [17:27:51.931] ...future.makeSendCondition <- base::local({ [17:27:51.931] sendCondition <- NULL [17:27:51.931] function(frame = 1L) { [17:27:51.931] if (is.function(sendCondition)) [17:27:51.931] return(sendCondition) [17:27:51.931] ns <- getNamespace("parallel") [17:27:51.931] if (exists("sendData", mode = "function", [17:27:51.931] envir = ns)) { [17:27:51.931] parallel_sendData <- get("sendData", mode = "function", [17:27:51.931] envir = ns) [17:27:51.931] envir <- sys.frame(frame) [17:27:51.931] master <- NULL [17:27:51.931] while (!identical(envir, .GlobalEnv) && [17:27:51.931] !identical(envir, emptyenv())) { [17:27:51.931] if (exists("master", mode = "list", envir = envir, [17:27:51.931] inherits = FALSE)) { [17:27:51.931] master <- get("master", mode = "list", [17:27:51.931] envir = envir, inherits = FALSE) [17:27:51.931] if (inherits(master, c("SOCKnode", [17:27:51.931] "SOCK0node"))) { [17:27:51.931] sendCondition <<- function(cond) { [17:27:51.931] data <- list(type = "VALUE", value = cond, [17:27:51.931] success = TRUE) [17:27:51.931] parallel_sendData(master, data) [17:27:51.931] } [17:27:51.931] return(sendCondition) [17:27:51.931] } [17:27:51.931] } [17:27:51.931] frame <- frame + 1L [17:27:51.931] envir <- sys.frame(frame) [17:27:51.931] } [17:27:51.931] } [17:27:51.931] sendCondition <<- function(cond) NULL [17:27:51.931] } [17:27:51.931] }) [17:27:51.931] withCallingHandlers({ [17:27:51.931] { [17:27:51.931] Sys.sleep(0.5) [17:27:51.931] list(a = 1, b = 42L) [17:27:51.931] } [17:27:51.931] }, immediateCondition = function(cond) { [17:27:51.931] sendCondition <- ...future.makeSendCondition() [17:27:51.931] sendCondition(cond) [17:27:51.931] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.931] { [17:27:51.931] inherits <- base::inherits [17:27:51.931] invokeRestart <- base::invokeRestart [17:27:51.931] is.null <- base::is.null [17:27:51.931] muffled <- FALSE [17:27:51.931] if (inherits(cond, "message")) { [17:27:51.931] muffled <- grepl(pattern, "muffleMessage") [17:27:51.931] if (muffled) [17:27:51.931] invokeRestart("muffleMessage") [17:27:51.931] } [17:27:51.931] else if (inherits(cond, "warning")) { [17:27:51.931] muffled <- grepl(pattern, "muffleWarning") [17:27:51.931] if (muffled) [17:27:51.931] invokeRestart("muffleWarning") [17:27:51.931] } [17:27:51.931] else if (inherits(cond, "condition")) { [17:27:51.931] if (!is.null(pattern)) { [17:27:51.931] computeRestarts <- base::computeRestarts [17:27:51.931] grepl <- base::grepl [17:27:51.931] restarts <- computeRestarts(cond) [17:27:51.931] for (restart in restarts) { [17:27:51.931] name <- restart$name [17:27:51.931] if (is.null(name)) [17:27:51.931] next [17:27:51.931] if (!grepl(pattern, name)) [17:27:51.931] next [17:27:51.931] invokeRestart(restart) [17:27:51.931] muffled <- TRUE [17:27:51.931] break [17:27:51.931] } [17:27:51.931] } [17:27:51.931] } [17:27:51.931] invisible(muffled) [17:27:51.931] } [17:27:51.931] muffleCondition(cond) [17:27:51.931] }) [17:27:51.931] })) [17:27:51.931] future::FutureResult(value = ...future.value$value, [17:27:51.931] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.931] ...future.rng), globalenv = if (FALSE) [17:27:51.931] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:51.931] ...future.globalenv.names)) [17:27:51.931] else NULL, started = ...future.startTime, version = "1.8") [17:27:51.931] }, condition = base::local({ [17:27:51.931] c <- base::c [17:27:51.931] inherits <- base::inherits [17:27:51.931] invokeRestart <- base::invokeRestart [17:27:51.931] length <- base::length [17:27:51.931] list <- base::list [17:27:51.931] seq.int <- base::seq.int [17:27:51.931] signalCondition <- base::signalCondition [17:27:51.931] sys.calls <- base::sys.calls [17:27:51.931] `[[` <- base::`[[` [17:27:51.931] `+` <- base::`+` [17:27:51.931] `<<-` <- base::`<<-` [17:27:51.931] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:51.931] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:51.931] 3L)] [17:27:51.931] } [17:27:51.931] function(cond) { [17:27:51.931] is_error <- inherits(cond, "error") [17:27:51.931] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:51.931] NULL) [17:27:51.931] if (is_error) { [17:27:51.931] sessionInformation <- function() { [17:27:51.931] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:51.931] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:51.931] search = base::search(), system = base::Sys.info()) [17:27:51.931] } [17:27:51.931] ...future.conditions[[length(...future.conditions) + [17:27:51.931] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:51.931] cond$call), session = sessionInformation(), [17:27:51.931] timestamp = base::Sys.time(), signaled = 0L) [17:27:51.931] signalCondition(cond) [17:27:51.931] } [17:27:51.931] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:51.931] "immediateCondition"))) { [17:27:51.931] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:51.931] ...future.conditions[[length(...future.conditions) + [17:27:51.931] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:51.931] if (TRUE && !signal) { [17:27:51.931] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.931] { [17:27:51.931] inherits <- base::inherits [17:27:51.931] invokeRestart <- base::invokeRestart [17:27:51.931] is.null <- base::is.null [17:27:51.931] muffled <- FALSE [17:27:51.931] if (inherits(cond, "message")) { [17:27:51.931] muffled <- grepl(pattern, "muffleMessage") [17:27:51.931] if (muffled) [17:27:51.931] invokeRestart("muffleMessage") [17:27:51.931] } [17:27:51.931] else if (inherits(cond, "warning")) { [17:27:51.931] muffled <- grepl(pattern, "muffleWarning") [17:27:51.931] if (muffled) [17:27:51.931] invokeRestart("muffleWarning") [17:27:51.931] } [17:27:51.931] else if (inherits(cond, "condition")) { [17:27:51.931] if (!is.null(pattern)) { [17:27:51.931] computeRestarts <- base::computeRestarts [17:27:51.931] grepl <- base::grepl [17:27:51.931] restarts <- computeRestarts(cond) [17:27:51.931] for (restart in restarts) { [17:27:51.931] name <- restart$name [17:27:51.931] if (is.null(name)) [17:27:51.931] next [17:27:51.931] if (!grepl(pattern, name)) [17:27:51.931] next [17:27:51.931] invokeRestart(restart) [17:27:51.931] muffled <- TRUE [17:27:51.931] break [17:27:51.931] } [17:27:51.931] } [17:27:51.931] } [17:27:51.931] invisible(muffled) [17:27:51.931] } [17:27:51.931] muffleCondition(cond, pattern = "^muffle") [17:27:51.931] } [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] if (TRUE) { [17:27:51.931] muffleCondition <- function (cond, pattern = "^muffle") [17:27:51.931] { [17:27:51.931] inherits <- base::inherits [17:27:51.931] invokeRestart <- base::invokeRestart [17:27:51.931] is.null <- base::is.null [17:27:51.931] muffled <- FALSE [17:27:51.931] if (inherits(cond, "message")) { [17:27:51.931] muffled <- grepl(pattern, "muffleMessage") [17:27:51.931] if (muffled) [17:27:51.931] invokeRestart("muffleMessage") [17:27:51.931] } [17:27:51.931] else if (inherits(cond, "warning")) { [17:27:51.931] muffled <- grepl(pattern, "muffleWarning") [17:27:51.931] if (muffled) [17:27:51.931] invokeRestart("muffleWarning") [17:27:51.931] } [17:27:51.931] else if (inherits(cond, "condition")) { [17:27:51.931] if (!is.null(pattern)) { [17:27:51.931] computeRestarts <- base::computeRestarts [17:27:51.931] grepl <- base::grepl [17:27:51.931] restarts <- computeRestarts(cond) [17:27:51.931] for (restart in restarts) { [17:27:51.931] name <- restart$name [17:27:51.931] if (is.null(name)) [17:27:51.931] next [17:27:51.931] if (!grepl(pattern, name)) [17:27:51.931] next [17:27:51.931] invokeRestart(restart) [17:27:51.931] muffled <- TRUE [17:27:51.931] break [17:27:51.931] } [17:27:51.931] } [17:27:51.931] } [17:27:51.931] invisible(muffled) [17:27:51.931] } [17:27:51.931] muffleCondition(cond, pattern = "^muffle") [17:27:51.931] } [17:27:51.931] } [17:27:51.931] } [17:27:51.931] })) [17:27:51.931] }, error = function(ex) { [17:27:51.931] base::structure(base::list(value = NULL, visible = NULL, [17:27:51.931] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:51.931] ...future.rng), started = ...future.startTime, [17:27:51.931] finished = Sys.time(), session_uuid = NA_character_, [17:27:51.931] version = "1.8"), class = "FutureResult") [17:27:51.931] }, finally = { [17:27:51.931] if (!identical(...future.workdir, getwd())) [17:27:51.931] setwd(...future.workdir) [17:27:51.931] { [17:27:51.931] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:51.931] ...future.oldOptions$nwarnings <- NULL [17:27:51.931] } [17:27:51.931] base::options(...future.oldOptions) [17:27:51.931] if (.Platform$OS.type == "windows") { [17:27:51.931] old_names <- names(...future.oldEnvVars) [17:27:51.931] envs <- base::Sys.getenv() [17:27:51.931] names <- names(envs) [17:27:51.931] common <- intersect(names, old_names) [17:27:51.931] added <- setdiff(names, old_names) [17:27:51.931] removed <- setdiff(old_names, names) [17:27:51.931] changed <- common[...future.oldEnvVars[common] != [17:27:51.931] envs[common]] [17:27:51.931] NAMES <- toupper(changed) [17:27:51.931] args <- list() [17:27:51.931] for (kk in seq_along(NAMES)) { [17:27:51.931] name <- changed[[kk]] [17:27:51.931] NAME <- NAMES[[kk]] [17:27:51.931] if (name != NAME && is.element(NAME, old_names)) [17:27:51.931] next [17:27:51.931] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.931] } [17:27:51.931] NAMES <- toupper(added) [17:27:51.931] for (kk in seq_along(NAMES)) { [17:27:51.931] name <- added[[kk]] [17:27:51.931] NAME <- NAMES[[kk]] [17:27:51.931] if (name != NAME && is.element(NAME, old_names)) [17:27:51.931] next [17:27:51.931] args[[name]] <- "" [17:27:51.931] } [17:27:51.931] NAMES <- toupper(removed) [17:27:51.931] for (kk in seq_along(NAMES)) { [17:27:51.931] name <- removed[[kk]] [17:27:51.931] NAME <- NAMES[[kk]] [17:27:51.931] if (name != NAME && is.element(NAME, old_names)) [17:27:51.931] next [17:27:51.931] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:51.931] } [17:27:51.931] if (length(args) > 0) [17:27:51.931] base::do.call(base::Sys.setenv, args = args) [17:27:51.931] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:51.931] } [17:27:51.931] { [17:27:51.931] if (base::length(...future.futureOptionsAdded) > [17:27:51.931] 0L) { [17:27:51.931] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:51.931] base::names(opts) <- ...future.futureOptionsAdded [17:27:51.931] base::options(opts) [17:27:51.931] } [17:27:51.931] { [17:27:51.931] { [17:27:51.931] base::options(mc.cores = ...future.mc.cores.old) [17:27:51.931] NULL [17:27:51.931] } [17:27:51.931] options(future.plan = NULL) [17:27:51.931] if (is.na(NA_character_)) [17:27:51.931] Sys.unsetenv("R_FUTURE_PLAN") [17:27:51.931] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:51.931] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:51.931] .init = FALSE) [17:27:51.931] } [17:27:51.931] } [17:27:51.931] } [17:27:51.931] }) [17:27:51.931] if (TRUE) { [17:27:51.931] base::sink(type = "output", split = FALSE) [17:27:51.931] if (TRUE) { [17:27:51.931] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:51.931] } [17:27:51.931] else { [17:27:51.931] ...future.result["stdout"] <- base::list(NULL) [17:27:51.931] } [17:27:51.931] base::close(...future.stdout) [17:27:51.931] ...future.stdout <- NULL [17:27:51.931] } [17:27:51.931] ...future.result$conditions <- ...future.conditions [17:27:51.931] ...future.result$finished <- base::Sys.time() [17:27:51.931] ...future.result [17:27:51.931] } [17:27:51.937] MultisessionFuture started [17:27:51.937] - Launch lazy future ... done [17:27:51.937] run() for 'MultisessionFuture' ... done [17:27:52.458] receiveMessageFromWorker() for ClusterFuture ... [17:27:52.458] - Validating connection of MultisessionFuture [17:27:52.459] - received message: FutureResult [17:27:52.459] - Received FutureResult [17:27:52.459] - Erased future from FutureRegistry [17:27:52.459] result() for ClusterFuture ... [17:27:52.459] - result already collected: FutureResult [17:27:52.460] result() for ClusterFuture ... done [17:27:52.460] receiveMessageFromWorker() for ClusterFuture ... done [17:27:52.460] A MultisessionFuture was resolved (result was not collected) - w/ exception ... [17:27:52.460] getGlobalsAndPackages() ... [17:27:52.460] Searching for globals... [17:27:52.463] - globals found: [2] 'list', 'stop' [17:27:52.463] Searching for globals ... DONE [17:27:52.464] Resolving globals: FALSE [17:27:52.464] [17:27:52.464] [17:27:52.464] getGlobalsAndPackages() ... DONE [17:27:52.465] run() for 'Future' ... [17:27:52.465] - state: 'created' [17:27:52.465] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:52.479] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:52.480] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:52.480] - Field: 'node' [17:27:52.480] - Field: 'label' [17:27:52.480] - Field: 'local' [17:27:52.480] - Field: 'owner' [17:27:52.480] - Field: 'envir' [17:27:52.481] - Field: 'workers' [17:27:52.481] - Field: 'packages' [17:27:52.481] - Field: 'gc' [17:27:52.481] - Field: 'conditions' [17:27:52.481] - Field: 'persistent' [17:27:52.481] - Field: 'expr' [17:27:52.482] - Field: 'uuid' [17:27:52.482] - Field: 'seed' [17:27:52.482] - Field: 'version' [17:27:52.482] - Field: 'result' [17:27:52.482] - Field: 'asynchronous' [17:27:52.482] - Field: 'calls' [17:27:52.483] - Field: 'globals' [17:27:52.483] - Field: 'stdout' [17:27:52.483] - Field: 'earlySignal' [17:27:52.483] - Field: 'lazy' [17:27:52.483] - Field: 'state' [17:27:52.484] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:52.484] - Launch lazy future ... [17:27:52.484] Packages needed by the future expression (n = 0): [17:27:52.484] Packages needed by future strategies (n = 0): [17:27:52.485] { [17:27:52.485] { [17:27:52.485] { [17:27:52.485] ...future.startTime <- base::Sys.time() [17:27:52.485] { [17:27:52.485] { [17:27:52.485] { [17:27:52.485] { [17:27:52.485] base::local({ [17:27:52.485] has_future <- base::requireNamespace("future", [17:27:52.485] quietly = TRUE) [17:27:52.485] if (has_future) { [17:27:52.485] ns <- base::getNamespace("future") [17:27:52.485] version <- ns[[".package"]][["version"]] [17:27:52.485] if (is.null(version)) [17:27:52.485] version <- utils::packageVersion("future") [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] version <- NULL [17:27:52.485] } [17:27:52.485] if (!has_future || version < "1.8.0") { [17:27:52.485] info <- base::c(r_version = base::gsub("R version ", [17:27:52.485] "", base::R.version$version.string), [17:27:52.485] platform = base::sprintf("%s (%s-bit)", [17:27:52.485] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:52.485] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:52.485] "release", "version")], collapse = " "), [17:27:52.485] hostname = base::Sys.info()[["nodename"]]) [17:27:52.485] info <- base::sprintf("%s: %s", base::names(info), [17:27:52.485] info) [17:27:52.485] info <- base::paste(info, collapse = "; ") [17:27:52.485] if (!has_future) { [17:27:52.485] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:52.485] info) [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:52.485] info, version) [17:27:52.485] } [17:27:52.485] base::stop(msg) [17:27:52.485] } [17:27:52.485] }) [17:27:52.485] } [17:27:52.485] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:52.485] base::options(mc.cores = 1L) [17:27:52.485] } [17:27:52.485] ...future.strategy.old <- future::plan("list") [17:27:52.485] options(future.plan = NULL) [17:27:52.485] Sys.unsetenv("R_FUTURE_PLAN") [17:27:52.485] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:52.485] } [17:27:52.485] ...future.workdir <- getwd() [17:27:52.485] } [17:27:52.485] ...future.oldOptions <- base::as.list(base::.Options) [17:27:52.485] ...future.oldEnvVars <- base::Sys.getenv() [17:27:52.485] } [17:27:52.485] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:52.485] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:52.485] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:52.485] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:52.485] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:52.485] future.stdout.windows.reencode = NULL, width = 80L) [17:27:52.485] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:52.485] base::names(...future.oldOptions)) [17:27:52.485] } [17:27:52.485] if (FALSE) { [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] if (TRUE) { [17:27:52.485] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:52.485] open = "w") [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:52.485] windows = "NUL", "/dev/null"), open = "w") [17:27:52.485] } [17:27:52.485] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:52.485] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:52.485] base::sink(type = "output", split = FALSE) [17:27:52.485] base::close(...future.stdout) [17:27:52.485] }, add = TRUE) [17:27:52.485] } [17:27:52.485] ...future.frame <- base::sys.nframe() [17:27:52.485] ...future.conditions <- base::list() [17:27:52.485] ...future.rng <- base::globalenv()$.Random.seed [17:27:52.485] if (FALSE) { [17:27:52.485] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:52.485] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:52.485] } [17:27:52.485] ...future.result <- base::tryCatch({ [17:27:52.485] base::withCallingHandlers({ [17:27:52.485] ...future.value <- base::withVisible(base::local({ [17:27:52.485] ...future.makeSendCondition <- base::local({ [17:27:52.485] sendCondition <- NULL [17:27:52.485] function(frame = 1L) { [17:27:52.485] if (is.function(sendCondition)) [17:27:52.485] return(sendCondition) [17:27:52.485] ns <- getNamespace("parallel") [17:27:52.485] if (exists("sendData", mode = "function", [17:27:52.485] envir = ns)) { [17:27:52.485] parallel_sendData <- get("sendData", mode = "function", [17:27:52.485] envir = ns) [17:27:52.485] envir <- sys.frame(frame) [17:27:52.485] master <- NULL [17:27:52.485] while (!identical(envir, .GlobalEnv) && [17:27:52.485] !identical(envir, emptyenv())) { [17:27:52.485] if (exists("master", mode = "list", envir = envir, [17:27:52.485] inherits = FALSE)) { [17:27:52.485] master <- get("master", mode = "list", [17:27:52.485] envir = envir, inherits = FALSE) [17:27:52.485] if (inherits(master, c("SOCKnode", [17:27:52.485] "SOCK0node"))) { [17:27:52.485] sendCondition <<- function(cond) { [17:27:52.485] data <- list(type = "VALUE", value = cond, [17:27:52.485] success = TRUE) [17:27:52.485] parallel_sendData(master, data) [17:27:52.485] } [17:27:52.485] return(sendCondition) [17:27:52.485] } [17:27:52.485] } [17:27:52.485] frame <- frame + 1L [17:27:52.485] envir <- sys.frame(frame) [17:27:52.485] } [17:27:52.485] } [17:27:52.485] sendCondition <<- function(cond) NULL [17:27:52.485] } [17:27:52.485] }) [17:27:52.485] withCallingHandlers({ [17:27:52.485] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:52.485] }, immediateCondition = function(cond) { [17:27:52.485] sendCondition <- ...future.makeSendCondition() [17:27:52.485] sendCondition(cond) [17:27:52.485] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.485] { [17:27:52.485] inherits <- base::inherits [17:27:52.485] invokeRestart <- base::invokeRestart [17:27:52.485] is.null <- base::is.null [17:27:52.485] muffled <- FALSE [17:27:52.485] if (inherits(cond, "message")) { [17:27:52.485] muffled <- grepl(pattern, "muffleMessage") [17:27:52.485] if (muffled) [17:27:52.485] invokeRestart("muffleMessage") [17:27:52.485] } [17:27:52.485] else if (inherits(cond, "warning")) { [17:27:52.485] muffled <- grepl(pattern, "muffleWarning") [17:27:52.485] if (muffled) [17:27:52.485] invokeRestart("muffleWarning") [17:27:52.485] } [17:27:52.485] else if (inherits(cond, "condition")) { [17:27:52.485] if (!is.null(pattern)) { [17:27:52.485] computeRestarts <- base::computeRestarts [17:27:52.485] grepl <- base::grepl [17:27:52.485] restarts <- computeRestarts(cond) [17:27:52.485] for (restart in restarts) { [17:27:52.485] name <- restart$name [17:27:52.485] if (is.null(name)) [17:27:52.485] next [17:27:52.485] if (!grepl(pattern, name)) [17:27:52.485] next [17:27:52.485] invokeRestart(restart) [17:27:52.485] muffled <- TRUE [17:27:52.485] break [17:27:52.485] } [17:27:52.485] } [17:27:52.485] } [17:27:52.485] invisible(muffled) [17:27:52.485] } [17:27:52.485] muffleCondition(cond) [17:27:52.485] }) [17:27:52.485] })) [17:27:52.485] future::FutureResult(value = ...future.value$value, [17:27:52.485] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:52.485] ...future.rng), globalenv = if (FALSE) [17:27:52.485] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:52.485] ...future.globalenv.names)) [17:27:52.485] else NULL, started = ...future.startTime, version = "1.8") [17:27:52.485] }, condition = base::local({ [17:27:52.485] c <- base::c [17:27:52.485] inherits <- base::inherits [17:27:52.485] invokeRestart <- base::invokeRestart [17:27:52.485] length <- base::length [17:27:52.485] list <- base::list [17:27:52.485] seq.int <- base::seq.int [17:27:52.485] signalCondition <- base::signalCondition [17:27:52.485] sys.calls <- base::sys.calls [17:27:52.485] `[[` <- base::`[[` [17:27:52.485] `+` <- base::`+` [17:27:52.485] `<<-` <- base::`<<-` [17:27:52.485] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:52.485] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:52.485] 3L)] [17:27:52.485] } [17:27:52.485] function(cond) { [17:27:52.485] is_error <- inherits(cond, "error") [17:27:52.485] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:52.485] NULL) [17:27:52.485] if (is_error) { [17:27:52.485] sessionInformation <- function() { [17:27:52.485] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:52.485] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:52.485] search = base::search(), system = base::Sys.info()) [17:27:52.485] } [17:27:52.485] ...future.conditions[[length(...future.conditions) + [17:27:52.485] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:52.485] cond$call), session = sessionInformation(), [17:27:52.485] timestamp = base::Sys.time(), signaled = 0L) [17:27:52.485] signalCondition(cond) [17:27:52.485] } [17:27:52.485] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:52.485] "immediateCondition"))) { [17:27:52.485] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:52.485] ...future.conditions[[length(...future.conditions) + [17:27:52.485] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:52.485] if (TRUE && !signal) { [17:27:52.485] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.485] { [17:27:52.485] inherits <- base::inherits [17:27:52.485] invokeRestart <- base::invokeRestart [17:27:52.485] is.null <- base::is.null [17:27:52.485] muffled <- FALSE [17:27:52.485] if (inherits(cond, "message")) { [17:27:52.485] muffled <- grepl(pattern, "muffleMessage") [17:27:52.485] if (muffled) [17:27:52.485] invokeRestart("muffleMessage") [17:27:52.485] } [17:27:52.485] else if (inherits(cond, "warning")) { [17:27:52.485] muffled <- grepl(pattern, "muffleWarning") [17:27:52.485] if (muffled) [17:27:52.485] invokeRestart("muffleWarning") [17:27:52.485] } [17:27:52.485] else if (inherits(cond, "condition")) { [17:27:52.485] if (!is.null(pattern)) { [17:27:52.485] computeRestarts <- base::computeRestarts [17:27:52.485] grepl <- base::grepl [17:27:52.485] restarts <- computeRestarts(cond) [17:27:52.485] for (restart in restarts) { [17:27:52.485] name <- restart$name [17:27:52.485] if (is.null(name)) [17:27:52.485] next [17:27:52.485] if (!grepl(pattern, name)) [17:27:52.485] next [17:27:52.485] invokeRestart(restart) [17:27:52.485] muffled <- TRUE [17:27:52.485] break [17:27:52.485] } [17:27:52.485] } [17:27:52.485] } [17:27:52.485] invisible(muffled) [17:27:52.485] } [17:27:52.485] muffleCondition(cond, pattern = "^muffle") [17:27:52.485] } [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] if (TRUE) { [17:27:52.485] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.485] { [17:27:52.485] inherits <- base::inherits [17:27:52.485] invokeRestart <- base::invokeRestart [17:27:52.485] is.null <- base::is.null [17:27:52.485] muffled <- FALSE [17:27:52.485] if (inherits(cond, "message")) { [17:27:52.485] muffled <- grepl(pattern, "muffleMessage") [17:27:52.485] if (muffled) [17:27:52.485] invokeRestart("muffleMessage") [17:27:52.485] } [17:27:52.485] else if (inherits(cond, "warning")) { [17:27:52.485] muffled <- grepl(pattern, "muffleWarning") [17:27:52.485] if (muffled) [17:27:52.485] invokeRestart("muffleWarning") [17:27:52.485] } [17:27:52.485] else if (inherits(cond, "condition")) { [17:27:52.485] if (!is.null(pattern)) { [17:27:52.485] computeRestarts <- base::computeRestarts [17:27:52.485] grepl <- base::grepl [17:27:52.485] restarts <- computeRestarts(cond) [17:27:52.485] for (restart in restarts) { [17:27:52.485] name <- restart$name [17:27:52.485] if (is.null(name)) [17:27:52.485] next [17:27:52.485] if (!grepl(pattern, name)) [17:27:52.485] next [17:27:52.485] invokeRestart(restart) [17:27:52.485] muffled <- TRUE [17:27:52.485] break [17:27:52.485] } [17:27:52.485] } [17:27:52.485] } [17:27:52.485] invisible(muffled) [17:27:52.485] } [17:27:52.485] muffleCondition(cond, pattern = "^muffle") [17:27:52.485] } [17:27:52.485] } [17:27:52.485] } [17:27:52.485] })) [17:27:52.485] }, error = function(ex) { [17:27:52.485] base::structure(base::list(value = NULL, visible = NULL, [17:27:52.485] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:52.485] ...future.rng), started = ...future.startTime, [17:27:52.485] finished = Sys.time(), session_uuid = NA_character_, [17:27:52.485] version = "1.8"), class = "FutureResult") [17:27:52.485] }, finally = { [17:27:52.485] if (!identical(...future.workdir, getwd())) [17:27:52.485] setwd(...future.workdir) [17:27:52.485] { [17:27:52.485] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:52.485] ...future.oldOptions$nwarnings <- NULL [17:27:52.485] } [17:27:52.485] base::options(...future.oldOptions) [17:27:52.485] if (.Platform$OS.type == "windows") { [17:27:52.485] old_names <- names(...future.oldEnvVars) [17:27:52.485] envs <- base::Sys.getenv() [17:27:52.485] names <- names(envs) [17:27:52.485] common <- intersect(names, old_names) [17:27:52.485] added <- setdiff(names, old_names) [17:27:52.485] removed <- setdiff(old_names, names) [17:27:52.485] changed <- common[...future.oldEnvVars[common] != [17:27:52.485] envs[common]] [17:27:52.485] NAMES <- toupper(changed) [17:27:52.485] args <- list() [17:27:52.485] for (kk in seq_along(NAMES)) { [17:27:52.485] name <- changed[[kk]] [17:27:52.485] NAME <- NAMES[[kk]] [17:27:52.485] if (name != NAME && is.element(NAME, old_names)) [17:27:52.485] next [17:27:52.485] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:52.485] } [17:27:52.485] NAMES <- toupper(added) [17:27:52.485] for (kk in seq_along(NAMES)) { [17:27:52.485] name <- added[[kk]] [17:27:52.485] NAME <- NAMES[[kk]] [17:27:52.485] if (name != NAME && is.element(NAME, old_names)) [17:27:52.485] next [17:27:52.485] args[[name]] <- "" [17:27:52.485] } [17:27:52.485] NAMES <- toupper(removed) [17:27:52.485] for (kk in seq_along(NAMES)) { [17:27:52.485] name <- removed[[kk]] [17:27:52.485] NAME <- NAMES[[kk]] [17:27:52.485] if (name != NAME && is.element(NAME, old_names)) [17:27:52.485] next [17:27:52.485] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:52.485] } [17:27:52.485] if (length(args) > 0) [17:27:52.485] base::do.call(base::Sys.setenv, args = args) [17:27:52.485] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:52.485] } [17:27:52.485] { [17:27:52.485] if (base::length(...future.futureOptionsAdded) > [17:27:52.485] 0L) { [17:27:52.485] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:52.485] base::names(opts) <- ...future.futureOptionsAdded [17:27:52.485] base::options(opts) [17:27:52.485] } [17:27:52.485] { [17:27:52.485] { [17:27:52.485] base::options(mc.cores = ...future.mc.cores.old) [17:27:52.485] NULL [17:27:52.485] } [17:27:52.485] options(future.plan = NULL) [17:27:52.485] if (is.na(NA_character_)) [17:27:52.485] Sys.unsetenv("R_FUTURE_PLAN") [17:27:52.485] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:52.485] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:52.485] .init = FALSE) [17:27:52.485] } [17:27:52.485] } [17:27:52.485] } [17:27:52.485] }) [17:27:52.485] if (TRUE) { [17:27:52.485] base::sink(type = "output", split = FALSE) [17:27:52.485] if (TRUE) { [17:27:52.485] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:52.485] } [17:27:52.485] else { [17:27:52.485] ...future.result["stdout"] <- base::list(NULL) [17:27:52.485] } [17:27:52.485] base::close(...future.stdout) [17:27:52.485] ...future.stdout <- NULL [17:27:52.485] } [17:27:52.485] ...future.result$conditions <- ...future.conditions [17:27:52.485] ...future.result$finished <- base::Sys.time() [17:27:52.485] ...future.result [17:27:52.485] } [17:27:52.490] MultisessionFuture started [17:27:52.490] - Launch lazy future ... done [17:27:52.490] run() for 'MultisessionFuture' ... done [17:27:52.504] receiveMessageFromWorker() for ClusterFuture ... [17:27:52.504] - Validating connection of MultisessionFuture [17:27:52.504] - received message: FutureResult [17:27:52.505] - Received FutureResult [17:27:52.505] - Erased future from FutureRegistry [17:27:52.505] result() for ClusterFuture ... [17:27:52.505] - result already collected: FutureResult [17:27:52.505] result() for ClusterFuture ... done [17:27:52.505] signalConditions() ... [17:27:52.506] - include = 'immediateCondition' [17:27:52.506] - exclude = [17:27:52.506] - resignal = FALSE [17:27:52.506] - Number of conditions: 1 [17:27:52.506] signalConditions() ... done [17:27:52.506] receiveMessageFromWorker() for ClusterFuture ... done [17:27:52.507] A MultisessionFuture was resolved (result was not collected) [17:27:52.507] getGlobalsAndPackages() ... [17:27:52.507] Searching for globals... [17:27:52.508] - globals found: [2] 'list', 'stop' [17:27:52.508] Searching for globals ... DONE [17:27:52.508] Resolving globals: FALSE [17:27:52.508] [17:27:52.509] [17:27:52.509] getGlobalsAndPackages() ... DONE [17:27:52.509] run() for 'Future' ... [17:27:52.509] - state: 'created' [17:27:52.509] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:52.524] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:52.524] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:52.524] - Field: 'node' [17:27:52.525] - Field: 'label' [17:27:52.525] - Field: 'local' [17:27:52.525] - Field: 'owner' [17:27:52.525] - Field: 'envir' [17:27:52.525] - Field: 'workers' [17:27:52.525] - Field: 'packages' [17:27:52.526] - Field: 'gc' [17:27:52.526] - Field: 'conditions' [17:27:52.526] - Field: 'persistent' [17:27:52.526] - Field: 'expr' [17:27:52.526] - Field: 'uuid' [17:27:52.527] - Field: 'seed' [17:27:52.527] - Field: 'version' [17:27:52.527] - Field: 'result' [17:27:52.527] - Field: 'asynchronous' [17:27:52.527] - Field: 'calls' [17:27:52.527] - Field: 'globals' [17:27:52.528] - Field: 'stdout' [17:27:52.528] - Field: 'earlySignal' [17:27:52.528] - Field: 'lazy' [17:27:52.528] - Field: 'state' [17:27:52.528] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:52.528] - Launch lazy future ... [17:27:52.529] Packages needed by the future expression (n = 0): [17:27:52.529] Packages needed by future strategies (n = 0): [17:27:52.530] { [17:27:52.530] { [17:27:52.530] { [17:27:52.530] ...future.startTime <- base::Sys.time() [17:27:52.530] { [17:27:52.530] { [17:27:52.530] { [17:27:52.530] { [17:27:52.530] base::local({ [17:27:52.530] has_future <- base::requireNamespace("future", [17:27:52.530] quietly = TRUE) [17:27:52.530] if (has_future) { [17:27:52.530] ns <- base::getNamespace("future") [17:27:52.530] version <- ns[[".package"]][["version"]] [17:27:52.530] if (is.null(version)) [17:27:52.530] version <- utils::packageVersion("future") [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] version <- NULL [17:27:52.530] } [17:27:52.530] if (!has_future || version < "1.8.0") { [17:27:52.530] info <- base::c(r_version = base::gsub("R version ", [17:27:52.530] "", base::R.version$version.string), [17:27:52.530] platform = base::sprintf("%s (%s-bit)", [17:27:52.530] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:52.530] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:52.530] "release", "version")], collapse = " "), [17:27:52.530] hostname = base::Sys.info()[["nodename"]]) [17:27:52.530] info <- base::sprintf("%s: %s", base::names(info), [17:27:52.530] info) [17:27:52.530] info <- base::paste(info, collapse = "; ") [17:27:52.530] if (!has_future) { [17:27:52.530] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:52.530] info) [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:52.530] info, version) [17:27:52.530] } [17:27:52.530] base::stop(msg) [17:27:52.530] } [17:27:52.530] }) [17:27:52.530] } [17:27:52.530] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:52.530] base::options(mc.cores = 1L) [17:27:52.530] } [17:27:52.530] ...future.strategy.old <- future::plan("list") [17:27:52.530] options(future.plan = NULL) [17:27:52.530] Sys.unsetenv("R_FUTURE_PLAN") [17:27:52.530] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:52.530] } [17:27:52.530] ...future.workdir <- getwd() [17:27:52.530] } [17:27:52.530] ...future.oldOptions <- base::as.list(base::.Options) [17:27:52.530] ...future.oldEnvVars <- base::Sys.getenv() [17:27:52.530] } [17:27:52.530] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:52.530] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:52.530] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:52.530] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:52.530] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:52.530] future.stdout.windows.reencode = NULL, width = 80L) [17:27:52.530] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:52.530] base::names(...future.oldOptions)) [17:27:52.530] } [17:27:52.530] if (FALSE) { [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] if (TRUE) { [17:27:52.530] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:52.530] open = "w") [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:52.530] windows = "NUL", "/dev/null"), open = "w") [17:27:52.530] } [17:27:52.530] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:52.530] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:52.530] base::sink(type = "output", split = FALSE) [17:27:52.530] base::close(...future.stdout) [17:27:52.530] }, add = TRUE) [17:27:52.530] } [17:27:52.530] ...future.frame <- base::sys.nframe() [17:27:52.530] ...future.conditions <- base::list() [17:27:52.530] ...future.rng <- base::globalenv()$.Random.seed [17:27:52.530] if (FALSE) { [17:27:52.530] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:52.530] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:52.530] } [17:27:52.530] ...future.result <- base::tryCatch({ [17:27:52.530] base::withCallingHandlers({ [17:27:52.530] ...future.value <- base::withVisible(base::local({ [17:27:52.530] ...future.makeSendCondition <- base::local({ [17:27:52.530] sendCondition <- NULL [17:27:52.530] function(frame = 1L) { [17:27:52.530] if (is.function(sendCondition)) [17:27:52.530] return(sendCondition) [17:27:52.530] ns <- getNamespace("parallel") [17:27:52.530] if (exists("sendData", mode = "function", [17:27:52.530] envir = ns)) { [17:27:52.530] parallel_sendData <- get("sendData", mode = "function", [17:27:52.530] envir = ns) [17:27:52.530] envir <- sys.frame(frame) [17:27:52.530] master <- NULL [17:27:52.530] while (!identical(envir, .GlobalEnv) && [17:27:52.530] !identical(envir, emptyenv())) { [17:27:52.530] if (exists("master", mode = "list", envir = envir, [17:27:52.530] inherits = FALSE)) { [17:27:52.530] master <- get("master", mode = "list", [17:27:52.530] envir = envir, inherits = FALSE) [17:27:52.530] if (inherits(master, c("SOCKnode", [17:27:52.530] "SOCK0node"))) { [17:27:52.530] sendCondition <<- function(cond) { [17:27:52.530] data <- list(type = "VALUE", value = cond, [17:27:52.530] success = TRUE) [17:27:52.530] parallel_sendData(master, data) [17:27:52.530] } [17:27:52.530] return(sendCondition) [17:27:52.530] } [17:27:52.530] } [17:27:52.530] frame <- frame + 1L [17:27:52.530] envir <- sys.frame(frame) [17:27:52.530] } [17:27:52.530] } [17:27:52.530] sendCondition <<- function(cond) NULL [17:27:52.530] } [17:27:52.530] }) [17:27:52.530] withCallingHandlers({ [17:27:52.530] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:52.530] }, immediateCondition = function(cond) { [17:27:52.530] sendCondition <- ...future.makeSendCondition() [17:27:52.530] sendCondition(cond) [17:27:52.530] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.530] { [17:27:52.530] inherits <- base::inherits [17:27:52.530] invokeRestart <- base::invokeRestart [17:27:52.530] is.null <- base::is.null [17:27:52.530] muffled <- FALSE [17:27:52.530] if (inherits(cond, "message")) { [17:27:52.530] muffled <- grepl(pattern, "muffleMessage") [17:27:52.530] if (muffled) [17:27:52.530] invokeRestart("muffleMessage") [17:27:52.530] } [17:27:52.530] else if (inherits(cond, "warning")) { [17:27:52.530] muffled <- grepl(pattern, "muffleWarning") [17:27:52.530] if (muffled) [17:27:52.530] invokeRestart("muffleWarning") [17:27:52.530] } [17:27:52.530] else if (inherits(cond, "condition")) { [17:27:52.530] if (!is.null(pattern)) { [17:27:52.530] computeRestarts <- base::computeRestarts [17:27:52.530] grepl <- base::grepl [17:27:52.530] restarts <- computeRestarts(cond) [17:27:52.530] for (restart in restarts) { [17:27:52.530] name <- restart$name [17:27:52.530] if (is.null(name)) [17:27:52.530] next [17:27:52.530] if (!grepl(pattern, name)) [17:27:52.530] next [17:27:52.530] invokeRestart(restart) [17:27:52.530] muffled <- TRUE [17:27:52.530] break [17:27:52.530] } [17:27:52.530] } [17:27:52.530] } [17:27:52.530] invisible(muffled) [17:27:52.530] } [17:27:52.530] muffleCondition(cond) [17:27:52.530] }) [17:27:52.530] })) [17:27:52.530] future::FutureResult(value = ...future.value$value, [17:27:52.530] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:52.530] ...future.rng), globalenv = if (FALSE) [17:27:52.530] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:52.530] ...future.globalenv.names)) [17:27:52.530] else NULL, started = ...future.startTime, version = "1.8") [17:27:52.530] }, condition = base::local({ [17:27:52.530] c <- base::c [17:27:52.530] inherits <- base::inherits [17:27:52.530] invokeRestart <- base::invokeRestart [17:27:52.530] length <- base::length [17:27:52.530] list <- base::list [17:27:52.530] seq.int <- base::seq.int [17:27:52.530] signalCondition <- base::signalCondition [17:27:52.530] sys.calls <- base::sys.calls [17:27:52.530] `[[` <- base::`[[` [17:27:52.530] `+` <- base::`+` [17:27:52.530] `<<-` <- base::`<<-` [17:27:52.530] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:52.530] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:52.530] 3L)] [17:27:52.530] } [17:27:52.530] function(cond) { [17:27:52.530] is_error <- inherits(cond, "error") [17:27:52.530] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:52.530] NULL) [17:27:52.530] if (is_error) { [17:27:52.530] sessionInformation <- function() { [17:27:52.530] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:52.530] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:52.530] search = base::search(), system = base::Sys.info()) [17:27:52.530] } [17:27:52.530] ...future.conditions[[length(...future.conditions) + [17:27:52.530] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:52.530] cond$call), session = sessionInformation(), [17:27:52.530] timestamp = base::Sys.time(), signaled = 0L) [17:27:52.530] signalCondition(cond) [17:27:52.530] } [17:27:52.530] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:52.530] "immediateCondition"))) { [17:27:52.530] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:52.530] ...future.conditions[[length(...future.conditions) + [17:27:52.530] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:52.530] if (TRUE && !signal) { [17:27:52.530] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.530] { [17:27:52.530] inherits <- base::inherits [17:27:52.530] invokeRestart <- base::invokeRestart [17:27:52.530] is.null <- base::is.null [17:27:52.530] muffled <- FALSE [17:27:52.530] if (inherits(cond, "message")) { [17:27:52.530] muffled <- grepl(pattern, "muffleMessage") [17:27:52.530] if (muffled) [17:27:52.530] invokeRestart("muffleMessage") [17:27:52.530] } [17:27:52.530] else if (inherits(cond, "warning")) { [17:27:52.530] muffled <- grepl(pattern, "muffleWarning") [17:27:52.530] if (muffled) [17:27:52.530] invokeRestart("muffleWarning") [17:27:52.530] } [17:27:52.530] else if (inherits(cond, "condition")) { [17:27:52.530] if (!is.null(pattern)) { [17:27:52.530] computeRestarts <- base::computeRestarts [17:27:52.530] grepl <- base::grepl [17:27:52.530] restarts <- computeRestarts(cond) [17:27:52.530] for (restart in restarts) { [17:27:52.530] name <- restart$name [17:27:52.530] if (is.null(name)) [17:27:52.530] next [17:27:52.530] if (!grepl(pattern, name)) [17:27:52.530] next [17:27:52.530] invokeRestart(restart) [17:27:52.530] muffled <- TRUE [17:27:52.530] break [17:27:52.530] } [17:27:52.530] } [17:27:52.530] } [17:27:52.530] invisible(muffled) [17:27:52.530] } [17:27:52.530] muffleCondition(cond, pattern = "^muffle") [17:27:52.530] } [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] if (TRUE) { [17:27:52.530] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.530] { [17:27:52.530] inherits <- base::inherits [17:27:52.530] invokeRestart <- base::invokeRestart [17:27:52.530] is.null <- base::is.null [17:27:52.530] muffled <- FALSE [17:27:52.530] if (inherits(cond, "message")) { [17:27:52.530] muffled <- grepl(pattern, "muffleMessage") [17:27:52.530] if (muffled) [17:27:52.530] invokeRestart("muffleMessage") [17:27:52.530] } [17:27:52.530] else if (inherits(cond, "warning")) { [17:27:52.530] muffled <- grepl(pattern, "muffleWarning") [17:27:52.530] if (muffled) [17:27:52.530] invokeRestart("muffleWarning") [17:27:52.530] } [17:27:52.530] else if (inherits(cond, "condition")) { [17:27:52.530] if (!is.null(pattern)) { [17:27:52.530] computeRestarts <- base::computeRestarts [17:27:52.530] grepl <- base::grepl [17:27:52.530] restarts <- computeRestarts(cond) [17:27:52.530] for (restart in restarts) { [17:27:52.530] name <- restart$name [17:27:52.530] if (is.null(name)) [17:27:52.530] next [17:27:52.530] if (!grepl(pattern, name)) [17:27:52.530] next [17:27:52.530] invokeRestart(restart) [17:27:52.530] muffled <- TRUE [17:27:52.530] break [17:27:52.530] } [17:27:52.530] } [17:27:52.530] } [17:27:52.530] invisible(muffled) [17:27:52.530] } [17:27:52.530] muffleCondition(cond, pattern = "^muffle") [17:27:52.530] } [17:27:52.530] } [17:27:52.530] } [17:27:52.530] })) [17:27:52.530] }, error = function(ex) { [17:27:52.530] base::structure(base::list(value = NULL, visible = NULL, [17:27:52.530] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:52.530] ...future.rng), started = ...future.startTime, [17:27:52.530] finished = Sys.time(), session_uuid = NA_character_, [17:27:52.530] version = "1.8"), class = "FutureResult") [17:27:52.530] }, finally = { [17:27:52.530] if (!identical(...future.workdir, getwd())) [17:27:52.530] setwd(...future.workdir) [17:27:52.530] { [17:27:52.530] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:52.530] ...future.oldOptions$nwarnings <- NULL [17:27:52.530] } [17:27:52.530] base::options(...future.oldOptions) [17:27:52.530] if (.Platform$OS.type == "windows") { [17:27:52.530] old_names <- names(...future.oldEnvVars) [17:27:52.530] envs <- base::Sys.getenv() [17:27:52.530] names <- names(envs) [17:27:52.530] common <- intersect(names, old_names) [17:27:52.530] added <- setdiff(names, old_names) [17:27:52.530] removed <- setdiff(old_names, names) [17:27:52.530] changed <- common[...future.oldEnvVars[common] != [17:27:52.530] envs[common]] [17:27:52.530] NAMES <- toupper(changed) [17:27:52.530] args <- list() [17:27:52.530] for (kk in seq_along(NAMES)) { [17:27:52.530] name <- changed[[kk]] [17:27:52.530] NAME <- NAMES[[kk]] [17:27:52.530] if (name != NAME && is.element(NAME, old_names)) [17:27:52.530] next [17:27:52.530] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:52.530] } [17:27:52.530] NAMES <- toupper(added) [17:27:52.530] for (kk in seq_along(NAMES)) { [17:27:52.530] name <- added[[kk]] [17:27:52.530] NAME <- NAMES[[kk]] [17:27:52.530] if (name != NAME && is.element(NAME, old_names)) [17:27:52.530] next [17:27:52.530] args[[name]] <- "" [17:27:52.530] } [17:27:52.530] NAMES <- toupper(removed) [17:27:52.530] for (kk in seq_along(NAMES)) { [17:27:52.530] name <- removed[[kk]] [17:27:52.530] NAME <- NAMES[[kk]] [17:27:52.530] if (name != NAME && is.element(NAME, old_names)) [17:27:52.530] next [17:27:52.530] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:52.530] } [17:27:52.530] if (length(args) > 0) [17:27:52.530] base::do.call(base::Sys.setenv, args = args) [17:27:52.530] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:52.530] } [17:27:52.530] { [17:27:52.530] if (base::length(...future.futureOptionsAdded) > [17:27:52.530] 0L) { [17:27:52.530] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:52.530] base::names(opts) <- ...future.futureOptionsAdded [17:27:52.530] base::options(opts) [17:27:52.530] } [17:27:52.530] { [17:27:52.530] { [17:27:52.530] base::options(mc.cores = ...future.mc.cores.old) [17:27:52.530] NULL [17:27:52.530] } [17:27:52.530] options(future.plan = NULL) [17:27:52.530] if (is.na(NA_character_)) [17:27:52.530] Sys.unsetenv("R_FUTURE_PLAN") [17:27:52.530] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:52.530] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:52.530] .init = FALSE) [17:27:52.530] } [17:27:52.530] } [17:27:52.530] } [17:27:52.530] }) [17:27:52.530] if (TRUE) { [17:27:52.530] base::sink(type = "output", split = FALSE) [17:27:52.530] if (TRUE) { [17:27:52.530] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:52.530] } [17:27:52.530] else { [17:27:52.530] ...future.result["stdout"] <- base::list(NULL) [17:27:52.530] } [17:27:52.530] base::close(...future.stdout) [17:27:52.530] ...future.stdout <- NULL [17:27:52.530] } [17:27:52.530] ...future.result$conditions <- ...future.conditions [17:27:52.530] ...future.result$finished <- base::Sys.time() [17:27:52.530] ...future.result [17:27:52.530] } [17:27:52.535] MultisessionFuture started [17:27:52.535] - Launch lazy future ... done [17:27:52.535] run() for 'MultisessionFuture' ... done [17:27:52.549] receiveMessageFromWorker() for ClusterFuture ... [17:27:52.549] - Validating connection of MultisessionFuture [17:27:52.550] - received message: FutureResult [17:27:52.550] - Received FutureResult [17:27:52.550] - Erased future from FutureRegistry [17:27:52.550] result() for ClusterFuture ... [17:27:52.551] - result already collected: FutureResult [17:27:52.551] result() for ClusterFuture ... done [17:27:52.551] signalConditions() ... [17:27:52.551] - include = 'immediateCondition' [17:27:52.551] - exclude = [17:27:52.551] - resignal = FALSE [17:27:52.552] - Number of conditions: 1 [17:27:52.552] signalConditions() ... done [17:27:52.552] receiveMessageFromWorker() for ClusterFuture ... done [17:27:52.552] A MultisessionFuture was resolved (result was not collected) - result = FALSE, recursive = 1 ... DONE - result = FALSE, recursive = 2 ... [17:27:52.552] getGlobalsAndPackages() ... [17:27:52.553] Searching for globals... [17:27:52.554] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:52.554] Searching for globals ... DONE [17:27:52.554] Resolving globals: FALSE [17:27:52.555] [17:27:52.555] [17:27:52.555] getGlobalsAndPackages() ... DONE [17:27:52.555] run() for 'Future' ... [17:27:52.556] - state: 'created' [17:27:52.556] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:52.569] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:52.569] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:52.570] - Field: 'node' [17:27:52.570] - Field: 'label' [17:27:52.570] - Field: 'local' [17:27:52.570] - Field: 'owner' [17:27:52.570] - Field: 'envir' [17:27:52.570] - Field: 'workers' [17:27:52.571] - Field: 'packages' [17:27:52.571] - Field: 'gc' [17:27:52.571] - Field: 'conditions' [17:27:52.571] - Field: 'persistent' [17:27:52.571] - Field: 'expr' [17:27:52.572] - Field: 'uuid' [17:27:52.572] - Field: 'seed' [17:27:52.572] - Field: 'version' [17:27:52.572] - Field: 'result' [17:27:52.572] - Field: 'asynchronous' [17:27:52.572] - Field: 'calls' [17:27:52.573] - Field: 'globals' [17:27:52.573] - Field: 'stdout' [17:27:52.573] - Field: 'earlySignal' [17:27:52.573] - Field: 'lazy' [17:27:52.573] - Field: 'state' [17:27:52.573] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:52.574] - Launch lazy future ... [17:27:52.574] Packages needed by the future expression (n = 0): [17:27:52.574] Packages needed by future strategies (n = 0): [17:27:52.575] { [17:27:52.575] { [17:27:52.575] { [17:27:52.575] ...future.startTime <- base::Sys.time() [17:27:52.575] { [17:27:52.575] { [17:27:52.575] { [17:27:52.575] { [17:27:52.575] base::local({ [17:27:52.575] has_future <- base::requireNamespace("future", [17:27:52.575] quietly = TRUE) [17:27:52.575] if (has_future) { [17:27:52.575] ns <- base::getNamespace("future") [17:27:52.575] version <- ns[[".package"]][["version"]] [17:27:52.575] if (is.null(version)) [17:27:52.575] version <- utils::packageVersion("future") [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] version <- NULL [17:27:52.575] } [17:27:52.575] if (!has_future || version < "1.8.0") { [17:27:52.575] info <- base::c(r_version = base::gsub("R version ", [17:27:52.575] "", base::R.version$version.string), [17:27:52.575] platform = base::sprintf("%s (%s-bit)", [17:27:52.575] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:52.575] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:52.575] "release", "version")], collapse = " "), [17:27:52.575] hostname = base::Sys.info()[["nodename"]]) [17:27:52.575] info <- base::sprintf("%s: %s", base::names(info), [17:27:52.575] info) [17:27:52.575] info <- base::paste(info, collapse = "; ") [17:27:52.575] if (!has_future) { [17:27:52.575] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:52.575] info) [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:52.575] info, version) [17:27:52.575] } [17:27:52.575] base::stop(msg) [17:27:52.575] } [17:27:52.575] }) [17:27:52.575] } [17:27:52.575] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:52.575] base::options(mc.cores = 1L) [17:27:52.575] } [17:27:52.575] ...future.strategy.old <- future::plan("list") [17:27:52.575] options(future.plan = NULL) [17:27:52.575] Sys.unsetenv("R_FUTURE_PLAN") [17:27:52.575] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:52.575] } [17:27:52.575] ...future.workdir <- getwd() [17:27:52.575] } [17:27:52.575] ...future.oldOptions <- base::as.list(base::.Options) [17:27:52.575] ...future.oldEnvVars <- base::Sys.getenv() [17:27:52.575] } [17:27:52.575] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:52.575] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:52.575] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:52.575] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:52.575] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:52.575] future.stdout.windows.reencode = NULL, width = 80L) [17:27:52.575] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:52.575] base::names(...future.oldOptions)) [17:27:52.575] } [17:27:52.575] if (FALSE) { [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] if (TRUE) { [17:27:52.575] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:52.575] open = "w") [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:52.575] windows = "NUL", "/dev/null"), open = "w") [17:27:52.575] } [17:27:52.575] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:52.575] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:52.575] base::sink(type = "output", split = FALSE) [17:27:52.575] base::close(...future.stdout) [17:27:52.575] }, add = TRUE) [17:27:52.575] } [17:27:52.575] ...future.frame <- base::sys.nframe() [17:27:52.575] ...future.conditions <- base::list() [17:27:52.575] ...future.rng <- base::globalenv()$.Random.seed [17:27:52.575] if (FALSE) { [17:27:52.575] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:52.575] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:52.575] } [17:27:52.575] ...future.result <- base::tryCatch({ [17:27:52.575] base::withCallingHandlers({ [17:27:52.575] ...future.value <- base::withVisible(base::local({ [17:27:52.575] ...future.makeSendCondition <- base::local({ [17:27:52.575] sendCondition <- NULL [17:27:52.575] function(frame = 1L) { [17:27:52.575] if (is.function(sendCondition)) [17:27:52.575] return(sendCondition) [17:27:52.575] ns <- getNamespace("parallel") [17:27:52.575] if (exists("sendData", mode = "function", [17:27:52.575] envir = ns)) { [17:27:52.575] parallel_sendData <- get("sendData", mode = "function", [17:27:52.575] envir = ns) [17:27:52.575] envir <- sys.frame(frame) [17:27:52.575] master <- NULL [17:27:52.575] while (!identical(envir, .GlobalEnv) && [17:27:52.575] !identical(envir, emptyenv())) { [17:27:52.575] if (exists("master", mode = "list", envir = envir, [17:27:52.575] inherits = FALSE)) { [17:27:52.575] master <- get("master", mode = "list", [17:27:52.575] envir = envir, inherits = FALSE) [17:27:52.575] if (inherits(master, c("SOCKnode", [17:27:52.575] "SOCK0node"))) { [17:27:52.575] sendCondition <<- function(cond) { [17:27:52.575] data <- list(type = "VALUE", value = cond, [17:27:52.575] success = TRUE) [17:27:52.575] parallel_sendData(master, data) [17:27:52.575] } [17:27:52.575] return(sendCondition) [17:27:52.575] } [17:27:52.575] } [17:27:52.575] frame <- frame + 1L [17:27:52.575] envir <- sys.frame(frame) [17:27:52.575] } [17:27:52.575] } [17:27:52.575] sendCondition <<- function(cond) NULL [17:27:52.575] } [17:27:52.575] }) [17:27:52.575] withCallingHandlers({ [17:27:52.575] { [17:27:52.575] Sys.sleep(0.5) [17:27:52.575] list(a = 1, b = 42L) [17:27:52.575] } [17:27:52.575] }, immediateCondition = function(cond) { [17:27:52.575] sendCondition <- ...future.makeSendCondition() [17:27:52.575] sendCondition(cond) [17:27:52.575] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.575] { [17:27:52.575] inherits <- base::inherits [17:27:52.575] invokeRestart <- base::invokeRestart [17:27:52.575] is.null <- base::is.null [17:27:52.575] muffled <- FALSE [17:27:52.575] if (inherits(cond, "message")) { [17:27:52.575] muffled <- grepl(pattern, "muffleMessage") [17:27:52.575] if (muffled) [17:27:52.575] invokeRestart("muffleMessage") [17:27:52.575] } [17:27:52.575] else if (inherits(cond, "warning")) { [17:27:52.575] muffled <- grepl(pattern, "muffleWarning") [17:27:52.575] if (muffled) [17:27:52.575] invokeRestart("muffleWarning") [17:27:52.575] } [17:27:52.575] else if (inherits(cond, "condition")) { [17:27:52.575] if (!is.null(pattern)) { [17:27:52.575] computeRestarts <- base::computeRestarts [17:27:52.575] grepl <- base::grepl [17:27:52.575] restarts <- computeRestarts(cond) [17:27:52.575] for (restart in restarts) { [17:27:52.575] name <- restart$name [17:27:52.575] if (is.null(name)) [17:27:52.575] next [17:27:52.575] if (!grepl(pattern, name)) [17:27:52.575] next [17:27:52.575] invokeRestart(restart) [17:27:52.575] muffled <- TRUE [17:27:52.575] break [17:27:52.575] } [17:27:52.575] } [17:27:52.575] } [17:27:52.575] invisible(muffled) [17:27:52.575] } [17:27:52.575] muffleCondition(cond) [17:27:52.575] }) [17:27:52.575] })) [17:27:52.575] future::FutureResult(value = ...future.value$value, [17:27:52.575] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:52.575] ...future.rng), globalenv = if (FALSE) [17:27:52.575] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:52.575] ...future.globalenv.names)) [17:27:52.575] else NULL, started = ...future.startTime, version = "1.8") [17:27:52.575] }, condition = base::local({ [17:27:52.575] c <- base::c [17:27:52.575] inherits <- base::inherits [17:27:52.575] invokeRestart <- base::invokeRestart [17:27:52.575] length <- base::length [17:27:52.575] list <- base::list [17:27:52.575] seq.int <- base::seq.int [17:27:52.575] signalCondition <- base::signalCondition [17:27:52.575] sys.calls <- base::sys.calls [17:27:52.575] `[[` <- base::`[[` [17:27:52.575] `+` <- base::`+` [17:27:52.575] `<<-` <- base::`<<-` [17:27:52.575] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:52.575] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:52.575] 3L)] [17:27:52.575] } [17:27:52.575] function(cond) { [17:27:52.575] is_error <- inherits(cond, "error") [17:27:52.575] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:52.575] NULL) [17:27:52.575] if (is_error) { [17:27:52.575] sessionInformation <- function() { [17:27:52.575] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:52.575] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:52.575] search = base::search(), system = base::Sys.info()) [17:27:52.575] } [17:27:52.575] ...future.conditions[[length(...future.conditions) + [17:27:52.575] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:52.575] cond$call), session = sessionInformation(), [17:27:52.575] timestamp = base::Sys.time(), signaled = 0L) [17:27:52.575] signalCondition(cond) [17:27:52.575] } [17:27:52.575] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:52.575] "immediateCondition"))) { [17:27:52.575] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:52.575] ...future.conditions[[length(...future.conditions) + [17:27:52.575] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:52.575] if (TRUE && !signal) { [17:27:52.575] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.575] { [17:27:52.575] inherits <- base::inherits [17:27:52.575] invokeRestart <- base::invokeRestart [17:27:52.575] is.null <- base::is.null [17:27:52.575] muffled <- FALSE [17:27:52.575] if (inherits(cond, "message")) { [17:27:52.575] muffled <- grepl(pattern, "muffleMessage") [17:27:52.575] if (muffled) [17:27:52.575] invokeRestart("muffleMessage") [17:27:52.575] } [17:27:52.575] else if (inherits(cond, "warning")) { [17:27:52.575] muffled <- grepl(pattern, "muffleWarning") [17:27:52.575] if (muffled) [17:27:52.575] invokeRestart("muffleWarning") [17:27:52.575] } [17:27:52.575] else if (inherits(cond, "condition")) { [17:27:52.575] if (!is.null(pattern)) { [17:27:52.575] computeRestarts <- base::computeRestarts [17:27:52.575] grepl <- base::grepl [17:27:52.575] restarts <- computeRestarts(cond) [17:27:52.575] for (restart in restarts) { [17:27:52.575] name <- restart$name [17:27:52.575] if (is.null(name)) [17:27:52.575] next [17:27:52.575] if (!grepl(pattern, name)) [17:27:52.575] next [17:27:52.575] invokeRestart(restart) [17:27:52.575] muffled <- TRUE [17:27:52.575] break [17:27:52.575] } [17:27:52.575] } [17:27:52.575] } [17:27:52.575] invisible(muffled) [17:27:52.575] } [17:27:52.575] muffleCondition(cond, pattern = "^muffle") [17:27:52.575] } [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] if (TRUE) { [17:27:52.575] muffleCondition <- function (cond, pattern = "^muffle") [17:27:52.575] { [17:27:52.575] inherits <- base::inherits [17:27:52.575] invokeRestart <- base::invokeRestart [17:27:52.575] is.null <- base::is.null [17:27:52.575] muffled <- FALSE [17:27:52.575] if (inherits(cond, "message")) { [17:27:52.575] muffled <- grepl(pattern, "muffleMessage") [17:27:52.575] if (muffled) [17:27:52.575] invokeRestart("muffleMessage") [17:27:52.575] } [17:27:52.575] else if (inherits(cond, "warning")) { [17:27:52.575] muffled <- grepl(pattern, "muffleWarning") [17:27:52.575] if (muffled) [17:27:52.575] invokeRestart("muffleWarning") [17:27:52.575] } [17:27:52.575] else if (inherits(cond, "condition")) { [17:27:52.575] if (!is.null(pattern)) { [17:27:52.575] computeRestarts <- base::computeRestarts [17:27:52.575] grepl <- base::grepl [17:27:52.575] restarts <- computeRestarts(cond) [17:27:52.575] for (restart in restarts) { [17:27:52.575] name <- restart$name [17:27:52.575] if (is.null(name)) [17:27:52.575] next [17:27:52.575] if (!grepl(pattern, name)) [17:27:52.575] next [17:27:52.575] invokeRestart(restart) [17:27:52.575] muffled <- TRUE [17:27:52.575] break [17:27:52.575] } [17:27:52.575] } [17:27:52.575] } [17:27:52.575] invisible(muffled) [17:27:52.575] } [17:27:52.575] muffleCondition(cond, pattern = "^muffle") [17:27:52.575] } [17:27:52.575] } [17:27:52.575] } [17:27:52.575] })) [17:27:52.575] }, error = function(ex) { [17:27:52.575] base::structure(base::list(value = NULL, visible = NULL, [17:27:52.575] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:52.575] ...future.rng), started = ...future.startTime, [17:27:52.575] finished = Sys.time(), session_uuid = NA_character_, [17:27:52.575] version = "1.8"), class = "FutureResult") [17:27:52.575] }, finally = { [17:27:52.575] if (!identical(...future.workdir, getwd())) [17:27:52.575] setwd(...future.workdir) [17:27:52.575] { [17:27:52.575] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:52.575] ...future.oldOptions$nwarnings <- NULL [17:27:52.575] } [17:27:52.575] base::options(...future.oldOptions) [17:27:52.575] if (.Platform$OS.type == "windows") { [17:27:52.575] old_names <- names(...future.oldEnvVars) [17:27:52.575] envs <- base::Sys.getenv() [17:27:52.575] names <- names(envs) [17:27:52.575] common <- intersect(names, old_names) [17:27:52.575] added <- setdiff(names, old_names) [17:27:52.575] removed <- setdiff(old_names, names) [17:27:52.575] changed <- common[...future.oldEnvVars[common] != [17:27:52.575] envs[common]] [17:27:52.575] NAMES <- toupper(changed) [17:27:52.575] args <- list() [17:27:52.575] for (kk in seq_along(NAMES)) { [17:27:52.575] name <- changed[[kk]] [17:27:52.575] NAME <- NAMES[[kk]] [17:27:52.575] if (name != NAME && is.element(NAME, old_names)) [17:27:52.575] next [17:27:52.575] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:52.575] } [17:27:52.575] NAMES <- toupper(added) [17:27:52.575] for (kk in seq_along(NAMES)) { [17:27:52.575] name <- added[[kk]] [17:27:52.575] NAME <- NAMES[[kk]] [17:27:52.575] if (name != NAME && is.element(NAME, old_names)) [17:27:52.575] next [17:27:52.575] args[[name]] <- "" [17:27:52.575] } [17:27:52.575] NAMES <- toupper(removed) [17:27:52.575] for (kk in seq_along(NAMES)) { [17:27:52.575] name <- removed[[kk]] [17:27:52.575] NAME <- NAMES[[kk]] [17:27:52.575] if (name != NAME && is.element(NAME, old_names)) [17:27:52.575] next [17:27:52.575] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:52.575] } [17:27:52.575] if (length(args) > 0) [17:27:52.575] base::do.call(base::Sys.setenv, args = args) [17:27:52.575] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:52.575] } [17:27:52.575] { [17:27:52.575] if (base::length(...future.futureOptionsAdded) > [17:27:52.575] 0L) { [17:27:52.575] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:52.575] base::names(opts) <- ...future.futureOptionsAdded [17:27:52.575] base::options(opts) [17:27:52.575] } [17:27:52.575] { [17:27:52.575] { [17:27:52.575] base::options(mc.cores = ...future.mc.cores.old) [17:27:52.575] NULL [17:27:52.575] } [17:27:52.575] options(future.plan = NULL) [17:27:52.575] if (is.na(NA_character_)) [17:27:52.575] Sys.unsetenv("R_FUTURE_PLAN") [17:27:52.575] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:52.575] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:52.575] .init = FALSE) [17:27:52.575] } [17:27:52.575] } [17:27:52.575] } [17:27:52.575] }) [17:27:52.575] if (TRUE) { [17:27:52.575] base::sink(type = "output", split = FALSE) [17:27:52.575] if (TRUE) { [17:27:52.575] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:52.575] } [17:27:52.575] else { [17:27:52.575] ...future.result["stdout"] <- base::list(NULL) [17:27:52.575] } [17:27:52.575] base::close(...future.stdout) [17:27:52.575] ...future.stdout <- NULL [17:27:52.575] } [17:27:52.575] ...future.result$conditions <- ...future.conditions [17:27:52.575] ...future.result$finished <- base::Sys.time() [17:27:52.575] ...future.result [17:27:52.575] } [17:27:52.580] MultisessionFuture started [17:27:52.580] - Launch lazy future ... done [17:27:52.580] run() for 'MultisessionFuture' ... done [17:27:53.110] receiveMessageFromWorker() for ClusterFuture ... [17:27:53.110] - Validating connection of MultisessionFuture [17:27:53.111] - received message: FutureResult [17:27:53.111] - Received FutureResult [17:27:53.111] - Erased future from FutureRegistry [17:27:53.111] result() for ClusterFuture ... [17:27:53.111] - result already collected: FutureResult [17:27:53.111] result() for ClusterFuture ... done [17:27:53.112] receiveMessageFromWorker() for ClusterFuture ... done [17:27:53.112] A MultisessionFuture was resolved (result was not collected) [17:27:53.112] getGlobalsAndPackages() ... [17:27:53.112] Searching for globals... [17:27:53.113] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:53.114] Searching for globals ... DONE [17:27:53.114] Resolving globals: FALSE [17:27:53.114] [17:27:53.114] [17:27:53.115] getGlobalsAndPackages() ... DONE [17:27:53.115] run() for 'Future' ... [17:27:53.115] - state: 'created' [17:27:53.115] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:53.129] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:53.129] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:53.129] - Field: 'node' [17:27:53.129] - Field: 'label' [17:27:53.130] - Field: 'local' [17:27:53.130] - Field: 'owner' [17:27:53.130] - Field: 'envir' [17:27:53.130] - Field: 'workers' [17:27:53.130] - Field: 'packages' [17:27:53.130] - Field: 'gc' [17:27:53.131] - Field: 'conditions' [17:27:53.131] - Field: 'persistent' [17:27:53.131] - Field: 'expr' [17:27:53.131] - Field: 'uuid' [17:27:53.131] - Field: 'seed' [17:27:53.131] - Field: 'version' [17:27:53.132] - Field: 'result' [17:27:53.132] - Field: 'asynchronous' [17:27:53.132] - Field: 'calls' [17:27:53.132] - Field: 'globals' [17:27:53.132] - Field: 'stdout' [17:27:53.132] - Field: 'earlySignal' [17:27:53.133] - Field: 'lazy' [17:27:53.133] - Field: 'state' [17:27:53.133] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:53.133] - Launch lazy future ... [17:27:53.133] Packages needed by the future expression (n = 0): [17:27:53.134] Packages needed by future strategies (n = 0): [17:27:53.134] { [17:27:53.134] { [17:27:53.134] { [17:27:53.134] ...future.startTime <- base::Sys.time() [17:27:53.134] { [17:27:53.134] { [17:27:53.134] { [17:27:53.134] { [17:27:53.134] base::local({ [17:27:53.134] has_future <- base::requireNamespace("future", [17:27:53.134] quietly = TRUE) [17:27:53.134] if (has_future) { [17:27:53.134] ns <- base::getNamespace("future") [17:27:53.134] version <- ns[[".package"]][["version"]] [17:27:53.134] if (is.null(version)) [17:27:53.134] version <- utils::packageVersion("future") [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] version <- NULL [17:27:53.134] } [17:27:53.134] if (!has_future || version < "1.8.0") { [17:27:53.134] info <- base::c(r_version = base::gsub("R version ", [17:27:53.134] "", base::R.version$version.string), [17:27:53.134] platform = base::sprintf("%s (%s-bit)", [17:27:53.134] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:53.134] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:53.134] "release", "version")], collapse = " "), [17:27:53.134] hostname = base::Sys.info()[["nodename"]]) [17:27:53.134] info <- base::sprintf("%s: %s", base::names(info), [17:27:53.134] info) [17:27:53.134] info <- base::paste(info, collapse = "; ") [17:27:53.134] if (!has_future) { [17:27:53.134] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:53.134] info) [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:53.134] info, version) [17:27:53.134] } [17:27:53.134] base::stop(msg) [17:27:53.134] } [17:27:53.134] }) [17:27:53.134] } [17:27:53.134] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:53.134] base::options(mc.cores = 1L) [17:27:53.134] } [17:27:53.134] ...future.strategy.old <- future::plan("list") [17:27:53.134] options(future.plan = NULL) [17:27:53.134] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.134] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:53.134] } [17:27:53.134] ...future.workdir <- getwd() [17:27:53.134] } [17:27:53.134] ...future.oldOptions <- base::as.list(base::.Options) [17:27:53.134] ...future.oldEnvVars <- base::Sys.getenv() [17:27:53.134] } [17:27:53.134] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:53.134] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:53.134] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:53.134] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:53.134] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:53.134] future.stdout.windows.reencode = NULL, width = 80L) [17:27:53.134] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:53.134] base::names(...future.oldOptions)) [17:27:53.134] } [17:27:53.134] if (FALSE) { [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] if (TRUE) { [17:27:53.134] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:53.134] open = "w") [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:53.134] windows = "NUL", "/dev/null"), open = "w") [17:27:53.134] } [17:27:53.134] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:53.134] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:53.134] base::sink(type = "output", split = FALSE) [17:27:53.134] base::close(...future.stdout) [17:27:53.134] }, add = TRUE) [17:27:53.134] } [17:27:53.134] ...future.frame <- base::sys.nframe() [17:27:53.134] ...future.conditions <- base::list() [17:27:53.134] ...future.rng <- base::globalenv()$.Random.seed [17:27:53.134] if (FALSE) { [17:27:53.134] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:53.134] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:53.134] } [17:27:53.134] ...future.result <- base::tryCatch({ [17:27:53.134] base::withCallingHandlers({ [17:27:53.134] ...future.value <- base::withVisible(base::local({ [17:27:53.134] ...future.makeSendCondition <- base::local({ [17:27:53.134] sendCondition <- NULL [17:27:53.134] function(frame = 1L) { [17:27:53.134] if (is.function(sendCondition)) [17:27:53.134] return(sendCondition) [17:27:53.134] ns <- getNamespace("parallel") [17:27:53.134] if (exists("sendData", mode = "function", [17:27:53.134] envir = ns)) { [17:27:53.134] parallel_sendData <- get("sendData", mode = "function", [17:27:53.134] envir = ns) [17:27:53.134] envir <- sys.frame(frame) [17:27:53.134] master <- NULL [17:27:53.134] while (!identical(envir, .GlobalEnv) && [17:27:53.134] !identical(envir, emptyenv())) { [17:27:53.134] if (exists("master", mode = "list", envir = envir, [17:27:53.134] inherits = FALSE)) { [17:27:53.134] master <- get("master", mode = "list", [17:27:53.134] envir = envir, inherits = FALSE) [17:27:53.134] if (inherits(master, c("SOCKnode", [17:27:53.134] "SOCK0node"))) { [17:27:53.134] sendCondition <<- function(cond) { [17:27:53.134] data <- list(type = "VALUE", value = cond, [17:27:53.134] success = TRUE) [17:27:53.134] parallel_sendData(master, data) [17:27:53.134] } [17:27:53.134] return(sendCondition) [17:27:53.134] } [17:27:53.134] } [17:27:53.134] frame <- frame + 1L [17:27:53.134] envir <- sys.frame(frame) [17:27:53.134] } [17:27:53.134] } [17:27:53.134] sendCondition <<- function(cond) NULL [17:27:53.134] } [17:27:53.134] }) [17:27:53.134] withCallingHandlers({ [17:27:53.134] { [17:27:53.134] Sys.sleep(0.5) [17:27:53.134] list(a = 1, b = 42L) [17:27:53.134] } [17:27:53.134] }, immediateCondition = function(cond) { [17:27:53.134] sendCondition <- ...future.makeSendCondition() [17:27:53.134] sendCondition(cond) [17:27:53.134] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.134] { [17:27:53.134] inherits <- base::inherits [17:27:53.134] invokeRestart <- base::invokeRestart [17:27:53.134] is.null <- base::is.null [17:27:53.134] muffled <- FALSE [17:27:53.134] if (inherits(cond, "message")) { [17:27:53.134] muffled <- grepl(pattern, "muffleMessage") [17:27:53.134] if (muffled) [17:27:53.134] invokeRestart("muffleMessage") [17:27:53.134] } [17:27:53.134] else if (inherits(cond, "warning")) { [17:27:53.134] muffled <- grepl(pattern, "muffleWarning") [17:27:53.134] if (muffled) [17:27:53.134] invokeRestart("muffleWarning") [17:27:53.134] } [17:27:53.134] else if (inherits(cond, "condition")) { [17:27:53.134] if (!is.null(pattern)) { [17:27:53.134] computeRestarts <- base::computeRestarts [17:27:53.134] grepl <- base::grepl [17:27:53.134] restarts <- computeRestarts(cond) [17:27:53.134] for (restart in restarts) { [17:27:53.134] name <- restart$name [17:27:53.134] if (is.null(name)) [17:27:53.134] next [17:27:53.134] if (!grepl(pattern, name)) [17:27:53.134] next [17:27:53.134] invokeRestart(restart) [17:27:53.134] muffled <- TRUE [17:27:53.134] break [17:27:53.134] } [17:27:53.134] } [17:27:53.134] } [17:27:53.134] invisible(muffled) [17:27:53.134] } [17:27:53.134] muffleCondition(cond) [17:27:53.134] }) [17:27:53.134] })) [17:27:53.134] future::FutureResult(value = ...future.value$value, [17:27:53.134] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.134] ...future.rng), globalenv = if (FALSE) [17:27:53.134] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:53.134] ...future.globalenv.names)) [17:27:53.134] else NULL, started = ...future.startTime, version = "1.8") [17:27:53.134] }, condition = base::local({ [17:27:53.134] c <- base::c [17:27:53.134] inherits <- base::inherits [17:27:53.134] invokeRestart <- base::invokeRestart [17:27:53.134] length <- base::length [17:27:53.134] list <- base::list [17:27:53.134] seq.int <- base::seq.int [17:27:53.134] signalCondition <- base::signalCondition [17:27:53.134] sys.calls <- base::sys.calls [17:27:53.134] `[[` <- base::`[[` [17:27:53.134] `+` <- base::`+` [17:27:53.134] `<<-` <- base::`<<-` [17:27:53.134] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:53.134] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:53.134] 3L)] [17:27:53.134] } [17:27:53.134] function(cond) { [17:27:53.134] is_error <- inherits(cond, "error") [17:27:53.134] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:53.134] NULL) [17:27:53.134] if (is_error) { [17:27:53.134] sessionInformation <- function() { [17:27:53.134] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:53.134] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:53.134] search = base::search(), system = base::Sys.info()) [17:27:53.134] } [17:27:53.134] ...future.conditions[[length(...future.conditions) + [17:27:53.134] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:53.134] cond$call), session = sessionInformation(), [17:27:53.134] timestamp = base::Sys.time(), signaled = 0L) [17:27:53.134] signalCondition(cond) [17:27:53.134] } [17:27:53.134] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:53.134] "immediateCondition"))) { [17:27:53.134] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:53.134] ...future.conditions[[length(...future.conditions) + [17:27:53.134] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:53.134] if (TRUE && !signal) { [17:27:53.134] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.134] { [17:27:53.134] inherits <- base::inherits [17:27:53.134] invokeRestart <- base::invokeRestart [17:27:53.134] is.null <- base::is.null [17:27:53.134] muffled <- FALSE [17:27:53.134] if (inherits(cond, "message")) { [17:27:53.134] muffled <- grepl(pattern, "muffleMessage") [17:27:53.134] if (muffled) [17:27:53.134] invokeRestart("muffleMessage") [17:27:53.134] } [17:27:53.134] else if (inherits(cond, "warning")) { [17:27:53.134] muffled <- grepl(pattern, "muffleWarning") [17:27:53.134] if (muffled) [17:27:53.134] invokeRestart("muffleWarning") [17:27:53.134] } [17:27:53.134] else if (inherits(cond, "condition")) { [17:27:53.134] if (!is.null(pattern)) { [17:27:53.134] computeRestarts <- base::computeRestarts [17:27:53.134] grepl <- base::grepl [17:27:53.134] restarts <- computeRestarts(cond) [17:27:53.134] for (restart in restarts) { [17:27:53.134] name <- restart$name [17:27:53.134] if (is.null(name)) [17:27:53.134] next [17:27:53.134] if (!grepl(pattern, name)) [17:27:53.134] next [17:27:53.134] invokeRestart(restart) [17:27:53.134] muffled <- TRUE [17:27:53.134] break [17:27:53.134] } [17:27:53.134] } [17:27:53.134] } [17:27:53.134] invisible(muffled) [17:27:53.134] } [17:27:53.134] muffleCondition(cond, pattern = "^muffle") [17:27:53.134] } [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] if (TRUE) { [17:27:53.134] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.134] { [17:27:53.134] inherits <- base::inherits [17:27:53.134] invokeRestart <- base::invokeRestart [17:27:53.134] is.null <- base::is.null [17:27:53.134] muffled <- FALSE [17:27:53.134] if (inherits(cond, "message")) { [17:27:53.134] muffled <- grepl(pattern, "muffleMessage") [17:27:53.134] if (muffled) [17:27:53.134] invokeRestart("muffleMessage") [17:27:53.134] } [17:27:53.134] else if (inherits(cond, "warning")) { [17:27:53.134] muffled <- grepl(pattern, "muffleWarning") [17:27:53.134] if (muffled) [17:27:53.134] invokeRestart("muffleWarning") [17:27:53.134] } [17:27:53.134] else if (inherits(cond, "condition")) { [17:27:53.134] if (!is.null(pattern)) { [17:27:53.134] computeRestarts <- base::computeRestarts [17:27:53.134] grepl <- base::grepl [17:27:53.134] restarts <- computeRestarts(cond) [17:27:53.134] for (restart in restarts) { [17:27:53.134] name <- restart$name [17:27:53.134] if (is.null(name)) [17:27:53.134] next [17:27:53.134] if (!grepl(pattern, name)) [17:27:53.134] next [17:27:53.134] invokeRestart(restart) [17:27:53.134] muffled <- TRUE [17:27:53.134] break [17:27:53.134] } [17:27:53.134] } [17:27:53.134] } [17:27:53.134] invisible(muffled) [17:27:53.134] } [17:27:53.134] muffleCondition(cond, pattern = "^muffle") [17:27:53.134] } [17:27:53.134] } [17:27:53.134] } [17:27:53.134] })) [17:27:53.134] }, error = function(ex) { [17:27:53.134] base::structure(base::list(value = NULL, visible = NULL, [17:27:53.134] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.134] ...future.rng), started = ...future.startTime, [17:27:53.134] finished = Sys.time(), session_uuid = NA_character_, [17:27:53.134] version = "1.8"), class = "FutureResult") [17:27:53.134] }, finally = { [17:27:53.134] if (!identical(...future.workdir, getwd())) [17:27:53.134] setwd(...future.workdir) [17:27:53.134] { [17:27:53.134] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:53.134] ...future.oldOptions$nwarnings <- NULL [17:27:53.134] } [17:27:53.134] base::options(...future.oldOptions) [17:27:53.134] if (.Platform$OS.type == "windows") { [17:27:53.134] old_names <- names(...future.oldEnvVars) [17:27:53.134] envs <- base::Sys.getenv() [17:27:53.134] names <- names(envs) [17:27:53.134] common <- intersect(names, old_names) [17:27:53.134] added <- setdiff(names, old_names) [17:27:53.134] removed <- setdiff(old_names, names) [17:27:53.134] changed <- common[...future.oldEnvVars[common] != [17:27:53.134] envs[common]] [17:27:53.134] NAMES <- toupper(changed) [17:27:53.134] args <- list() [17:27:53.134] for (kk in seq_along(NAMES)) { [17:27:53.134] name <- changed[[kk]] [17:27:53.134] NAME <- NAMES[[kk]] [17:27:53.134] if (name != NAME && is.element(NAME, old_names)) [17:27:53.134] next [17:27:53.134] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.134] } [17:27:53.134] NAMES <- toupper(added) [17:27:53.134] for (kk in seq_along(NAMES)) { [17:27:53.134] name <- added[[kk]] [17:27:53.134] NAME <- NAMES[[kk]] [17:27:53.134] if (name != NAME && is.element(NAME, old_names)) [17:27:53.134] next [17:27:53.134] args[[name]] <- "" [17:27:53.134] } [17:27:53.134] NAMES <- toupper(removed) [17:27:53.134] for (kk in seq_along(NAMES)) { [17:27:53.134] name <- removed[[kk]] [17:27:53.134] NAME <- NAMES[[kk]] [17:27:53.134] if (name != NAME && is.element(NAME, old_names)) [17:27:53.134] next [17:27:53.134] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.134] } [17:27:53.134] if (length(args) > 0) [17:27:53.134] base::do.call(base::Sys.setenv, args = args) [17:27:53.134] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:53.134] } [17:27:53.134] { [17:27:53.134] if (base::length(...future.futureOptionsAdded) > [17:27:53.134] 0L) { [17:27:53.134] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:53.134] base::names(opts) <- ...future.futureOptionsAdded [17:27:53.134] base::options(opts) [17:27:53.134] } [17:27:53.134] { [17:27:53.134] { [17:27:53.134] base::options(mc.cores = ...future.mc.cores.old) [17:27:53.134] NULL [17:27:53.134] } [17:27:53.134] options(future.plan = NULL) [17:27:53.134] if (is.na(NA_character_)) [17:27:53.134] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.134] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:53.134] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:53.134] .init = FALSE) [17:27:53.134] } [17:27:53.134] } [17:27:53.134] } [17:27:53.134] }) [17:27:53.134] if (TRUE) { [17:27:53.134] base::sink(type = "output", split = FALSE) [17:27:53.134] if (TRUE) { [17:27:53.134] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:53.134] } [17:27:53.134] else { [17:27:53.134] ...future.result["stdout"] <- base::list(NULL) [17:27:53.134] } [17:27:53.134] base::close(...future.stdout) [17:27:53.134] ...future.stdout <- NULL [17:27:53.134] } [17:27:53.134] ...future.result$conditions <- ...future.conditions [17:27:53.134] ...future.result$finished <- base::Sys.time() [17:27:53.134] ...future.result [17:27:53.134] } [17:27:53.140] MultisessionFuture started [17:27:53.140] - Launch lazy future ... done [17:27:53.140] run() for 'MultisessionFuture' ... done [17:27:53.658] receiveMessageFromWorker() for ClusterFuture ... [17:27:53.659] - Validating connection of MultisessionFuture [17:27:53.659] - received message: FutureResult [17:27:53.659] - Received FutureResult [17:27:53.659] - Erased future from FutureRegistry [17:27:53.660] result() for ClusterFuture ... [17:27:53.660] - result already collected: FutureResult [17:27:53.660] result() for ClusterFuture ... done [17:27:53.660] receiveMessageFromWorker() for ClusterFuture ... done [17:27:53.660] A MultisessionFuture was resolved (result was not collected) - w/ exception ... [17:27:53.660] getGlobalsAndPackages() ... [17:27:53.661] Searching for globals... [17:27:53.662] - globals found: [2] 'list', 'stop' [17:27:53.662] Searching for globals ... DONE [17:27:53.662] Resolving globals: FALSE [17:27:53.662] [17:27:53.662] [17:27:53.663] getGlobalsAndPackages() ... DONE [17:27:53.663] run() for 'Future' ... [17:27:53.663] - state: 'created' [17:27:53.663] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:53.677] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:53.677] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:53.678] - Field: 'node' [17:27:53.678] - Field: 'label' [17:27:53.678] - Field: 'local' [17:27:53.678] - Field: 'owner' [17:27:53.678] - Field: 'envir' [17:27:53.678] - Field: 'workers' [17:27:53.679] - Field: 'packages' [17:27:53.679] - Field: 'gc' [17:27:53.679] - Field: 'conditions' [17:27:53.679] - Field: 'persistent' [17:27:53.679] - Field: 'expr' [17:27:53.680] - Field: 'uuid' [17:27:53.680] - Field: 'seed' [17:27:53.680] - Field: 'version' [17:27:53.680] - Field: 'result' [17:27:53.680] - Field: 'asynchronous' [17:27:53.680] - Field: 'calls' [17:27:53.681] - Field: 'globals' [17:27:53.681] - Field: 'stdout' [17:27:53.681] - Field: 'earlySignal' [17:27:53.681] - Field: 'lazy' [17:27:53.681] - Field: 'state' [17:27:53.681] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:53.682] - Launch lazy future ... [17:27:53.682] Packages needed by the future expression (n = 0): [17:27:53.682] Packages needed by future strategies (n = 0): [17:27:53.683] { [17:27:53.683] { [17:27:53.683] { [17:27:53.683] ...future.startTime <- base::Sys.time() [17:27:53.683] { [17:27:53.683] { [17:27:53.683] { [17:27:53.683] { [17:27:53.683] base::local({ [17:27:53.683] has_future <- base::requireNamespace("future", [17:27:53.683] quietly = TRUE) [17:27:53.683] if (has_future) { [17:27:53.683] ns <- base::getNamespace("future") [17:27:53.683] version <- ns[[".package"]][["version"]] [17:27:53.683] if (is.null(version)) [17:27:53.683] version <- utils::packageVersion("future") [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] version <- NULL [17:27:53.683] } [17:27:53.683] if (!has_future || version < "1.8.0") { [17:27:53.683] info <- base::c(r_version = base::gsub("R version ", [17:27:53.683] "", base::R.version$version.string), [17:27:53.683] platform = base::sprintf("%s (%s-bit)", [17:27:53.683] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:53.683] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:53.683] "release", "version")], collapse = " "), [17:27:53.683] hostname = base::Sys.info()[["nodename"]]) [17:27:53.683] info <- base::sprintf("%s: %s", base::names(info), [17:27:53.683] info) [17:27:53.683] info <- base::paste(info, collapse = "; ") [17:27:53.683] if (!has_future) { [17:27:53.683] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:53.683] info) [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:53.683] info, version) [17:27:53.683] } [17:27:53.683] base::stop(msg) [17:27:53.683] } [17:27:53.683] }) [17:27:53.683] } [17:27:53.683] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:53.683] base::options(mc.cores = 1L) [17:27:53.683] } [17:27:53.683] ...future.strategy.old <- future::plan("list") [17:27:53.683] options(future.plan = NULL) [17:27:53.683] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.683] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:53.683] } [17:27:53.683] ...future.workdir <- getwd() [17:27:53.683] } [17:27:53.683] ...future.oldOptions <- base::as.list(base::.Options) [17:27:53.683] ...future.oldEnvVars <- base::Sys.getenv() [17:27:53.683] } [17:27:53.683] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:53.683] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:53.683] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:53.683] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:53.683] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:53.683] future.stdout.windows.reencode = NULL, width = 80L) [17:27:53.683] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:53.683] base::names(...future.oldOptions)) [17:27:53.683] } [17:27:53.683] if (FALSE) { [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] if (TRUE) { [17:27:53.683] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:53.683] open = "w") [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:53.683] windows = "NUL", "/dev/null"), open = "w") [17:27:53.683] } [17:27:53.683] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:53.683] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:53.683] base::sink(type = "output", split = FALSE) [17:27:53.683] base::close(...future.stdout) [17:27:53.683] }, add = TRUE) [17:27:53.683] } [17:27:53.683] ...future.frame <- base::sys.nframe() [17:27:53.683] ...future.conditions <- base::list() [17:27:53.683] ...future.rng <- base::globalenv()$.Random.seed [17:27:53.683] if (FALSE) { [17:27:53.683] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:53.683] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:53.683] } [17:27:53.683] ...future.result <- base::tryCatch({ [17:27:53.683] base::withCallingHandlers({ [17:27:53.683] ...future.value <- base::withVisible(base::local({ [17:27:53.683] ...future.makeSendCondition <- base::local({ [17:27:53.683] sendCondition <- NULL [17:27:53.683] function(frame = 1L) { [17:27:53.683] if (is.function(sendCondition)) [17:27:53.683] return(sendCondition) [17:27:53.683] ns <- getNamespace("parallel") [17:27:53.683] if (exists("sendData", mode = "function", [17:27:53.683] envir = ns)) { [17:27:53.683] parallel_sendData <- get("sendData", mode = "function", [17:27:53.683] envir = ns) [17:27:53.683] envir <- sys.frame(frame) [17:27:53.683] master <- NULL [17:27:53.683] while (!identical(envir, .GlobalEnv) && [17:27:53.683] !identical(envir, emptyenv())) { [17:27:53.683] if (exists("master", mode = "list", envir = envir, [17:27:53.683] inherits = FALSE)) { [17:27:53.683] master <- get("master", mode = "list", [17:27:53.683] envir = envir, inherits = FALSE) [17:27:53.683] if (inherits(master, c("SOCKnode", [17:27:53.683] "SOCK0node"))) { [17:27:53.683] sendCondition <<- function(cond) { [17:27:53.683] data <- list(type = "VALUE", value = cond, [17:27:53.683] success = TRUE) [17:27:53.683] parallel_sendData(master, data) [17:27:53.683] } [17:27:53.683] return(sendCondition) [17:27:53.683] } [17:27:53.683] } [17:27:53.683] frame <- frame + 1L [17:27:53.683] envir <- sys.frame(frame) [17:27:53.683] } [17:27:53.683] } [17:27:53.683] sendCondition <<- function(cond) NULL [17:27:53.683] } [17:27:53.683] }) [17:27:53.683] withCallingHandlers({ [17:27:53.683] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:53.683] }, immediateCondition = function(cond) { [17:27:53.683] sendCondition <- ...future.makeSendCondition() [17:27:53.683] sendCondition(cond) [17:27:53.683] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.683] { [17:27:53.683] inherits <- base::inherits [17:27:53.683] invokeRestart <- base::invokeRestart [17:27:53.683] is.null <- base::is.null [17:27:53.683] muffled <- FALSE [17:27:53.683] if (inherits(cond, "message")) { [17:27:53.683] muffled <- grepl(pattern, "muffleMessage") [17:27:53.683] if (muffled) [17:27:53.683] invokeRestart("muffleMessage") [17:27:53.683] } [17:27:53.683] else if (inherits(cond, "warning")) { [17:27:53.683] muffled <- grepl(pattern, "muffleWarning") [17:27:53.683] if (muffled) [17:27:53.683] invokeRestart("muffleWarning") [17:27:53.683] } [17:27:53.683] else if (inherits(cond, "condition")) { [17:27:53.683] if (!is.null(pattern)) { [17:27:53.683] computeRestarts <- base::computeRestarts [17:27:53.683] grepl <- base::grepl [17:27:53.683] restarts <- computeRestarts(cond) [17:27:53.683] for (restart in restarts) { [17:27:53.683] name <- restart$name [17:27:53.683] if (is.null(name)) [17:27:53.683] next [17:27:53.683] if (!grepl(pattern, name)) [17:27:53.683] next [17:27:53.683] invokeRestart(restart) [17:27:53.683] muffled <- TRUE [17:27:53.683] break [17:27:53.683] } [17:27:53.683] } [17:27:53.683] } [17:27:53.683] invisible(muffled) [17:27:53.683] } [17:27:53.683] muffleCondition(cond) [17:27:53.683] }) [17:27:53.683] })) [17:27:53.683] future::FutureResult(value = ...future.value$value, [17:27:53.683] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.683] ...future.rng), globalenv = if (FALSE) [17:27:53.683] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:53.683] ...future.globalenv.names)) [17:27:53.683] else NULL, started = ...future.startTime, version = "1.8") [17:27:53.683] }, condition = base::local({ [17:27:53.683] c <- base::c [17:27:53.683] inherits <- base::inherits [17:27:53.683] invokeRestart <- base::invokeRestart [17:27:53.683] length <- base::length [17:27:53.683] list <- base::list [17:27:53.683] seq.int <- base::seq.int [17:27:53.683] signalCondition <- base::signalCondition [17:27:53.683] sys.calls <- base::sys.calls [17:27:53.683] `[[` <- base::`[[` [17:27:53.683] `+` <- base::`+` [17:27:53.683] `<<-` <- base::`<<-` [17:27:53.683] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:53.683] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:53.683] 3L)] [17:27:53.683] } [17:27:53.683] function(cond) { [17:27:53.683] is_error <- inherits(cond, "error") [17:27:53.683] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:53.683] NULL) [17:27:53.683] if (is_error) { [17:27:53.683] sessionInformation <- function() { [17:27:53.683] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:53.683] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:53.683] search = base::search(), system = base::Sys.info()) [17:27:53.683] } [17:27:53.683] ...future.conditions[[length(...future.conditions) + [17:27:53.683] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:53.683] cond$call), session = sessionInformation(), [17:27:53.683] timestamp = base::Sys.time(), signaled = 0L) [17:27:53.683] signalCondition(cond) [17:27:53.683] } [17:27:53.683] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:53.683] "immediateCondition"))) { [17:27:53.683] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:53.683] ...future.conditions[[length(...future.conditions) + [17:27:53.683] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:53.683] if (TRUE && !signal) { [17:27:53.683] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.683] { [17:27:53.683] inherits <- base::inherits [17:27:53.683] invokeRestart <- base::invokeRestart [17:27:53.683] is.null <- base::is.null [17:27:53.683] muffled <- FALSE [17:27:53.683] if (inherits(cond, "message")) { [17:27:53.683] muffled <- grepl(pattern, "muffleMessage") [17:27:53.683] if (muffled) [17:27:53.683] invokeRestart("muffleMessage") [17:27:53.683] } [17:27:53.683] else if (inherits(cond, "warning")) { [17:27:53.683] muffled <- grepl(pattern, "muffleWarning") [17:27:53.683] if (muffled) [17:27:53.683] invokeRestart("muffleWarning") [17:27:53.683] } [17:27:53.683] else if (inherits(cond, "condition")) { [17:27:53.683] if (!is.null(pattern)) { [17:27:53.683] computeRestarts <- base::computeRestarts [17:27:53.683] grepl <- base::grepl [17:27:53.683] restarts <- computeRestarts(cond) [17:27:53.683] for (restart in restarts) { [17:27:53.683] name <- restart$name [17:27:53.683] if (is.null(name)) [17:27:53.683] next [17:27:53.683] if (!grepl(pattern, name)) [17:27:53.683] next [17:27:53.683] invokeRestart(restart) [17:27:53.683] muffled <- TRUE [17:27:53.683] break [17:27:53.683] } [17:27:53.683] } [17:27:53.683] } [17:27:53.683] invisible(muffled) [17:27:53.683] } [17:27:53.683] muffleCondition(cond, pattern = "^muffle") [17:27:53.683] } [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] if (TRUE) { [17:27:53.683] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.683] { [17:27:53.683] inherits <- base::inherits [17:27:53.683] invokeRestart <- base::invokeRestart [17:27:53.683] is.null <- base::is.null [17:27:53.683] muffled <- FALSE [17:27:53.683] if (inherits(cond, "message")) { [17:27:53.683] muffled <- grepl(pattern, "muffleMessage") [17:27:53.683] if (muffled) [17:27:53.683] invokeRestart("muffleMessage") [17:27:53.683] } [17:27:53.683] else if (inherits(cond, "warning")) { [17:27:53.683] muffled <- grepl(pattern, "muffleWarning") [17:27:53.683] if (muffled) [17:27:53.683] invokeRestart("muffleWarning") [17:27:53.683] } [17:27:53.683] else if (inherits(cond, "condition")) { [17:27:53.683] if (!is.null(pattern)) { [17:27:53.683] computeRestarts <- base::computeRestarts [17:27:53.683] grepl <- base::grepl [17:27:53.683] restarts <- computeRestarts(cond) [17:27:53.683] for (restart in restarts) { [17:27:53.683] name <- restart$name [17:27:53.683] if (is.null(name)) [17:27:53.683] next [17:27:53.683] if (!grepl(pattern, name)) [17:27:53.683] next [17:27:53.683] invokeRestart(restart) [17:27:53.683] muffled <- TRUE [17:27:53.683] break [17:27:53.683] } [17:27:53.683] } [17:27:53.683] } [17:27:53.683] invisible(muffled) [17:27:53.683] } [17:27:53.683] muffleCondition(cond, pattern = "^muffle") [17:27:53.683] } [17:27:53.683] } [17:27:53.683] } [17:27:53.683] })) [17:27:53.683] }, error = function(ex) { [17:27:53.683] base::structure(base::list(value = NULL, visible = NULL, [17:27:53.683] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.683] ...future.rng), started = ...future.startTime, [17:27:53.683] finished = Sys.time(), session_uuid = NA_character_, [17:27:53.683] version = "1.8"), class = "FutureResult") [17:27:53.683] }, finally = { [17:27:53.683] if (!identical(...future.workdir, getwd())) [17:27:53.683] setwd(...future.workdir) [17:27:53.683] { [17:27:53.683] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:53.683] ...future.oldOptions$nwarnings <- NULL [17:27:53.683] } [17:27:53.683] base::options(...future.oldOptions) [17:27:53.683] if (.Platform$OS.type == "windows") { [17:27:53.683] old_names <- names(...future.oldEnvVars) [17:27:53.683] envs <- base::Sys.getenv() [17:27:53.683] names <- names(envs) [17:27:53.683] common <- intersect(names, old_names) [17:27:53.683] added <- setdiff(names, old_names) [17:27:53.683] removed <- setdiff(old_names, names) [17:27:53.683] changed <- common[...future.oldEnvVars[common] != [17:27:53.683] envs[common]] [17:27:53.683] NAMES <- toupper(changed) [17:27:53.683] args <- list() [17:27:53.683] for (kk in seq_along(NAMES)) { [17:27:53.683] name <- changed[[kk]] [17:27:53.683] NAME <- NAMES[[kk]] [17:27:53.683] if (name != NAME && is.element(NAME, old_names)) [17:27:53.683] next [17:27:53.683] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.683] } [17:27:53.683] NAMES <- toupper(added) [17:27:53.683] for (kk in seq_along(NAMES)) { [17:27:53.683] name <- added[[kk]] [17:27:53.683] NAME <- NAMES[[kk]] [17:27:53.683] if (name != NAME && is.element(NAME, old_names)) [17:27:53.683] next [17:27:53.683] args[[name]] <- "" [17:27:53.683] } [17:27:53.683] NAMES <- toupper(removed) [17:27:53.683] for (kk in seq_along(NAMES)) { [17:27:53.683] name <- removed[[kk]] [17:27:53.683] NAME <- NAMES[[kk]] [17:27:53.683] if (name != NAME && is.element(NAME, old_names)) [17:27:53.683] next [17:27:53.683] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.683] } [17:27:53.683] if (length(args) > 0) [17:27:53.683] base::do.call(base::Sys.setenv, args = args) [17:27:53.683] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:53.683] } [17:27:53.683] { [17:27:53.683] if (base::length(...future.futureOptionsAdded) > [17:27:53.683] 0L) { [17:27:53.683] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:53.683] base::names(opts) <- ...future.futureOptionsAdded [17:27:53.683] base::options(opts) [17:27:53.683] } [17:27:53.683] { [17:27:53.683] { [17:27:53.683] base::options(mc.cores = ...future.mc.cores.old) [17:27:53.683] NULL [17:27:53.683] } [17:27:53.683] options(future.plan = NULL) [17:27:53.683] if (is.na(NA_character_)) [17:27:53.683] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.683] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:53.683] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:53.683] .init = FALSE) [17:27:53.683] } [17:27:53.683] } [17:27:53.683] } [17:27:53.683] }) [17:27:53.683] if (TRUE) { [17:27:53.683] base::sink(type = "output", split = FALSE) [17:27:53.683] if (TRUE) { [17:27:53.683] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:53.683] } [17:27:53.683] else { [17:27:53.683] ...future.result["stdout"] <- base::list(NULL) [17:27:53.683] } [17:27:53.683] base::close(...future.stdout) [17:27:53.683] ...future.stdout <- NULL [17:27:53.683] } [17:27:53.683] ...future.result$conditions <- ...future.conditions [17:27:53.683] ...future.result$finished <- base::Sys.time() [17:27:53.683] ...future.result [17:27:53.683] } [17:27:53.688] MultisessionFuture started [17:27:53.689] - Launch lazy future ... done [17:27:53.689] run() for 'MultisessionFuture' ... done [17:27:53.703] receiveMessageFromWorker() for ClusterFuture ... [17:27:53.703] - Validating connection of MultisessionFuture [17:27:53.704] - received message: FutureResult [17:27:53.704] - Received FutureResult [17:27:53.704] - Erased future from FutureRegistry [17:27:53.704] result() for ClusterFuture ... [17:27:53.704] - result already collected: FutureResult [17:27:53.705] result() for ClusterFuture ... done [17:27:53.705] signalConditions() ... [17:27:53.705] - include = 'immediateCondition' [17:27:53.705] - exclude = [17:27:53.705] - resignal = FALSE [17:27:53.705] - Number of conditions: 1 [17:27:53.706] signalConditions() ... done [17:27:53.706] receiveMessageFromWorker() for ClusterFuture ... done [17:27:53.706] A MultisessionFuture was resolved (result was not collected) [17:27:53.706] getGlobalsAndPackages() ... [17:27:53.706] Searching for globals... [17:27:53.707] - globals found: [2] 'list', 'stop' [17:27:53.707] Searching for globals ... DONE [17:27:53.707] Resolving globals: FALSE [17:27:53.708] [17:27:53.708] [17:27:53.708] getGlobalsAndPackages() ... DONE [17:27:53.708] run() for 'Future' ... [17:27:53.709] - state: 'created' [17:27:53.709] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:53.722] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:53.723] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:53.723] - Field: 'node' [17:27:53.723] - Field: 'label' [17:27:53.723] - Field: 'local' [17:27:53.723] - Field: 'owner' [17:27:53.724] - Field: 'envir' [17:27:53.724] - Field: 'workers' [17:27:53.724] - Field: 'packages' [17:27:53.724] - Field: 'gc' [17:27:53.724] - Field: 'conditions' [17:27:53.724] - Field: 'persistent' [17:27:53.725] - Field: 'expr' [17:27:53.725] - Field: 'uuid' [17:27:53.725] - Field: 'seed' [17:27:53.725] - Field: 'version' [17:27:53.725] - Field: 'result' [17:27:53.725] - Field: 'asynchronous' [17:27:53.726] - Field: 'calls' [17:27:53.726] - Field: 'globals' [17:27:53.726] - Field: 'stdout' [17:27:53.726] - Field: 'earlySignal' [17:27:53.726] - Field: 'lazy' [17:27:53.727] - Field: 'state' [17:27:53.727] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:53.727] - Launch lazy future ... [17:27:53.727] Packages needed by the future expression (n = 0): [17:27:53.727] Packages needed by future strategies (n = 0): [17:27:53.728] { [17:27:53.728] { [17:27:53.728] { [17:27:53.728] ...future.startTime <- base::Sys.time() [17:27:53.728] { [17:27:53.728] { [17:27:53.728] { [17:27:53.728] { [17:27:53.728] base::local({ [17:27:53.728] has_future <- base::requireNamespace("future", [17:27:53.728] quietly = TRUE) [17:27:53.728] if (has_future) { [17:27:53.728] ns <- base::getNamespace("future") [17:27:53.728] version <- ns[[".package"]][["version"]] [17:27:53.728] if (is.null(version)) [17:27:53.728] version <- utils::packageVersion("future") [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] version <- NULL [17:27:53.728] } [17:27:53.728] if (!has_future || version < "1.8.0") { [17:27:53.728] info <- base::c(r_version = base::gsub("R version ", [17:27:53.728] "", base::R.version$version.string), [17:27:53.728] platform = base::sprintf("%s (%s-bit)", [17:27:53.728] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:53.728] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:53.728] "release", "version")], collapse = " "), [17:27:53.728] hostname = base::Sys.info()[["nodename"]]) [17:27:53.728] info <- base::sprintf("%s: %s", base::names(info), [17:27:53.728] info) [17:27:53.728] info <- base::paste(info, collapse = "; ") [17:27:53.728] if (!has_future) { [17:27:53.728] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:53.728] info) [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:53.728] info, version) [17:27:53.728] } [17:27:53.728] base::stop(msg) [17:27:53.728] } [17:27:53.728] }) [17:27:53.728] } [17:27:53.728] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:53.728] base::options(mc.cores = 1L) [17:27:53.728] } [17:27:53.728] ...future.strategy.old <- future::plan("list") [17:27:53.728] options(future.plan = NULL) [17:27:53.728] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.728] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:53.728] } [17:27:53.728] ...future.workdir <- getwd() [17:27:53.728] } [17:27:53.728] ...future.oldOptions <- base::as.list(base::.Options) [17:27:53.728] ...future.oldEnvVars <- base::Sys.getenv() [17:27:53.728] } [17:27:53.728] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:53.728] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:53.728] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:53.728] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:53.728] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:53.728] future.stdout.windows.reencode = NULL, width = 80L) [17:27:53.728] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:53.728] base::names(...future.oldOptions)) [17:27:53.728] } [17:27:53.728] if (FALSE) { [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] if (TRUE) { [17:27:53.728] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:53.728] open = "w") [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:53.728] windows = "NUL", "/dev/null"), open = "w") [17:27:53.728] } [17:27:53.728] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:53.728] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:53.728] base::sink(type = "output", split = FALSE) [17:27:53.728] base::close(...future.stdout) [17:27:53.728] }, add = TRUE) [17:27:53.728] } [17:27:53.728] ...future.frame <- base::sys.nframe() [17:27:53.728] ...future.conditions <- base::list() [17:27:53.728] ...future.rng <- base::globalenv()$.Random.seed [17:27:53.728] if (FALSE) { [17:27:53.728] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:53.728] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:53.728] } [17:27:53.728] ...future.result <- base::tryCatch({ [17:27:53.728] base::withCallingHandlers({ [17:27:53.728] ...future.value <- base::withVisible(base::local({ [17:27:53.728] ...future.makeSendCondition <- base::local({ [17:27:53.728] sendCondition <- NULL [17:27:53.728] function(frame = 1L) { [17:27:53.728] if (is.function(sendCondition)) [17:27:53.728] return(sendCondition) [17:27:53.728] ns <- getNamespace("parallel") [17:27:53.728] if (exists("sendData", mode = "function", [17:27:53.728] envir = ns)) { [17:27:53.728] parallel_sendData <- get("sendData", mode = "function", [17:27:53.728] envir = ns) [17:27:53.728] envir <- sys.frame(frame) [17:27:53.728] master <- NULL [17:27:53.728] while (!identical(envir, .GlobalEnv) && [17:27:53.728] !identical(envir, emptyenv())) { [17:27:53.728] if (exists("master", mode = "list", envir = envir, [17:27:53.728] inherits = FALSE)) { [17:27:53.728] master <- get("master", mode = "list", [17:27:53.728] envir = envir, inherits = FALSE) [17:27:53.728] if (inherits(master, c("SOCKnode", [17:27:53.728] "SOCK0node"))) { [17:27:53.728] sendCondition <<- function(cond) { [17:27:53.728] data <- list(type = "VALUE", value = cond, [17:27:53.728] success = TRUE) [17:27:53.728] parallel_sendData(master, data) [17:27:53.728] } [17:27:53.728] return(sendCondition) [17:27:53.728] } [17:27:53.728] } [17:27:53.728] frame <- frame + 1L [17:27:53.728] envir <- sys.frame(frame) [17:27:53.728] } [17:27:53.728] } [17:27:53.728] sendCondition <<- function(cond) NULL [17:27:53.728] } [17:27:53.728] }) [17:27:53.728] withCallingHandlers({ [17:27:53.728] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:53.728] }, immediateCondition = function(cond) { [17:27:53.728] sendCondition <- ...future.makeSendCondition() [17:27:53.728] sendCondition(cond) [17:27:53.728] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.728] { [17:27:53.728] inherits <- base::inherits [17:27:53.728] invokeRestart <- base::invokeRestart [17:27:53.728] is.null <- base::is.null [17:27:53.728] muffled <- FALSE [17:27:53.728] if (inherits(cond, "message")) { [17:27:53.728] muffled <- grepl(pattern, "muffleMessage") [17:27:53.728] if (muffled) [17:27:53.728] invokeRestart("muffleMessage") [17:27:53.728] } [17:27:53.728] else if (inherits(cond, "warning")) { [17:27:53.728] muffled <- grepl(pattern, "muffleWarning") [17:27:53.728] if (muffled) [17:27:53.728] invokeRestart("muffleWarning") [17:27:53.728] } [17:27:53.728] else if (inherits(cond, "condition")) { [17:27:53.728] if (!is.null(pattern)) { [17:27:53.728] computeRestarts <- base::computeRestarts [17:27:53.728] grepl <- base::grepl [17:27:53.728] restarts <- computeRestarts(cond) [17:27:53.728] for (restart in restarts) { [17:27:53.728] name <- restart$name [17:27:53.728] if (is.null(name)) [17:27:53.728] next [17:27:53.728] if (!grepl(pattern, name)) [17:27:53.728] next [17:27:53.728] invokeRestart(restart) [17:27:53.728] muffled <- TRUE [17:27:53.728] break [17:27:53.728] } [17:27:53.728] } [17:27:53.728] } [17:27:53.728] invisible(muffled) [17:27:53.728] } [17:27:53.728] muffleCondition(cond) [17:27:53.728] }) [17:27:53.728] })) [17:27:53.728] future::FutureResult(value = ...future.value$value, [17:27:53.728] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.728] ...future.rng), globalenv = if (FALSE) [17:27:53.728] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:53.728] ...future.globalenv.names)) [17:27:53.728] else NULL, started = ...future.startTime, version = "1.8") [17:27:53.728] }, condition = base::local({ [17:27:53.728] c <- base::c [17:27:53.728] inherits <- base::inherits [17:27:53.728] invokeRestart <- base::invokeRestart [17:27:53.728] length <- base::length [17:27:53.728] list <- base::list [17:27:53.728] seq.int <- base::seq.int [17:27:53.728] signalCondition <- base::signalCondition [17:27:53.728] sys.calls <- base::sys.calls [17:27:53.728] `[[` <- base::`[[` [17:27:53.728] `+` <- base::`+` [17:27:53.728] `<<-` <- base::`<<-` [17:27:53.728] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:53.728] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:53.728] 3L)] [17:27:53.728] } [17:27:53.728] function(cond) { [17:27:53.728] is_error <- inherits(cond, "error") [17:27:53.728] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:53.728] NULL) [17:27:53.728] if (is_error) { [17:27:53.728] sessionInformation <- function() { [17:27:53.728] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:53.728] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:53.728] search = base::search(), system = base::Sys.info()) [17:27:53.728] } [17:27:53.728] ...future.conditions[[length(...future.conditions) + [17:27:53.728] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:53.728] cond$call), session = sessionInformation(), [17:27:53.728] timestamp = base::Sys.time(), signaled = 0L) [17:27:53.728] signalCondition(cond) [17:27:53.728] } [17:27:53.728] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:53.728] "immediateCondition"))) { [17:27:53.728] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:53.728] ...future.conditions[[length(...future.conditions) + [17:27:53.728] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:53.728] if (TRUE && !signal) { [17:27:53.728] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.728] { [17:27:53.728] inherits <- base::inherits [17:27:53.728] invokeRestart <- base::invokeRestart [17:27:53.728] is.null <- base::is.null [17:27:53.728] muffled <- FALSE [17:27:53.728] if (inherits(cond, "message")) { [17:27:53.728] muffled <- grepl(pattern, "muffleMessage") [17:27:53.728] if (muffled) [17:27:53.728] invokeRestart("muffleMessage") [17:27:53.728] } [17:27:53.728] else if (inherits(cond, "warning")) { [17:27:53.728] muffled <- grepl(pattern, "muffleWarning") [17:27:53.728] if (muffled) [17:27:53.728] invokeRestart("muffleWarning") [17:27:53.728] } [17:27:53.728] else if (inherits(cond, "condition")) { [17:27:53.728] if (!is.null(pattern)) { [17:27:53.728] computeRestarts <- base::computeRestarts [17:27:53.728] grepl <- base::grepl [17:27:53.728] restarts <- computeRestarts(cond) [17:27:53.728] for (restart in restarts) { [17:27:53.728] name <- restart$name [17:27:53.728] if (is.null(name)) [17:27:53.728] next [17:27:53.728] if (!grepl(pattern, name)) [17:27:53.728] next [17:27:53.728] invokeRestart(restart) [17:27:53.728] muffled <- TRUE [17:27:53.728] break [17:27:53.728] } [17:27:53.728] } [17:27:53.728] } [17:27:53.728] invisible(muffled) [17:27:53.728] } [17:27:53.728] muffleCondition(cond, pattern = "^muffle") [17:27:53.728] } [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] if (TRUE) { [17:27:53.728] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.728] { [17:27:53.728] inherits <- base::inherits [17:27:53.728] invokeRestart <- base::invokeRestart [17:27:53.728] is.null <- base::is.null [17:27:53.728] muffled <- FALSE [17:27:53.728] if (inherits(cond, "message")) { [17:27:53.728] muffled <- grepl(pattern, "muffleMessage") [17:27:53.728] if (muffled) [17:27:53.728] invokeRestart("muffleMessage") [17:27:53.728] } [17:27:53.728] else if (inherits(cond, "warning")) { [17:27:53.728] muffled <- grepl(pattern, "muffleWarning") [17:27:53.728] if (muffled) [17:27:53.728] invokeRestart("muffleWarning") [17:27:53.728] } [17:27:53.728] else if (inherits(cond, "condition")) { [17:27:53.728] if (!is.null(pattern)) { [17:27:53.728] computeRestarts <- base::computeRestarts [17:27:53.728] grepl <- base::grepl [17:27:53.728] restarts <- computeRestarts(cond) [17:27:53.728] for (restart in restarts) { [17:27:53.728] name <- restart$name [17:27:53.728] if (is.null(name)) [17:27:53.728] next [17:27:53.728] if (!grepl(pattern, name)) [17:27:53.728] next [17:27:53.728] invokeRestart(restart) [17:27:53.728] muffled <- TRUE [17:27:53.728] break [17:27:53.728] } [17:27:53.728] } [17:27:53.728] } [17:27:53.728] invisible(muffled) [17:27:53.728] } [17:27:53.728] muffleCondition(cond, pattern = "^muffle") [17:27:53.728] } [17:27:53.728] } [17:27:53.728] } [17:27:53.728] })) [17:27:53.728] }, error = function(ex) { [17:27:53.728] base::structure(base::list(value = NULL, visible = NULL, [17:27:53.728] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.728] ...future.rng), started = ...future.startTime, [17:27:53.728] finished = Sys.time(), session_uuid = NA_character_, [17:27:53.728] version = "1.8"), class = "FutureResult") [17:27:53.728] }, finally = { [17:27:53.728] if (!identical(...future.workdir, getwd())) [17:27:53.728] setwd(...future.workdir) [17:27:53.728] { [17:27:53.728] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:53.728] ...future.oldOptions$nwarnings <- NULL [17:27:53.728] } [17:27:53.728] base::options(...future.oldOptions) [17:27:53.728] if (.Platform$OS.type == "windows") { [17:27:53.728] old_names <- names(...future.oldEnvVars) [17:27:53.728] envs <- base::Sys.getenv() [17:27:53.728] names <- names(envs) [17:27:53.728] common <- intersect(names, old_names) [17:27:53.728] added <- setdiff(names, old_names) [17:27:53.728] removed <- setdiff(old_names, names) [17:27:53.728] changed <- common[...future.oldEnvVars[common] != [17:27:53.728] envs[common]] [17:27:53.728] NAMES <- toupper(changed) [17:27:53.728] args <- list() [17:27:53.728] for (kk in seq_along(NAMES)) { [17:27:53.728] name <- changed[[kk]] [17:27:53.728] NAME <- NAMES[[kk]] [17:27:53.728] if (name != NAME && is.element(NAME, old_names)) [17:27:53.728] next [17:27:53.728] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.728] } [17:27:53.728] NAMES <- toupper(added) [17:27:53.728] for (kk in seq_along(NAMES)) { [17:27:53.728] name <- added[[kk]] [17:27:53.728] NAME <- NAMES[[kk]] [17:27:53.728] if (name != NAME && is.element(NAME, old_names)) [17:27:53.728] next [17:27:53.728] args[[name]] <- "" [17:27:53.728] } [17:27:53.728] NAMES <- toupper(removed) [17:27:53.728] for (kk in seq_along(NAMES)) { [17:27:53.728] name <- removed[[kk]] [17:27:53.728] NAME <- NAMES[[kk]] [17:27:53.728] if (name != NAME && is.element(NAME, old_names)) [17:27:53.728] next [17:27:53.728] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.728] } [17:27:53.728] if (length(args) > 0) [17:27:53.728] base::do.call(base::Sys.setenv, args = args) [17:27:53.728] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:53.728] } [17:27:53.728] { [17:27:53.728] if (base::length(...future.futureOptionsAdded) > [17:27:53.728] 0L) { [17:27:53.728] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:53.728] base::names(opts) <- ...future.futureOptionsAdded [17:27:53.728] base::options(opts) [17:27:53.728] } [17:27:53.728] { [17:27:53.728] { [17:27:53.728] base::options(mc.cores = ...future.mc.cores.old) [17:27:53.728] NULL [17:27:53.728] } [17:27:53.728] options(future.plan = NULL) [17:27:53.728] if (is.na(NA_character_)) [17:27:53.728] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.728] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:53.728] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:53.728] .init = FALSE) [17:27:53.728] } [17:27:53.728] } [17:27:53.728] } [17:27:53.728] }) [17:27:53.728] if (TRUE) { [17:27:53.728] base::sink(type = "output", split = FALSE) [17:27:53.728] if (TRUE) { [17:27:53.728] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:53.728] } [17:27:53.728] else { [17:27:53.728] ...future.result["stdout"] <- base::list(NULL) [17:27:53.728] } [17:27:53.728] base::close(...future.stdout) [17:27:53.728] ...future.stdout <- NULL [17:27:53.728] } [17:27:53.728] ...future.result$conditions <- ...future.conditions [17:27:53.728] ...future.result$finished <- base::Sys.time() [17:27:53.728] ...future.result [17:27:53.728] } [17:27:53.733] MultisessionFuture started [17:27:53.734] - Launch lazy future ... done [17:27:53.734] run() for 'MultisessionFuture' ... done [17:27:53.748] receiveMessageFromWorker() for ClusterFuture ... [17:27:53.748] - Validating connection of MultisessionFuture [17:27:53.748] - received message: FutureResult [17:27:53.749] - Received FutureResult [17:27:53.749] - Erased future from FutureRegistry [17:27:53.749] result() for ClusterFuture ... [17:27:53.749] - result already collected: FutureResult [17:27:53.749] result() for ClusterFuture ... done [17:27:53.749] signalConditions() ... [17:27:53.750] - include = 'immediateCondition' [17:27:53.750] - exclude = [17:27:53.750] - resignal = FALSE [17:27:53.750] - Number of conditions: 1 [17:27:53.750] signalConditions() ... done [17:27:53.750] receiveMessageFromWorker() for ClusterFuture ... done [17:27:53.751] A MultisessionFuture was resolved (result was not collected) - result = FALSE, recursive = 2 ... DONE - result = FALSE, recursive = Inf ... [17:27:53.751] getGlobalsAndPackages() ... [17:27:53.751] Searching for globals... [17:27:53.752] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:53.753] Searching for globals ... DONE [17:27:53.753] Resolving globals: FALSE [17:27:53.753] [17:27:53.753] [17:27:53.753] getGlobalsAndPackages() ... DONE [17:27:53.754] run() for 'Future' ... [17:27:53.754] - state: 'created' [17:27:53.754] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:53.768] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:53.768] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:53.768] - Field: 'node' [17:27:53.768] - Field: 'label' [17:27:53.769] - Field: 'local' [17:27:53.771] - Field: 'owner' [17:27:53.771] - Field: 'envir' [17:27:53.771] - Field: 'workers' [17:27:53.772] - Field: 'packages' [17:27:53.772] - Field: 'gc' [17:27:53.772] - Field: 'conditions' [17:27:53.772] - Field: 'persistent' [17:27:53.772] - Field: 'expr' [17:27:53.773] - Field: 'uuid' [17:27:53.773] - Field: 'seed' [17:27:53.773] - Field: 'version' [17:27:53.773] - Field: 'result' [17:27:53.773] - Field: 'asynchronous' [17:27:53.773] - Field: 'calls' [17:27:53.774] - Field: 'globals' [17:27:53.774] - Field: 'stdout' [17:27:53.774] - Field: 'earlySignal' [17:27:53.774] - Field: 'lazy' [17:27:53.774] - Field: 'state' [17:27:53.774] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:53.775] - Launch lazy future ... [17:27:53.775] Packages needed by the future expression (n = 0): [17:27:53.775] Packages needed by future strategies (n = 0): [17:27:53.776] { [17:27:53.776] { [17:27:53.776] { [17:27:53.776] ...future.startTime <- base::Sys.time() [17:27:53.776] { [17:27:53.776] { [17:27:53.776] { [17:27:53.776] { [17:27:53.776] base::local({ [17:27:53.776] has_future <- base::requireNamespace("future", [17:27:53.776] quietly = TRUE) [17:27:53.776] if (has_future) { [17:27:53.776] ns <- base::getNamespace("future") [17:27:53.776] version <- ns[[".package"]][["version"]] [17:27:53.776] if (is.null(version)) [17:27:53.776] version <- utils::packageVersion("future") [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] version <- NULL [17:27:53.776] } [17:27:53.776] if (!has_future || version < "1.8.0") { [17:27:53.776] info <- base::c(r_version = base::gsub("R version ", [17:27:53.776] "", base::R.version$version.string), [17:27:53.776] platform = base::sprintf("%s (%s-bit)", [17:27:53.776] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:53.776] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:53.776] "release", "version")], collapse = " "), [17:27:53.776] hostname = base::Sys.info()[["nodename"]]) [17:27:53.776] info <- base::sprintf("%s: %s", base::names(info), [17:27:53.776] info) [17:27:53.776] info <- base::paste(info, collapse = "; ") [17:27:53.776] if (!has_future) { [17:27:53.776] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:53.776] info) [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:53.776] info, version) [17:27:53.776] } [17:27:53.776] base::stop(msg) [17:27:53.776] } [17:27:53.776] }) [17:27:53.776] } [17:27:53.776] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:53.776] base::options(mc.cores = 1L) [17:27:53.776] } [17:27:53.776] ...future.strategy.old <- future::plan("list") [17:27:53.776] options(future.plan = NULL) [17:27:53.776] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.776] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:53.776] } [17:27:53.776] ...future.workdir <- getwd() [17:27:53.776] } [17:27:53.776] ...future.oldOptions <- base::as.list(base::.Options) [17:27:53.776] ...future.oldEnvVars <- base::Sys.getenv() [17:27:53.776] } [17:27:53.776] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:53.776] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:53.776] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:53.776] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:53.776] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:53.776] future.stdout.windows.reencode = NULL, width = 80L) [17:27:53.776] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:53.776] base::names(...future.oldOptions)) [17:27:53.776] } [17:27:53.776] if (FALSE) { [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] if (TRUE) { [17:27:53.776] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:53.776] open = "w") [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:53.776] windows = "NUL", "/dev/null"), open = "w") [17:27:53.776] } [17:27:53.776] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:53.776] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:53.776] base::sink(type = "output", split = FALSE) [17:27:53.776] base::close(...future.stdout) [17:27:53.776] }, add = TRUE) [17:27:53.776] } [17:27:53.776] ...future.frame <- base::sys.nframe() [17:27:53.776] ...future.conditions <- base::list() [17:27:53.776] ...future.rng <- base::globalenv()$.Random.seed [17:27:53.776] if (FALSE) { [17:27:53.776] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:53.776] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:53.776] } [17:27:53.776] ...future.result <- base::tryCatch({ [17:27:53.776] base::withCallingHandlers({ [17:27:53.776] ...future.value <- base::withVisible(base::local({ [17:27:53.776] ...future.makeSendCondition <- base::local({ [17:27:53.776] sendCondition <- NULL [17:27:53.776] function(frame = 1L) { [17:27:53.776] if (is.function(sendCondition)) [17:27:53.776] return(sendCondition) [17:27:53.776] ns <- getNamespace("parallel") [17:27:53.776] if (exists("sendData", mode = "function", [17:27:53.776] envir = ns)) { [17:27:53.776] parallel_sendData <- get("sendData", mode = "function", [17:27:53.776] envir = ns) [17:27:53.776] envir <- sys.frame(frame) [17:27:53.776] master <- NULL [17:27:53.776] while (!identical(envir, .GlobalEnv) && [17:27:53.776] !identical(envir, emptyenv())) { [17:27:53.776] if (exists("master", mode = "list", envir = envir, [17:27:53.776] inherits = FALSE)) { [17:27:53.776] master <- get("master", mode = "list", [17:27:53.776] envir = envir, inherits = FALSE) [17:27:53.776] if (inherits(master, c("SOCKnode", [17:27:53.776] "SOCK0node"))) { [17:27:53.776] sendCondition <<- function(cond) { [17:27:53.776] data <- list(type = "VALUE", value = cond, [17:27:53.776] success = TRUE) [17:27:53.776] parallel_sendData(master, data) [17:27:53.776] } [17:27:53.776] return(sendCondition) [17:27:53.776] } [17:27:53.776] } [17:27:53.776] frame <- frame + 1L [17:27:53.776] envir <- sys.frame(frame) [17:27:53.776] } [17:27:53.776] } [17:27:53.776] sendCondition <<- function(cond) NULL [17:27:53.776] } [17:27:53.776] }) [17:27:53.776] withCallingHandlers({ [17:27:53.776] { [17:27:53.776] Sys.sleep(0.5) [17:27:53.776] list(a = 1, b = 42L) [17:27:53.776] } [17:27:53.776] }, immediateCondition = function(cond) { [17:27:53.776] sendCondition <- ...future.makeSendCondition() [17:27:53.776] sendCondition(cond) [17:27:53.776] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.776] { [17:27:53.776] inherits <- base::inherits [17:27:53.776] invokeRestart <- base::invokeRestart [17:27:53.776] is.null <- base::is.null [17:27:53.776] muffled <- FALSE [17:27:53.776] if (inherits(cond, "message")) { [17:27:53.776] muffled <- grepl(pattern, "muffleMessage") [17:27:53.776] if (muffled) [17:27:53.776] invokeRestart("muffleMessage") [17:27:53.776] } [17:27:53.776] else if (inherits(cond, "warning")) { [17:27:53.776] muffled <- grepl(pattern, "muffleWarning") [17:27:53.776] if (muffled) [17:27:53.776] invokeRestart("muffleWarning") [17:27:53.776] } [17:27:53.776] else if (inherits(cond, "condition")) { [17:27:53.776] if (!is.null(pattern)) { [17:27:53.776] computeRestarts <- base::computeRestarts [17:27:53.776] grepl <- base::grepl [17:27:53.776] restarts <- computeRestarts(cond) [17:27:53.776] for (restart in restarts) { [17:27:53.776] name <- restart$name [17:27:53.776] if (is.null(name)) [17:27:53.776] next [17:27:53.776] if (!grepl(pattern, name)) [17:27:53.776] next [17:27:53.776] invokeRestart(restart) [17:27:53.776] muffled <- TRUE [17:27:53.776] break [17:27:53.776] } [17:27:53.776] } [17:27:53.776] } [17:27:53.776] invisible(muffled) [17:27:53.776] } [17:27:53.776] muffleCondition(cond) [17:27:53.776] }) [17:27:53.776] })) [17:27:53.776] future::FutureResult(value = ...future.value$value, [17:27:53.776] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.776] ...future.rng), globalenv = if (FALSE) [17:27:53.776] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:53.776] ...future.globalenv.names)) [17:27:53.776] else NULL, started = ...future.startTime, version = "1.8") [17:27:53.776] }, condition = base::local({ [17:27:53.776] c <- base::c [17:27:53.776] inherits <- base::inherits [17:27:53.776] invokeRestart <- base::invokeRestart [17:27:53.776] length <- base::length [17:27:53.776] list <- base::list [17:27:53.776] seq.int <- base::seq.int [17:27:53.776] signalCondition <- base::signalCondition [17:27:53.776] sys.calls <- base::sys.calls [17:27:53.776] `[[` <- base::`[[` [17:27:53.776] `+` <- base::`+` [17:27:53.776] `<<-` <- base::`<<-` [17:27:53.776] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:53.776] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:53.776] 3L)] [17:27:53.776] } [17:27:53.776] function(cond) { [17:27:53.776] is_error <- inherits(cond, "error") [17:27:53.776] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:53.776] NULL) [17:27:53.776] if (is_error) { [17:27:53.776] sessionInformation <- function() { [17:27:53.776] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:53.776] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:53.776] search = base::search(), system = base::Sys.info()) [17:27:53.776] } [17:27:53.776] ...future.conditions[[length(...future.conditions) + [17:27:53.776] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:53.776] cond$call), session = sessionInformation(), [17:27:53.776] timestamp = base::Sys.time(), signaled = 0L) [17:27:53.776] signalCondition(cond) [17:27:53.776] } [17:27:53.776] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:53.776] "immediateCondition"))) { [17:27:53.776] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:53.776] ...future.conditions[[length(...future.conditions) + [17:27:53.776] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:53.776] if (TRUE && !signal) { [17:27:53.776] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.776] { [17:27:53.776] inherits <- base::inherits [17:27:53.776] invokeRestart <- base::invokeRestart [17:27:53.776] is.null <- base::is.null [17:27:53.776] muffled <- FALSE [17:27:53.776] if (inherits(cond, "message")) { [17:27:53.776] muffled <- grepl(pattern, "muffleMessage") [17:27:53.776] if (muffled) [17:27:53.776] invokeRestart("muffleMessage") [17:27:53.776] } [17:27:53.776] else if (inherits(cond, "warning")) { [17:27:53.776] muffled <- grepl(pattern, "muffleWarning") [17:27:53.776] if (muffled) [17:27:53.776] invokeRestart("muffleWarning") [17:27:53.776] } [17:27:53.776] else if (inherits(cond, "condition")) { [17:27:53.776] if (!is.null(pattern)) { [17:27:53.776] computeRestarts <- base::computeRestarts [17:27:53.776] grepl <- base::grepl [17:27:53.776] restarts <- computeRestarts(cond) [17:27:53.776] for (restart in restarts) { [17:27:53.776] name <- restart$name [17:27:53.776] if (is.null(name)) [17:27:53.776] next [17:27:53.776] if (!grepl(pattern, name)) [17:27:53.776] next [17:27:53.776] invokeRestart(restart) [17:27:53.776] muffled <- TRUE [17:27:53.776] break [17:27:53.776] } [17:27:53.776] } [17:27:53.776] } [17:27:53.776] invisible(muffled) [17:27:53.776] } [17:27:53.776] muffleCondition(cond, pattern = "^muffle") [17:27:53.776] } [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] if (TRUE) { [17:27:53.776] muffleCondition <- function (cond, pattern = "^muffle") [17:27:53.776] { [17:27:53.776] inherits <- base::inherits [17:27:53.776] invokeRestart <- base::invokeRestart [17:27:53.776] is.null <- base::is.null [17:27:53.776] muffled <- FALSE [17:27:53.776] if (inherits(cond, "message")) { [17:27:53.776] muffled <- grepl(pattern, "muffleMessage") [17:27:53.776] if (muffled) [17:27:53.776] invokeRestart("muffleMessage") [17:27:53.776] } [17:27:53.776] else if (inherits(cond, "warning")) { [17:27:53.776] muffled <- grepl(pattern, "muffleWarning") [17:27:53.776] if (muffled) [17:27:53.776] invokeRestart("muffleWarning") [17:27:53.776] } [17:27:53.776] else if (inherits(cond, "condition")) { [17:27:53.776] if (!is.null(pattern)) { [17:27:53.776] computeRestarts <- base::computeRestarts [17:27:53.776] grepl <- base::grepl [17:27:53.776] restarts <- computeRestarts(cond) [17:27:53.776] for (restart in restarts) { [17:27:53.776] name <- restart$name [17:27:53.776] if (is.null(name)) [17:27:53.776] next [17:27:53.776] if (!grepl(pattern, name)) [17:27:53.776] next [17:27:53.776] invokeRestart(restart) [17:27:53.776] muffled <- TRUE [17:27:53.776] break [17:27:53.776] } [17:27:53.776] } [17:27:53.776] } [17:27:53.776] invisible(muffled) [17:27:53.776] } [17:27:53.776] muffleCondition(cond, pattern = "^muffle") [17:27:53.776] } [17:27:53.776] } [17:27:53.776] } [17:27:53.776] })) [17:27:53.776] }, error = function(ex) { [17:27:53.776] base::structure(base::list(value = NULL, visible = NULL, [17:27:53.776] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:53.776] ...future.rng), started = ...future.startTime, [17:27:53.776] finished = Sys.time(), session_uuid = NA_character_, [17:27:53.776] version = "1.8"), class = "FutureResult") [17:27:53.776] }, finally = { [17:27:53.776] if (!identical(...future.workdir, getwd())) [17:27:53.776] setwd(...future.workdir) [17:27:53.776] { [17:27:53.776] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:53.776] ...future.oldOptions$nwarnings <- NULL [17:27:53.776] } [17:27:53.776] base::options(...future.oldOptions) [17:27:53.776] if (.Platform$OS.type == "windows") { [17:27:53.776] old_names <- names(...future.oldEnvVars) [17:27:53.776] envs <- base::Sys.getenv() [17:27:53.776] names <- names(envs) [17:27:53.776] common <- intersect(names, old_names) [17:27:53.776] added <- setdiff(names, old_names) [17:27:53.776] removed <- setdiff(old_names, names) [17:27:53.776] changed <- common[...future.oldEnvVars[common] != [17:27:53.776] envs[common]] [17:27:53.776] NAMES <- toupper(changed) [17:27:53.776] args <- list() [17:27:53.776] for (kk in seq_along(NAMES)) { [17:27:53.776] name <- changed[[kk]] [17:27:53.776] NAME <- NAMES[[kk]] [17:27:53.776] if (name != NAME && is.element(NAME, old_names)) [17:27:53.776] next [17:27:53.776] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.776] } [17:27:53.776] NAMES <- toupper(added) [17:27:53.776] for (kk in seq_along(NAMES)) { [17:27:53.776] name <- added[[kk]] [17:27:53.776] NAME <- NAMES[[kk]] [17:27:53.776] if (name != NAME && is.element(NAME, old_names)) [17:27:53.776] next [17:27:53.776] args[[name]] <- "" [17:27:53.776] } [17:27:53.776] NAMES <- toupper(removed) [17:27:53.776] for (kk in seq_along(NAMES)) { [17:27:53.776] name <- removed[[kk]] [17:27:53.776] NAME <- NAMES[[kk]] [17:27:53.776] if (name != NAME && is.element(NAME, old_names)) [17:27:53.776] next [17:27:53.776] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:53.776] } [17:27:53.776] if (length(args) > 0) [17:27:53.776] base::do.call(base::Sys.setenv, args = args) [17:27:53.776] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:53.776] } [17:27:53.776] { [17:27:53.776] if (base::length(...future.futureOptionsAdded) > [17:27:53.776] 0L) { [17:27:53.776] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:53.776] base::names(opts) <- ...future.futureOptionsAdded [17:27:53.776] base::options(opts) [17:27:53.776] } [17:27:53.776] { [17:27:53.776] { [17:27:53.776] base::options(mc.cores = ...future.mc.cores.old) [17:27:53.776] NULL [17:27:53.776] } [17:27:53.776] options(future.plan = NULL) [17:27:53.776] if (is.na(NA_character_)) [17:27:53.776] Sys.unsetenv("R_FUTURE_PLAN") [17:27:53.776] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:53.776] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:53.776] .init = FALSE) [17:27:53.776] } [17:27:53.776] } [17:27:53.776] } [17:27:53.776] }) [17:27:53.776] if (TRUE) { [17:27:53.776] base::sink(type = "output", split = FALSE) [17:27:53.776] if (TRUE) { [17:27:53.776] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:53.776] } [17:27:53.776] else { [17:27:53.776] ...future.result["stdout"] <- base::list(NULL) [17:27:53.776] } [17:27:53.776] base::close(...future.stdout) [17:27:53.776] ...future.stdout <- NULL [17:27:53.776] } [17:27:53.776] ...future.result$conditions <- ...future.conditions [17:27:53.776] ...future.result$finished <- base::Sys.time() [17:27:53.776] ...future.result [17:27:53.776] } [17:27:53.781] MultisessionFuture started [17:27:53.781] - Launch lazy future ... done [17:27:53.782] run() for 'MultisessionFuture' ... done [17:27:54.299] receiveMessageFromWorker() for ClusterFuture ... [17:27:54.299] - Validating connection of MultisessionFuture [17:27:54.300] - received message: FutureResult [17:27:54.300] - Received FutureResult [17:27:54.300] - Erased future from FutureRegistry [17:27:54.300] result() for ClusterFuture ... [17:27:54.300] - result already collected: FutureResult [17:27:54.301] result() for ClusterFuture ... done [17:27:54.301] receiveMessageFromWorker() for ClusterFuture ... done [17:27:54.301] A MultisessionFuture was resolved (result was not collected) [17:27:54.301] getGlobalsAndPackages() ... [17:27:54.301] Searching for globals... [17:27:54.303] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:54.303] Searching for globals ... DONE [17:27:54.303] Resolving globals: FALSE [17:27:54.303] [17:27:54.304] [17:27:54.304] getGlobalsAndPackages() ... DONE [17:27:54.304] run() for 'Future' ... [17:27:54.304] - state: 'created' [17:27:54.304] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:54.318] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:54.318] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:54.319] - Field: 'node' [17:27:54.319] - Field: 'label' [17:27:54.319] - Field: 'local' [17:27:54.319] - Field: 'owner' [17:27:54.319] - Field: 'envir' [17:27:54.319] - Field: 'workers' [17:27:54.320] - Field: 'packages' [17:27:54.320] - Field: 'gc' [17:27:54.320] - Field: 'conditions' [17:27:54.320] - Field: 'persistent' [17:27:54.320] - Field: 'expr' [17:27:54.320] - Field: 'uuid' [17:27:54.321] - Field: 'seed' [17:27:54.321] - Field: 'version' [17:27:54.321] - Field: 'result' [17:27:54.321] - Field: 'asynchronous' [17:27:54.321] - Field: 'calls' [17:27:54.321] - Field: 'globals' [17:27:54.322] - Field: 'stdout' [17:27:54.322] - Field: 'earlySignal' [17:27:54.322] - Field: 'lazy' [17:27:54.322] - Field: 'state' [17:27:54.322] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:54.323] - Launch lazy future ... [17:27:54.323] Packages needed by the future expression (n = 0): [17:27:54.323] Packages needed by future strategies (n = 0): [17:27:54.324] { [17:27:54.324] { [17:27:54.324] { [17:27:54.324] ...future.startTime <- base::Sys.time() [17:27:54.324] { [17:27:54.324] { [17:27:54.324] { [17:27:54.324] { [17:27:54.324] base::local({ [17:27:54.324] has_future <- base::requireNamespace("future", [17:27:54.324] quietly = TRUE) [17:27:54.324] if (has_future) { [17:27:54.324] ns <- base::getNamespace("future") [17:27:54.324] version <- ns[[".package"]][["version"]] [17:27:54.324] if (is.null(version)) [17:27:54.324] version <- utils::packageVersion("future") [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] version <- NULL [17:27:54.324] } [17:27:54.324] if (!has_future || version < "1.8.0") { [17:27:54.324] info <- base::c(r_version = base::gsub("R version ", [17:27:54.324] "", base::R.version$version.string), [17:27:54.324] platform = base::sprintf("%s (%s-bit)", [17:27:54.324] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:54.324] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:54.324] "release", "version")], collapse = " "), [17:27:54.324] hostname = base::Sys.info()[["nodename"]]) [17:27:54.324] info <- base::sprintf("%s: %s", base::names(info), [17:27:54.324] info) [17:27:54.324] info <- base::paste(info, collapse = "; ") [17:27:54.324] if (!has_future) { [17:27:54.324] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:54.324] info) [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:54.324] info, version) [17:27:54.324] } [17:27:54.324] base::stop(msg) [17:27:54.324] } [17:27:54.324] }) [17:27:54.324] } [17:27:54.324] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:54.324] base::options(mc.cores = 1L) [17:27:54.324] } [17:27:54.324] ...future.strategy.old <- future::plan("list") [17:27:54.324] options(future.plan = NULL) [17:27:54.324] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.324] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:54.324] } [17:27:54.324] ...future.workdir <- getwd() [17:27:54.324] } [17:27:54.324] ...future.oldOptions <- base::as.list(base::.Options) [17:27:54.324] ...future.oldEnvVars <- base::Sys.getenv() [17:27:54.324] } [17:27:54.324] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:54.324] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:54.324] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:54.324] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:54.324] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:54.324] future.stdout.windows.reencode = NULL, width = 80L) [17:27:54.324] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:54.324] base::names(...future.oldOptions)) [17:27:54.324] } [17:27:54.324] if (FALSE) { [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] if (TRUE) { [17:27:54.324] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:54.324] open = "w") [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:54.324] windows = "NUL", "/dev/null"), open = "w") [17:27:54.324] } [17:27:54.324] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:54.324] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:54.324] base::sink(type = "output", split = FALSE) [17:27:54.324] base::close(...future.stdout) [17:27:54.324] }, add = TRUE) [17:27:54.324] } [17:27:54.324] ...future.frame <- base::sys.nframe() [17:27:54.324] ...future.conditions <- base::list() [17:27:54.324] ...future.rng <- base::globalenv()$.Random.seed [17:27:54.324] if (FALSE) { [17:27:54.324] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:54.324] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:54.324] } [17:27:54.324] ...future.result <- base::tryCatch({ [17:27:54.324] base::withCallingHandlers({ [17:27:54.324] ...future.value <- base::withVisible(base::local({ [17:27:54.324] ...future.makeSendCondition <- base::local({ [17:27:54.324] sendCondition <- NULL [17:27:54.324] function(frame = 1L) { [17:27:54.324] if (is.function(sendCondition)) [17:27:54.324] return(sendCondition) [17:27:54.324] ns <- getNamespace("parallel") [17:27:54.324] if (exists("sendData", mode = "function", [17:27:54.324] envir = ns)) { [17:27:54.324] parallel_sendData <- get("sendData", mode = "function", [17:27:54.324] envir = ns) [17:27:54.324] envir <- sys.frame(frame) [17:27:54.324] master <- NULL [17:27:54.324] while (!identical(envir, .GlobalEnv) && [17:27:54.324] !identical(envir, emptyenv())) { [17:27:54.324] if (exists("master", mode = "list", envir = envir, [17:27:54.324] inherits = FALSE)) { [17:27:54.324] master <- get("master", mode = "list", [17:27:54.324] envir = envir, inherits = FALSE) [17:27:54.324] if (inherits(master, c("SOCKnode", [17:27:54.324] "SOCK0node"))) { [17:27:54.324] sendCondition <<- function(cond) { [17:27:54.324] data <- list(type = "VALUE", value = cond, [17:27:54.324] success = TRUE) [17:27:54.324] parallel_sendData(master, data) [17:27:54.324] } [17:27:54.324] return(sendCondition) [17:27:54.324] } [17:27:54.324] } [17:27:54.324] frame <- frame + 1L [17:27:54.324] envir <- sys.frame(frame) [17:27:54.324] } [17:27:54.324] } [17:27:54.324] sendCondition <<- function(cond) NULL [17:27:54.324] } [17:27:54.324] }) [17:27:54.324] withCallingHandlers({ [17:27:54.324] { [17:27:54.324] Sys.sleep(0.5) [17:27:54.324] list(a = 1, b = 42L) [17:27:54.324] } [17:27:54.324] }, immediateCondition = function(cond) { [17:27:54.324] sendCondition <- ...future.makeSendCondition() [17:27:54.324] sendCondition(cond) [17:27:54.324] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.324] { [17:27:54.324] inherits <- base::inherits [17:27:54.324] invokeRestart <- base::invokeRestart [17:27:54.324] is.null <- base::is.null [17:27:54.324] muffled <- FALSE [17:27:54.324] if (inherits(cond, "message")) { [17:27:54.324] muffled <- grepl(pattern, "muffleMessage") [17:27:54.324] if (muffled) [17:27:54.324] invokeRestart("muffleMessage") [17:27:54.324] } [17:27:54.324] else if (inherits(cond, "warning")) { [17:27:54.324] muffled <- grepl(pattern, "muffleWarning") [17:27:54.324] if (muffled) [17:27:54.324] invokeRestart("muffleWarning") [17:27:54.324] } [17:27:54.324] else if (inherits(cond, "condition")) { [17:27:54.324] if (!is.null(pattern)) { [17:27:54.324] computeRestarts <- base::computeRestarts [17:27:54.324] grepl <- base::grepl [17:27:54.324] restarts <- computeRestarts(cond) [17:27:54.324] for (restart in restarts) { [17:27:54.324] name <- restart$name [17:27:54.324] if (is.null(name)) [17:27:54.324] next [17:27:54.324] if (!grepl(pattern, name)) [17:27:54.324] next [17:27:54.324] invokeRestart(restart) [17:27:54.324] muffled <- TRUE [17:27:54.324] break [17:27:54.324] } [17:27:54.324] } [17:27:54.324] } [17:27:54.324] invisible(muffled) [17:27:54.324] } [17:27:54.324] muffleCondition(cond) [17:27:54.324] }) [17:27:54.324] })) [17:27:54.324] future::FutureResult(value = ...future.value$value, [17:27:54.324] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.324] ...future.rng), globalenv = if (FALSE) [17:27:54.324] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:54.324] ...future.globalenv.names)) [17:27:54.324] else NULL, started = ...future.startTime, version = "1.8") [17:27:54.324] }, condition = base::local({ [17:27:54.324] c <- base::c [17:27:54.324] inherits <- base::inherits [17:27:54.324] invokeRestart <- base::invokeRestart [17:27:54.324] length <- base::length [17:27:54.324] list <- base::list [17:27:54.324] seq.int <- base::seq.int [17:27:54.324] signalCondition <- base::signalCondition [17:27:54.324] sys.calls <- base::sys.calls [17:27:54.324] `[[` <- base::`[[` [17:27:54.324] `+` <- base::`+` [17:27:54.324] `<<-` <- base::`<<-` [17:27:54.324] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:54.324] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:54.324] 3L)] [17:27:54.324] } [17:27:54.324] function(cond) { [17:27:54.324] is_error <- inherits(cond, "error") [17:27:54.324] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:54.324] NULL) [17:27:54.324] if (is_error) { [17:27:54.324] sessionInformation <- function() { [17:27:54.324] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:54.324] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:54.324] search = base::search(), system = base::Sys.info()) [17:27:54.324] } [17:27:54.324] ...future.conditions[[length(...future.conditions) + [17:27:54.324] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:54.324] cond$call), session = sessionInformation(), [17:27:54.324] timestamp = base::Sys.time(), signaled = 0L) [17:27:54.324] signalCondition(cond) [17:27:54.324] } [17:27:54.324] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:54.324] "immediateCondition"))) { [17:27:54.324] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:54.324] ...future.conditions[[length(...future.conditions) + [17:27:54.324] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:54.324] if (TRUE && !signal) { [17:27:54.324] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.324] { [17:27:54.324] inherits <- base::inherits [17:27:54.324] invokeRestart <- base::invokeRestart [17:27:54.324] is.null <- base::is.null [17:27:54.324] muffled <- FALSE [17:27:54.324] if (inherits(cond, "message")) { [17:27:54.324] muffled <- grepl(pattern, "muffleMessage") [17:27:54.324] if (muffled) [17:27:54.324] invokeRestart("muffleMessage") [17:27:54.324] } [17:27:54.324] else if (inherits(cond, "warning")) { [17:27:54.324] muffled <- grepl(pattern, "muffleWarning") [17:27:54.324] if (muffled) [17:27:54.324] invokeRestart("muffleWarning") [17:27:54.324] } [17:27:54.324] else if (inherits(cond, "condition")) { [17:27:54.324] if (!is.null(pattern)) { [17:27:54.324] computeRestarts <- base::computeRestarts [17:27:54.324] grepl <- base::grepl [17:27:54.324] restarts <- computeRestarts(cond) [17:27:54.324] for (restart in restarts) { [17:27:54.324] name <- restart$name [17:27:54.324] if (is.null(name)) [17:27:54.324] next [17:27:54.324] if (!grepl(pattern, name)) [17:27:54.324] next [17:27:54.324] invokeRestart(restart) [17:27:54.324] muffled <- TRUE [17:27:54.324] break [17:27:54.324] } [17:27:54.324] } [17:27:54.324] } [17:27:54.324] invisible(muffled) [17:27:54.324] } [17:27:54.324] muffleCondition(cond, pattern = "^muffle") [17:27:54.324] } [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] if (TRUE) { [17:27:54.324] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.324] { [17:27:54.324] inherits <- base::inherits [17:27:54.324] invokeRestart <- base::invokeRestart [17:27:54.324] is.null <- base::is.null [17:27:54.324] muffled <- FALSE [17:27:54.324] if (inherits(cond, "message")) { [17:27:54.324] muffled <- grepl(pattern, "muffleMessage") [17:27:54.324] if (muffled) [17:27:54.324] invokeRestart("muffleMessage") [17:27:54.324] } [17:27:54.324] else if (inherits(cond, "warning")) { [17:27:54.324] muffled <- grepl(pattern, "muffleWarning") [17:27:54.324] if (muffled) [17:27:54.324] invokeRestart("muffleWarning") [17:27:54.324] } [17:27:54.324] else if (inherits(cond, "condition")) { [17:27:54.324] if (!is.null(pattern)) { [17:27:54.324] computeRestarts <- base::computeRestarts [17:27:54.324] grepl <- base::grepl [17:27:54.324] restarts <- computeRestarts(cond) [17:27:54.324] for (restart in restarts) { [17:27:54.324] name <- restart$name [17:27:54.324] if (is.null(name)) [17:27:54.324] next [17:27:54.324] if (!grepl(pattern, name)) [17:27:54.324] next [17:27:54.324] invokeRestart(restart) [17:27:54.324] muffled <- TRUE [17:27:54.324] break [17:27:54.324] } [17:27:54.324] } [17:27:54.324] } [17:27:54.324] invisible(muffled) [17:27:54.324] } [17:27:54.324] muffleCondition(cond, pattern = "^muffle") [17:27:54.324] } [17:27:54.324] } [17:27:54.324] } [17:27:54.324] })) [17:27:54.324] }, error = function(ex) { [17:27:54.324] base::structure(base::list(value = NULL, visible = NULL, [17:27:54.324] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.324] ...future.rng), started = ...future.startTime, [17:27:54.324] finished = Sys.time(), session_uuid = NA_character_, [17:27:54.324] version = "1.8"), class = "FutureResult") [17:27:54.324] }, finally = { [17:27:54.324] if (!identical(...future.workdir, getwd())) [17:27:54.324] setwd(...future.workdir) [17:27:54.324] { [17:27:54.324] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:54.324] ...future.oldOptions$nwarnings <- NULL [17:27:54.324] } [17:27:54.324] base::options(...future.oldOptions) [17:27:54.324] if (.Platform$OS.type == "windows") { [17:27:54.324] old_names <- names(...future.oldEnvVars) [17:27:54.324] envs <- base::Sys.getenv() [17:27:54.324] names <- names(envs) [17:27:54.324] common <- intersect(names, old_names) [17:27:54.324] added <- setdiff(names, old_names) [17:27:54.324] removed <- setdiff(old_names, names) [17:27:54.324] changed <- common[...future.oldEnvVars[common] != [17:27:54.324] envs[common]] [17:27:54.324] NAMES <- toupper(changed) [17:27:54.324] args <- list() [17:27:54.324] for (kk in seq_along(NAMES)) { [17:27:54.324] name <- changed[[kk]] [17:27:54.324] NAME <- NAMES[[kk]] [17:27:54.324] if (name != NAME && is.element(NAME, old_names)) [17:27:54.324] next [17:27:54.324] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.324] } [17:27:54.324] NAMES <- toupper(added) [17:27:54.324] for (kk in seq_along(NAMES)) { [17:27:54.324] name <- added[[kk]] [17:27:54.324] NAME <- NAMES[[kk]] [17:27:54.324] if (name != NAME && is.element(NAME, old_names)) [17:27:54.324] next [17:27:54.324] args[[name]] <- "" [17:27:54.324] } [17:27:54.324] NAMES <- toupper(removed) [17:27:54.324] for (kk in seq_along(NAMES)) { [17:27:54.324] name <- removed[[kk]] [17:27:54.324] NAME <- NAMES[[kk]] [17:27:54.324] if (name != NAME && is.element(NAME, old_names)) [17:27:54.324] next [17:27:54.324] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.324] } [17:27:54.324] if (length(args) > 0) [17:27:54.324] base::do.call(base::Sys.setenv, args = args) [17:27:54.324] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:54.324] } [17:27:54.324] { [17:27:54.324] if (base::length(...future.futureOptionsAdded) > [17:27:54.324] 0L) { [17:27:54.324] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:54.324] base::names(opts) <- ...future.futureOptionsAdded [17:27:54.324] base::options(opts) [17:27:54.324] } [17:27:54.324] { [17:27:54.324] { [17:27:54.324] base::options(mc.cores = ...future.mc.cores.old) [17:27:54.324] NULL [17:27:54.324] } [17:27:54.324] options(future.plan = NULL) [17:27:54.324] if (is.na(NA_character_)) [17:27:54.324] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.324] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:54.324] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:54.324] .init = FALSE) [17:27:54.324] } [17:27:54.324] } [17:27:54.324] } [17:27:54.324] }) [17:27:54.324] if (TRUE) { [17:27:54.324] base::sink(type = "output", split = FALSE) [17:27:54.324] if (TRUE) { [17:27:54.324] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:54.324] } [17:27:54.324] else { [17:27:54.324] ...future.result["stdout"] <- base::list(NULL) [17:27:54.324] } [17:27:54.324] base::close(...future.stdout) [17:27:54.324] ...future.stdout <- NULL [17:27:54.324] } [17:27:54.324] ...future.result$conditions <- ...future.conditions [17:27:54.324] ...future.result$finished <- base::Sys.time() [17:27:54.324] ...future.result [17:27:54.324] } [17:27:54.329] MultisessionFuture started [17:27:54.329] - Launch lazy future ... done [17:27:54.329] run() for 'MultisessionFuture' ... done [17:27:54.854] receiveMessageFromWorker() for ClusterFuture ... [17:27:54.854] - Validating connection of MultisessionFuture [17:27:54.854] - received message: FutureResult [17:27:54.854] - Received FutureResult [17:27:54.855] - Erased future from FutureRegistry [17:27:54.855] result() for ClusterFuture ... [17:27:54.855] - result already collected: FutureResult [17:27:54.855] result() for ClusterFuture ... done [17:27:54.855] receiveMessageFromWorker() for ClusterFuture ... done [17:27:54.855] A MultisessionFuture was resolved (result was not collected) - w/ exception ... [17:27:54.856] getGlobalsAndPackages() ... [17:27:54.856] Searching for globals... [17:27:54.857] - globals found: [2] 'list', 'stop' [17:27:54.857] Searching for globals ... DONE [17:27:54.857] Resolving globals: FALSE [17:27:54.857] [17:27:54.858] [17:27:54.858] getGlobalsAndPackages() ... DONE [17:27:54.858] run() for 'Future' ... [17:27:54.858] - state: 'created' [17:27:54.858] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:54.873] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:54.873] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:54.873] - Field: 'node' [17:27:54.873] - Field: 'label' [17:27:54.874] - Field: 'local' [17:27:54.874] - Field: 'owner' [17:27:54.874] - Field: 'envir' [17:27:54.874] - Field: 'workers' [17:27:54.874] - Field: 'packages' [17:27:54.874] - Field: 'gc' [17:27:54.875] - Field: 'conditions' [17:27:54.875] - Field: 'persistent' [17:27:54.875] - Field: 'expr' [17:27:54.875] - Field: 'uuid' [17:27:54.875] - Field: 'seed' [17:27:54.876] - Field: 'version' [17:27:54.876] - Field: 'result' [17:27:54.876] - Field: 'asynchronous' [17:27:54.876] - Field: 'calls' [17:27:54.876] - Field: 'globals' [17:27:54.876] - Field: 'stdout' [17:27:54.877] - Field: 'earlySignal' [17:27:54.877] - Field: 'lazy' [17:27:54.877] - Field: 'state' [17:27:54.877] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:54.877] - Launch lazy future ... [17:27:54.878] Packages needed by the future expression (n = 0): [17:27:54.878] Packages needed by future strategies (n = 0): [17:27:54.878] { [17:27:54.878] { [17:27:54.878] { [17:27:54.878] ...future.startTime <- base::Sys.time() [17:27:54.878] { [17:27:54.878] { [17:27:54.878] { [17:27:54.878] { [17:27:54.878] base::local({ [17:27:54.878] has_future <- base::requireNamespace("future", [17:27:54.878] quietly = TRUE) [17:27:54.878] if (has_future) { [17:27:54.878] ns <- base::getNamespace("future") [17:27:54.878] version <- ns[[".package"]][["version"]] [17:27:54.878] if (is.null(version)) [17:27:54.878] version <- utils::packageVersion("future") [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] version <- NULL [17:27:54.878] } [17:27:54.878] if (!has_future || version < "1.8.0") { [17:27:54.878] info <- base::c(r_version = base::gsub("R version ", [17:27:54.878] "", base::R.version$version.string), [17:27:54.878] platform = base::sprintf("%s (%s-bit)", [17:27:54.878] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:54.878] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:54.878] "release", "version")], collapse = " "), [17:27:54.878] hostname = base::Sys.info()[["nodename"]]) [17:27:54.878] info <- base::sprintf("%s: %s", base::names(info), [17:27:54.878] info) [17:27:54.878] info <- base::paste(info, collapse = "; ") [17:27:54.878] if (!has_future) { [17:27:54.878] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:54.878] info) [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:54.878] info, version) [17:27:54.878] } [17:27:54.878] base::stop(msg) [17:27:54.878] } [17:27:54.878] }) [17:27:54.878] } [17:27:54.878] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:54.878] base::options(mc.cores = 1L) [17:27:54.878] } [17:27:54.878] ...future.strategy.old <- future::plan("list") [17:27:54.878] options(future.plan = NULL) [17:27:54.878] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.878] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:54.878] } [17:27:54.878] ...future.workdir <- getwd() [17:27:54.878] } [17:27:54.878] ...future.oldOptions <- base::as.list(base::.Options) [17:27:54.878] ...future.oldEnvVars <- base::Sys.getenv() [17:27:54.878] } [17:27:54.878] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:54.878] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:54.878] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:54.878] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:54.878] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:54.878] future.stdout.windows.reencode = NULL, width = 80L) [17:27:54.878] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:54.878] base::names(...future.oldOptions)) [17:27:54.878] } [17:27:54.878] if (FALSE) { [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] if (TRUE) { [17:27:54.878] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:54.878] open = "w") [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:54.878] windows = "NUL", "/dev/null"), open = "w") [17:27:54.878] } [17:27:54.878] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:54.878] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:54.878] base::sink(type = "output", split = FALSE) [17:27:54.878] base::close(...future.stdout) [17:27:54.878] }, add = TRUE) [17:27:54.878] } [17:27:54.878] ...future.frame <- base::sys.nframe() [17:27:54.878] ...future.conditions <- base::list() [17:27:54.878] ...future.rng <- base::globalenv()$.Random.seed [17:27:54.878] if (FALSE) { [17:27:54.878] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:54.878] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:54.878] } [17:27:54.878] ...future.result <- base::tryCatch({ [17:27:54.878] base::withCallingHandlers({ [17:27:54.878] ...future.value <- base::withVisible(base::local({ [17:27:54.878] ...future.makeSendCondition <- base::local({ [17:27:54.878] sendCondition <- NULL [17:27:54.878] function(frame = 1L) { [17:27:54.878] if (is.function(sendCondition)) [17:27:54.878] return(sendCondition) [17:27:54.878] ns <- getNamespace("parallel") [17:27:54.878] if (exists("sendData", mode = "function", [17:27:54.878] envir = ns)) { [17:27:54.878] parallel_sendData <- get("sendData", mode = "function", [17:27:54.878] envir = ns) [17:27:54.878] envir <- sys.frame(frame) [17:27:54.878] master <- NULL [17:27:54.878] while (!identical(envir, .GlobalEnv) && [17:27:54.878] !identical(envir, emptyenv())) { [17:27:54.878] if (exists("master", mode = "list", envir = envir, [17:27:54.878] inherits = FALSE)) { [17:27:54.878] master <- get("master", mode = "list", [17:27:54.878] envir = envir, inherits = FALSE) [17:27:54.878] if (inherits(master, c("SOCKnode", [17:27:54.878] "SOCK0node"))) { [17:27:54.878] sendCondition <<- function(cond) { [17:27:54.878] data <- list(type = "VALUE", value = cond, [17:27:54.878] success = TRUE) [17:27:54.878] parallel_sendData(master, data) [17:27:54.878] } [17:27:54.878] return(sendCondition) [17:27:54.878] } [17:27:54.878] } [17:27:54.878] frame <- frame + 1L [17:27:54.878] envir <- sys.frame(frame) [17:27:54.878] } [17:27:54.878] } [17:27:54.878] sendCondition <<- function(cond) NULL [17:27:54.878] } [17:27:54.878] }) [17:27:54.878] withCallingHandlers({ [17:27:54.878] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:54.878] }, immediateCondition = function(cond) { [17:27:54.878] sendCondition <- ...future.makeSendCondition() [17:27:54.878] sendCondition(cond) [17:27:54.878] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.878] { [17:27:54.878] inherits <- base::inherits [17:27:54.878] invokeRestart <- base::invokeRestart [17:27:54.878] is.null <- base::is.null [17:27:54.878] muffled <- FALSE [17:27:54.878] if (inherits(cond, "message")) { [17:27:54.878] muffled <- grepl(pattern, "muffleMessage") [17:27:54.878] if (muffled) [17:27:54.878] invokeRestart("muffleMessage") [17:27:54.878] } [17:27:54.878] else if (inherits(cond, "warning")) { [17:27:54.878] muffled <- grepl(pattern, "muffleWarning") [17:27:54.878] if (muffled) [17:27:54.878] invokeRestart("muffleWarning") [17:27:54.878] } [17:27:54.878] else if (inherits(cond, "condition")) { [17:27:54.878] if (!is.null(pattern)) { [17:27:54.878] computeRestarts <- base::computeRestarts [17:27:54.878] grepl <- base::grepl [17:27:54.878] restarts <- computeRestarts(cond) [17:27:54.878] for (restart in restarts) { [17:27:54.878] name <- restart$name [17:27:54.878] if (is.null(name)) [17:27:54.878] next [17:27:54.878] if (!grepl(pattern, name)) [17:27:54.878] next [17:27:54.878] invokeRestart(restart) [17:27:54.878] muffled <- TRUE [17:27:54.878] break [17:27:54.878] } [17:27:54.878] } [17:27:54.878] } [17:27:54.878] invisible(muffled) [17:27:54.878] } [17:27:54.878] muffleCondition(cond) [17:27:54.878] }) [17:27:54.878] })) [17:27:54.878] future::FutureResult(value = ...future.value$value, [17:27:54.878] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.878] ...future.rng), globalenv = if (FALSE) [17:27:54.878] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:54.878] ...future.globalenv.names)) [17:27:54.878] else NULL, started = ...future.startTime, version = "1.8") [17:27:54.878] }, condition = base::local({ [17:27:54.878] c <- base::c [17:27:54.878] inherits <- base::inherits [17:27:54.878] invokeRestart <- base::invokeRestart [17:27:54.878] length <- base::length [17:27:54.878] list <- base::list [17:27:54.878] seq.int <- base::seq.int [17:27:54.878] signalCondition <- base::signalCondition [17:27:54.878] sys.calls <- base::sys.calls [17:27:54.878] `[[` <- base::`[[` [17:27:54.878] `+` <- base::`+` [17:27:54.878] `<<-` <- base::`<<-` [17:27:54.878] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:54.878] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:54.878] 3L)] [17:27:54.878] } [17:27:54.878] function(cond) { [17:27:54.878] is_error <- inherits(cond, "error") [17:27:54.878] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:54.878] NULL) [17:27:54.878] if (is_error) { [17:27:54.878] sessionInformation <- function() { [17:27:54.878] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:54.878] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:54.878] search = base::search(), system = base::Sys.info()) [17:27:54.878] } [17:27:54.878] ...future.conditions[[length(...future.conditions) + [17:27:54.878] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:54.878] cond$call), session = sessionInformation(), [17:27:54.878] timestamp = base::Sys.time(), signaled = 0L) [17:27:54.878] signalCondition(cond) [17:27:54.878] } [17:27:54.878] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:54.878] "immediateCondition"))) { [17:27:54.878] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:54.878] ...future.conditions[[length(...future.conditions) + [17:27:54.878] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:54.878] if (TRUE && !signal) { [17:27:54.878] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.878] { [17:27:54.878] inherits <- base::inherits [17:27:54.878] invokeRestart <- base::invokeRestart [17:27:54.878] is.null <- base::is.null [17:27:54.878] muffled <- FALSE [17:27:54.878] if (inherits(cond, "message")) { [17:27:54.878] muffled <- grepl(pattern, "muffleMessage") [17:27:54.878] if (muffled) [17:27:54.878] invokeRestart("muffleMessage") [17:27:54.878] } [17:27:54.878] else if (inherits(cond, "warning")) { [17:27:54.878] muffled <- grepl(pattern, "muffleWarning") [17:27:54.878] if (muffled) [17:27:54.878] invokeRestart("muffleWarning") [17:27:54.878] } [17:27:54.878] else if (inherits(cond, "condition")) { [17:27:54.878] if (!is.null(pattern)) { [17:27:54.878] computeRestarts <- base::computeRestarts [17:27:54.878] grepl <- base::grepl [17:27:54.878] restarts <- computeRestarts(cond) [17:27:54.878] for (restart in restarts) { [17:27:54.878] name <- restart$name [17:27:54.878] if (is.null(name)) [17:27:54.878] next [17:27:54.878] if (!grepl(pattern, name)) [17:27:54.878] next [17:27:54.878] invokeRestart(restart) [17:27:54.878] muffled <- TRUE [17:27:54.878] break [17:27:54.878] } [17:27:54.878] } [17:27:54.878] } [17:27:54.878] invisible(muffled) [17:27:54.878] } [17:27:54.878] muffleCondition(cond, pattern = "^muffle") [17:27:54.878] } [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] if (TRUE) { [17:27:54.878] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.878] { [17:27:54.878] inherits <- base::inherits [17:27:54.878] invokeRestart <- base::invokeRestart [17:27:54.878] is.null <- base::is.null [17:27:54.878] muffled <- FALSE [17:27:54.878] if (inherits(cond, "message")) { [17:27:54.878] muffled <- grepl(pattern, "muffleMessage") [17:27:54.878] if (muffled) [17:27:54.878] invokeRestart("muffleMessage") [17:27:54.878] } [17:27:54.878] else if (inherits(cond, "warning")) { [17:27:54.878] muffled <- grepl(pattern, "muffleWarning") [17:27:54.878] if (muffled) [17:27:54.878] invokeRestart("muffleWarning") [17:27:54.878] } [17:27:54.878] else if (inherits(cond, "condition")) { [17:27:54.878] if (!is.null(pattern)) { [17:27:54.878] computeRestarts <- base::computeRestarts [17:27:54.878] grepl <- base::grepl [17:27:54.878] restarts <- computeRestarts(cond) [17:27:54.878] for (restart in restarts) { [17:27:54.878] name <- restart$name [17:27:54.878] if (is.null(name)) [17:27:54.878] next [17:27:54.878] if (!grepl(pattern, name)) [17:27:54.878] next [17:27:54.878] invokeRestart(restart) [17:27:54.878] muffled <- TRUE [17:27:54.878] break [17:27:54.878] } [17:27:54.878] } [17:27:54.878] } [17:27:54.878] invisible(muffled) [17:27:54.878] } [17:27:54.878] muffleCondition(cond, pattern = "^muffle") [17:27:54.878] } [17:27:54.878] } [17:27:54.878] } [17:27:54.878] })) [17:27:54.878] }, error = function(ex) { [17:27:54.878] base::structure(base::list(value = NULL, visible = NULL, [17:27:54.878] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.878] ...future.rng), started = ...future.startTime, [17:27:54.878] finished = Sys.time(), session_uuid = NA_character_, [17:27:54.878] version = "1.8"), class = "FutureResult") [17:27:54.878] }, finally = { [17:27:54.878] if (!identical(...future.workdir, getwd())) [17:27:54.878] setwd(...future.workdir) [17:27:54.878] { [17:27:54.878] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:54.878] ...future.oldOptions$nwarnings <- NULL [17:27:54.878] } [17:27:54.878] base::options(...future.oldOptions) [17:27:54.878] if (.Platform$OS.type == "windows") { [17:27:54.878] old_names <- names(...future.oldEnvVars) [17:27:54.878] envs <- base::Sys.getenv() [17:27:54.878] names <- names(envs) [17:27:54.878] common <- intersect(names, old_names) [17:27:54.878] added <- setdiff(names, old_names) [17:27:54.878] removed <- setdiff(old_names, names) [17:27:54.878] changed <- common[...future.oldEnvVars[common] != [17:27:54.878] envs[common]] [17:27:54.878] NAMES <- toupper(changed) [17:27:54.878] args <- list() [17:27:54.878] for (kk in seq_along(NAMES)) { [17:27:54.878] name <- changed[[kk]] [17:27:54.878] NAME <- NAMES[[kk]] [17:27:54.878] if (name != NAME && is.element(NAME, old_names)) [17:27:54.878] next [17:27:54.878] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.878] } [17:27:54.878] NAMES <- toupper(added) [17:27:54.878] for (kk in seq_along(NAMES)) { [17:27:54.878] name <- added[[kk]] [17:27:54.878] NAME <- NAMES[[kk]] [17:27:54.878] if (name != NAME && is.element(NAME, old_names)) [17:27:54.878] next [17:27:54.878] args[[name]] <- "" [17:27:54.878] } [17:27:54.878] NAMES <- toupper(removed) [17:27:54.878] for (kk in seq_along(NAMES)) { [17:27:54.878] name <- removed[[kk]] [17:27:54.878] NAME <- NAMES[[kk]] [17:27:54.878] if (name != NAME && is.element(NAME, old_names)) [17:27:54.878] next [17:27:54.878] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.878] } [17:27:54.878] if (length(args) > 0) [17:27:54.878] base::do.call(base::Sys.setenv, args = args) [17:27:54.878] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:54.878] } [17:27:54.878] { [17:27:54.878] if (base::length(...future.futureOptionsAdded) > [17:27:54.878] 0L) { [17:27:54.878] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:54.878] base::names(opts) <- ...future.futureOptionsAdded [17:27:54.878] base::options(opts) [17:27:54.878] } [17:27:54.878] { [17:27:54.878] { [17:27:54.878] base::options(mc.cores = ...future.mc.cores.old) [17:27:54.878] NULL [17:27:54.878] } [17:27:54.878] options(future.plan = NULL) [17:27:54.878] if (is.na(NA_character_)) [17:27:54.878] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.878] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:54.878] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:54.878] .init = FALSE) [17:27:54.878] } [17:27:54.878] } [17:27:54.878] } [17:27:54.878] }) [17:27:54.878] if (TRUE) { [17:27:54.878] base::sink(type = "output", split = FALSE) [17:27:54.878] if (TRUE) { [17:27:54.878] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:54.878] } [17:27:54.878] else { [17:27:54.878] ...future.result["stdout"] <- base::list(NULL) [17:27:54.878] } [17:27:54.878] base::close(...future.stdout) [17:27:54.878] ...future.stdout <- NULL [17:27:54.878] } [17:27:54.878] ...future.result$conditions <- ...future.conditions [17:27:54.878] ...future.result$finished <- base::Sys.time() [17:27:54.878] ...future.result [17:27:54.878] } [17:27:54.884] MultisessionFuture started [17:27:54.884] - Launch lazy future ... done [17:27:54.884] run() for 'MultisessionFuture' ... done [17:27:54.897] receiveMessageFromWorker() for ClusterFuture ... [17:27:54.898] - Validating connection of MultisessionFuture [17:27:54.898] - received message: FutureResult [17:27:54.898] - Received FutureResult [17:27:54.898] - Erased future from FutureRegistry [17:27:54.899] result() for ClusterFuture ... [17:27:54.899] - result already collected: FutureResult [17:27:54.899] result() for ClusterFuture ... done [17:27:54.899] signalConditions() ... [17:27:54.899] - include = 'immediateCondition' [17:27:54.899] - exclude = [17:27:54.900] - resignal = FALSE [17:27:54.900] - Number of conditions: 1 [17:27:54.900] signalConditions() ... done [17:27:54.900] receiveMessageFromWorker() for ClusterFuture ... done [17:27:54.900] A MultisessionFuture was resolved (result was not collected) [17:27:54.900] getGlobalsAndPackages() ... [17:27:54.901] Searching for globals... [17:27:54.901] - globals found: [2] 'list', 'stop' [17:27:54.902] Searching for globals ... DONE [17:27:54.902] Resolving globals: FALSE [17:27:54.902] [17:27:54.902] [17:27:54.902] getGlobalsAndPackages() ... DONE [17:27:54.903] run() for 'Future' ... [17:27:54.903] - state: 'created' [17:27:54.903] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:54.917] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:54.917] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:54.917] - Field: 'node' [17:27:54.917] - Field: 'label' [17:27:54.917] - Field: 'local' [17:27:54.918] - Field: 'owner' [17:27:54.918] - Field: 'envir' [17:27:54.918] - Field: 'workers' [17:27:54.918] - Field: 'packages' [17:27:54.918] - Field: 'gc' [17:27:54.919] - Field: 'conditions' [17:27:54.919] - Field: 'persistent' [17:27:54.919] - Field: 'expr' [17:27:54.919] - Field: 'uuid' [17:27:54.919] - Field: 'seed' [17:27:54.919] - Field: 'version' [17:27:54.920] - Field: 'result' [17:27:54.920] - Field: 'asynchronous' [17:27:54.920] - Field: 'calls' [17:27:54.920] - Field: 'globals' [17:27:54.920] - Field: 'stdout' [17:27:54.920] - Field: 'earlySignal' [17:27:54.921] - Field: 'lazy' [17:27:54.921] - Field: 'state' [17:27:54.921] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:54.921] - Launch lazy future ... [17:27:54.921] Packages needed by the future expression (n = 0): [17:27:54.922] Packages needed by future strategies (n = 0): [17:27:54.922] { [17:27:54.922] { [17:27:54.922] { [17:27:54.922] ...future.startTime <- base::Sys.time() [17:27:54.922] { [17:27:54.922] { [17:27:54.922] { [17:27:54.922] { [17:27:54.922] base::local({ [17:27:54.922] has_future <- base::requireNamespace("future", [17:27:54.922] quietly = TRUE) [17:27:54.922] if (has_future) { [17:27:54.922] ns <- base::getNamespace("future") [17:27:54.922] version <- ns[[".package"]][["version"]] [17:27:54.922] if (is.null(version)) [17:27:54.922] version <- utils::packageVersion("future") [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] version <- NULL [17:27:54.922] } [17:27:54.922] if (!has_future || version < "1.8.0") { [17:27:54.922] info <- base::c(r_version = base::gsub("R version ", [17:27:54.922] "", base::R.version$version.string), [17:27:54.922] platform = base::sprintf("%s (%s-bit)", [17:27:54.922] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:54.922] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:54.922] "release", "version")], collapse = " "), [17:27:54.922] hostname = base::Sys.info()[["nodename"]]) [17:27:54.922] info <- base::sprintf("%s: %s", base::names(info), [17:27:54.922] info) [17:27:54.922] info <- base::paste(info, collapse = "; ") [17:27:54.922] if (!has_future) { [17:27:54.922] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:54.922] info) [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:54.922] info, version) [17:27:54.922] } [17:27:54.922] base::stop(msg) [17:27:54.922] } [17:27:54.922] }) [17:27:54.922] } [17:27:54.922] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:54.922] base::options(mc.cores = 1L) [17:27:54.922] } [17:27:54.922] ...future.strategy.old <- future::plan("list") [17:27:54.922] options(future.plan = NULL) [17:27:54.922] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.922] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:54.922] } [17:27:54.922] ...future.workdir <- getwd() [17:27:54.922] } [17:27:54.922] ...future.oldOptions <- base::as.list(base::.Options) [17:27:54.922] ...future.oldEnvVars <- base::Sys.getenv() [17:27:54.922] } [17:27:54.922] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:54.922] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:54.922] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:54.922] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:54.922] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:54.922] future.stdout.windows.reencode = NULL, width = 80L) [17:27:54.922] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:54.922] base::names(...future.oldOptions)) [17:27:54.922] } [17:27:54.922] if (FALSE) { [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] if (TRUE) { [17:27:54.922] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:54.922] open = "w") [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:54.922] windows = "NUL", "/dev/null"), open = "w") [17:27:54.922] } [17:27:54.922] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:54.922] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:54.922] base::sink(type = "output", split = FALSE) [17:27:54.922] base::close(...future.stdout) [17:27:54.922] }, add = TRUE) [17:27:54.922] } [17:27:54.922] ...future.frame <- base::sys.nframe() [17:27:54.922] ...future.conditions <- base::list() [17:27:54.922] ...future.rng <- base::globalenv()$.Random.seed [17:27:54.922] if (FALSE) { [17:27:54.922] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:54.922] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:54.922] } [17:27:54.922] ...future.result <- base::tryCatch({ [17:27:54.922] base::withCallingHandlers({ [17:27:54.922] ...future.value <- base::withVisible(base::local({ [17:27:54.922] ...future.makeSendCondition <- base::local({ [17:27:54.922] sendCondition <- NULL [17:27:54.922] function(frame = 1L) { [17:27:54.922] if (is.function(sendCondition)) [17:27:54.922] return(sendCondition) [17:27:54.922] ns <- getNamespace("parallel") [17:27:54.922] if (exists("sendData", mode = "function", [17:27:54.922] envir = ns)) { [17:27:54.922] parallel_sendData <- get("sendData", mode = "function", [17:27:54.922] envir = ns) [17:27:54.922] envir <- sys.frame(frame) [17:27:54.922] master <- NULL [17:27:54.922] while (!identical(envir, .GlobalEnv) && [17:27:54.922] !identical(envir, emptyenv())) { [17:27:54.922] if (exists("master", mode = "list", envir = envir, [17:27:54.922] inherits = FALSE)) { [17:27:54.922] master <- get("master", mode = "list", [17:27:54.922] envir = envir, inherits = FALSE) [17:27:54.922] if (inherits(master, c("SOCKnode", [17:27:54.922] "SOCK0node"))) { [17:27:54.922] sendCondition <<- function(cond) { [17:27:54.922] data <- list(type = "VALUE", value = cond, [17:27:54.922] success = TRUE) [17:27:54.922] parallel_sendData(master, data) [17:27:54.922] } [17:27:54.922] return(sendCondition) [17:27:54.922] } [17:27:54.922] } [17:27:54.922] frame <- frame + 1L [17:27:54.922] envir <- sys.frame(frame) [17:27:54.922] } [17:27:54.922] } [17:27:54.922] sendCondition <<- function(cond) NULL [17:27:54.922] } [17:27:54.922] }) [17:27:54.922] withCallingHandlers({ [17:27:54.922] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:54.922] }, immediateCondition = function(cond) { [17:27:54.922] sendCondition <- ...future.makeSendCondition() [17:27:54.922] sendCondition(cond) [17:27:54.922] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.922] { [17:27:54.922] inherits <- base::inherits [17:27:54.922] invokeRestart <- base::invokeRestart [17:27:54.922] is.null <- base::is.null [17:27:54.922] muffled <- FALSE [17:27:54.922] if (inherits(cond, "message")) { [17:27:54.922] muffled <- grepl(pattern, "muffleMessage") [17:27:54.922] if (muffled) [17:27:54.922] invokeRestart("muffleMessage") [17:27:54.922] } [17:27:54.922] else if (inherits(cond, "warning")) { [17:27:54.922] muffled <- grepl(pattern, "muffleWarning") [17:27:54.922] if (muffled) [17:27:54.922] invokeRestart("muffleWarning") [17:27:54.922] } [17:27:54.922] else if (inherits(cond, "condition")) { [17:27:54.922] if (!is.null(pattern)) { [17:27:54.922] computeRestarts <- base::computeRestarts [17:27:54.922] grepl <- base::grepl [17:27:54.922] restarts <- computeRestarts(cond) [17:27:54.922] for (restart in restarts) { [17:27:54.922] name <- restart$name [17:27:54.922] if (is.null(name)) [17:27:54.922] next [17:27:54.922] if (!grepl(pattern, name)) [17:27:54.922] next [17:27:54.922] invokeRestart(restart) [17:27:54.922] muffled <- TRUE [17:27:54.922] break [17:27:54.922] } [17:27:54.922] } [17:27:54.922] } [17:27:54.922] invisible(muffled) [17:27:54.922] } [17:27:54.922] muffleCondition(cond) [17:27:54.922] }) [17:27:54.922] })) [17:27:54.922] future::FutureResult(value = ...future.value$value, [17:27:54.922] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.922] ...future.rng), globalenv = if (FALSE) [17:27:54.922] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:54.922] ...future.globalenv.names)) [17:27:54.922] else NULL, started = ...future.startTime, version = "1.8") [17:27:54.922] }, condition = base::local({ [17:27:54.922] c <- base::c [17:27:54.922] inherits <- base::inherits [17:27:54.922] invokeRestart <- base::invokeRestart [17:27:54.922] length <- base::length [17:27:54.922] list <- base::list [17:27:54.922] seq.int <- base::seq.int [17:27:54.922] signalCondition <- base::signalCondition [17:27:54.922] sys.calls <- base::sys.calls [17:27:54.922] `[[` <- base::`[[` [17:27:54.922] `+` <- base::`+` [17:27:54.922] `<<-` <- base::`<<-` [17:27:54.922] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:54.922] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:54.922] 3L)] [17:27:54.922] } [17:27:54.922] function(cond) { [17:27:54.922] is_error <- inherits(cond, "error") [17:27:54.922] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:54.922] NULL) [17:27:54.922] if (is_error) { [17:27:54.922] sessionInformation <- function() { [17:27:54.922] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:54.922] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:54.922] search = base::search(), system = base::Sys.info()) [17:27:54.922] } [17:27:54.922] ...future.conditions[[length(...future.conditions) + [17:27:54.922] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:54.922] cond$call), session = sessionInformation(), [17:27:54.922] timestamp = base::Sys.time(), signaled = 0L) [17:27:54.922] signalCondition(cond) [17:27:54.922] } [17:27:54.922] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:54.922] "immediateCondition"))) { [17:27:54.922] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:54.922] ...future.conditions[[length(...future.conditions) + [17:27:54.922] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:54.922] if (TRUE && !signal) { [17:27:54.922] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.922] { [17:27:54.922] inherits <- base::inherits [17:27:54.922] invokeRestart <- base::invokeRestart [17:27:54.922] is.null <- base::is.null [17:27:54.922] muffled <- FALSE [17:27:54.922] if (inherits(cond, "message")) { [17:27:54.922] muffled <- grepl(pattern, "muffleMessage") [17:27:54.922] if (muffled) [17:27:54.922] invokeRestart("muffleMessage") [17:27:54.922] } [17:27:54.922] else if (inherits(cond, "warning")) { [17:27:54.922] muffled <- grepl(pattern, "muffleWarning") [17:27:54.922] if (muffled) [17:27:54.922] invokeRestart("muffleWarning") [17:27:54.922] } [17:27:54.922] else if (inherits(cond, "condition")) { [17:27:54.922] if (!is.null(pattern)) { [17:27:54.922] computeRestarts <- base::computeRestarts [17:27:54.922] grepl <- base::grepl [17:27:54.922] restarts <- computeRestarts(cond) [17:27:54.922] for (restart in restarts) { [17:27:54.922] name <- restart$name [17:27:54.922] if (is.null(name)) [17:27:54.922] next [17:27:54.922] if (!grepl(pattern, name)) [17:27:54.922] next [17:27:54.922] invokeRestart(restart) [17:27:54.922] muffled <- TRUE [17:27:54.922] break [17:27:54.922] } [17:27:54.922] } [17:27:54.922] } [17:27:54.922] invisible(muffled) [17:27:54.922] } [17:27:54.922] muffleCondition(cond, pattern = "^muffle") [17:27:54.922] } [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] if (TRUE) { [17:27:54.922] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.922] { [17:27:54.922] inherits <- base::inherits [17:27:54.922] invokeRestart <- base::invokeRestart [17:27:54.922] is.null <- base::is.null [17:27:54.922] muffled <- FALSE [17:27:54.922] if (inherits(cond, "message")) { [17:27:54.922] muffled <- grepl(pattern, "muffleMessage") [17:27:54.922] if (muffled) [17:27:54.922] invokeRestart("muffleMessage") [17:27:54.922] } [17:27:54.922] else if (inherits(cond, "warning")) { [17:27:54.922] muffled <- grepl(pattern, "muffleWarning") [17:27:54.922] if (muffled) [17:27:54.922] invokeRestart("muffleWarning") [17:27:54.922] } [17:27:54.922] else if (inherits(cond, "condition")) { [17:27:54.922] if (!is.null(pattern)) { [17:27:54.922] computeRestarts <- base::computeRestarts [17:27:54.922] grepl <- base::grepl [17:27:54.922] restarts <- computeRestarts(cond) [17:27:54.922] for (restart in restarts) { [17:27:54.922] name <- restart$name [17:27:54.922] if (is.null(name)) [17:27:54.922] next [17:27:54.922] if (!grepl(pattern, name)) [17:27:54.922] next [17:27:54.922] invokeRestart(restart) [17:27:54.922] muffled <- TRUE [17:27:54.922] break [17:27:54.922] } [17:27:54.922] } [17:27:54.922] } [17:27:54.922] invisible(muffled) [17:27:54.922] } [17:27:54.922] muffleCondition(cond, pattern = "^muffle") [17:27:54.922] } [17:27:54.922] } [17:27:54.922] } [17:27:54.922] })) [17:27:54.922] }, error = function(ex) { [17:27:54.922] base::structure(base::list(value = NULL, visible = NULL, [17:27:54.922] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.922] ...future.rng), started = ...future.startTime, [17:27:54.922] finished = Sys.time(), session_uuid = NA_character_, [17:27:54.922] version = "1.8"), class = "FutureResult") [17:27:54.922] }, finally = { [17:27:54.922] if (!identical(...future.workdir, getwd())) [17:27:54.922] setwd(...future.workdir) [17:27:54.922] { [17:27:54.922] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:54.922] ...future.oldOptions$nwarnings <- NULL [17:27:54.922] } [17:27:54.922] base::options(...future.oldOptions) [17:27:54.922] if (.Platform$OS.type == "windows") { [17:27:54.922] old_names <- names(...future.oldEnvVars) [17:27:54.922] envs <- base::Sys.getenv() [17:27:54.922] names <- names(envs) [17:27:54.922] common <- intersect(names, old_names) [17:27:54.922] added <- setdiff(names, old_names) [17:27:54.922] removed <- setdiff(old_names, names) [17:27:54.922] changed <- common[...future.oldEnvVars[common] != [17:27:54.922] envs[common]] [17:27:54.922] NAMES <- toupper(changed) [17:27:54.922] args <- list() [17:27:54.922] for (kk in seq_along(NAMES)) { [17:27:54.922] name <- changed[[kk]] [17:27:54.922] NAME <- NAMES[[kk]] [17:27:54.922] if (name != NAME && is.element(NAME, old_names)) [17:27:54.922] next [17:27:54.922] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.922] } [17:27:54.922] NAMES <- toupper(added) [17:27:54.922] for (kk in seq_along(NAMES)) { [17:27:54.922] name <- added[[kk]] [17:27:54.922] NAME <- NAMES[[kk]] [17:27:54.922] if (name != NAME && is.element(NAME, old_names)) [17:27:54.922] next [17:27:54.922] args[[name]] <- "" [17:27:54.922] } [17:27:54.922] NAMES <- toupper(removed) [17:27:54.922] for (kk in seq_along(NAMES)) { [17:27:54.922] name <- removed[[kk]] [17:27:54.922] NAME <- NAMES[[kk]] [17:27:54.922] if (name != NAME && is.element(NAME, old_names)) [17:27:54.922] next [17:27:54.922] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.922] } [17:27:54.922] if (length(args) > 0) [17:27:54.922] base::do.call(base::Sys.setenv, args = args) [17:27:54.922] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:54.922] } [17:27:54.922] { [17:27:54.922] if (base::length(...future.futureOptionsAdded) > [17:27:54.922] 0L) { [17:27:54.922] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:54.922] base::names(opts) <- ...future.futureOptionsAdded [17:27:54.922] base::options(opts) [17:27:54.922] } [17:27:54.922] { [17:27:54.922] { [17:27:54.922] base::options(mc.cores = ...future.mc.cores.old) [17:27:54.922] NULL [17:27:54.922] } [17:27:54.922] options(future.plan = NULL) [17:27:54.922] if (is.na(NA_character_)) [17:27:54.922] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.922] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:54.922] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:54.922] .init = FALSE) [17:27:54.922] } [17:27:54.922] } [17:27:54.922] } [17:27:54.922] }) [17:27:54.922] if (TRUE) { [17:27:54.922] base::sink(type = "output", split = FALSE) [17:27:54.922] if (TRUE) { [17:27:54.922] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:54.922] } [17:27:54.922] else { [17:27:54.922] ...future.result["stdout"] <- base::list(NULL) [17:27:54.922] } [17:27:54.922] base::close(...future.stdout) [17:27:54.922] ...future.stdout <- NULL [17:27:54.922] } [17:27:54.922] ...future.result$conditions <- ...future.conditions [17:27:54.922] ...future.result$finished <- base::Sys.time() [17:27:54.922] ...future.result [17:27:54.922] } [17:27:54.928] MultisessionFuture started [17:27:54.928] - Launch lazy future ... done [17:27:54.928] run() for 'MultisessionFuture' ... done [17:27:54.942] receiveMessageFromWorker() for ClusterFuture ... [17:27:54.942] - Validating connection of MultisessionFuture [17:27:54.943] - received message: FutureResult [17:27:54.943] - Received FutureResult [17:27:54.943] - Erased future from FutureRegistry [17:27:54.943] result() for ClusterFuture ... [17:27:54.943] - result already collected: FutureResult [17:27:54.944] result() for ClusterFuture ... done [17:27:54.944] signalConditions() ... [17:27:54.944] - include = 'immediateCondition' [17:27:54.944] - exclude = [17:27:54.944] - resignal = FALSE [17:27:54.945] - Number of conditions: 1 [17:27:54.945] signalConditions() ... done [17:27:54.945] receiveMessageFromWorker() for ClusterFuture ... done [17:27:54.945] A MultisessionFuture was resolved (result was not collected) - result = FALSE, recursive = Inf ... DONE - result = TRUE, recursive = FALSE ... [17:27:54.945] getGlobalsAndPackages() ... [17:27:54.946] Searching for globals... [17:27:54.947] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:54.947] Searching for globals ... DONE [17:27:54.947] Resolving globals: FALSE [17:27:54.948] [17:27:54.948] [17:27:54.948] getGlobalsAndPackages() ... DONE [17:27:54.948] run() for 'Future' ... [17:27:54.948] - state: 'created' [17:27:54.949] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:54.962] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:54.962] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:54.963] - Field: 'node' [17:27:54.963] - Field: 'label' [17:27:54.963] - Field: 'local' [17:27:54.963] - Field: 'owner' [17:27:54.963] - Field: 'envir' [17:27:54.963] - Field: 'workers' [17:27:54.964] - Field: 'packages' [17:27:54.964] - Field: 'gc' [17:27:54.964] - Field: 'conditions' [17:27:54.964] - Field: 'persistent' [17:27:54.964] - Field: 'expr' [17:27:54.965] - Field: 'uuid' [17:27:54.965] - Field: 'seed' [17:27:54.965] - Field: 'version' [17:27:54.965] - Field: 'result' [17:27:54.965] - Field: 'asynchronous' [17:27:54.965] - Field: 'calls' [17:27:54.966] - Field: 'globals' [17:27:54.966] - Field: 'stdout' [17:27:54.966] - Field: 'earlySignal' [17:27:54.966] - Field: 'lazy' [17:27:54.966] - Field: 'state' [17:27:54.966] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:54.967] - Launch lazy future ... [17:27:54.967] Packages needed by the future expression (n = 0): [17:27:54.967] Packages needed by future strategies (n = 0): [17:27:54.968] { [17:27:54.968] { [17:27:54.968] { [17:27:54.968] ...future.startTime <- base::Sys.time() [17:27:54.968] { [17:27:54.968] { [17:27:54.968] { [17:27:54.968] { [17:27:54.968] base::local({ [17:27:54.968] has_future <- base::requireNamespace("future", [17:27:54.968] quietly = TRUE) [17:27:54.968] if (has_future) { [17:27:54.968] ns <- base::getNamespace("future") [17:27:54.968] version <- ns[[".package"]][["version"]] [17:27:54.968] if (is.null(version)) [17:27:54.968] version <- utils::packageVersion("future") [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] version <- NULL [17:27:54.968] } [17:27:54.968] if (!has_future || version < "1.8.0") { [17:27:54.968] info <- base::c(r_version = base::gsub("R version ", [17:27:54.968] "", base::R.version$version.string), [17:27:54.968] platform = base::sprintf("%s (%s-bit)", [17:27:54.968] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:54.968] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:54.968] "release", "version")], collapse = " "), [17:27:54.968] hostname = base::Sys.info()[["nodename"]]) [17:27:54.968] info <- base::sprintf("%s: %s", base::names(info), [17:27:54.968] info) [17:27:54.968] info <- base::paste(info, collapse = "; ") [17:27:54.968] if (!has_future) { [17:27:54.968] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:54.968] info) [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:54.968] info, version) [17:27:54.968] } [17:27:54.968] base::stop(msg) [17:27:54.968] } [17:27:54.968] }) [17:27:54.968] } [17:27:54.968] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:54.968] base::options(mc.cores = 1L) [17:27:54.968] } [17:27:54.968] ...future.strategy.old <- future::plan("list") [17:27:54.968] options(future.plan = NULL) [17:27:54.968] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.968] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:54.968] } [17:27:54.968] ...future.workdir <- getwd() [17:27:54.968] } [17:27:54.968] ...future.oldOptions <- base::as.list(base::.Options) [17:27:54.968] ...future.oldEnvVars <- base::Sys.getenv() [17:27:54.968] } [17:27:54.968] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:54.968] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:54.968] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:54.968] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:54.968] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:54.968] future.stdout.windows.reencode = NULL, width = 80L) [17:27:54.968] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:54.968] base::names(...future.oldOptions)) [17:27:54.968] } [17:27:54.968] if (FALSE) { [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] if (TRUE) { [17:27:54.968] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:54.968] open = "w") [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:54.968] windows = "NUL", "/dev/null"), open = "w") [17:27:54.968] } [17:27:54.968] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:54.968] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:54.968] base::sink(type = "output", split = FALSE) [17:27:54.968] base::close(...future.stdout) [17:27:54.968] }, add = TRUE) [17:27:54.968] } [17:27:54.968] ...future.frame <- base::sys.nframe() [17:27:54.968] ...future.conditions <- base::list() [17:27:54.968] ...future.rng <- base::globalenv()$.Random.seed [17:27:54.968] if (FALSE) { [17:27:54.968] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:54.968] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:54.968] } [17:27:54.968] ...future.result <- base::tryCatch({ [17:27:54.968] base::withCallingHandlers({ [17:27:54.968] ...future.value <- base::withVisible(base::local({ [17:27:54.968] ...future.makeSendCondition <- base::local({ [17:27:54.968] sendCondition <- NULL [17:27:54.968] function(frame = 1L) { [17:27:54.968] if (is.function(sendCondition)) [17:27:54.968] return(sendCondition) [17:27:54.968] ns <- getNamespace("parallel") [17:27:54.968] if (exists("sendData", mode = "function", [17:27:54.968] envir = ns)) { [17:27:54.968] parallel_sendData <- get("sendData", mode = "function", [17:27:54.968] envir = ns) [17:27:54.968] envir <- sys.frame(frame) [17:27:54.968] master <- NULL [17:27:54.968] while (!identical(envir, .GlobalEnv) && [17:27:54.968] !identical(envir, emptyenv())) { [17:27:54.968] if (exists("master", mode = "list", envir = envir, [17:27:54.968] inherits = FALSE)) { [17:27:54.968] master <- get("master", mode = "list", [17:27:54.968] envir = envir, inherits = FALSE) [17:27:54.968] if (inherits(master, c("SOCKnode", [17:27:54.968] "SOCK0node"))) { [17:27:54.968] sendCondition <<- function(cond) { [17:27:54.968] data <- list(type = "VALUE", value = cond, [17:27:54.968] success = TRUE) [17:27:54.968] parallel_sendData(master, data) [17:27:54.968] } [17:27:54.968] return(sendCondition) [17:27:54.968] } [17:27:54.968] } [17:27:54.968] frame <- frame + 1L [17:27:54.968] envir <- sys.frame(frame) [17:27:54.968] } [17:27:54.968] } [17:27:54.968] sendCondition <<- function(cond) NULL [17:27:54.968] } [17:27:54.968] }) [17:27:54.968] withCallingHandlers({ [17:27:54.968] { [17:27:54.968] Sys.sleep(0.5) [17:27:54.968] list(a = 1, b = 42L) [17:27:54.968] } [17:27:54.968] }, immediateCondition = function(cond) { [17:27:54.968] sendCondition <- ...future.makeSendCondition() [17:27:54.968] sendCondition(cond) [17:27:54.968] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.968] { [17:27:54.968] inherits <- base::inherits [17:27:54.968] invokeRestart <- base::invokeRestart [17:27:54.968] is.null <- base::is.null [17:27:54.968] muffled <- FALSE [17:27:54.968] if (inherits(cond, "message")) { [17:27:54.968] muffled <- grepl(pattern, "muffleMessage") [17:27:54.968] if (muffled) [17:27:54.968] invokeRestart("muffleMessage") [17:27:54.968] } [17:27:54.968] else if (inherits(cond, "warning")) { [17:27:54.968] muffled <- grepl(pattern, "muffleWarning") [17:27:54.968] if (muffled) [17:27:54.968] invokeRestart("muffleWarning") [17:27:54.968] } [17:27:54.968] else if (inherits(cond, "condition")) { [17:27:54.968] if (!is.null(pattern)) { [17:27:54.968] computeRestarts <- base::computeRestarts [17:27:54.968] grepl <- base::grepl [17:27:54.968] restarts <- computeRestarts(cond) [17:27:54.968] for (restart in restarts) { [17:27:54.968] name <- restart$name [17:27:54.968] if (is.null(name)) [17:27:54.968] next [17:27:54.968] if (!grepl(pattern, name)) [17:27:54.968] next [17:27:54.968] invokeRestart(restart) [17:27:54.968] muffled <- TRUE [17:27:54.968] break [17:27:54.968] } [17:27:54.968] } [17:27:54.968] } [17:27:54.968] invisible(muffled) [17:27:54.968] } [17:27:54.968] muffleCondition(cond) [17:27:54.968] }) [17:27:54.968] })) [17:27:54.968] future::FutureResult(value = ...future.value$value, [17:27:54.968] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.968] ...future.rng), globalenv = if (FALSE) [17:27:54.968] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:54.968] ...future.globalenv.names)) [17:27:54.968] else NULL, started = ...future.startTime, version = "1.8") [17:27:54.968] }, condition = base::local({ [17:27:54.968] c <- base::c [17:27:54.968] inherits <- base::inherits [17:27:54.968] invokeRestart <- base::invokeRestart [17:27:54.968] length <- base::length [17:27:54.968] list <- base::list [17:27:54.968] seq.int <- base::seq.int [17:27:54.968] signalCondition <- base::signalCondition [17:27:54.968] sys.calls <- base::sys.calls [17:27:54.968] `[[` <- base::`[[` [17:27:54.968] `+` <- base::`+` [17:27:54.968] `<<-` <- base::`<<-` [17:27:54.968] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:54.968] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:54.968] 3L)] [17:27:54.968] } [17:27:54.968] function(cond) { [17:27:54.968] is_error <- inherits(cond, "error") [17:27:54.968] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:54.968] NULL) [17:27:54.968] if (is_error) { [17:27:54.968] sessionInformation <- function() { [17:27:54.968] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:54.968] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:54.968] search = base::search(), system = base::Sys.info()) [17:27:54.968] } [17:27:54.968] ...future.conditions[[length(...future.conditions) + [17:27:54.968] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:54.968] cond$call), session = sessionInformation(), [17:27:54.968] timestamp = base::Sys.time(), signaled = 0L) [17:27:54.968] signalCondition(cond) [17:27:54.968] } [17:27:54.968] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:54.968] "immediateCondition"))) { [17:27:54.968] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:54.968] ...future.conditions[[length(...future.conditions) + [17:27:54.968] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:54.968] if (TRUE && !signal) { [17:27:54.968] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.968] { [17:27:54.968] inherits <- base::inherits [17:27:54.968] invokeRestart <- base::invokeRestart [17:27:54.968] is.null <- base::is.null [17:27:54.968] muffled <- FALSE [17:27:54.968] if (inherits(cond, "message")) { [17:27:54.968] muffled <- grepl(pattern, "muffleMessage") [17:27:54.968] if (muffled) [17:27:54.968] invokeRestart("muffleMessage") [17:27:54.968] } [17:27:54.968] else if (inherits(cond, "warning")) { [17:27:54.968] muffled <- grepl(pattern, "muffleWarning") [17:27:54.968] if (muffled) [17:27:54.968] invokeRestart("muffleWarning") [17:27:54.968] } [17:27:54.968] else if (inherits(cond, "condition")) { [17:27:54.968] if (!is.null(pattern)) { [17:27:54.968] computeRestarts <- base::computeRestarts [17:27:54.968] grepl <- base::grepl [17:27:54.968] restarts <- computeRestarts(cond) [17:27:54.968] for (restart in restarts) { [17:27:54.968] name <- restart$name [17:27:54.968] if (is.null(name)) [17:27:54.968] next [17:27:54.968] if (!grepl(pattern, name)) [17:27:54.968] next [17:27:54.968] invokeRestart(restart) [17:27:54.968] muffled <- TRUE [17:27:54.968] break [17:27:54.968] } [17:27:54.968] } [17:27:54.968] } [17:27:54.968] invisible(muffled) [17:27:54.968] } [17:27:54.968] muffleCondition(cond, pattern = "^muffle") [17:27:54.968] } [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] if (TRUE) { [17:27:54.968] muffleCondition <- function (cond, pattern = "^muffle") [17:27:54.968] { [17:27:54.968] inherits <- base::inherits [17:27:54.968] invokeRestart <- base::invokeRestart [17:27:54.968] is.null <- base::is.null [17:27:54.968] muffled <- FALSE [17:27:54.968] if (inherits(cond, "message")) { [17:27:54.968] muffled <- grepl(pattern, "muffleMessage") [17:27:54.968] if (muffled) [17:27:54.968] invokeRestart("muffleMessage") [17:27:54.968] } [17:27:54.968] else if (inherits(cond, "warning")) { [17:27:54.968] muffled <- grepl(pattern, "muffleWarning") [17:27:54.968] if (muffled) [17:27:54.968] invokeRestart("muffleWarning") [17:27:54.968] } [17:27:54.968] else if (inherits(cond, "condition")) { [17:27:54.968] if (!is.null(pattern)) { [17:27:54.968] computeRestarts <- base::computeRestarts [17:27:54.968] grepl <- base::grepl [17:27:54.968] restarts <- computeRestarts(cond) [17:27:54.968] for (restart in restarts) { [17:27:54.968] name <- restart$name [17:27:54.968] if (is.null(name)) [17:27:54.968] next [17:27:54.968] if (!grepl(pattern, name)) [17:27:54.968] next [17:27:54.968] invokeRestart(restart) [17:27:54.968] muffled <- TRUE [17:27:54.968] break [17:27:54.968] } [17:27:54.968] } [17:27:54.968] } [17:27:54.968] invisible(muffled) [17:27:54.968] } [17:27:54.968] muffleCondition(cond, pattern = "^muffle") [17:27:54.968] } [17:27:54.968] } [17:27:54.968] } [17:27:54.968] })) [17:27:54.968] }, error = function(ex) { [17:27:54.968] base::structure(base::list(value = NULL, visible = NULL, [17:27:54.968] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:54.968] ...future.rng), started = ...future.startTime, [17:27:54.968] finished = Sys.time(), session_uuid = NA_character_, [17:27:54.968] version = "1.8"), class = "FutureResult") [17:27:54.968] }, finally = { [17:27:54.968] if (!identical(...future.workdir, getwd())) [17:27:54.968] setwd(...future.workdir) [17:27:54.968] { [17:27:54.968] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:54.968] ...future.oldOptions$nwarnings <- NULL [17:27:54.968] } [17:27:54.968] base::options(...future.oldOptions) [17:27:54.968] if (.Platform$OS.type == "windows") { [17:27:54.968] old_names <- names(...future.oldEnvVars) [17:27:54.968] envs <- base::Sys.getenv() [17:27:54.968] names <- names(envs) [17:27:54.968] common <- intersect(names, old_names) [17:27:54.968] added <- setdiff(names, old_names) [17:27:54.968] removed <- setdiff(old_names, names) [17:27:54.968] changed <- common[...future.oldEnvVars[common] != [17:27:54.968] envs[common]] [17:27:54.968] NAMES <- toupper(changed) [17:27:54.968] args <- list() [17:27:54.968] for (kk in seq_along(NAMES)) { [17:27:54.968] name <- changed[[kk]] [17:27:54.968] NAME <- NAMES[[kk]] [17:27:54.968] if (name != NAME && is.element(NAME, old_names)) [17:27:54.968] next [17:27:54.968] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.968] } [17:27:54.968] NAMES <- toupper(added) [17:27:54.968] for (kk in seq_along(NAMES)) { [17:27:54.968] name <- added[[kk]] [17:27:54.968] NAME <- NAMES[[kk]] [17:27:54.968] if (name != NAME && is.element(NAME, old_names)) [17:27:54.968] next [17:27:54.968] args[[name]] <- "" [17:27:54.968] } [17:27:54.968] NAMES <- toupper(removed) [17:27:54.968] for (kk in seq_along(NAMES)) { [17:27:54.968] name <- removed[[kk]] [17:27:54.968] NAME <- NAMES[[kk]] [17:27:54.968] if (name != NAME && is.element(NAME, old_names)) [17:27:54.968] next [17:27:54.968] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:54.968] } [17:27:54.968] if (length(args) > 0) [17:27:54.968] base::do.call(base::Sys.setenv, args = args) [17:27:54.968] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:54.968] } [17:27:54.968] { [17:27:54.968] if (base::length(...future.futureOptionsAdded) > [17:27:54.968] 0L) { [17:27:54.968] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:54.968] base::names(opts) <- ...future.futureOptionsAdded [17:27:54.968] base::options(opts) [17:27:54.968] } [17:27:54.968] { [17:27:54.968] { [17:27:54.968] base::options(mc.cores = ...future.mc.cores.old) [17:27:54.968] NULL [17:27:54.968] } [17:27:54.968] options(future.plan = NULL) [17:27:54.968] if (is.na(NA_character_)) [17:27:54.968] Sys.unsetenv("R_FUTURE_PLAN") [17:27:54.968] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:54.968] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:54.968] .init = FALSE) [17:27:54.968] } [17:27:54.968] } [17:27:54.968] } [17:27:54.968] }) [17:27:54.968] if (TRUE) { [17:27:54.968] base::sink(type = "output", split = FALSE) [17:27:54.968] if (TRUE) { [17:27:54.968] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:54.968] } [17:27:54.968] else { [17:27:54.968] ...future.result["stdout"] <- base::list(NULL) [17:27:54.968] } [17:27:54.968] base::close(...future.stdout) [17:27:54.968] ...future.stdout <- NULL [17:27:54.968] } [17:27:54.968] ...future.result$conditions <- ...future.conditions [17:27:54.968] ...future.result$finished <- base::Sys.time() [17:27:54.968] ...future.result [17:27:54.968] } [17:27:54.973] MultisessionFuture started [17:27:54.973] - Launch lazy future ... done [17:27:54.974] run() for 'MultisessionFuture' ... done [17:27:55.494] receiveMessageFromWorker() for ClusterFuture ... [17:27:55.494] - Validating connection of MultisessionFuture [17:27:55.494] - received message: FutureResult [17:27:55.494] - Received FutureResult [17:27:55.494] - Erased future from FutureRegistry [17:27:55.495] result() for ClusterFuture ... [17:27:55.495] - result already collected: FutureResult [17:27:55.495] result() for ClusterFuture ... done [17:27:55.495] receiveMessageFromWorker() for ClusterFuture ... done [17:27:55.495] A MultisessionFuture was resolved [17:27:55.495] getGlobalsAndPackages() ... [17:27:55.496] Searching for globals... [17:27:55.497] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:55.497] Searching for globals ... DONE [17:27:55.497] Resolving globals: FALSE [17:27:55.498] [17:27:55.498] [17:27:55.498] getGlobalsAndPackages() ... DONE [17:27:55.498] run() for 'Future' ... [17:27:55.499] - state: 'created' [17:27:55.499] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:55.513] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:55.513] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:55.513] - Field: 'node' [17:27:55.513] - Field: 'label' [17:27:55.513] - Field: 'local' [17:27:55.514] - Field: 'owner' [17:27:55.514] - Field: 'envir' [17:27:55.514] - Field: 'workers' [17:27:55.514] - Field: 'packages' [17:27:55.514] - Field: 'gc' [17:27:55.514] - Field: 'conditions' [17:27:55.515] - Field: 'persistent' [17:27:55.515] - Field: 'expr' [17:27:55.515] - Field: 'uuid' [17:27:55.515] - Field: 'seed' [17:27:55.515] - Field: 'version' [17:27:55.515] - Field: 'result' [17:27:55.516] - Field: 'asynchronous' [17:27:55.516] - Field: 'calls' [17:27:55.516] - Field: 'globals' [17:27:55.516] - Field: 'stdout' [17:27:55.516] - Field: 'earlySignal' [17:27:55.516] - Field: 'lazy' [17:27:55.517] - Field: 'state' [17:27:55.517] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:55.517] - Launch lazy future ... [17:27:55.517] Packages needed by the future expression (n = 0): [17:27:55.518] Packages needed by future strategies (n = 0): [17:27:55.518] { [17:27:55.518] { [17:27:55.518] { [17:27:55.518] ...future.startTime <- base::Sys.time() [17:27:55.518] { [17:27:55.518] { [17:27:55.518] { [17:27:55.518] { [17:27:55.518] base::local({ [17:27:55.518] has_future <- base::requireNamespace("future", [17:27:55.518] quietly = TRUE) [17:27:55.518] if (has_future) { [17:27:55.518] ns <- base::getNamespace("future") [17:27:55.518] version <- ns[[".package"]][["version"]] [17:27:55.518] if (is.null(version)) [17:27:55.518] version <- utils::packageVersion("future") [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] version <- NULL [17:27:55.518] } [17:27:55.518] if (!has_future || version < "1.8.0") { [17:27:55.518] info <- base::c(r_version = base::gsub("R version ", [17:27:55.518] "", base::R.version$version.string), [17:27:55.518] platform = base::sprintf("%s (%s-bit)", [17:27:55.518] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:55.518] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:55.518] "release", "version")], collapse = " "), [17:27:55.518] hostname = base::Sys.info()[["nodename"]]) [17:27:55.518] info <- base::sprintf("%s: %s", base::names(info), [17:27:55.518] info) [17:27:55.518] info <- base::paste(info, collapse = "; ") [17:27:55.518] if (!has_future) { [17:27:55.518] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:55.518] info) [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:55.518] info, version) [17:27:55.518] } [17:27:55.518] base::stop(msg) [17:27:55.518] } [17:27:55.518] }) [17:27:55.518] } [17:27:55.518] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:55.518] base::options(mc.cores = 1L) [17:27:55.518] } [17:27:55.518] ...future.strategy.old <- future::plan("list") [17:27:55.518] options(future.plan = NULL) [17:27:55.518] Sys.unsetenv("R_FUTURE_PLAN") [17:27:55.518] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:55.518] } [17:27:55.518] ...future.workdir <- getwd() [17:27:55.518] } [17:27:55.518] ...future.oldOptions <- base::as.list(base::.Options) [17:27:55.518] ...future.oldEnvVars <- base::Sys.getenv() [17:27:55.518] } [17:27:55.518] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:55.518] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:55.518] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:55.518] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:55.518] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:55.518] future.stdout.windows.reencode = NULL, width = 80L) [17:27:55.518] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:55.518] base::names(...future.oldOptions)) [17:27:55.518] } [17:27:55.518] if (FALSE) { [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] if (TRUE) { [17:27:55.518] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:55.518] open = "w") [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:55.518] windows = "NUL", "/dev/null"), open = "w") [17:27:55.518] } [17:27:55.518] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:55.518] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:55.518] base::sink(type = "output", split = FALSE) [17:27:55.518] base::close(...future.stdout) [17:27:55.518] }, add = TRUE) [17:27:55.518] } [17:27:55.518] ...future.frame <- base::sys.nframe() [17:27:55.518] ...future.conditions <- base::list() [17:27:55.518] ...future.rng <- base::globalenv()$.Random.seed [17:27:55.518] if (FALSE) { [17:27:55.518] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:55.518] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:55.518] } [17:27:55.518] ...future.result <- base::tryCatch({ [17:27:55.518] base::withCallingHandlers({ [17:27:55.518] ...future.value <- base::withVisible(base::local({ [17:27:55.518] ...future.makeSendCondition <- base::local({ [17:27:55.518] sendCondition <- NULL [17:27:55.518] function(frame = 1L) { [17:27:55.518] if (is.function(sendCondition)) [17:27:55.518] return(sendCondition) [17:27:55.518] ns <- getNamespace("parallel") [17:27:55.518] if (exists("sendData", mode = "function", [17:27:55.518] envir = ns)) { [17:27:55.518] parallel_sendData <- get("sendData", mode = "function", [17:27:55.518] envir = ns) [17:27:55.518] envir <- sys.frame(frame) [17:27:55.518] master <- NULL [17:27:55.518] while (!identical(envir, .GlobalEnv) && [17:27:55.518] !identical(envir, emptyenv())) { [17:27:55.518] if (exists("master", mode = "list", envir = envir, [17:27:55.518] inherits = FALSE)) { [17:27:55.518] master <- get("master", mode = "list", [17:27:55.518] envir = envir, inherits = FALSE) [17:27:55.518] if (inherits(master, c("SOCKnode", [17:27:55.518] "SOCK0node"))) { [17:27:55.518] sendCondition <<- function(cond) { [17:27:55.518] data <- list(type = "VALUE", value = cond, [17:27:55.518] success = TRUE) [17:27:55.518] parallel_sendData(master, data) [17:27:55.518] } [17:27:55.518] return(sendCondition) [17:27:55.518] } [17:27:55.518] } [17:27:55.518] frame <- frame + 1L [17:27:55.518] envir <- sys.frame(frame) [17:27:55.518] } [17:27:55.518] } [17:27:55.518] sendCondition <<- function(cond) NULL [17:27:55.518] } [17:27:55.518] }) [17:27:55.518] withCallingHandlers({ [17:27:55.518] { [17:27:55.518] Sys.sleep(0.5) [17:27:55.518] list(a = 1, b = 42L) [17:27:55.518] } [17:27:55.518] }, immediateCondition = function(cond) { [17:27:55.518] sendCondition <- ...future.makeSendCondition() [17:27:55.518] sendCondition(cond) [17:27:55.518] muffleCondition <- function (cond, pattern = "^muffle") [17:27:55.518] { [17:27:55.518] inherits <- base::inherits [17:27:55.518] invokeRestart <- base::invokeRestart [17:27:55.518] is.null <- base::is.null [17:27:55.518] muffled <- FALSE [17:27:55.518] if (inherits(cond, "message")) { [17:27:55.518] muffled <- grepl(pattern, "muffleMessage") [17:27:55.518] if (muffled) [17:27:55.518] invokeRestart("muffleMessage") [17:27:55.518] } [17:27:55.518] else if (inherits(cond, "warning")) { [17:27:55.518] muffled <- grepl(pattern, "muffleWarning") [17:27:55.518] if (muffled) [17:27:55.518] invokeRestart("muffleWarning") [17:27:55.518] } [17:27:55.518] else if (inherits(cond, "condition")) { [17:27:55.518] if (!is.null(pattern)) { [17:27:55.518] computeRestarts <- base::computeRestarts [17:27:55.518] grepl <- base::grepl [17:27:55.518] restarts <- computeRestarts(cond) [17:27:55.518] for (restart in restarts) { [17:27:55.518] name <- restart$name [17:27:55.518] if (is.null(name)) [17:27:55.518] next [17:27:55.518] if (!grepl(pattern, name)) [17:27:55.518] next [17:27:55.518] invokeRestart(restart) [17:27:55.518] muffled <- TRUE [17:27:55.518] break [17:27:55.518] } [17:27:55.518] } [17:27:55.518] } [17:27:55.518] invisible(muffled) [17:27:55.518] } [17:27:55.518] muffleCondition(cond) [17:27:55.518] }) [17:27:55.518] })) [17:27:55.518] future::FutureResult(value = ...future.value$value, [17:27:55.518] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:55.518] ...future.rng), globalenv = if (FALSE) [17:27:55.518] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:55.518] ...future.globalenv.names)) [17:27:55.518] else NULL, started = ...future.startTime, version = "1.8") [17:27:55.518] }, condition = base::local({ [17:27:55.518] c <- base::c [17:27:55.518] inherits <- base::inherits [17:27:55.518] invokeRestart <- base::invokeRestart [17:27:55.518] length <- base::length [17:27:55.518] list <- base::list [17:27:55.518] seq.int <- base::seq.int [17:27:55.518] signalCondition <- base::signalCondition [17:27:55.518] sys.calls <- base::sys.calls [17:27:55.518] `[[` <- base::`[[` [17:27:55.518] `+` <- base::`+` [17:27:55.518] `<<-` <- base::`<<-` [17:27:55.518] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:55.518] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:55.518] 3L)] [17:27:55.518] } [17:27:55.518] function(cond) { [17:27:55.518] is_error <- inherits(cond, "error") [17:27:55.518] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:55.518] NULL) [17:27:55.518] if (is_error) { [17:27:55.518] sessionInformation <- function() { [17:27:55.518] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:55.518] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:55.518] search = base::search(), system = base::Sys.info()) [17:27:55.518] } [17:27:55.518] ...future.conditions[[length(...future.conditions) + [17:27:55.518] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:55.518] cond$call), session = sessionInformation(), [17:27:55.518] timestamp = base::Sys.time(), signaled = 0L) [17:27:55.518] signalCondition(cond) [17:27:55.518] } [17:27:55.518] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:55.518] "immediateCondition"))) { [17:27:55.518] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:55.518] ...future.conditions[[length(...future.conditions) + [17:27:55.518] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:55.518] if (TRUE && !signal) { [17:27:55.518] muffleCondition <- function (cond, pattern = "^muffle") [17:27:55.518] { [17:27:55.518] inherits <- base::inherits [17:27:55.518] invokeRestart <- base::invokeRestart [17:27:55.518] is.null <- base::is.null [17:27:55.518] muffled <- FALSE [17:27:55.518] if (inherits(cond, "message")) { [17:27:55.518] muffled <- grepl(pattern, "muffleMessage") [17:27:55.518] if (muffled) [17:27:55.518] invokeRestart("muffleMessage") [17:27:55.518] } [17:27:55.518] else if (inherits(cond, "warning")) { [17:27:55.518] muffled <- grepl(pattern, "muffleWarning") [17:27:55.518] if (muffled) [17:27:55.518] invokeRestart("muffleWarning") [17:27:55.518] } [17:27:55.518] else if (inherits(cond, "condition")) { [17:27:55.518] if (!is.null(pattern)) { [17:27:55.518] computeRestarts <- base::computeRestarts [17:27:55.518] grepl <- base::grepl [17:27:55.518] restarts <- computeRestarts(cond) [17:27:55.518] for (restart in restarts) { [17:27:55.518] name <- restart$name [17:27:55.518] if (is.null(name)) [17:27:55.518] next [17:27:55.518] if (!grepl(pattern, name)) [17:27:55.518] next [17:27:55.518] invokeRestart(restart) [17:27:55.518] muffled <- TRUE [17:27:55.518] break [17:27:55.518] } [17:27:55.518] } [17:27:55.518] } [17:27:55.518] invisible(muffled) [17:27:55.518] } [17:27:55.518] muffleCondition(cond, pattern = "^muffle") [17:27:55.518] } [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] if (TRUE) { [17:27:55.518] muffleCondition <- function (cond, pattern = "^muffle") [17:27:55.518] { [17:27:55.518] inherits <- base::inherits [17:27:55.518] invokeRestart <- base::invokeRestart [17:27:55.518] is.null <- base::is.null [17:27:55.518] muffled <- FALSE [17:27:55.518] if (inherits(cond, "message")) { [17:27:55.518] muffled <- grepl(pattern, "muffleMessage") [17:27:55.518] if (muffled) [17:27:55.518] invokeRestart("muffleMessage") [17:27:55.518] } [17:27:55.518] else if (inherits(cond, "warning")) { [17:27:55.518] muffled <- grepl(pattern, "muffleWarning") [17:27:55.518] if (muffled) [17:27:55.518] invokeRestart("muffleWarning") [17:27:55.518] } [17:27:55.518] else if (inherits(cond, "condition")) { [17:27:55.518] if (!is.null(pattern)) { [17:27:55.518] computeRestarts <- base::computeRestarts [17:27:55.518] grepl <- base::grepl [17:27:55.518] restarts <- computeRestarts(cond) [17:27:55.518] for (restart in restarts) { [17:27:55.518] name <- restart$name [17:27:55.518] if (is.null(name)) [17:27:55.518] next [17:27:55.518] if (!grepl(pattern, name)) [17:27:55.518] next [17:27:55.518] invokeRestart(restart) [17:27:55.518] muffled <- TRUE [17:27:55.518] break [17:27:55.518] } [17:27:55.518] } [17:27:55.518] } [17:27:55.518] invisible(muffled) [17:27:55.518] } [17:27:55.518] muffleCondition(cond, pattern = "^muffle") [17:27:55.518] } [17:27:55.518] } [17:27:55.518] } [17:27:55.518] })) [17:27:55.518] }, error = function(ex) { [17:27:55.518] base::structure(base::list(value = NULL, visible = NULL, [17:27:55.518] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:55.518] ...future.rng), started = ...future.startTime, [17:27:55.518] finished = Sys.time(), session_uuid = NA_character_, [17:27:55.518] version = "1.8"), class = "FutureResult") [17:27:55.518] }, finally = { [17:27:55.518] if (!identical(...future.workdir, getwd())) [17:27:55.518] setwd(...future.workdir) [17:27:55.518] { [17:27:55.518] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:55.518] ...future.oldOptions$nwarnings <- NULL [17:27:55.518] } [17:27:55.518] base::options(...future.oldOptions) [17:27:55.518] if (.Platform$OS.type == "windows") { [17:27:55.518] old_names <- names(...future.oldEnvVars) [17:27:55.518] envs <- base::Sys.getenv() [17:27:55.518] names <- names(envs) [17:27:55.518] common <- intersect(names, old_names) [17:27:55.518] added <- setdiff(names, old_names) [17:27:55.518] removed <- setdiff(old_names, names) [17:27:55.518] changed <- common[...future.oldEnvVars[common] != [17:27:55.518] envs[common]] [17:27:55.518] NAMES <- toupper(changed) [17:27:55.518] args <- list() [17:27:55.518] for (kk in seq_along(NAMES)) { [17:27:55.518] name <- changed[[kk]] [17:27:55.518] NAME <- NAMES[[kk]] [17:27:55.518] if (name != NAME && is.element(NAME, old_names)) [17:27:55.518] next [17:27:55.518] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:55.518] } [17:27:55.518] NAMES <- toupper(added) [17:27:55.518] for (kk in seq_along(NAMES)) { [17:27:55.518] name <- added[[kk]] [17:27:55.518] NAME <- NAMES[[kk]] [17:27:55.518] if (name != NAME && is.element(NAME, old_names)) [17:27:55.518] next [17:27:55.518] args[[name]] <- "" [17:27:55.518] } [17:27:55.518] NAMES <- toupper(removed) [17:27:55.518] for (kk in seq_along(NAMES)) { [17:27:55.518] name <- removed[[kk]] [17:27:55.518] NAME <- NAMES[[kk]] [17:27:55.518] if (name != NAME && is.element(NAME, old_names)) [17:27:55.518] next [17:27:55.518] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:55.518] } [17:27:55.518] if (length(args) > 0) [17:27:55.518] base::do.call(base::Sys.setenv, args = args) [17:27:55.518] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:55.518] } [17:27:55.518] { [17:27:55.518] if (base::length(...future.futureOptionsAdded) > [17:27:55.518] 0L) { [17:27:55.518] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:55.518] base::names(opts) <- ...future.futureOptionsAdded [17:27:55.518] base::options(opts) [17:27:55.518] } [17:27:55.518] { [17:27:55.518] { [17:27:55.518] base::options(mc.cores = ...future.mc.cores.old) [17:27:55.518] NULL [17:27:55.518] } [17:27:55.518] options(future.plan = NULL) [17:27:55.518] if (is.na(NA_character_)) [17:27:55.518] Sys.unsetenv("R_FUTURE_PLAN") [17:27:55.518] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:55.518] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:55.518] .init = FALSE) [17:27:55.518] } [17:27:55.518] } [17:27:55.518] } [17:27:55.518] }) [17:27:55.518] if (TRUE) { [17:27:55.518] base::sink(type = "output", split = FALSE) [17:27:55.518] if (TRUE) { [17:27:55.518] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:55.518] } [17:27:55.518] else { [17:27:55.518] ...future.result["stdout"] <- base::list(NULL) [17:27:55.518] } [17:27:55.518] base::close(...future.stdout) [17:27:55.518] ...future.stdout <- NULL [17:27:55.518] } [17:27:55.518] ...future.result$conditions <- ...future.conditions [17:27:55.518] ...future.result$finished <- base::Sys.time() [17:27:55.518] ...future.result [17:27:55.518] } [17:27:55.524] MultisessionFuture started [17:27:55.524] - Launch lazy future ... done [17:27:55.524] run() for 'MultisessionFuture' ... done [17:27:56.040] receiveMessageFromWorker() for ClusterFuture ... [17:27:56.040] - Validating connection of MultisessionFuture [17:27:56.040] - received message: FutureResult [17:27:56.040] - Received FutureResult [17:27:56.041] - Erased future from FutureRegistry [17:27:56.041] result() for ClusterFuture ... [17:27:56.041] - result already collected: FutureResult [17:27:56.041] result() for ClusterFuture ... done [17:27:56.041] receiveMessageFromWorker() for ClusterFuture ... done [17:27:56.041] A MultisessionFuture was resolved - w/ exception ... [17:27:56.042] getGlobalsAndPackages() ... [17:27:56.042] Searching for globals... [17:27:56.043] - globals found: [2] 'list', 'stop' [17:27:56.043] Searching for globals ... DONE [17:27:56.043] Resolving globals: FALSE [17:27:56.043] [17:27:56.044] [17:27:56.044] getGlobalsAndPackages() ... DONE [17:27:56.044] run() for 'Future' ... [17:27:56.044] - state: 'created' [17:27:56.044] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:56.058] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:56.058] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:56.059] - Field: 'node' [17:27:56.059] - Field: 'label' [17:27:56.059] - Field: 'local' [17:27:56.059] - Field: 'owner' [17:27:56.059] - Field: 'envir' [17:27:56.060] - Field: 'workers' [17:27:56.060] - Field: 'packages' [17:27:56.060] - Field: 'gc' [17:27:56.060] - Field: 'conditions' [17:27:56.060] - Field: 'persistent' [17:27:56.060] - Field: 'expr' [17:27:56.061] - Field: 'uuid' [17:27:56.061] - Field: 'seed' [17:27:56.061] - Field: 'version' [17:27:56.061] - Field: 'result' [17:27:56.061] - Field: 'asynchronous' [17:27:56.061] - Field: 'calls' [17:27:56.062] - Field: 'globals' [17:27:56.062] - Field: 'stdout' [17:27:56.062] - Field: 'earlySignal' [17:27:56.062] - Field: 'lazy' [17:27:56.062] - Field: 'state' [17:27:56.063] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:56.063] - Launch lazy future ... [17:27:56.063] Packages needed by the future expression (n = 0): [17:27:56.063] Packages needed by future strategies (n = 0): [17:27:56.064] { [17:27:56.064] { [17:27:56.064] { [17:27:56.064] ...future.startTime <- base::Sys.time() [17:27:56.064] { [17:27:56.064] { [17:27:56.064] { [17:27:56.064] { [17:27:56.064] base::local({ [17:27:56.064] has_future <- base::requireNamespace("future", [17:27:56.064] quietly = TRUE) [17:27:56.064] if (has_future) { [17:27:56.064] ns <- base::getNamespace("future") [17:27:56.064] version <- ns[[".package"]][["version"]] [17:27:56.064] if (is.null(version)) [17:27:56.064] version <- utils::packageVersion("future") [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] version <- NULL [17:27:56.064] } [17:27:56.064] if (!has_future || version < "1.8.0") { [17:27:56.064] info <- base::c(r_version = base::gsub("R version ", [17:27:56.064] "", base::R.version$version.string), [17:27:56.064] platform = base::sprintf("%s (%s-bit)", [17:27:56.064] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:56.064] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:56.064] "release", "version")], collapse = " "), [17:27:56.064] hostname = base::Sys.info()[["nodename"]]) [17:27:56.064] info <- base::sprintf("%s: %s", base::names(info), [17:27:56.064] info) [17:27:56.064] info <- base::paste(info, collapse = "; ") [17:27:56.064] if (!has_future) { [17:27:56.064] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:56.064] info) [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:56.064] info, version) [17:27:56.064] } [17:27:56.064] base::stop(msg) [17:27:56.064] } [17:27:56.064] }) [17:27:56.064] } [17:27:56.064] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:56.064] base::options(mc.cores = 1L) [17:27:56.064] } [17:27:56.064] ...future.strategy.old <- future::plan("list") [17:27:56.064] options(future.plan = NULL) [17:27:56.064] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.064] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:56.064] } [17:27:56.064] ...future.workdir <- getwd() [17:27:56.064] } [17:27:56.064] ...future.oldOptions <- base::as.list(base::.Options) [17:27:56.064] ...future.oldEnvVars <- base::Sys.getenv() [17:27:56.064] } [17:27:56.064] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:56.064] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:56.064] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:56.064] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:56.064] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:56.064] future.stdout.windows.reencode = NULL, width = 80L) [17:27:56.064] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:56.064] base::names(...future.oldOptions)) [17:27:56.064] } [17:27:56.064] if (FALSE) { [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] if (TRUE) { [17:27:56.064] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:56.064] open = "w") [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:56.064] windows = "NUL", "/dev/null"), open = "w") [17:27:56.064] } [17:27:56.064] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:56.064] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:56.064] base::sink(type = "output", split = FALSE) [17:27:56.064] base::close(...future.stdout) [17:27:56.064] }, add = TRUE) [17:27:56.064] } [17:27:56.064] ...future.frame <- base::sys.nframe() [17:27:56.064] ...future.conditions <- base::list() [17:27:56.064] ...future.rng <- base::globalenv()$.Random.seed [17:27:56.064] if (FALSE) { [17:27:56.064] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:56.064] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:56.064] } [17:27:56.064] ...future.result <- base::tryCatch({ [17:27:56.064] base::withCallingHandlers({ [17:27:56.064] ...future.value <- base::withVisible(base::local({ [17:27:56.064] ...future.makeSendCondition <- base::local({ [17:27:56.064] sendCondition <- NULL [17:27:56.064] function(frame = 1L) { [17:27:56.064] if (is.function(sendCondition)) [17:27:56.064] return(sendCondition) [17:27:56.064] ns <- getNamespace("parallel") [17:27:56.064] if (exists("sendData", mode = "function", [17:27:56.064] envir = ns)) { [17:27:56.064] parallel_sendData <- get("sendData", mode = "function", [17:27:56.064] envir = ns) [17:27:56.064] envir <- sys.frame(frame) [17:27:56.064] master <- NULL [17:27:56.064] while (!identical(envir, .GlobalEnv) && [17:27:56.064] !identical(envir, emptyenv())) { [17:27:56.064] if (exists("master", mode = "list", envir = envir, [17:27:56.064] inherits = FALSE)) { [17:27:56.064] master <- get("master", mode = "list", [17:27:56.064] envir = envir, inherits = FALSE) [17:27:56.064] if (inherits(master, c("SOCKnode", [17:27:56.064] "SOCK0node"))) { [17:27:56.064] sendCondition <<- function(cond) { [17:27:56.064] data <- list(type = "VALUE", value = cond, [17:27:56.064] success = TRUE) [17:27:56.064] parallel_sendData(master, data) [17:27:56.064] } [17:27:56.064] return(sendCondition) [17:27:56.064] } [17:27:56.064] } [17:27:56.064] frame <- frame + 1L [17:27:56.064] envir <- sys.frame(frame) [17:27:56.064] } [17:27:56.064] } [17:27:56.064] sendCondition <<- function(cond) NULL [17:27:56.064] } [17:27:56.064] }) [17:27:56.064] withCallingHandlers({ [17:27:56.064] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:56.064] }, immediateCondition = function(cond) { [17:27:56.064] sendCondition <- ...future.makeSendCondition() [17:27:56.064] sendCondition(cond) [17:27:56.064] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.064] { [17:27:56.064] inherits <- base::inherits [17:27:56.064] invokeRestart <- base::invokeRestart [17:27:56.064] is.null <- base::is.null [17:27:56.064] muffled <- FALSE [17:27:56.064] if (inherits(cond, "message")) { [17:27:56.064] muffled <- grepl(pattern, "muffleMessage") [17:27:56.064] if (muffled) [17:27:56.064] invokeRestart("muffleMessage") [17:27:56.064] } [17:27:56.064] else if (inherits(cond, "warning")) { [17:27:56.064] muffled <- grepl(pattern, "muffleWarning") [17:27:56.064] if (muffled) [17:27:56.064] invokeRestart("muffleWarning") [17:27:56.064] } [17:27:56.064] else if (inherits(cond, "condition")) { [17:27:56.064] if (!is.null(pattern)) { [17:27:56.064] computeRestarts <- base::computeRestarts [17:27:56.064] grepl <- base::grepl [17:27:56.064] restarts <- computeRestarts(cond) [17:27:56.064] for (restart in restarts) { [17:27:56.064] name <- restart$name [17:27:56.064] if (is.null(name)) [17:27:56.064] next [17:27:56.064] if (!grepl(pattern, name)) [17:27:56.064] next [17:27:56.064] invokeRestart(restart) [17:27:56.064] muffled <- TRUE [17:27:56.064] break [17:27:56.064] } [17:27:56.064] } [17:27:56.064] } [17:27:56.064] invisible(muffled) [17:27:56.064] } [17:27:56.064] muffleCondition(cond) [17:27:56.064] }) [17:27:56.064] })) [17:27:56.064] future::FutureResult(value = ...future.value$value, [17:27:56.064] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.064] ...future.rng), globalenv = if (FALSE) [17:27:56.064] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:56.064] ...future.globalenv.names)) [17:27:56.064] else NULL, started = ...future.startTime, version = "1.8") [17:27:56.064] }, condition = base::local({ [17:27:56.064] c <- base::c [17:27:56.064] inherits <- base::inherits [17:27:56.064] invokeRestart <- base::invokeRestart [17:27:56.064] length <- base::length [17:27:56.064] list <- base::list [17:27:56.064] seq.int <- base::seq.int [17:27:56.064] signalCondition <- base::signalCondition [17:27:56.064] sys.calls <- base::sys.calls [17:27:56.064] `[[` <- base::`[[` [17:27:56.064] `+` <- base::`+` [17:27:56.064] `<<-` <- base::`<<-` [17:27:56.064] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:56.064] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:56.064] 3L)] [17:27:56.064] } [17:27:56.064] function(cond) { [17:27:56.064] is_error <- inherits(cond, "error") [17:27:56.064] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:56.064] NULL) [17:27:56.064] if (is_error) { [17:27:56.064] sessionInformation <- function() { [17:27:56.064] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:56.064] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:56.064] search = base::search(), system = base::Sys.info()) [17:27:56.064] } [17:27:56.064] ...future.conditions[[length(...future.conditions) + [17:27:56.064] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:56.064] cond$call), session = sessionInformation(), [17:27:56.064] timestamp = base::Sys.time(), signaled = 0L) [17:27:56.064] signalCondition(cond) [17:27:56.064] } [17:27:56.064] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:56.064] "immediateCondition"))) { [17:27:56.064] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:56.064] ...future.conditions[[length(...future.conditions) + [17:27:56.064] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:56.064] if (TRUE && !signal) { [17:27:56.064] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.064] { [17:27:56.064] inherits <- base::inherits [17:27:56.064] invokeRestart <- base::invokeRestart [17:27:56.064] is.null <- base::is.null [17:27:56.064] muffled <- FALSE [17:27:56.064] if (inherits(cond, "message")) { [17:27:56.064] muffled <- grepl(pattern, "muffleMessage") [17:27:56.064] if (muffled) [17:27:56.064] invokeRestart("muffleMessage") [17:27:56.064] } [17:27:56.064] else if (inherits(cond, "warning")) { [17:27:56.064] muffled <- grepl(pattern, "muffleWarning") [17:27:56.064] if (muffled) [17:27:56.064] invokeRestart("muffleWarning") [17:27:56.064] } [17:27:56.064] else if (inherits(cond, "condition")) { [17:27:56.064] if (!is.null(pattern)) { [17:27:56.064] computeRestarts <- base::computeRestarts [17:27:56.064] grepl <- base::grepl [17:27:56.064] restarts <- computeRestarts(cond) [17:27:56.064] for (restart in restarts) { [17:27:56.064] name <- restart$name [17:27:56.064] if (is.null(name)) [17:27:56.064] next [17:27:56.064] if (!grepl(pattern, name)) [17:27:56.064] next [17:27:56.064] invokeRestart(restart) [17:27:56.064] muffled <- TRUE [17:27:56.064] break [17:27:56.064] } [17:27:56.064] } [17:27:56.064] } [17:27:56.064] invisible(muffled) [17:27:56.064] } [17:27:56.064] muffleCondition(cond, pattern = "^muffle") [17:27:56.064] } [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] if (TRUE) { [17:27:56.064] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.064] { [17:27:56.064] inherits <- base::inherits [17:27:56.064] invokeRestart <- base::invokeRestart [17:27:56.064] is.null <- base::is.null [17:27:56.064] muffled <- FALSE [17:27:56.064] if (inherits(cond, "message")) { [17:27:56.064] muffled <- grepl(pattern, "muffleMessage") [17:27:56.064] if (muffled) [17:27:56.064] invokeRestart("muffleMessage") [17:27:56.064] } [17:27:56.064] else if (inherits(cond, "warning")) { [17:27:56.064] muffled <- grepl(pattern, "muffleWarning") [17:27:56.064] if (muffled) [17:27:56.064] invokeRestart("muffleWarning") [17:27:56.064] } [17:27:56.064] else if (inherits(cond, "condition")) { [17:27:56.064] if (!is.null(pattern)) { [17:27:56.064] computeRestarts <- base::computeRestarts [17:27:56.064] grepl <- base::grepl [17:27:56.064] restarts <- computeRestarts(cond) [17:27:56.064] for (restart in restarts) { [17:27:56.064] name <- restart$name [17:27:56.064] if (is.null(name)) [17:27:56.064] next [17:27:56.064] if (!grepl(pattern, name)) [17:27:56.064] next [17:27:56.064] invokeRestart(restart) [17:27:56.064] muffled <- TRUE [17:27:56.064] break [17:27:56.064] } [17:27:56.064] } [17:27:56.064] } [17:27:56.064] invisible(muffled) [17:27:56.064] } [17:27:56.064] muffleCondition(cond, pattern = "^muffle") [17:27:56.064] } [17:27:56.064] } [17:27:56.064] } [17:27:56.064] })) [17:27:56.064] }, error = function(ex) { [17:27:56.064] base::structure(base::list(value = NULL, visible = NULL, [17:27:56.064] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.064] ...future.rng), started = ...future.startTime, [17:27:56.064] finished = Sys.time(), session_uuid = NA_character_, [17:27:56.064] version = "1.8"), class = "FutureResult") [17:27:56.064] }, finally = { [17:27:56.064] if (!identical(...future.workdir, getwd())) [17:27:56.064] setwd(...future.workdir) [17:27:56.064] { [17:27:56.064] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:56.064] ...future.oldOptions$nwarnings <- NULL [17:27:56.064] } [17:27:56.064] base::options(...future.oldOptions) [17:27:56.064] if (.Platform$OS.type == "windows") { [17:27:56.064] old_names <- names(...future.oldEnvVars) [17:27:56.064] envs <- base::Sys.getenv() [17:27:56.064] names <- names(envs) [17:27:56.064] common <- intersect(names, old_names) [17:27:56.064] added <- setdiff(names, old_names) [17:27:56.064] removed <- setdiff(old_names, names) [17:27:56.064] changed <- common[...future.oldEnvVars[common] != [17:27:56.064] envs[common]] [17:27:56.064] NAMES <- toupper(changed) [17:27:56.064] args <- list() [17:27:56.064] for (kk in seq_along(NAMES)) { [17:27:56.064] name <- changed[[kk]] [17:27:56.064] NAME <- NAMES[[kk]] [17:27:56.064] if (name != NAME && is.element(NAME, old_names)) [17:27:56.064] next [17:27:56.064] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.064] } [17:27:56.064] NAMES <- toupper(added) [17:27:56.064] for (kk in seq_along(NAMES)) { [17:27:56.064] name <- added[[kk]] [17:27:56.064] NAME <- NAMES[[kk]] [17:27:56.064] if (name != NAME && is.element(NAME, old_names)) [17:27:56.064] next [17:27:56.064] args[[name]] <- "" [17:27:56.064] } [17:27:56.064] NAMES <- toupper(removed) [17:27:56.064] for (kk in seq_along(NAMES)) { [17:27:56.064] name <- removed[[kk]] [17:27:56.064] NAME <- NAMES[[kk]] [17:27:56.064] if (name != NAME && is.element(NAME, old_names)) [17:27:56.064] next [17:27:56.064] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.064] } [17:27:56.064] if (length(args) > 0) [17:27:56.064] base::do.call(base::Sys.setenv, args = args) [17:27:56.064] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:56.064] } [17:27:56.064] { [17:27:56.064] if (base::length(...future.futureOptionsAdded) > [17:27:56.064] 0L) { [17:27:56.064] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:56.064] base::names(opts) <- ...future.futureOptionsAdded [17:27:56.064] base::options(opts) [17:27:56.064] } [17:27:56.064] { [17:27:56.064] { [17:27:56.064] base::options(mc.cores = ...future.mc.cores.old) [17:27:56.064] NULL [17:27:56.064] } [17:27:56.064] options(future.plan = NULL) [17:27:56.064] if (is.na(NA_character_)) [17:27:56.064] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.064] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:56.064] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:56.064] .init = FALSE) [17:27:56.064] } [17:27:56.064] } [17:27:56.064] } [17:27:56.064] }) [17:27:56.064] if (TRUE) { [17:27:56.064] base::sink(type = "output", split = FALSE) [17:27:56.064] if (TRUE) { [17:27:56.064] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:56.064] } [17:27:56.064] else { [17:27:56.064] ...future.result["stdout"] <- base::list(NULL) [17:27:56.064] } [17:27:56.064] base::close(...future.stdout) [17:27:56.064] ...future.stdout <- NULL [17:27:56.064] } [17:27:56.064] ...future.result$conditions <- ...future.conditions [17:27:56.064] ...future.result$finished <- base::Sys.time() [17:27:56.064] ...future.result [17:27:56.064] } [17:27:56.069] MultisessionFuture started [17:27:56.070] - Launch lazy future ... done [17:27:56.070] run() for 'MultisessionFuture' ... done [17:27:56.084] receiveMessageFromWorker() for ClusterFuture ... [17:27:56.084] - Validating connection of MultisessionFuture [17:27:56.085] - received message: FutureResult [17:27:56.085] - Received FutureResult [17:27:56.085] - Erased future from FutureRegistry [17:27:56.087] result() for ClusterFuture ... [17:27:56.088] - result already collected: FutureResult [17:27:56.088] result() for ClusterFuture ... done [17:27:56.088] signalConditions() ... [17:27:56.088] - include = 'immediateCondition' [17:27:56.088] - exclude = [17:27:56.088] - resignal = FALSE [17:27:56.089] - Number of conditions: 1 [17:27:56.089] signalConditions() ... done [17:27:56.089] receiveMessageFromWorker() for ClusterFuture ... done [17:27:56.089] A MultisessionFuture was resolved [17:27:56.089] getGlobalsAndPackages() ... [17:27:56.089] Searching for globals... [17:27:56.090] - globals found: [2] 'list', 'stop' [17:27:56.090] Searching for globals ... DONE [17:27:56.091] Resolving globals: FALSE [17:27:56.091] [17:27:56.091] [17:27:56.091] getGlobalsAndPackages() ... DONE [17:27:56.092] run() for 'Future' ... [17:27:56.092] - state: 'created' [17:27:56.092] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:56.106] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:56.106] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:56.107] - Field: 'node' [17:27:56.107] - Field: 'label' [17:27:56.107] - Field: 'local' [17:27:56.107] - Field: 'owner' [17:27:56.107] - Field: 'envir' [17:27:56.107] - Field: 'workers' [17:27:56.108] - Field: 'packages' [17:27:56.108] - Field: 'gc' [17:27:56.108] - Field: 'conditions' [17:27:56.108] - Field: 'persistent' [17:27:56.108] - Field: 'expr' [17:27:56.108] - Field: 'uuid' [17:27:56.109] - Field: 'seed' [17:27:56.109] - Field: 'version' [17:27:56.109] - Field: 'result' [17:27:56.109] - Field: 'asynchronous' [17:27:56.109] - Field: 'calls' [17:27:56.109] - Field: 'globals' [17:27:56.110] - Field: 'stdout' [17:27:56.110] - Field: 'earlySignal' [17:27:56.110] - Field: 'lazy' [17:27:56.110] - Field: 'state' [17:27:56.110] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:56.111] - Launch lazy future ... [17:27:56.111] Packages needed by the future expression (n = 0): [17:27:56.111] Packages needed by future strategies (n = 0): [17:27:56.112] { [17:27:56.112] { [17:27:56.112] { [17:27:56.112] ...future.startTime <- base::Sys.time() [17:27:56.112] { [17:27:56.112] { [17:27:56.112] { [17:27:56.112] { [17:27:56.112] base::local({ [17:27:56.112] has_future <- base::requireNamespace("future", [17:27:56.112] quietly = TRUE) [17:27:56.112] if (has_future) { [17:27:56.112] ns <- base::getNamespace("future") [17:27:56.112] version <- ns[[".package"]][["version"]] [17:27:56.112] if (is.null(version)) [17:27:56.112] version <- utils::packageVersion("future") [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] version <- NULL [17:27:56.112] } [17:27:56.112] if (!has_future || version < "1.8.0") { [17:27:56.112] info <- base::c(r_version = base::gsub("R version ", [17:27:56.112] "", base::R.version$version.string), [17:27:56.112] platform = base::sprintf("%s (%s-bit)", [17:27:56.112] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:56.112] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:56.112] "release", "version")], collapse = " "), [17:27:56.112] hostname = base::Sys.info()[["nodename"]]) [17:27:56.112] info <- base::sprintf("%s: %s", base::names(info), [17:27:56.112] info) [17:27:56.112] info <- base::paste(info, collapse = "; ") [17:27:56.112] if (!has_future) { [17:27:56.112] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:56.112] info) [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:56.112] info, version) [17:27:56.112] } [17:27:56.112] base::stop(msg) [17:27:56.112] } [17:27:56.112] }) [17:27:56.112] } [17:27:56.112] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:56.112] base::options(mc.cores = 1L) [17:27:56.112] } [17:27:56.112] ...future.strategy.old <- future::plan("list") [17:27:56.112] options(future.plan = NULL) [17:27:56.112] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.112] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:56.112] } [17:27:56.112] ...future.workdir <- getwd() [17:27:56.112] } [17:27:56.112] ...future.oldOptions <- base::as.list(base::.Options) [17:27:56.112] ...future.oldEnvVars <- base::Sys.getenv() [17:27:56.112] } [17:27:56.112] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:56.112] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:56.112] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:56.112] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:56.112] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:56.112] future.stdout.windows.reencode = NULL, width = 80L) [17:27:56.112] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:56.112] base::names(...future.oldOptions)) [17:27:56.112] } [17:27:56.112] if (FALSE) { [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] if (TRUE) { [17:27:56.112] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:56.112] open = "w") [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:56.112] windows = "NUL", "/dev/null"), open = "w") [17:27:56.112] } [17:27:56.112] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:56.112] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:56.112] base::sink(type = "output", split = FALSE) [17:27:56.112] base::close(...future.stdout) [17:27:56.112] }, add = TRUE) [17:27:56.112] } [17:27:56.112] ...future.frame <- base::sys.nframe() [17:27:56.112] ...future.conditions <- base::list() [17:27:56.112] ...future.rng <- base::globalenv()$.Random.seed [17:27:56.112] if (FALSE) { [17:27:56.112] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:56.112] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:56.112] } [17:27:56.112] ...future.result <- base::tryCatch({ [17:27:56.112] base::withCallingHandlers({ [17:27:56.112] ...future.value <- base::withVisible(base::local({ [17:27:56.112] ...future.makeSendCondition <- base::local({ [17:27:56.112] sendCondition <- NULL [17:27:56.112] function(frame = 1L) { [17:27:56.112] if (is.function(sendCondition)) [17:27:56.112] return(sendCondition) [17:27:56.112] ns <- getNamespace("parallel") [17:27:56.112] if (exists("sendData", mode = "function", [17:27:56.112] envir = ns)) { [17:27:56.112] parallel_sendData <- get("sendData", mode = "function", [17:27:56.112] envir = ns) [17:27:56.112] envir <- sys.frame(frame) [17:27:56.112] master <- NULL [17:27:56.112] while (!identical(envir, .GlobalEnv) && [17:27:56.112] !identical(envir, emptyenv())) { [17:27:56.112] if (exists("master", mode = "list", envir = envir, [17:27:56.112] inherits = FALSE)) { [17:27:56.112] master <- get("master", mode = "list", [17:27:56.112] envir = envir, inherits = FALSE) [17:27:56.112] if (inherits(master, c("SOCKnode", [17:27:56.112] "SOCK0node"))) { [17:27:56.112] sendCondition <<- function(cond) { [17:27:56.112] data <- list(type = "VALUE", value = cond, [17:27:56.112] success = TRUE) [17:27:56.112] parallel_sendData(master, data) [17:27:56.112] } [17:27:56.112] return(sendCondition) [17:27:56.112] } [17:27:56.112] } [17:27:56.112] frame <- frame + 1L [17:27:56.112] envir <- sys.frame(frame) [17:27:56.112] } [17:27:56.112] } [17:27:56.112] sendCondition <<- function(cond) NULL [17:27:56.112] } [17:27:56.112] }) [17:27:56.112] withCallingHandlers({ [17:27:56.112] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:56.112] }, immediateCondition = function(cond) { [17:27:56.112] sendCondition <- ...future.makeSendCondition() [17:27:56.112] sendCondition(cond) [17:27:56.112] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.112] { [17:27:56.112] inherits <- base::inherits [17:27:56.112] invokeRestart <- base::invokeRestart [17:27:56.112] is.null <- base::is.null [17:27:56.112] muffled <- FALSE [17:27:56.112] if (inherits(cond, "message")) { [17:27:56.112] muffled <- grepl(pattern, "muffleMessage") [17:27:56.112] if (muffled) [17:27:56.112] invokeRestart("muffleMessage") [17:27:56.112] } [17:27:56.112] else if (inherits(cond, "warning")) { [17:27:56.112] muffled <- grepl(pattern, "muffleWarning") [17:27:56.112] if (muffled) [17:27:56.112] invokeRestart("muffleWarning") [17:27:56.112] } [17:27:56.112] else if (inherits(cond, "condition")) { [17:27:56.112] if (!is.null(pattern)) { [17:27:56.112] computeRestarts <- base::computeRestarts [17:27:56.112] grepl <- base::grepl [17:27:56.112] restarts <- computeRestarts(cond) [17:27:56.112] for (restart in restarts) { [17:27:56.112] name <- restart$name [17:27:56.112] if (is.null(name)) [17:27:56.112] next [17:27:56.112] if (!grepl(pattern, name)) [17:27:56.112] next [17:27:56.112] invokeRestart(restart) [17:27:56.112] muffled <- TRUE [17:27:56.112] break [17:27:56.112] } [17:27:56.112] } [17:27:56.112] } [17:27:56.112] invisible(muffled) [17:27:56.112] } [17:27:56.112] muffleCondition(cond) [17:27:56.112] }) [17:27:56.112] })) [17:27:56.112] future::FutureResult(value = ...future.value$value, [17:27:56.112] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.112] ...future.rng), globalenv = if (FALSE) [17:27:56.112] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:56.112] ...future.globalenv.names)) [17:27:56.112] else NULL, started = ...future.startTime, version = "1.8") [17:27:56.112] }, condition = base::local({ [17:27:56.112] c <- base::c [17:27:56.112] inherits <- base::inherits [17:27:56.112] invokeRestart <- base::invokeRestart [17:27:56.112] length <- base::length [17:27:56.112] list <- base::list [17:27:56.112] seq.int <- base::seq.int [17:27:56.112] signalCondition <- base::signalCondition [17:27:56.112] sys.calls <- base::sys.calls [17:27:56.112] `[[` <- base::`[[` [17:27:56.112] `+` <- base::`+` [17:27:56.112] `<<-` <- base::`<<-` [17:27:56.112] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:56.112] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:56.112] 3L)] [17:27:56.112] } [17:27:56.112] function(cond) { [17:27:56.112] is_error <- inherits(cond, "error") [17:27:56.112] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:56.112] NULL) [17:27:56.112] if (is_error) { [17:27:56.112] sessionInformation <- function() { [17:27:56.112] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:56.112] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:56.112] search = base::search(), system = base::Sys.info()) [17:27:56.112] } [17:27:56.112] ...future.conditions[[length(...future.conditions) + [17:27:56.112] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:56.112] cond$call), session = sessionInformation(), [17:27:56.112] timestamp = base::Sys.time(), signaled = 0L) [17:27:56.112] signalCondition(cond) [17:27:56.112] } [17:27:56.112] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:56.112] "immediateCondition"))) { [17:27:56.112] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:56.112] ...future.conditions[[length(...future.conditions) + [17:27:56.112] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:56.112] if (TRUE && !signal) { [17:27:56.112] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.112] { [17:27:56.112] inherits <- base::inherits [17:27:56.112] invokeRestart <- base::invokeRestart [17:27:56.112] is.null <- base::is.null [17:27:56.112] muffled <- FALSE [17:27:56.112] if (inherits(cond, "message")) { [17:27:56.112] muffled <- grepl(pattern, "muffleMessage") [17:27:56.112] if (muffled) [17:27:56.112] invokeRestart("muffleMessage") [17:27:56.112] } [17:27:56.112] else if (inherits(cond, "warning")) { [17:27:56.112] muffled <- grepl(pattern, "muffleWarning") [17:27:56.112] if (muffled) [17:27:56.112] invokeRestart("muffleWarning") [17:27:56.112] } [17:27:56.112] else if (inherits(cond, "condition")) { [17:27:56.112] if (!is.null(pattern)) { [17:27:56.112] computeRestarts <- base::computeRestarts [17:27:56.112] grepl <- base::grepl [17:27:56.112] restarts <- computeRestarts(cond) [17:27:56.112] for (restart in restarts) { [17:27:56.112] name <- restart$name [17:27:56.112] if (is.null(name)) [17:27:56.112] next [17:27:56.112] if (!grepl(pattern, name)) [17:27:56.112] next [17:27:56.112] invokeRestart(restart) [17:27:56.112] muffled <- TRUE [17:27:56.112] break [17:27:56.112] } [17:27:56.112] } [17:27:56.112] } [17:27:56.112] invisible(muffled) [17:27:56.112] } [17:27:56.112] muffleCondition(cond, pattern = "^muffle") [17:27:56.112] } [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] if (TRUE) { [17:27:56.112] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.112] { [17:27:56.112] inherits <- base::inherits [17:27:56.112] invokeRestart <- base::invokeRestart [17:27:56.112] is.null <- base::is.null [17:27:56.112] muffled <- FALSE [17:27:56.112] if (inherits(cond, "message")) { [17:27:56.112] muffled <- grepl(pattern, "muffleMessage") [17:27:56.112] if (muffled) [17:27:56.112] invokeRestart("muffleMessage") [17:27:56.112] } [17:27:56.112] else if (inherits(cond, "warning")) { [17:27:56.112] muffled <- grepl(pattern, "muffleWarning") [17:27:56.112] if (muffled) [17:27:56.112] invokeRestart("muffleWarning") [17:27:56.112] } [17:27:56.112] else if (inherits(cond, "condition")) { [17:27:56.112] if (!is.null(pattern)) { [17:27:56.112] computeRestarts <- base::computeRestarts [17:27:56.112] grepl <- base::grepl [17:27:56.112] restarts <- computeRestarts(cond) [17:27:56.112] for (restart in restarts) { [17:27:56.112] name <- restart$name [17:27:56.112] if (is.null(name)) [17:27:56.112] next [17:27:56.112] if (!grepl(pattern, name)) [17:27:56.112] next [17:27:56.112] invokeRestart(restart) [17:27:56.112] muffled <- TRUE [17:27:56.112] break [17:27:56.112] } [17:27:56.112] } [17:27:56.112] } [17:27:56.112] invisible(muffled) [17:27:56.112] } [17:27:56.112] muffleCondition(cond, pattern = "^muffle") [17:27:56.112] } [17:27:56.112] } [17:27:56.112] } [17:27:56.112] })) [17:27:56.112] }, error = function(ex) { [17:27:56.112] base::structure(base::list(value = NULL, visible = NULL, [17:27:56.112] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.112] ...future.rng), started = ...future.startTime, [17:27:56.112] finished = Sys.time(), session_uuid = NA_character_, [17:27:56.112] version = "1.8"), class = "FutureResult") [17:27:56.112] }, finally = { [17:27:56.112] if (!identical(...future.workdir, getwd())) [17:27:56.112] setwd(...future.workdir) [17:27:56.112] { [17:27:56.112] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:56.112] ...future.oldOptions$nwarnings <- NULL [17:27:56.112] } [17:27:56.112] base::options(...future.oldOptions) [17:27:56.112] if (.Platform$OS.type == "windows") { [17:27:56.112] old_names <- names(...future.oldEnvVars) [17:27:56.112] envs <- base::Sys.getenv() [17:27:56.112] names <- names(envs) [17:27:56.112] common <- intersect(names, old_names) [17:27:56.112] added <- setdiff(names, old_names) [17:27:56.112] removed <- setdiff(old_names, names) [17:27:56.112] changed <- common[...future.oldEnvVars[common] != [17:27:56.112] envs[common]] [17:27:56.112] NAMES <- toupper(changed) [17:27:56.112] args <- list() [17:27:56.112] for (kk in seq_along(NAMES)) { [17:27:56.112] name <- changed[[kk]] [17:27:56.112] NAME <- NAMES[[kk]] [17:27:56.112] if (name != NAME && is.element(NAME, old_names)) [17:27:56.112] next [17:27:56.112] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.112] } [17:27:56.112] NAMES <- toupper(added) [17:27:56.112] for (kk in seq_along(NAMES)) { [17:27:56.112] name <- added[[kk]] [17:27:56.112] NAME <- NAMES[[kk]] [17:27:56.112] if (name != NAME && is.element(NAME, old_names)) [17:27:56.112] next [17:27:56.112] args[[name]] <- "" [17:27:56.112] } [17:27:56.112] NAMES <- toupper(removed) [17:27:56.112] for (kk in seq_along(NAMES)) { [17:27:56.112] name <- removed[[kk]] [17:27:56.112] NAME <- NAMES[[kk]] [17:27:56.112] if (name != NAME && is.element(NAME, old_names)) [17:27:56.112] next [17:27:56.112] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.112] } [17:27:56.112] if (length(args) > 0) [17:27:56.112] base::do.call(base::Sys.setenv, args = args) [17:27:56.112] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:56.112] } [17:27:56.112] { [17:27:56.112] if (base::length(...future.futureOptionsAdded) > [17:27:56.112] 0L) { [17:27:56.112] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:56.112] base::names(opts) <- ...future.futureOptionsAdded [17:27:56.112] base::options(opts) [17:27:56.112] } [17:27:56.112] { [17:27:56.112] { [17:27:56.112] base::options(mc.cores = ...future.mc.cores.old) [17:27:56.112] NULL [17:27:56.112] } [17:27:56.112] options(future.plan = NULL) [17:27:56.112] if (is.na(NA_character_)) [17:27:56.112] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.112] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:56.112] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:56.112] .init = FALSE) [17:27:56.112] } [17:27:56.112] } [17:27:56.112] } [17:27:56.112] }) [17:27:56.112] if (TRUE) { [17:27:56.112] base::sink(type = "output", split = FALSE) [17:27:56.112] if (TRUE) { [17:27:56.112] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:56.112] } [17:27:56.112] else { [17:27:56.112] ...future.result["stdout"] <- base::list(NULL) [17:27:56.112] } [17:27:56.112] base::close(...future.stdout) [17:27:56.112] ...future.stdout <- NULL [17:27:56.112] } [17:27:56.112] ...future.result$conditions <- ...future.conditions [17:27:56.112] ...future.result$finished <- base::Sys.time() [17:27:56.112] ...future.result [17:27:56.112] } [17:27:56.117] MultisessionFuture started [17:27:56.117] - Launch lazy future ... done [17:27:56.117] run() for 'MultisessionFuture' ... done [17:27:56.131] receiveMessageFromWorker() for ClusterFuture ... [17:27:56.131] - Validating connection of MultisessionFuture [17:27:56.132] - received message: FutureResult [17:27:56.132] - Received FutureResult [17:27:56.132] - Erased future from FutureRegistry [17:27:56.133] result() for ClusterFuture ... [17:27:56.133] - result already collected: FutureResult [17:27:56.133] result() for ClusterFuture ... done [17:27:56.133] signalConditions() ... [17:27:56.133] - include = 'immediateCondition' [17:27:56.133] - exclude = [17:27:56.133] - resignal = FALSE [17:27:56.134] - Number of conditions: 1 [17:27:56.134] signalConditions() ... done [17:27:56.134] receiveMessageFromWorker() for ClusterFuture ... done [17:27:56.134] A MultisessionFuture was resolved - result = TRUE, recursive = FALSE ... DONE - result = TRUE, recursive = TRUE ... [17:27:56.134] getGlobalsAndPackages() ... [17:27:56.135] Searching for globals... [17:27:56.136] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:56.136] Searching for globals ... DONE [17:27:56.136] Resolving globals: FALSE [17:27:56.137] [17:27:56.137] [17:27:56.137] getGlobalsAndPackages() ... DONE [17:27:56.137] run() for 'Future' ... [17:27:56.138] - state: 'created' [17:27:56.138] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:56.152] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:56.152] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:56.152] - Field: 'node' [17:27:56.152] - Field: 'label' [17:27:56.152] - Field: 'local' [17:27:56.153] - Field: 'owner' [17:27:56.153] - Field: 'envir' [17:27:56.153] - Field: 'workers' [17:27:56.153] - Field: 'packages' [17:27:56.153] - Field: 'gc' [17:27:56.154] - Field: 'conditions' [17:27:56.154] - Field: 'persistent' [17:27:56.154] - Field: 'expr' [17:27:56.154] - Field: 'uuid' [17:27:56.154] - Field: 'seed' [17:27:56.154] - Field: 'version' [17:27:56.155] - Field: 'result' [17:27:56.155] - Field: 'asynchronous' [17:27:56.155] - Field: 'calls' [17:27:56.155] - Field: 'globals' [17:27:56.155] - Field: 'stdout' [17:27:56.155] - Field: 'earlySignal' [17:27:56.156] - Field: 'lazy' [17:27:56.156] - Field: 'state' [17:27:56.156] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:56.156] - Launch lazy future ... [17:27:56.156] Packages needed by the future expression (n = 0): [17:27:56.157] Packages needed by future strategies (n = 0): [17:27:56.157] { [17:27:56.157] { [17:27:56.157] { [17:27:56.157] ...future.startTime <- base::Sys.time() [17:27:56.157] { [17:27:56.157] { [17:27:56.157] { [17:27:56.157] { [17:27:56.157] base::local({ [17:27:56.157] has_future <- base::requireNamespace("future", [17:27:56.157] quietly = TRUE) [17:27:56.157] if (has_future) { [17:27:56.157] ns <- base::getNamespace("future") [17:27:56.157] version <- ns[[".package"]][["version"]] [17:27:56.157] if (is.null(version)) [17:27:56.157] version <- utils::packageVersion("future") [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] version <- NULL [17:27:56.157] } [17:27:56.157] if (!has_future || version < "1.8.0") { [17:27:56.157] info <- base::c(r_version = base::gsub("R version ", [17:27:56.157] "", base::R.version$version.string), [17:27:56.157] platform = base::sprintf("%s (%s-bit)", [17:27:56.157] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:56.157] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:56.157] "release", "version")], collapse = " "), [17:27:56.157] hostname = base::Sys.info()[["nodename"]]) [17:27:56.157] info <- base::sprintf("%s: %s", base::names(info), [17:27:56.157] info) [17:27:56.157] info <- base::paste(info, collapse = "; ") [17:27:56.157] if (!has_future) { [17:27:56.157] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:56.157] info) [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:56.157] info, version) [17:27:56.157] } [17:27:56.157] base::stop(msg) [17:27:56.157] } [17:27:56.157] }) [17:27:56.157] } [17:27:56.157] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:56.157] base::options(mc.cores = 1L) [17:27:56.157] } [17:27:56.157] ...future.strategy.old <- future::plan("list") [17:27:56.157] options(future.plan = NULL) [17:27:56.157] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.157] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:56.157] } [17:27:56.157] ...future.workdir <- getwd() [17:27:56.157] } [17:27:56.157] ...future.oldOptions <- base::as.list(base::.Options) [17:27:56.157] ...future.oldEnvVars <- base::Sys.getenv() [17:27:56.157] } [17:27:56.157] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:56.157] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:56.157] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:56.157] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:56.157] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:56.157] future.stdout.windows.reencode = NULL, width = 80L) [17:27:56.157] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:56.157] base::names(...future.oldOptions)) [17:27:56.157] } [17:27:56.157] if (FALSE) { [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] if (TRUE) { [17:27:56.157] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:56.157] open = "w") [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:56.157] windows = "NUL", "/dev/null"), open = "w") [17:27:56.157] } [17:27:56.157] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:56.157] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:56.157] base::sink(type = "output", split = FALSE) [17:27:56.157] base::close(...future.stdout) [17:27:56.157] }, add = TRUE) [17:27:56.157] } [17:27:56.157] ...future.frame <- base::sys.nframe() [17:27:56.157] ...future.conditions <- base::list() [17:27:56.157] ...future.rng <- base::globalenv()$.Random.seed [17:27:56.157] if (FALSE) { [17:27:56.157] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:56.157] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:56.157] } [17:27:56.157] ...future.result <- base::tryCatch({ [17:27:56.157] base::withCallingHandlers({ [17:27:56.157] ...future.value <- base::withVisible(base::local({ [17:27:56.157] ...future.makeSendCondition <- base::local({ [17:27:56.157] sendCondition <- NULL [17:27:56.157] function(frame = 1L) { [17:27:56.157] if (is.function(sendCondition)) [17:27:56.157] return(sendCondition) [17:27:56.157] ns <- getNamespace("parallel") [17:27:56.157] if (exists("sendData", mode = "function", [17:27:56.157] envir = ns)) { [17:27:56.157] parallel_sendData <- get("sendData", mode = "function", [17:27:56.157] envir = ns) [17:27:56.157] envir <- sys.frame(frame) [17:27:56.157] master <- NULL [17:27:56.157] while (!identical(envir, .GlobalEnv) && [17:27:56.157] !identical(envir, emptyenv())) { [17:27:56.157] if (exists("master", mode = "list", envir = envir, [17:27:56.157] inherits = FALSE)) { [17:27:56.157] master <- get("master", mode = "list", [17:27:56.157] envir = envir, inherits = FALSE) [17:27:56.157] if (inherits(master, c("SOCKnode", [17:27:56.157] "SOCK0node"))) { [17:27:56.157] sendCondition <<- function(cond) { [17:27:56.157] data <- list(type = "VALUE", value = cond, [17:27:56.157] success = TRUE) [17:27:56.157] parallel_sendData(master, data) [17:27:56.157] } [17:27:56.157] return(sendCondition) [17:27:56.157] } [17:27:56.157] } [17:27:56.157] frame <- frame + 1L [17:27:56.157] envir <- sys.frame(frame) [17:27:56.157] } [17:27:56.157] } [17:27:56.157] sendCondition <<- function(cond) NULL [17:27:56.157] } [17:27:56.157] }) [17:27:56.157] withCallingHandlers({ [17:27:56.157] { [17:27:56.157] Sys.sleep(0.5) [17:27:56.157] list(a = 1, b = 42L) [17:27:56.157] } [17:27:56.157] }, immediateCondition = function(cond) { [17:27:56.157] sendCondition <- ...future.makeSendCondition() [17:27:56.157] sendCondition(cond) [17:27:56.157] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.157] { [17:27:56.157] inherits <- base::inherits [17:27:56.157] invokeRestart <- base::invokeRestart [17:27:56.157] is.null <- base::is.null [17:27:56.157] muffled <- FALSE [17:27:56.157] if (inherits(cond, "message")) { [17:27:56.157] muffled <- grepl(pattern, "muffleMessage") [17:27:56.157] if (muffled) [17:27:56.157] invokeRestart("muffleMessage") [17:27:56.157] } [17:27:56.157] else if (inherits(cond, "warning")) { [17:27:56.157] muffled <- grepl(pattern, "muffleWarning") [17:27:56.157] if (muffled) [17:27:56.157] invokeRestart("muffleWarning") [17:27:56.157] } [17:27:56.157] else if (inherits(cond, "condition")) { [17:27:56.157] if (!is.null(pattern)) { [17:27:56.157] computeRestarts <- base::computeRestarts [17:27:56.157] grepl <- base::grepl [17:27:56.157] restarts <- computeRestarts(cond) [17:27:56.157] for (restart in restarts) { [17:27:56.157] name <- restart$name [17:27:56.157] if (is.null(name)) [17:27:56.157] next [17:27:56.157] if (!grepl(pattern, name)) [17:27:56.157] next [17:27:56.157] invokeRestart(restart) [17:27:56.157] muffled <- TRUE [17:27:56.157] break [17:27:56.157] } [17:27:56.157] } [17:27:56.157] } [17:27:56.157] invisible(muffled) [17:27:56.157] } [17:27:56.157] muffleCondition(cond) [17:27:56.157] }) [17:27:56.157] })) [17:27:56.157] future::FutureResult(value = ...future.value$value, [17:27:56.157] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.157] ...future.rng), globalenv = if (FALSE) [17:27:56.157] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:56.157] ...future.globalenv.names)) [17:27:56.157] else NULL, started = ...future.startTime, version = "1.8") [17:27:56.157] }, condition = base::local({ [17:27:56.157] c <- base::c [17:27:56.157] inherits <- base::inherits [17:27:56.157] invokeRestart <- base::invokeRestart [17:27:56.157] length <- base::length [17:27:56.157] list <- base::list [17:27:56.157] seq.int <- base::seq.int [17:27:56.157] signalCondition <- base::signalCondition [17:27:56.157] sys.calls <- base::sys.calls [17:27:56.157] `[[` <- base::`[[` [17:27:56.157] `+` <- base::`+` [17:27:56.157] `<<-` <- base::`<<-` [17:27:56.157] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:56.157] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:56.157] 3L)] [17:27:56.157] } [17:27:56.157] function(cond) { [17:27:56.157] is_error <- inherits(cond, "error") [17:27:56.157] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:56.157] NULL) [17:27:56.157] if (is_error) { [17:27:56.157] sessionInformation <- function() { [17:27:56.157] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:56.157] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:56.157] search = base::search(), system = base::Sys.info()) [17:27:56.157] } [17:27:56.157] ...future.conditions[[length(...future.conditions) + [17:27:56.157] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:56.157] cond$call), session = sessionInformation(), [17:27:56.157] timestamp = base::Sys.time(), signaled = 0L) [17:27:56.157] signalCondition(cond) [17:27:56.157] } [17:27:56.157] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:56.157] "immediateCondition"))) { [17:27:56.157] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:56.157] ...future.conditions[[length(...future.conditions) + [17:27:56.157] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:56.157] if (TRUE && !signal) { [17:27:56.157] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.157] { [17:27:56.157] inherits <- base::inherits [17:27:56.157] invokeRestart <- base::invokeRestart [17:27:56.157] is.null <- base::is.null [17:27:56.157] muffled <- FALSE [17:27:56.157] if (inherits(cond, "message")) { [17:27:56.157] muffled <- grepl(pattern, "muffleMessage") [17:27:56.157] if (muffled) [17:27:56.157] invokeRestart("muffleMessage") [17:27:56.157] } [17:27:56.157] else if (inherits(cond, "warning")) { [17:27:56.157] muffled <- grepl(pattern, "muffleWarning") [17:27:56.157] if (muffled) [17:27:56.157] invokeRestart("muffleWarning") [17:27:56.157] } [17:27:56.157] else if (inherits(cond, "condition")) { [17:27:56.157] if (!is.null(pattern)) { [17:27:56.157] computeRestarts <- base::computeRestarts [17:27:56.157] grepl <- base::grepl [17:27:56.157] restarts <- computeRestarts(cond) [17:27:56.157] for (restart in restarts) { [17:27:56.157] name <- restart$name [17:27:56.157] if (is.null(name)) [17:27:56.157] next [17:27:56.157] if (!grepl(pattern, name)) [17:27:56.157] next [17:27:56.157] invokeRestart(restart) [17:27:56.157] muffled <- TRUE [17:27:56.157] break [17:27:56.157] } [17:27:56.157] } [17:27:56.157] } [17:27:56.157] invisible(muffled) [17:27:56.157] } [17:27:56.157] muffleCondition(cond, pattern = "^muffle") [17:27:56.157] } [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] if (TRUE) { [17:27:56.157] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.157] { [17:27:56.157] inherits <- base::inherits [17:27:56.157] invokeRestart <- base::invokeRestart [17:27:56.157] is.null <- base::is.null [17:27:56.157] muffled <- FALSE [17:27:56.157] if (inherits(cond, "message")) { [17:27:56.157] muffled <- grepl(pattern, "muffleMessage") [17:27:56.157] if (muffled) [17:27:56.157] invokeRestart("muffleMessage") [17:27:56.157] } [17:27:56.157] else if (inherits(cond, "warning")) { [17:27:56.157] muffled <- grepl(pattern, "muffleWarning") [17:27:56.157] if (muffled) [17:27:56.157] invokeRestart("muffleWarning") [17:27:56.157] } [17:27:56.157] else if (inherits(cond, "condition")) { [17:27:56.157] if (!is.null(pattern)) { [17:27:56.157] computeRestarts <- base::computeRestarts [17:27:56.157] grepl <- base::grepl [17:27:56.157] restarts <- computeRestarts(cond) [17:27:56.157] for (restart in restarts) { [17:27:56.157] name <- restart$name [17:27:56.157] if (is.null(name)) [17:27:56.157] next [17:27:56.157] if (!grepl(pattern, name)) [17:27:56.157] next [17:27:56.157] invokeRestart(restart) [17:27:56.157] muffled <- TRUE [17:27:56.157] break [17:27:56.157] } [17:27:56.157] } [17:27:56.157] } [17:27:56.157] invisible(muffled) [17:27:56.157] } [17:27:56.157] muffleCondition(cond, pattern = "^muffle") [17:27:56.157] } [17:27:56.157] } [17:27:56.157] } [17:27:56.157] })) [17:27:56.157] }, error = function(ex) { [17:27:56.157] base::structure(base::list(value = NULL, visible = NULL, [17:27:56.157] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.157] ...future.rng), started = ...future.startTime, [17:27:56.157] finished = Sys.time(), session_uuid = NA_character_, [17:27:56.157] version = "1.8"), class = "FutureResult") [17:27:56.157] }, finally = { [17:27:56.157] if (!identical(...future.workdir, getwd())) [17:27:56.157] setwd(...future.workdir) [17:27:56.157] { [17:27:56.157] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:56.157] ...future.oldOptions$nwarnings <- NULL [17:27:56.157] } [17:27:56.157] base::options(...future.oldOptions) [17:27:56.157] if (.Platform$OS.type == "windows") { [17:27:56.157] old_names <- names(...future.oldEnvVars) [17:27:56.157] envs <- base::Sys.getenv() [17:27:56.157] names <- names(envs) [17:27:56.157] common <- intersect(names, old_names) [17:27:56.157] added <- setdiff(names, old_names) [17:27:56.157] removed <- setdiff(old_names, names) [17:27:56.157] changed <- common[...future.oldEnvVars[common] != [17:27:56.157] envs[common]] [17:27:56.157] NAMES <- toupper(changed) [17:27:56.157] args <- list() [17:27:56.157] for (kk in seq_along(NAMES)) { [17:27:56.157] name <- changed[[kk]] [17:27:56.157] NAME <- NAMES[[kk]] [17:27:56.157] if (name != NAME && is.element(NAME, old_names)) [17:27:56.157] next [17:27:56.157] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.157] } [17:27:56.157] NAMES <- toupper(added) [17:27:56.157] for (kk in seq_along(NAMES)) { [17:27:56.157] name <- added[[kk]] [17:27:56.157] NAME <- NAMES[[kk]] [17:27:56.157] if (name != NAME && is.element(NAME, old_names)) [17:27:56.157] next [17:27:56.157] args[[name]] <- "" [17:27:56.157] } [17:27:56.157] NAMES <- toupper(removed) [17:27:56.157] for (kk in seq_along(NAMES)) { [17:27:56.157] name <- removed[[kk]] [17:27:56.157] NAME <- NAMES[[kk]] [17:27:56.157] if (name != NAME && is.element(NAME, old_names)) [17:27:56.157] next [17:27:56.157] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.157] } [17:27:56.157] if (length(args) > 0) [17:27:56.157] base::do.call(base::Sys.setenv, args = args) [17:27:56.157] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:56.157] } [17:27:56.157] { [17:27:56.157] if (base::length(...future.futureOptionsAdded) > [17:27:56.157] 0L) { [17:27:56.157] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:56.157] base::names(opts) <- ...future.futureOptionsAdded [17:27:56.157] base::options(opts) [17:27:56.157] } [17:27:56.157] { [17:27:56.157] { [17:27:56.157] base::options(mc.cores = ...future.mc.cores.old) [17:27:56.157] NULL [17:27:56.157] } [17:27:56.157] options(future.plan = NULL) [17:27:56.157] if (is.na(NA_character_)) [17:27:56.157] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.157] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:56.157] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:56.157] .init = FALSE) [17:27:56.157] } [17:27:56.157] } [17:27:56.157] } [17:27:56.157] }) [17:27:56.157] if (TRUE) { [17:27:56.157] base::sink(type = "output", split = FALSE) [17:27:56.157] if (TRUE) { [17:27:56.157] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:56.157] } [17:27:56.157] else { [17:27:56.157] ...future.result["stdout"] <- base::list(NULL) [17:27:56.157] } [17:27:56.157] base::close(...future.stdout) [17:27:56.157] ...future.stdout <- NULL [17:27:56.157] } [17:27:56.157] ...future.result$conditions <- ...future.conditions [17:27:56.157] ...future.result$finished <- base::Sys.time() [17:27:56.157] ...future.result [17:27:56.157] } [17:27:56.163] MultisessionFuture started [17:27:56.163] - Launch lazy future ... done [17:27:56.163] run() for 'MultisessionFuture' ... done [17:27:56.683] receiveMessageFromWorker() for ClusterFuture ... [17:27:56.684] - Validating connection of MultisessionFuture [17:27:56.684] - received message: FutureResult [17:27:56.684] - Received FutureResult [17:27:56.684] - Erased future from FutureRegistry [17:27:56.684] result() for ClusterFuture ... [17:27:56.685] - result already collected: FutureResult [17:27:56.685] result() for ClusterFuture ... done [17:27:56.685] receiveMessageFromWorker() for ClusterFuture ... done [17:27:56.685] resolve() on list ... [17:27:56.685] recursive: 98 [17:27:56.685] length: 2 [17:27:56.686] elements: 'a', 'b' [17:27:56.686] length: 1 (resolved future 1) [17:27:56.686] length: 0 (resolved future 2) [17:27:56.686] resolve() on list ... DONE [17:27:56.686] A MultisessionFuture was resolved (and resolved itself) [17:27:56.686] getGlobalsAndPackages() ... [17:27:56.687] Searching for globals... [17:27:56.688] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:56.688] Searching for globals ... DONE [17:27:56.688] Resolving globals: FALSE [17:27:56.689] [17:27:56.689] [17:27:56.689] getGlobalsAndPackages() ... DONE [17:27:56.689] run() for 'Future' ... [17:27:56.690] - state: 'created' [17:27:56.690] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:56.703] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:56.704] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:56.704] - Field: 'node' [17:27:56.704] - Field: 'label' [17:27:56.704] - Field: 'local' [17:27:56.704] - Field: 'owner' [17:27:56.704] - Field: 'envir' [17:27:56.705] - Field: 'workers' [17:27:56.705] - Field: 'packages' [17:27:56.705] - Field: 'gc' [17:27:56.705] - Field: 'conditions' [17:27:56.705] - Field: 'persistent' [17:27:56.706] - Field: 'expr' [17:27:56.706] - Field: 'uuid' [17:27:56.706] - Field: 'seed' [17:27:56.706] - Field: 'version' [17:27:56.706] - Field: 'result' [17:27:56.706] - Field: 'asynchronous' [17:27:56.707] - Field: 'calls' [17:27:56.707] - Field: 'globals' [17:27:56.707] - Field: 'stdout' [17:27:56.707] - Field: 'earlySignal' [17:27:56.707] - Field: 'lazy' [17:27:56.707] - Field: 'state' [17:27:56.708] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:56.708] - Launch lazy future ... [17:27:56.708] Packages needed by the future expression (n = 0): [17:27:56.708] Packages needed by future strategies (n = 0): [17:27:56.709] { [17:27:56.709] { [17:27:56.709] { [17:27:56.709] ...future.startTime <- base::Sys.time() [17:27:56.709] { [17:27:56.709] { [17:27:56.709] { [17:27:56.709] { [17:27:56.709] base::local({ [17:27:56.709] has_future <- base::requireNamespace("future", [17:27:56.709] quietly = TRUE) [17:27:56.709] if (has_future) { [17:27:56.709] ns <- base::getNamespace("future") [17:27:56.709] version <- ns[[".package"]][["version"]] [17:27:56.709] if (is.null(version)) [17:27:56.709] version <- utils::packageVersion("future") [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] version <- NULL [17:27:56.709] } [17:27:56.709] if (!has_future || version < "1.8.0") { [17:27:56.709] info <- base::c(r_version = base::gsub("R version ", [17:27:56.709] "", base::R.version$version.string), [17:27:56.709] platform = base::sprintf("%s (%s-bit)", [17:27:56.709] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:56.709] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:56.709] "release", "version")], collapse = " "), [17:27:56.709] hostname = base::Sys.info()[["nodename"]]) [17:27:56.709] info <- base::sprintf("%s: %s", base::names(info), [17:27:56.709] info) [17:27:56.709] info <- base::paste(info, collapse = "; ") [17:27:56.709] if (!has_future) { [17:27:56.709] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:56.709] info) [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:56.709] info, version) [17:27:56.709] } [17:27:56.709] base::stop(msg) [17:27:56.709] } [17:27:56.709] }) [17:27:56.709] } [17:27:56.709] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:56.709] base::options(mc.cores = 1L) [17:27:56.709] } [17:27:56.709] ...future.strategy.old <- future::plan("list") [17:27:56.709] options(future.plan = NULL) [17:27:56.709] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.709] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:56.709] } [17:27:56.709] ...future.workdir <- getwd() [17:27:56.709] } [17:27:56.709] ...future.oldOptions <- base::as.list(base::.Options) [17:27:56.709] ...future.oldEnvVars <- base::Sys.getenv() [17:27:56.709] } [17:27:56.709] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:56.709] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:56.709] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:56.709] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:56.709] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:56.709] future.stdout.windows.reencode = NULL, width = 80L) [17:27:56.709] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:56.709] base::names(...future.oldOptions)) [17:27:56.709] } [17:27:56.709] if (FALSE) { [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] if (TRUE) { [17:27:56.709] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:56.709] open = "w") [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:56.709] windows = "NUL", "/dev/null"), open = "w") [17:27:56.709] } [17:27:56.709] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:56.709] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:56.709] base::sink(type = "output", split = FALSE) [17:27:56.709] base::close(...future.stdout) [17:27:56.709] }, add = TRUE) [17:27:56.709] } [17:27:56.709] ...future.frame <- base::sys.nframe() [17:27:56.709] ...future.conditions <- base::list() [17:27:56.709] ...future.rng <- base::globalenv()$.Random.seed [17:27:56.709] if (FALSE) { [17:27:56.709] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:56.709] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:56.709] } [17:27:56.709] ...future.result <- base::tryCatch({ [17:27:56.709] base::withCallingHandlers({ [17:27:56.709] ...future.value <- base::withVisible(base::local({ [17:27:56.709] ...future.makeSendCondition <- base::local({ [17:27:56.709] sendCondition <- NULL [17:27:56.709] function(frame = 1L) { [17:27:56.709] if (is.function(sendCondition)) [17:27:56.709] return(sendCondition) [17:27:56.709] ns <- getNamespace("parallel") [17:27:56.709] if (exists("sendData", mode = "function", [17:27:56.709] envir = ns)) { [17:27:56.709] parallel_sendData <- get("sendData", mode = "function", [17:27:56.709] envir = ns) [17:27:56.709] envir <- sys.frame(frame) [17:27:56.709] master <- NULL [17:27:56.709] while (!identical(envir, .GlobalEnv) && [17:27:56.709] !identical(envir, emptyenv())) { [17:27:56.709] if (exists("master", mode = "list", envir = envir, [17:27:56.709] inherits = FALSE)) { [17:27:56.709] master <- get("master", mode = "list", [17:27:56.709] envir = envir, inherits = FALSE) [17:27:56.709] if (inherits(master, c("SOCKnode", [17:27:56.709] "SOCK0node"))) { [17:27:56.709] sendCondition <<- function(cond) { [17:27:56.709] data <- list(type = "VALUE", value = cond, [17:27:56.709] success = TRUE) [17:27:56.709] parallel_sendData(master, data) [17:27:56.709] } [17:27:56.709] return(sendCondition) [17:27:56.709] } [17:27:56.709] } [17:27:56.709] frame <- frame + 1L [17:27:56.709] envir <- sys.frame(frame) [17:27:56.709] } [17:27:56.709] } [17:27:56.709] sendCondition <<- function(cond) NULL [17:27:56.709] } [17:27:56.709] }) [17:27:56.709] withCallingHandlers({ [17:27:56.709] { [17:27:56.709] Sys.sleep(0.5) [17:27:56.709] list(a = 1, b = 42L) [17:27:56.709] } [17:27:56.709] }, immediateCondition = function(cond) { [17:27:56.709] sendCondition <- ...future.makeSendCondition() [17:27:56.709] sendCondition(cond) [17:27:56.709] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.709] { [17:27:56.709] inherits <- base::inherits [17:27:56.709] invokeRestart <- base::invokeRestart [17:27:56.709] is.null <- base::is.null [17:27:56.709] muffled <- FALSE [17:27:56.709] if (inherits(cond, "message")) { [17:27:56.709] muffled <- grepl(pattern, "muffleMessage") [17:27:56.709] if (muffled) [17:27:56.709] invokeRestart("muffleMessage") [17:27:56.709] } [17:27:56.709] else if (inherits(cond, "warning")) { [17:27:56.709] muffled <- grepl(pattern, "muffleWarning") [17:27:56.709] if (muffled) [17:27:56.709] invokeRestart("muffleWarning") [17:27:56.709] } [17:27:56.709] else if (inherits(cond, "condition")) { [17:27:56.709] if (!is.null(pattern)) { [17:27:56.709] computeRestarts <- base::computeRestarts [17:27:56.709] grepl <- base::grepl [17:27:56.709] restarts <- computeRestarts(cond) [17:27:56.709] for (restart in restarts) { [17:27:56.709] name <- restart$name [17:27:56.709] if (is.null(name)) [17:27:56.709] next [17:27:56.709] if (!grepl(pattern, name)) [17:27:56.709] next [17:27:56.709] invokeRestart(restart) [17:27:56.709] muffled <- TRUE [17:27:56.709] break [17:27:56.709] } [17:27:56.709] } [17:27:56.709] } [17:27:56.709] invisible(muffled) [17:27:56.709] } [17:27:56.709] muffleCondition(cond) [17:27:56.709] }) [17:27:56.709] })) [17:27:56.709] future::FutureResult(value = ...future.value$value, [17:27:56.709] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.709] ...future.rng), globalenv = if (FALSE) [17:27:56.709] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:56.709] ...future.globalenv.names)) [17:27:56.709] else NULL, started = ...future.startTime, version = "1.8") [17:27:56.709] }, condition = base::local({ [17:27:56.709] c <- base::c [17:27:56.709] inherits <- base::inherits [17:27:56.709] invokeRestart <- base::invokeRestart [17:27:56.709] length <- base::length [17:27:56.709] list <- base::list [17:27:56.709] seq.int <- base::seq.int [17:27:56.709] signalCondition <- base::signalCondition [17:27:56.709] sys.calls <- base::sys.calls [17:27:56.709] `[[` <- base::`[[` [17:27:56.709] `+` <- base::`+` [17:27:56.709] `<<-` <- base::`<<-` [17:27:56.709] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:56.709] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:56.709] 3L)] [17:27:56.709] } [17:27:56.709] function(cond) { [17:27:56.709] is_error <- inherits(cond, "error") [17:27:56.709] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:56.709] NULL) [17:27:56.709] if (is_error) { [17:27:56.709] sessionInformation <- function() { [17:27:56.709] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:56.709] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:56.709] search = base::search(), system = base::Sys.info()) [17:27:56.709] } [17:27:56.709] ...future.conditions[[length(...future.conditions) + [17:27:56.709] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:56.709] cond$call), session = sessionInformation(), [17:27:56.709] timestamp = base::Sys.time(), signaled = 0L) [17:27:56.709] signalCondition(cond) [17:27:56.709] } [17:27:56.709] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:56.709] "immediateCondition"))) { [17:27:56.709] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:56.709] ...future.conditions[[length(...future.conditions) + [17:27:56.709] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:56.709] if (TRUE && !signal) { [17:27:56.709] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.709] { [17:27:56.709] inherits <- base::inherits [17:27:56.709] invokeRestart <- base::invokeRestart [17:27:56.709] is.null <- base::is.null [17:27:56.709] muffled <- FALSE [17:27:56.709] if (inherits(cond, "message")) { [17:27:56.709] muffled <- grepl(pattern, "muffleMessage") [17:27:56.709] if (muffled) [17:27:56.709] invokeRestart("muffleMessage") [17:27:56.709] } [17:27:56.709] else if (inherits(cond, "warning")) { [17:27:56.709] muffled <- grepl(pattern, "muffleWarning") [17:27:56.709] if (muffled) [17:27:56.709] invokeRestart("muffleWarning") [17:27:56.709] } [17:27:56.709] else if (inherits(cond, "condition")) { [17:27:56.709] if (!is.null(pattern)) { [17:27:56.709] computeRestarts <- base::computeRestarts [17:27:56.709] grepl <- base::grepl [17:27:56.709] restarts <- computeRestarts(cond) [17:27:56.709] for (restart in restarts) { [17:27:56.709] name <- restart$name [17:27:56.709] if (is.null(name)) [17:27:56.709] next [17:27:56.709] if (!grepl(pattern, name)) [17:27:56.709] next [17:27:56.709] invokeRestart(restart) [17:27:56.709] muffled <- TRUE [17:27:56.709] break [17:27:56.709] } [17:27:56.709] } [17:27:56.709] } [17:27:56.709] invisible(muffled) [17:27:56.709] } [17:27:56.709] muffleCondition(cond, pattern = "^muffle") [17:27:56.709] } [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] if (TRUE) { [17:27:56.709] muffleCondition <- function (cond, pattern = "^muffle") [17:27:56.709] { [17:27:56.709] inherits <- base::inherits [17:27:56.709] invokeRestart <- base::invokeRestart [17:27:56.709] is.null <- base::is.null [17:27:56.709] muffled <- FALSE [17:27:56.709] if (inherits(cond, "message")) { [17:27:56.709] muffled <- grepl(pattern, "muffleMessage") [17:27:56.709] if (muffled) [17:27:56.709] invokeRestart("muffleMessage") [17:27:56.709] } [17:27:56.709] else if (inherits(cond, "warning")) { [17:27:56.709] muffled <- grepl(pattern, "muffleWarning") [17:27:56.709] if (muffled) [17:27:56.709] invokeRestart("muffleWarning") [17:27:56.709] } [17:27:56.709] else if (inherits(cond, "condition")) { [17:27:56.709] if (!is.null(pattern)) { [17:27:56.709] computeRestarts <- base::computeRestarts [17:27:56.709] grepl <- base::grepl [17:27:56.709] restarts <- computeRestarts(cond) [17:27:56.709] for (restart in restarts) { [17:27:56.709] name <- restart$name [17:27:56.709] if (is.null(name)) [17:27:56.709] next [17:27:56.709] if (!grepl(pattern, name)) [17:27:56.709] next [17:27:56.709] invokeRestart(restart) [17:27:56.709] muffled <- TRUE [17:27:56.709] break [17:27:56.709] } [17:27:56.709] } [17:27:56.709] } [17:27:56.709] invisible(muffled) [17:27:56.709] } [17:27:56.709] muffleCondition(cond, pattern = "^muffle") [17:27:56.709] } [17:27:56.709] } [17:27:56.709] } [17:27:56.709] })) [17:27:56.709] }, error = function(ex) { [17:27:56.709] base::structure(base::list(value = NULL, visible = NULL, [17:27:56.709] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:56.709] ...future.rng), started = ...future.startTime, [17:27:56.709] finished = Sys.time(), session_uuid = NA_character_, [17:27:56.709] version = "1.8"), class = "FutureResult") [17:27:56.709] }, finally = { [17:27:56.709] if (!identical(...future.workdir, getwd())) [17:27:56.709] setwd(...future.workdir) [17:27:56.709] { [17:27:56.709] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:56.709] ...future.oldOptions$nwarnings <- NULL [17:27:56.709] } [17:27:56.709] base::options(...future.oldOptions) [17:27:56.709] if (.Platform$OS.type == "windows") { [17:27:56.709] old_names <- names(...future.oldEnvVars) [17:27:56.709] envs <- base::Sys.getenv() [17:27:56.709] names <- names(envs) [17:27:56.709] common <- intersect(names, old_names) [17:27:56.709] added <- setdiff(names, old_names) [17:27:56.709] removed <- setdiff(old_names, names) [17:27:56.709] changed <- common[...future.oldEnvVars[common] != [17:27:56.709] envs[common]] [17:27:56.709] NAMES <- toupper(changed) [17:27:56.709] args <- list() [17:27:56.709] for (kk in seq_along(NAMES)) { [17:27:56.709] name <- changed[[kk]] [17:27:56.709] NAME <- NAMES[[kk]] [17:27:56.709] if (name != NAME && is.element(NAME, old_names)) [17:27:56.709] next [17:27:56.709] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.709] } [17:27:56.709] NAMES <- toupper(added) [17:27:56.709] for (kk in seq_along(NAMES)) { [17:27:56.709] name <- added[[kk]] [17:27:56.709] NAME <- NAMES[[kk]] [17:27:56.709] if (name != NAME && is.element(NAME, old_names)) [17:27:56.709] next [17:27:56.709] args[[name]] <- "" [17:27:56.709] } [17:27:56.709] NAMES <- toupper(removed) [17:27:56.709] for (kk in seq_along(NAMES)) { [17:27:56.709] name <- removed[[kk]] [17:27:56.709] NAME <- NAMES[[kk]] [17:27:56.709] if (name != NAME && is.element(NAME, old_names)) [17:27:56.709] next [17:27:56.709] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:56.709] } [17:27:56.709] if (length(args) > 0) [17:27:56.709] base::do.call(base::Sys.setenv, args = args) [17:27:56.709] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:56.709] } [17:27:56.709] { [17:27:56.709] if (base::length(...future.futureOptionsAdded) > [17:27:56.709] 0L) { [17:27:56.709] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:56.709] base::names(opts) <- ...future.futureOptionsAdded [17:27:56.709] base::options(opts) [17:27:56.709] } [17:27:56.709] { [17:27:56.709] { [17:27:56.709] base::options(mc.cores = ...future.mc.cores.old) [17:27:56.709] NULL [17:27:56.709] } [17:27:56.709] options(future.plan = NULL) [17:27:56.709] if (is.na(NA_character_)) [17:27:56.709] Sys.unsetenv("R_FUTURE_PLAN") [17:27:56.709] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:56.709] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:56.709] .init = FALSE) [17:27:56.709] } [17:27:56.709] } [17:27:56.709] } [17:27:56.709] }) [17:27:56.709] if (TRUE) { [17:27:56.709] base::sink(type = "output", split = FALSE) [17:27:56.709] if (TRUE) { [17:27:56.709] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:56.709] } [17:27:56.709] else { [17:27:56.709] ...future.result["stdout"] <- base::list(NULL) [17:27:56.709] } [17:27:56.709] base::close(...future.stdout) [17:27:56.709] ...future.stdout <- NULL [17:27:56.709] } [17:27:56.709] ...future.result$conditions <- ...future.conditions [17:27:56.709] ...future.result$finished <- base::Sys.time() [17:27:56.709] ...future.result [17:27:56.709] } [17:27:56.714] MultisessionFuture started [17:27:56.715] - Launch lazy future ... done [17:27:56.715] run() for 'MultisessionFuture' ... done [17:27:57.229] receiveMessageFromWorker() for ClusterFuture ... [17:27:57.229] - Validating connection of MultisessionFuture [17:27:57.230] - received message: FutureResult [17:27:57.230] - Received FutureResult [17:27:57.230] - Erased future from FutureRegistry [17:27:57.230] result() for ClusterFuture ... [17:27:57.230] - result already collected: FutureResult [17:27:57.230] result() for ClusterFuture ... done [17:27:57.231] receiveMessageFromWorker() for ClusterFuture ... done [17:27:57.231] resolve() on list ... [17:27:57.231] recursive: 98 [17:27:57.231] length: 2 [17:27:57.231] elements: 'a', 'b' [17:27:57.231] length: 1 (resolved future 1) [17:27:57.232] length: 0 (resolved future 2) [17:27:57.232] resolve() on list ... DONE [17:27:57.232] A MultisessionFuture was resolved (and resolved itself) - w/ exception ... [17:27:57.232] getGlobalsAndPackages() ... [17:27:57.232] Searching for globals... [17:27:57.233] - globals found: [2] 'list', 'stop' [17:27:57.233] Searching for globals ... DONE [17:27:57.234] Resolving globals: FALSE [17:27:57.234] [17:27:57.234] [17:27:57.234] getGlobalsAndPackages() ... DONE [17:27:57.235] run() for 'Future' ... [17:27:57.235] - state: 'created' [17:27:57.235] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:57.249] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:57.249] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:57.249] - Field: 'node' [17:27:57.249] - Field: 'label' [17:27:57.249] - Field: 'local' [17:27:57.250] - Field: 'owner' [17:27:57.250] - Field: 'envir' [17:27:57.250] - Field: 'workers' [17:27:57.250] - Field: 'packages' [17:27:57.250] - Field: 'gc' [17:27:57.250] - Field: 'conditions' [17:27:57.251] - Field: 'persistent' [17:27:57.251] - Field: 'expr' [17:27:57.251] - Field: 'uuid' [17:27:57.251] - Field: 'seed' [17:27:57.251] - Field: 'version' [17:27:57.251] - Field: 'result' [17:27:57.252] - Field: 'asynchronous' [17:27:57.252] - Field: 'calls' [17:27:57.252] - Field: 'globals' [17:27:57.252] - Field: 'stdout' [17:27:57.252] - Field: 'earlySignal' [17:27:57.253] - Field: 'lazy' [17:27:57.253] - Field: 'state' [17:27:57.253] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:57.253] - Launch lazy future ... [17:27:57.253] Packages needed by the future expression (n = 0): [17:27:57.254] Packages needed by future strategies (n = 0): [17:27:57.254] { [17:27:57.254] { [17:27:57.254] { [17:27:57.254] ...future.startTime <- base::Sys.time() [17:27:57.254] { [17:27:57.254] { [17:27:57.254] { [17:27:57.254] { [17:27:57.254] base::local({ [17:27:57.254] has_future <- base::requireNamespace("future", [17:27:57.254] quietly = TRUE) [17:27:57.254] if (has_future) { [17:27:57.254] ns <- base::getNamespace("future") [17:27:57.254] version <- ns[[".package"]][["version"]] [17:27:57.254] if (is.null(version)) [17:27:57.254] version <- utils::packageVersion("future") [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] version <- NULL [17:27:57.254] } [17:27:57.254] if (!has_future || version < "1.8.0") { [17:27:57.254] info <- base::c(r_version = base::gsub("R version ", [17:27:57.254] "", base::R.version$version.string), [17:27:57.254] platform = base::sprintf("%s (%s-bit)", [17:27:57.254] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:57.254] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:57.254] "release", "version")], collapse = " "), [17:27:57.254] hostname = base::Sys.info()[["nodename"]]) [17:27:57.254] info <- base::sprintf("%s: %s", base::names(info), [17:27:57.254] info) [17:27:57.254] info <- base::paste(info, collapse = "; ") [17:27:57.254] if (!has_future) { [17:27:57.254] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:57.254] info) [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:57.254] info, version) [17:27:57.254] } [17:27:57.254] base::stop(msg) [17:27:57.254] } [17:27:57.254] }) [17:27:57.254] } [17:27:57.254] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:57.254] base::options(mc.cores = 1L) [17:27:57.254] } [17:27:57.254] ...future.strategy.old <- future::plan("list") [17:27:57.254] options(future.plan = NULL) [17:27:57.254] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.254] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:57.254] } [17:27:57.254] ...future.workdir <- getwd() [17:27:57.254] } [17:27:57.254] ...future.oldOptions <- base::as.list(base::.Options) [17:27:57.254] ...future.oldEnvVars <- base::Sys.getenv() [17:27:57.254] } [17:27:57.254] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:57.254] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:57.254] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:57.254] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:57.254] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:57.254] future.stdout.windows.reencode = NULL, width = 80L) [17:27:57.254] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:57.254] base::names(...future.oldOptions)) [17:27:57.254] } [17:27:57.254] if (FALSE) { [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] if (TRUE) { [17:27:57.254] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:57.254] open = "w") [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:57.254] windows = "NUL", "/dev/null"), open = "w") [17:27:57.254] } [17:27:57.254] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:57.254] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:57.254] base::sink(type = "output", split = FALSE) [17:27:57.254] base::close(...future.stdout) [17:27:57.254] }, add = TRUE) [17:27:57.254] } [17:27:57.254] ...future.frame <- base::sys.nframe() [17:27:57.254] ...future.conditions <- base::list() [17:27:57.254] ...future.rng <- base::globalenv()$.Random.seed [17:27:57.254] if (FALSE) { [17:27:57.254] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:57.254] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:57.254] } [17:27:57.254] ...future.result <- base::tryCatch({ [17:27:57.254] base::withCallingHandlers({ [17:27:57.254] ...future.value <- base::withVisible(base::local({ [17:27:57.254] ...future.makeSendCondition <- base::local({ [17:27:57.254] sendCondition <- NULL [17:27:57.254] function(frame = 1L) { [17:27:57.254] if (is.function(sendCondition)) [17:27:57.254] return(sendCondition) [17:27:57.254] ns <- getNamespace("parallel") [17:27:57.254] if (exists("sendData", mode = "function", [17:27:57.254] envir = ns)) { [17:27:57.254] parallel_sendData <- get("sendData", mode = "function", [17:27:57.254] envir = ns) [17:27:57.254] envir <- sys.frame(frame) [17:27:57.254] master <- NULL [17:27:57.254] while (!identical(envir, .GlobalEnv) && [17:27:57.254] !identical(envir, emptyenv())) { [17:27:57.254] if (exists("master", mode = "list", envir = envir, [17:27:57.254] inherits = FALSE)) { [17:27:57.254] master <- get("master", mode = "list", [17:27:57.254] envir = envir, inherits = FALSE) [17:27:57.254] if (inherits(master, c("SOCKnode", [17:27:57.254] "SOCK0node"))) { [17:27:57.254] sendCondition <<- function(cond) { [17:27:57.254] data <- list(type = "VALUE", value = cond, [17:27:57.254] success = TRUE) [17:27:57.254] parallel_sendData(master, data) [17:27:57.254] } [17:27:57.254] return(sendCondition) [17:27:57.254] } [17:27:57.254] } [17:27:57.254] frame <- frame + 1L [17:27:57.254] envir <- sys.frame(frame) [17:27:57.254] } [17:27:57.254] } [17:27:57.254] sendCondition <<- function(cond) NULL [17:27:57.254] } [17:27:57.254] }) [17:27:57.254] withCallingHandlers({ [17:27:57.254] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:57.254] }, immediateCondition = function(cond) { [17:27:57.254] sendCondition <- ...future.makeSendCondition() [17:27:57.254] sendCondition(cond) [17:27:57.254] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.254] { [17:27:57.254] inherits <- base::inherits [17:27:57.254] invokeRestart <- base::invokeRestart [17:27:57.254] is.null <- base::is.null [17:27:57.254] muffled <- FALSE [17:27:57.254] if (inherits(cond, "message")) { [17:27:57.254] muffled <- grepl(pattern, "muffleMessage") [17:27:57.254] if (muffled) [17:27:57.254] invokeRestart("muffleMessage") [17:27:57.254] } [17:27:57.254] else if (inherits(cond, "warning")) { [17:27:57.254] muffled <- grepl(pattern, "muffleWarning") [17:27:57.254] if (muffled) [17:27:57.254] invokeRestart("muffleWarning") [17:27:57.254] } [17:27:57.254] else if (inherits(cond, "condition")) { [17:27:57.254] if (!is.null(pattern)) { [17:27:57.254] computeRestarts <- base::computeRestarts [17:27:57.254] grepl <- base::grepl [17:27:57.254] restarts <- computeRestarts(cond) [17:27:57.254] for (restart in restarts) { [17:27:57.254] name <- restart$name [17:27:57.254] if (is.null(name)) [17:27:57.254] next [17:27:57.254] if (!grepl(pattern, name)) [17:27:57.254] next [17:27:57.254] invokeRestart(restart) [17:27:57.254] muffled <- TRUE [17:27:57.254] break [17:27:57.254] } [17:27:57.254] } [17:27:57.254] } [17:27:57.254] invisible(muffled) [17:27:57.254] } [17:27:57.254] muffleCondition(cond) [17:27:57.254] }) [17:27:57.254] })) [17:27:57.254] future::FutureResult(value = ...future.value$value, [17:27:57.254] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.254] ...future.rng), globalenv = if (FALSE) [17:27:57.254] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:57.254] ...future.globalenv.names)) [17:27:57.254] else NULL, started = ...future.startTime, version = "1.8") [17:27:57.254] }, condition = base::local({ [17:27:57.254] c <- base::c [17:27:57.254] inherits <- base::inherits [17:27:57.254] invokeRestart <- base::invokeRestart [17:27:57.254] length <- base::length [17:27:57.254] list <- base::list [17:27:57.254] seq.int <- base::seq.int [17:27:57.254] signalCondition <- base::signalCondition [17:27:57.254] sys.calls <- base::sys.calls [17:27:57.254] `[[` <- base::`[[` [17:27:57.254] `+` <- base::`+` [17:27:57.254] `<<-` <- base::`<<-` [17:27:57.254] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:57.254] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:57.254] 3L)] [17:27:57.254] } [17:27:57.254] function(cond) { [17:27:57.254] is_error <- inherits(cond, "error") [17:27:57.254] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:57.254] NULL) [17:27:57.254] if (is_error) { [17:27:57.254] sessionInformation <- function() { [17:27:57.254] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:57.254] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:57.254] search = base::search(), system = base::Sys.info()) [17:27:57.254] } [17:27:57.254] ...future.conditions[[length(...future.conditions) + [17:27:57.254] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:57.254] cond$call), session = sessionInformation(), [17:27:57.254] timestamp = base::Sys.time(), signaled = 0L) [17:27:57.254] signalCondition(cond) [17:27:57.254] } [17:27:57.254] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:57.254] "immediateCondition"))) { [17:27:57.254] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:57.254] ...future.conditions[[length(...future.conditions) + [17:27:57.254] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:57.254] if (TRUE && !signal) { [17:27:57.254] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.254] { [17:27:57.254] inherits <- base::inherits [17:27:57.254] invokeRestart <- base::invokeRestart [17:27:57.254] is.null <- base::is.null [17:27:57.254] muffled <- FALSE [17:27:57.254] if (inherits(cond, "message")) { [17:27:57.254] muffled <- grepl(pattern, "muffleMessage") [17:27:57.254] if (muffled) [17:27:57.254] invokeRestart("muffleMessage") [17:27:57.254] } [17:27:57.254] else if (inherits(cond, "warning")) { [17:27:57.254] muffled <- grepl(pattern, "muffleWarning") [17:27:57.254] if (muffled) [17:27:57.254] invokeRestart("muffleWarning") [17:27:57.254] } [17:27:57.254] else if (inherits(cond, "condition")) { [17:27:57.254] if (!is.null(pattern)) { [17:27:57.254] computeRestarts <- base::computeRestarts [17:27:57.254] grepl <- base::grepl [17:27:57.254] restarts <- computeRestarts(cond) [17:27:57.254] for (restart in restarts) { [17:27:57.254] name <- restart$name [17:27:57.254] if (is.null(name)) [17:27:57.254] next [17:27:57.254] if (!grepl(pattern, name)) [17:27:57.254] next [17:27:57.254] invokeRestart(restart) [17:27:57.254] muffled <- TRUE [17:27:57.254] break [17:27:57.254] } [17:27:57.254] } [17:27:57.254] } [17:27:57.254] invisible(muffled) [17:27:57.254] } [17:27:57.254] muffleCondition(cond, pattern = "^muffle") [17:27:57.254] } [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] if (TRUE) { [17:27:57.254] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.254] { [17:27:57.254] inherits <- base::inherits [17:27:57.254] invokeRestart <- base::invokeRestart [17:27:57.254] is.null <- base::is.null [17:27:57.254] muffled <- FALSE [17:27:57.254] if (inherits(cond, "message")) { [17:27:57.254] muffled <- grepl(pattern, "muffleMessage") [17:27:57.254] if (muffled) [17:27:57.254] invokeRestart("muffleMessage") [17:27:57.254] } [17:27:57.254] else if (inherits(cond, "warning")) { [17:27:57.254] muffled <- grepl(pattern, "muffleWarning") [17:27:57.254] if (muffled) [17:27:57.254] invokeRestart("muffleWarning") [17:27:57.254] } [17:27:57.254] else if (inherits(cond, "condition")) { [17:27:57.254] if (!is.null(pattern)) { [17:27:57.254] computeRestarts <- base::computeRestarts [17:27:57.254] grepl <- base::grepl [17:27:57.254] restarts <- computeRestarts(cond) [17:27:57.254] for (restart in restarts) { [17:27:57.254] name <- restart$name [17:27:57.254] if (is.null(name)) [17:27:57.254] next [17:27:57.254] if (!grepl(pattern, name)) [17:27:57.254] next [17:27:57.254] invokeRestart(restart) [17:27:57.254] muffled <- TRUE [17:27:57.254] break [17:27:57.254] } [17:27:57.254] } [17:27:57.254] } [17:27:57.254] invisible(muffled) [17:27:57.254] } [17:27:57.254] muffleCondition(cond, pattern = "^muffle") [17:27:57.254] } [17:27:57.254] } [17:27:57.254] } [17:27:57.254] })) [17:27:57.254] }, error = function(ex) { [17:27:57.254] base::structure(base::list(value = NULL, visible = NULL, [17:27:57.254] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.254] ...future.rng), started = ...future.startTime, [17:27:57.254] finished = Sys.time(), session_uuid = NA_character_, [17:27:57.254] version = "1.8"), class = "FutureResult") [17:27:57.254] }, finally = { [17:27:57.254] if (!identical(...future.workdir, getwd())) [17:27:57.254] setwd(...future.workdir) [17:27:57.254] { [17:27:57.254] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:57.254] ...future.oldOptions$nwarnings <- NULL [17:27:57.254] } [17:27:57.254] base::options(...future.oldOptions) [17:27:57.254] if (.Platform$OS.type == "windows") { [17:27:57.254] old_names <- names(...future.oldEnvVars) [17:27:57.254] envs <- base::Sys.getenv() [17:27:57.254] names <- names(envs) [17:27:57.254] common <- intersect(names, old_names) [17:27:57.254] added <- setdiff(names, old_names) [17:27:57.254] removed <- setdiff(old_names, names) [17:27:57.254] changed <- common[...future.oldEnvVars[common] != [17:27:57.254] envs[common]] [17:27:57.254] NAMES <- toupper(changed) [17:27:57.254] args <- list() [17:27:57.254] for (kk in seq_along(NAMES)) { [17:27:57.254] name <- changed[[kk]] [17:27:57.254] NAME <- NAMES[[kk]] [17:27:57.254] if (name != NAME && is.element(NAME, old_names)) [17:27:57.254] next [17:27:57.254] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.254] } [17:27:57.254] NAMES <- toupper(added) [17:27:57.254] for (kk in seq_along(NAMES)) { [17:27:57.254] name <- added[[kk]] [17:27:57.254] NAME <- NAMES[[kk]] [17:27:57.254] if (name != NAME && is.element(NAME, old_names)) [17:27:57.254] next [17:27:57.254] args[[name]] <- "" [17:27:57.254] } [17:27:57.254] NAMES <- toupper(removed) [17:27:57.254] for (kk in seq_along(NAMES)) { [17:27:57.254] name <- removed[[kk]] [17:27:57.254] NAME <- NAMES[[kk]] [17:27:57.254] if (name != NAME && is.element(NAME, old_names)) [17:27:57.254] next [17:27:57.254] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.254] } [17:27:57.254] if (length(args) > 0) [17:27:57.254] base::do.call(base::Sys.setenv, args = args) [17:27:57.254] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:57.254] } [17:27:57.254] { [17:27:57.254] if (base::length(...future.futureOptionsAdded) > [17:27:57.254] 0L) { [17:27:57.254] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:57.254] base::names(opts) <- ...future.futureOptionsAdded [17:27:57.254] base::options(opts) [17:27:57.254] } [17:27:57.254] { [17:27:57.254] { [17:27:57.254] base::options(mc.cores = ...future.mc.cores.old) [17:27:57.254] NULL [17:27:57.254] } [17:27:57.254] options(future.plan = NULL) [17:27:57.254] if (is.na(NA_character_)) [17:27:57.254] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.254] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:57.254] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:57.254] .init = FALSE) [17:27:57.254] } [17:27:57.254] } [17:27:57.254] } [17:27:57.254] }) [17:27:57.254] if (TRUE) { [17:27:57.254] base::sink(type = "output", split = FALSE) [17:27:57.254] if (TRUE) { [17:27:57.254] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:57.254] } [17:27:57.254] else { [17:27:57.254] ...future.result["stdout"] <- base::list(NULL) [17:27:57.254] } [17:27:57.254] base::close(...future.stdout) [17:27:57.254] ...future.stdout <- NULL [17:27:57.254] } [17:27:57.254] ...future.result$conditions <- ...future.conditions [17:27:57.254] ...future.result$finished <- base::Sys.time() [17:27:57.254] ...future.result [17:27:57.254] } [17:27:57.260] MultisessionFuture started [17:27:57.260] - Launch lazy future ... done [17:27:57.260] run() for 'MultisessionFuture' ... done [17:27:57.275] receiveMessageFromWorker() for ClusterFuture ... [17:27:57.275] - Validating connection of MultisessionFuture [17:27:57.276] - received message: FutureResult [17:27:57.276] - Received FutureResult [17:27:57.276] - Erased future from FutureRegistry [17:27:57.276] result() for ClusterFuture ... [17:27:57.276] - result already collected: FutureResult [17:27:57.277] result() for ClusterFuture ... done [17:27:57.277] signalConditions() ... [17:27:57.277] - include = 'immediateCondition' [17:27:57.277] - exclude = [17:27:57.277] - resignal = FALSE [17:27:57.277] - Number of conditions: 1 [17:27:57.278] signalConditions() ... done [17:27:57.278] receiveMessageFromWorker() for ClusterFuture ... done [17:27:57.278] A MultisessionFuture was resolved (and resolved itself) [17:27:57.278] getGlobalsAndPackages() ... [17:27:57.278] Searching for globals... [17:27:57.279] - globals found: [2] 'list', 'stop' [17:27:57.279] Searching for globals ... DONE [17:27:57.279] Resolving globals: FALSE [17:27:57.280] [17:27:57.280] [17:27:57.280] getGlobalsAndPackages() ... DONE [17:27:57.280] run() for 'Future' ... [17:27:57.281] - state: 'created' [17:27:57.281] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:57.294] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:57.295] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:57.295] - Field: 'node' [17:27:57.295] - Field: 'label' [17:27:57.295] - Field: 'local' [17:27:57.295] - Field: 'owner' [17:27:57.295] - Field: 'envir' [17:27:57.296] - Field: 'workers' [17:27:57.296] - Field: 'packages' [17:27:57.296] - Field: 'gc' [17:27:57.296] - Field: 'conditions' [17:27:57.296] - Field: 'persistent' [17:27:57.296] - Field: 'expr' [17:27:57.297] - Field: 'uuid' [17:27:57.297] - Field: 'seed' [17:27:57.297] - Field: 'version' [17:27:57.297] - Field: 'result' [17:27:57.297] - Field: 'asynchronous' [17:27:57.298] - Field: 'calls' [17:27:57.298] - Field: 'globals' [17:27:57.298] - Field: 'stdout' [17:27:57.298] - Field: 'earlySignal' [17:27:57.298] - Field: 'lazy' [17:27:57.298] - Field: 'state' [17:27:57.299] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:57.299] - Launch lazy future ... [17:27:57.299] Packages needed by the future expression (n = 0): [17:27:57.299] Packages needed by future strategies (n = 0): [17:27:57.300] { [17:27:57.300] { [17:27:57.300] { [17:27:57.300] ...future.startTime <- base::Sys.time() [17:27:57.300] { [17:27:57.300] { [17:27:57.300] { [17:27:57.300] { [17:27:57.300] base::local({ [17:27:57.300] has_future <- base::requireNamespace("future", [17:27:57.300] quietly = TRUE) [17:27:57.300] if (has_future) { [17:27:57.300] ns <- base::getNamespace("future") [17:27:57.300] version <- ns[[".package"]][["version"]] [17:27:57.300] if (is.null(version)) [17:27:57.300] version <- utils::packageVersion("future") [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] version <- NULL [17:27:57.300] } [17:27:57.300] if (!has_future || version < "1.8.0") { [17:27:57.300] info <- base::c(r_version = base::gsub("R version ", [17:27:57.300] "", base::R.version$version.string), [17:27:57.300] platform = base::sprintf("%s (%s-bit)", [17:27:57.300] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:57.300] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:57.300] "release", "version")], collapse = " "), [17:27:57.300] hostname = base::Sys.info()[["nodename"]]) [17:27:57.300] info <- base::sprintf("%s: %s", base::names(info), [17:27:57.300] info) [17:27:57.300] info <- base::paste(info, collapse = "; ") [17:27:57.300] if (!has_future) { [17:27:57.300] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:57.300] info) [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:57.300] info, version) [17:27:57.300] } [17:27:57.300] base::stop(msg) [17:27:57.300] } [17:27:57.300] }) [17:27:57.300] } [17:27:57.300] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:57.300] base::options(mc.cores = 1L) [17:27:57.300] } [17:27:57.300] ...future.strategy.old <- future::plan("list") [17:27:57.300] options(future.plan = NULL) [17:27:57.300] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.300] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:57.300] } [17:27:57.300] ...future.workdir <- getwd() [17:27:57.300] } [17:27:57.300] ...future.oldOptions <- base::as.list(base::.Options) [17:27:57.300] ...future.oldEnvVars <- base::Sys.getenv() [17:27:57.300] } [17:27:57.300] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:57.300] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:57.300] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:57.300] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:57.300] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:57.300] future.stdout.windows.reencode = NULL, width = 80L) [17:27:57.300] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:57.300] base::names(...future.oldOptions)) [17:27:57.300] } [17:27:57.300] if (FALSE) { [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] if (TRUE) { [17:27:57.300] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:57.300] open = "w") [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:57.300] windows = "NUL", "/dev/null"), open = "w") [17:27:57.300] } [17:27:57.300] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:57.300] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:57.300] base::sink(type = "output", split = FALSE) [17:27:57.300] base::close(...future.stdout) [17:27:57.300] }, add = TRUE) [17:27:57.300] } [17:27:57.300] ...future.frame <- base::sys.nframe() [17:27:57.300] ...future.conditions <- base::list() [17:27:57.300] ...future.rng <- base::globalenv()$.Random.seed [17:27:57.300] if (FALSE) { [17:27:57.300] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:57.300] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:57.300] } [17:27:57.300] ...future.result <- base::tryCatch({ [17:27:57.300] base::withCallingHandlers({ [17:27:57.300] ...future.value <- base::withVisible(base::local({ [17:27:57.300] ...future.makeSendCondition <- base::local({ [17:27:57.300] sendCondition <- NULL [17:27:57.300] function(frame = 1L) { [17:27:57.300] if (is.function(sendCondition)) [17:27:57.300] return(sendCondition) [17:27:57.300] ns <- getNamespace("parallel") [17:27:57.300] if (exists("sendData", mode = "function", [17:27:57.300] envir = ns)) { [17:27:57.300] parallel_sendData <- get("sendData", mode = "function", [17:27:57.300] envir = ns) [17:27:57.300] envir <- sys.frame(frame) [17:27:57.300] master <- NULL [17:27:57.300] while (!identical(envir, .GlobalEnv) && [17:27:57.300] !identical(envir, emptyenv())) { [17:27:57.300] if (exists("master", mode = "list", envir = envir, [17:27:57.300] inherits = FALSE)) { [17:27:57.300] master <- get("master", mode = "list", [17:27:57.300] envir = envir, inherits = FALSE) [17:27:57.300] if (inherits(master, c("SOCKnode", [17:27:57.300] "SOCK0node"))) { [17:27:57.300] sendCondition <<- function(cond) { [17:27:57.300] data <- list(type = "VALUE", value = cond, [17:27:57.300] success = TRUE) [17:27:57.300] parallel_sendData(master, data) [17:27:57.300] } [17:27:57.300] return(sendCondition) [17:27:57.300] } [17:27:57.300] } [17:27:57.300] frame <- frame + 1L [17:27:57.300] envir <- sys.frame(frame) [17:27:57.300] } [17:27:57.300] } [17:27:57.300] sendCondition <<- function(cond) NULL [17:27:57.300] } [17:27:57.300] }) [17:27:57.300] withCallingHandlers({ [17:27:57.300] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:57.300] }, immediateCondition = function(cond) { [17:27:57.300] sendCondition <- ...future.makeSendCondition() [17:27:57.300] sendCondition(cond) [17:27:57.300] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.300] { [17:27:57.300] inherits <- base::inherits [17:27:57.300] invokeRestart <- base::invokeRestart [17:27:57.300] is.null <- base::is.null [17:27:57.300] muffled <- FALSE [17:27:57.300] if (inherits(cond, "message")) { [17:27:57.300] muffled <- grepl(pattern, "muffleMessage") [17:27:57.300] if (muffled) [17:27:57.300] invokeRestart("muffleMessage") [17:27:57.300] } [17:27:57.300] else if (inherits(cond, "warning")) { [17:27:57.300] muffled <- grepl(pattern, "muffleWarning") [17:27:57.300] if (muffled) [17:27:57.300] invokeRestart("muffleWarning") [17:27:57.300] } [17:27:57.300] else if (inherits(cond, "condition")) { [17:27:57.300] if (!is.null(pattern)) { [17:27:57.300] computeRestarts <- base::computeRestarts [17:27:57.300] grepl <- base::grepl [17:27:57.300] restarts <- computeRestarts(cond) [17:27:57.300] for (restart in restarts) { [17:27:57.300] name <- restart$name [17:27:57.300] if (is.null(name)) [17:27:57.300] next [17:27:57.300] if (!grepl(pattern, name)) [17:27:57.300] next [17:27:57.300] invokeRestart(restart) [17:27:57.300] muffled <- TRUE [17:27:57.300] break [17:27:57.300] } [17:27:57.300] } [17:27:57.300] } [17:27:57.300] invisible(muffled) [17:27:57.300] } [17:27:57.300] muffleCondition(cond) [17:27:57.300] }) [17:27:57.300] })) [17:27:57.300] future::FutureResult(value = ...future.value$value, [17:27:57.300] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.300] ...future.rng), globalenv = if (FALSE) [17:27:57.300] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:57.300] ...future.globalenv.names)) [17:27:57.300] else NULL, started = ...future.startTime, version = "1.8") [17:27:57.300] }, condition = base::local({ [17:27:57.300] c <- base::c [17:27:57.300] inherits <- base::inherits [17:27:57.300] invokeRestart <- base::invokeRestart [17:27:57.300] length <- base::length [17:27:57.300] list <- base::list [17:27:57.300] seq.int <- base::seq.int [17:27:57.300] signalCondition <- base::signalCondition [17:27:57.300] sys.calls <- base::sys.calls [17:27:57.300] `[[` <- base::`[[` [17:27:57.300] `+` <- base::`+` [17:27:57.300] `<<-` <- base::`<<-` [17:27:57.300] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:57.300] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:57.300] 3L)] [17:27:57.300] } [17:27:57.300] function(cond) { [17:27:57.300] is_error <- inherits(cond, "error") [17:27:57.300] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:57.300] NULL) [17:27:57.300] if (is_error) { [17:27:57.300] sessionInformation <- function() { [17:27:57.300] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:57.300] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:57.300] search = base::search(), system = base::Sys.info()) [17:27:57.300] } [17:27:57.300] ...future.conditions[[length(...future.conditions) + [17:27:57.300] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:57.300] cond$call), session = sessionInformation(), [17:27:57.300] timestamp = base::Sys.time(), signaled = 0L) [17:27:57.300] signalCondition(cond) [17:27:57.300] } [17:27:57.300] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:57.300] "immediateCondition"))) { [17:27:57.300] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:57.300] ...future.conditions[[length(...future.conditions) + [17:27:57.300] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:57.300] if (TRUE && !signal) { [17:27:57.300] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.300] { [17:27:57.300] inherits <- base::inherits [17:27:57.300] invokeRestart <- base::invokeRestart [17:27:57.300] is.null <- base::is.null [17:27:57.300] muffled <- FALSE [17:27:57.300] if (inherits(cond, "message")) { [17:27:57.300] muffled <- grepl(pattern, "muffleMessage") [17:27:57.300] if (muffled) [17:27:57.300] invokeRestart("muffleMessage") [17:27:57.300] } [17:27:57.300] else if (inherits(cond, "warning")) { [17:27:57.300] muffled <- grepl(pattern, "muffleWarning") [17:27:57.300] if (muffled) [17:27:57.300] invokeRestart("muffleWarning") [17:27:57.300] } [17:27:57.300] else if (inherits(cond, "condition")) { [17:27:57.300] if (!is.null(pattern)) { [17:27:57.300] computeRestarts <- base::computeRestarts [17:27:57.300] grepl <- base::grepl [17:27:57.300] restarts <- computeRestarts(cond) [17:27:57.300] for (restart in restarts) { [17:27:57.300] name <- restart$name [17:27:57.300] if (is.null(name)) [17:27:57.300] next [17:27:57.300] if (!grepl(pattern, name)) [17:27:57.300] next [17:27:57.300] invokeRestart(restart) [17:27:57.300] muffled <- TRUE [17:27:57.300] break [17:27:57.300] } [17:27:57.300] } [17:27:57.300] } [17:27:57.300] invisible(muffled) [17:27:57.300] } [17:27:57.300] muffleCondition(cond, pattern = "^muffle") [17:27:57.300] } [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] if (TRUE) { [17:27:57.300] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.300] { [17:27:57.300] inherits <- base::inherits [17:27:57.300] invokeRestart <- base::invokeRestart [17:27:57.300] is.null <- base::is.null [17:27:57.300] muffled <- FALSE [17:27:57.300] if (inherits(cond, "message")) { [17:27:57.300] muffled <- grepl(pattern, "muffleMessage") [17:27:57.300] if (muffled) [17:27:57.300] invokeRestart("muffleMessage") [17:27:57.300] } [17:27:57.300] else if (inherits(cond, "warning")) { [17:27:57.300] muffled <- grepl(pattern, "muffleWarning") [17:27:57.300] if (muffled) [17:27:57.300] invokeRestart("muffleWarning") [17:27:57.300] } [17:27:57.300] else if (inherits(cond, "condition")) { [17:27:57.300] if (!is.null(pattern)) { [17:27:57.300] computeRestarts <- base::computeRestarts [17:27:57.300] grepl <- base::grepl [17:27:57.300] restarts <- computeRestarts(cond) [17:27:57.300] for (restart in restarts) { [17:27:57.300] name <- restart$name [17:27:57.300] if (is.null(name)) [17:27:57.300] next [17:27:57.300] if (!grepl(pattern, name)) [17:27:57.300] next [17:27:57.300] invokeRestart(restart) [17:27:57.300] muffled <- TRUE [17:27:57.300] break [17:27:57.300] } [17:27:57.300] } [17:27:57.300] } [17:27:57.300] invisible(muffled) [17:27:57.300] } [17:27:57.300] muffleCondition(cond, pattern = "^muffle") [17:27:57.300] } [17:27:57.300] } [17:27:57.300] } [17:27:57.300] })) [17:27:57.300] }, error = function(ex) { [17:27:57.300] base::structure(base::list(value = NULL, visible = NULL, [17:27:57.300] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.300] ...future.rng), started = ...future.startTime, [17:27:57.300] finished = Sys.time(), session_uuid = NA_character_, [17:27:57.300] version = "1.8"), class = "FutureResult") [17:27:57.300] }, finally = { [17:27:57.300] if (!identical(...future.workdir, getwd())) [17:27:57.300] setwd(...future.workdir) [17:27:57.300] { [17:27:57.300] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:57.300] ...future.oldOptions$nwarnings <- NULL [17:27:57.300] } [17:27:57.300] base::options(...future.oldOptions) [17:27:57.300] if (.Platform$OS.type == "windows") { [17:27:57.300] old_names <- names(...future.oldEnvVars) [17:27:57.300] envs <- base::Sys.getenv() [17:27:57.300] names <- names(envs) [17:27:57.300] common <- intersect(names, old_names) [17:27:57.300] added <- setdiff(names, old_names) [17:27:57.300] removed <- setdiff(old_names, names) [17:27:57.300] changed <- common[...future.oldEnvVars[common] != [17:27:57.300] envs[common]] [17:27:57.300] NAMES <- toupper(changed) [17:27:57.300] args <- list() [17:27:57.300] for (kk in seq_along(NAMES)) { [17:27:57.300] name <- changed[[kk]] [17:27:57.300] NAME <- NAMES[[kk]] [17:27:57.300] if (name != NAME && is.element(NAME, old_names)) [17:27:57.300] next [17:27:57.300] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.300] } [17:27:57.300] NAMES <- toupper(added) [17:27:57.300] for (kk in seq_along(NAMES)) { [17:27:57.300] name <- added[[kk]] [17:27:57.300] NAME <- NAMES[[kk]] [17:27:57.300] if (name != NAME && is.element(NAME, old_names)) [17:27:57.300] next [17:27:57.300] args[[name]] <- "" [17:27:57.300] } [17:27:57.300] NAMES <- toupper(removed) [17:27:57.300] for (kk in seq_along(NAMES)) { [17:27:57.300] name <- removed[[kk]] [17:27:57.300] NAME <- NAMES[[kk]] [17:27:57.300] if (name != NAME && is.element(NAME, old_names)) [17:27:57.300] next [17:27:57.300] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.300] } [17:27:57.300] if (length(args) > 0) [17:27:57.300] base::do.call(base::Sys.setenv, args = args) [17:27:57.300] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:57.300] } [17:27:57.300] { [17:27:57.300] if (base::length(...future.futureOptionsAdded) > [17:27:57.300] 0L) { [17:27:57.300] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:57.300] base::names(opts) <- ...future.futureOptionsAdded [17:27:57.300] base::options(opts) [17:27:57.300] } [17:27:57.300] { [17:27:57.300] { [17:27:57.300] base::options(mc.cores = ...future.mc.cores.old) [17:27:57.300] NULL [17:27:57.300] } [17:27:57.300] options(future.plan = NULL) [17:27:57.300] if (is.na(NA_character_)) [17:27:57.300] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.300] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:57.300] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:57.300] .init = FALSE) [17:27:57.300] } [17:27:57.300] } [17:27:57.300] } [17:27:57.300] }) [17:27:57.300] if (TRUE) { [17:27:57.300] base::sink(type = "output", split = FALSE) [17:27:57.300] if (TRUE) { [17:27:57.300] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:57.300] } [17:27:57.300] else { [17:27:57.300] ...future.result["stdout"] <- base::list(NULL) [17:27:57.300] } [17:27:57.300] base::close(...future.stdout) [17:27:57.300] ...future.stdout <- NULL [17:27:57.300] } [17:27:57.300] ...future.result$conditions <- ...future.conditions [17:27:57.300] ...future.result$finished <- base::Sys.time() [17:27:57.300] ...future.result [17:27:57.300] } [17:27:57.305] MultisessionFuture started [17:27:57.306] - Launch lazy future ... done [17:27:57.306] run() for 'MultisessionFuture' ... done [17:27:57.320] receiveMessageFromWorker() for ClusterFuture ... [17:27:57.320] - Validating connection of MultisessionFuture [17:27:57.320] - received message: FutureResult [17:27:57.321] - Received FutureResult [17:27:57.321] - Erased future from FutureRegistry [17:27:57.321] result() for ClusterFuture ... [17:27:57.321] - result already collected: FutureResult [17:27:57.321] result() for ClusterFuture ... done [17:27:57.321] signalConditions() ... [17:27:57.322] - include = 'immediateCondition' [17:27:57.322] - exclude = [17:27:57.322] - resignal = FALSE [17:27:57.322] - Number of conditions: 1 [17:27:57.322] signalConditions() ... done [17:27:57.322] receiveMessageFromWorker() for ClusterFuture ... done [17:27:57.323] A MultisessionFuture was resolved (and resolved itself) - result = TRUE, recursive = TRUE ... DONE - result = TRUE, recursive = -1 ... [17:27:57.323] getGlobalsAndPackages() ... [17:27:57.323] Searching for globals... [17:27:57.324] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:57.325] Searching for globals ... DONE [17:27:57.325] Resolving globals: FALSE [17:27:57.325] [17:27:57.325] [17:27:57.325] getGlobalsAndPackages() ... DONE [17:27:57.326] run() for 'Future' ... [17:27:57.326] - state: 'created' [17:27:57.326] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:57.340] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:57.340] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:57.340] - Field: 'node' [17:27:57.340] - Field: 'label' [17:27:57.341] - Field: 'local' [17:27:57.341] - Field: 'owner' [17:27:57.341] - Field: 'envir' [17:27:57.341] - Field: 'workers' [17:27:57.341] - Field: 'packages' [17:27:57.341] - Field: 'gc' [17:27:57.342] - Field: 'conditions' [17:27:57.342] - Field: 'persistent' [17:27:57.342] - Field: 'expr' [17:27:57.342] - Field: 'uuid' [17:27:57.342] - Field: 'seed' [17:27:57.342] - Field: 'version' [17:27:57.343] - Field: 'result' [17:27:57.343] - Field: 'asynchronous' [17:27:57.343] - Field: 'calls' [17:27:57.343] - Field: 'globals' [17:27:57.343] - Field: 'stdout' [17:27:57.343] - Field: 'earlySignal' [17:27:57.344] - Field: 'lazy' [17:27:57.344] - Field: 'state' [17:27:57.344] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:57.344] - Launch lazy future ... [17:27:57.345] Packages needed by the future expression (n = 0): [17:27:57.345] Packages needed by future strategies (n = 0): [17:27:57.345] { [17:27:57.345] { [17:27:57.345] { [17:27:57.345] ...future.startTime <- base::Sys.time() [17:27:57.345] { [17:27:57.345] { [17:27:57.345] { [17:27:57.345] { [17:27:57.345] base::local({ [17:27:57.345] has_future <- base::requireNamespace("future", [17:27:57.345] quietly = TRUE) [17:27:57.345] if (has_future) { [17:27:57.345] ns <- base::getNamespace("future") [17:27:57.345] version <- ns[[".package"]][["version"]] [17:27:57.345] if (is.null(version)) [17:27:57.345] version <- utils::packageVersion("future") [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] version <- NULL [17:27:57.345] } [17:27:57.345] if (!has_future || version < "1.8.0") { [17:27:57.345] info <- base::c(r_version = base::gsub("R version ", [17:27:57.345] "", base::R.version$version.string), [17:27:57.345] platform = base::sprintf("%s (%s-bit)", [17:27:57.345] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:57.345] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:57.345] "release", "version")], collapse = " "), [17:27:57.345] hostname = base::Sys.info()[["nodename"]]) [17:27:57.345] info <- base::sprintf("%s: %s", base::names(info), [17:27:57.345] info) [17:27:57.345] info <- base::paste(info, collapse = "; ") [17:27:57.345] if (!has_future) { [17:27:57.345] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:57.345] info) [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:57.345] info, version) [17:27:57.345] } [17:27:57.345] base::stop(msg) [17:27:57.345] } [17:27:57.345] }) [17:27:57.345] } [17:27:57.345] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:57.345] base::options(mc.cores = 1L) [17:27:57.345] } [17:27:57.345] ...future.strategy.old <- future::plan("list") [17:27:57.345] options(future.plan = NULL) [17:27:57.345] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.345] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:57.345] } [17:27:57.345] ...future.workdir <- getwd() [17:27:57.345] } [17:27:57.345] ...future.oldOptions <- base::as.list(base::.Options) [17:27:57.345] ...future.oldEnvVars <- base::Sys.getenv() [17:27:57.345] } [17:27:57.345] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:57.345] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:57.345] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:57.345] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:57.345] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:57.345] future.stdout.windows.reencode = NULL, width = 80L) [17:27:57.345] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:57.345] base::names(...future.oldOptions)) [17:27:57.345] } [17:27:57.345] if (FALSE) { [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] if (TRUE) { [17:27:57.345] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:57.345] open = "w") [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:57.345] windows = "NUL", "/dev/null"), open = "w") [17:27:57.345] } [17:27:57.345] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:57.345] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:57.345] base::sink(type = "output", split = FALSE) [17:27:57.345] base::close(...future.stdout) [17:27:57.345] }, add = TRUE) [17:27:57.345] } [17:27:57.345] ...future.frame <- base::sys.nframe() [17:27:57.345] ...future.conditions <- base::list() [17:27:57.345] ...future.rng <- base::globalenv()$.Random.seed [17:27:57.345] if (FALSE) { [17:27:57.345] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:57.345] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:57.345] } [17:27:57.345] ...future.result <- base::tryCatch({ [17:27:57.345] base::withCallingHandlers({ [17:27:57.345] ...future.value <- base::withVisible(base::local({ [17:27:57.345] ...future.makeSendCondition <- base::local({ [17:27:57.345] sendCondition <- NULL [17:27:57.345] function(frame = 1L) { [17:27:57.345] if (is.function(sendCondition)) [17:27:57.345] return(sendCondition) [17:27:57.345] ns <- getNamespace("parallel") [17:27:57.345] if (exists("sendData", mode = "function", [17:27:57.345] envir = ns)) { [17:27:57.345] parallel_sendData <- get("sendData", mode = "function", [17:27:57.345] envir = ns) [17:27:57.345] envir <- sys.frame(frame) [17:27:57.345] master <- NULL [17:27:57.345] while (!identical(envir, .GlobalEnv) && [17:27:57.345] !identical(envir, emptyenv())) { [17:27:57.345] if (exists("master", mode = "list", envir = envir, [17:27:57.345] inherits = FALSE)) { [17:27:57.345] master <- get("master", mode = "list", [17:27:57.345] envir = envir, inherits = FALSE) [17:27:57.345] if (inherits(master, c("SOCKnode", [17:27:57.345] "SOCK0node"))) { [17:27:57.345] sendCondition <<- function(cond) { [17:27:57.345] data <- list(type = "VALUE", value = cond, [17:27:57.345] success = TRUE) [17:27:57.345] parallel_sendData(master, data) [17:27:57.345] } [17:27:57.345] return(sendCondition) [17:27:57.345] } [17:27:57.345] } [17:27:57.345] frame <- frame + 1L [17:27:57.345] envir <- sys.frame(frame) [17:27:57.345] } [17:27:57.345] } [17:27:57.345] sendCondition <<- function(cond) NULL [17:27:57.345] } [17:27:57.345] }) [17:27:57.345] withCallingHandlers({ [17:27:57.345] { [17:27:57.345] Sys.sleep(0.5) [17:27:57.345] list(a = 1, b = 42L) [17:27:57.345] } [17:27:57.345] }, immediateCondition = function(cond) { [17:27:57.345] sendCondition <- ...future.makeSendCondition() [17:27:57.345] sendCondition(cond) [17:27:57.345] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.345] { [17:27:57.345] inherits <- base::inherits [17:27:57.345] invokeRestart <- base::invokeRestart [17:27:57.345] is.null <- base::is.null [17:27:57.345] muffled <- FALSE [17:27:57.345] if (inherits(cond, "message")) { [17:27:57.345] muffled <- grepl(pattern, "muffleMessage") [17:27:57.345] if (muffled) [17:27:57.345] invokeRestart("muffleMessage") [17:27:57.345] } [17:27:57.345] else if (inherits(cond, "warning")) { [17:27:57.345] muffled <- grepl(pattern, "muffleWarning") [17:27:57.345] if (muffled) [17:27:57.345] invokeRestart("muffleWarning") [17:27:57.345] } [17:27:57.345] else if (inherits(cond, "condition")) { [17:27:57.345] if (!is.null(pattern)) { [17:27:57.345] computeRestarts <- base::computeRestarts [17:27:57.345] grepl <- base::grepl [17:27:57.345] restarts <- computeRestarts(cond) [17:27:57.345] for (restart in restarts) { [17:27:57.345] name <- restart$name [17:27:57.345] if (is.null(name)) [17:27:57.345] next [17:27:57.345] if (!grepl(pattern, name)) [17:27:57.345] next [17:27:57.345] invokeRestart(restart) [17:27:57.345] muffled <- TRUE [17:27:57.345] break [17:27:57.345] } [17:27:57.345] } [17:27:57.345] } [17:27:57.345] invisible(muffled) [17:27:57.345] } [17:27:57.345] muffleCondition(cond) [17:27:57.345] }) [17:27:57.345] })) [17:27:57.345] future::FutureResult(value = ...future.value$value, [17:27:57.345] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.345] ...future.rng), globalenv = if (FALSE) [17:27:57.345] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:57.345] ...future.globalenv.names)) [17:27:57.345] else NULL, started = ...future.startTime, version = "1.8") [17:27:57.345] }, condition = base::local({ [17:27:57.345] c <- base::c [17:27:57.345] inherits <- base::inherits [17:27:57.345] invokeRestart <- base::invokeRestart [17:27:57.345] length <- base::length [17:27:57.345] list <- base::list [17:27:57.345] seq.int <- base::seq.int [17:27:57.345] signalCondition <- base::signalCondition [17:27:57.345] sys.calls <- base::sys.calls [17:27:57.345] `[[` <- base::`[[` [17:27:57.345] `+` <- base::`+` [17:27:57.345] `<<-` <- base::`<<-` [17:27:57.345] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:57.345] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:57.345] 3L)] [17:27:57.345] } [17:27:57.345] function(cond) { [17:27:57.345] is_error <- inherits(cond, "error") [17:27:57.345] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:57.345] NULL) [17:27:57.345] if (is_error) { [17:27:57.345] sessionInformation <- function() { [17:27:57.345] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:57.345] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:57.345] search = base::search(), system = base::Sys.info()) [17:27:57.345] } [17:27:57.345] ...future.conditions[[length(...future.conditions) + [17:27:57.345] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:57.345] cond$call), session = sessionInformation(), [17:27:57.345] timestamp = base::Sys.time(), signaled = 0L) [17:27:57.345] signalCondition(cond) [17:27:57.345] } [17:27:57.345] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:57.345] "immediateCondition"))) { [17:27:57.345] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:57.345] ...future.conditions[[length(...future.conditions) + [17:27:57.345] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:57.345] if (TRUE && !signal) { [17:27:57.345] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.345] { [17:27:57.345] inherits <- base::inherits [17:27:57.345] invokeRestart <- base::invokeRestart [17:27:57.345] is.null <- base::is.null [17:27:57.345] muffled <- FALSE [17:27:57.345] if (inherits(cond, "message")) { [17:27:57.345] muffled <- grepl(pattern, "muffleMessage") [17:27:57.345] if (muffled) [17:27:57.345] invokeRestart("muffleMessage") [17:27:57.345] } [17:27:57.345] else if (inherits(cond, "warning")) { [17:27:57.345] muffled <- grepl(pattern, "muffleWarning") [17:27:57.345] if (muffled) [17:27:57.345] invokeRestart("muffleWarning") [17:27:57.345] } [17:27:57.345] else if (inherits(cond, "condition")) { [17:27:57.345] if (!is.null(pattern)) { [17:27:57.345] computeRestarts <- base::computeRestarts [17:27:57.345] grepl <- base::grepl [17:27:57.345] restarts <- computeRestarts(cond) [17:27:57.345] for (restart in restarts) { [17:27:57.345] name <- restart$name [17:27:57.345] if (is.null(name)) [17:27:57.345] next [17:27:57.345] if (!grepl(pattern, name)) [17:27:57.345] next [17:27:57.345] invokeRestart(restart) [17:27:57.345] muffled <- TRUE [17:27:57.345] break [17:27:57.345] } [17:27:57.345] } [17:27:57.345] } [17:27:57.345] invisible(muffled) [17:27:57.345] } [17:27:57.345] muffleCondition(cond, pattern = "^muffle") [17:27:57.345] } [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] if (TRUE) { [17:27:57.345] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.345] { [17:27:57.345] inherits <- base::inherits [17:27:57.345] invokeRestart <- base::invokeRestart [17:27:57.345] is.null <- base::is.null [17:27:57.345] muffled <- FALSE [17:27:57.345] if (inherits(cond, "message")) { [17:27:57.345] muffled <- grepl(pattern, "muffleMessage") [17:27:57.345] if (muffled) [17:27:57.345] invokeRestart("muffleMessage") [17:27:57.345] } [17:27:57.345] else if (inherits(cond, "warning")) { [17:27:57.345] muffled <- grepl(pattern, "muffleWarning") [17:27:57.345] if (muffled) [17:27:57.345] invokeRestart("muffleWarning") [17:27:57.345] } [17:27:57.345] else if (inherits(cond, "condition")) { [17:27:57.345] if (!is.null(pattern)) { [17:27:57.345] computeRestarts <- base::computeRestarts [17:27:57.345] grepl <- base::grepl [17:27:57.345] restarts <- computeRestarts(cond) [17:27:57.345] for (restart in restarts) { [17:27:57.345] name <- restart$name [17:27:57.345] if (is.null(name)) [17:27:57.345] next [17:27:57.345] if (!grepl(pattern, name)) [17:27:57.345] next [17:27:57.345] invokeRestart(restart) [17:27:57.345] muffled <- TRUE [17:27:57.345] break [17:27:57.345] } [17:27:57.345] } [17:27:57.345] } [17:27:57.345] invisible(muffled) [17:27:57.345] } [17:27:57.345] muffleCondition(cond, pattern = "^muffle") [17:27:57.345] } [17:27:57.345] } [17:27:57.345] } [17:27:57.345] })) [17:27:57.345] }, error = function(ex) { [17:27:57.345] base::structure(base::list(value = NULL, visible = NULL, [17:27:57.345] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.345] ...future.rng), started = ...future.startTime, [17:27:57.345] finished = Sys.time(), session_uuid = NA_character_, [17:27:57.345] version = "1.8"), class = "FutureResult") [17:27:57.345] }, finally = { [17:27:57.345] if (!identical(...future.workdir, getwd())) [17:27:57.345] setwd(...future.workdir) [17:27:57.345] { [17:27:57.345] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:57.345] ...future.oldOptions$nwarnings <- NULL [17:27:57.345] } [17:27:57.345] base::options(...future.oldOptions) [17:27:57.345] if (.Platform$OS.type == "windows") { [17:27:57.345] old_names <- names(...future.oldEnvVars) [17:27:57.345] envs <- base::Sys.getenv() [17:27:57.345] names <- names(envs) [17:27:57.345] common <- intersect(names, old_names) [17:27:57.345] added <- setdiff(names, old_names) [17:27:57.345] removed <- setdiff(old_names, names) [17:27:57.345] changed <- common[...future.oldEnvVars[common] != [17:27:57.345] envs[common]] [17:27:57.345] NAMES <- toupper(changed) [17:27:57.345] args <- list() [17:27:57.345] for (kk in seq_along(NAMES)) { [17:27:57.345] name <- changed[[kk]] [17:27:57.345] NAME <- NAMES[[kk]] [17:27:57.345] if (name != NAME && is.element(NAME, old_names)) [17:27:57.345] next [17:27:57.345] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.345] } [17:27:57.345] NAMES <- toupper(added) [17:27:57.345] for (kk in seq_along(NAMES)) { [17:27:57.345] name <- added[[kk]] [17:27:57.345] NAME <- NAMES[[kk]] [17:27:57.345] if (name != NAME && is.element(NAME, old_names)) [17:27:57.345] next [17:27:57.345] args[[name]] <- "" [17:27:57.345] } [17:27:57.345] NAMES <- toupper(removed) [17:27:57.345] for (kk in seq_along(NAMES)) { [17:27:57.345] name <- removed[[kk]] [17:27:57.345] NAME <- NAMES[[kk]] [17:27:57.345] if (name != NAME && is.element(NAME, old_names)) [17:27:57.345] next [17:27:57.345] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.345] } [17:27:57.345] if (length(args) > 0) [17:27:57.345] base::do.call(base::Sys.setenv, args = args) [17:27:57.345] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:57.345] } [17:27:57.345] { [17:27:57.345] if (base::length(...future.futureOptionsAdded) > [17:27:57.345] 0L) { [17:27:57.345] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:57.345] base::names(opts) <- ...future.futureOptionsAdded [17:27:57.345] base::options(opts) [17:27:57.345] } [17:27:57.345] { [17:27:57.345] { [17:27:57.345] base::options(mc.cores = ...future.mc.cores.old) [17:27:57.345] NULL [17:27:57.345] } [17:27:57.345] options(future.plan = NULL) [17:27:57.345] if (is.na(NA_character_)) [17:27:57.345] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.345] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:57.345] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:57.345] .init = FALSE) [17:27:57.345] } [17:27:57.345] } [17:27:57.345] } [17:27:57.345] }) [17:27:57.345] if (TRUE) { [17:27:57.345] base::sink(type = "output", split = FALSE) [17:27:57.345] if (TRUE) { [17:27:57.345] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:57.345] } [17:27:57.345] else { [17:27:57.345] ...future.result["stdout"] <- base::list(NULL) [17:27:57.345] } [17:27:57.345] base::close(...future.stdout) [17:27:57.345] ...future.stdout <- NULL [17:27:57.345] } [17:27:57.345] ...future.result$conditions <- ...future.conditions [17:27:57.345] ...future.result$finished <- base::Sys.time() [17:27:57.345] ...future.result [17:27:57.345] } [17:27:57.351] MultisessionFuture started [17:27:57.351] - Launch lazy future ... done [17:27:57.351] run() for 'MultisessionFuture' ... done [17:27:57.352] getGlobalsAndPackages() ... [17:27:57.352] Searching for globals... [17:27:57.353] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:57.353] Searching for globals ... DONE [17:27:57.353] Resolving globals: FALSE [17:27:57.354] [17:27:57.354] [17:27:57.354] getGlobalsAndPackages() ... DONE - w/ exception ... [17:27:57.355] getGlobalsAndPackages() ... [17:27:57.355] Searching for globals... [17:27:57.358] - globals found: [2] 'list', 'stop' [17:27:57.358] Searching for globals ... DONE [17:27:57.358] Resolving globals: FALSE [17:27:57.359] [17:27:57.359] [17:27:57.359] getGlobalsAndPackages() ... DONE [17:27:57.359] run() for 'Future' ... [17:27:57.359] - state: 'created' [17:27:57.360] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:57.374] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:57.374] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:57.374] - Field: 'node' [17:27:57.374] - Field: 'label' [17:27:57.374] - Field: 'local' [17:27:57.374] - Field: 'owner' [17:27:57.375] - Field: 'envir' [17:27:57.375] - Field: 'workers' [17:27:57.375] - Field: 'packages' [17:27:57.375] - Field: 'gc' [17:27:57.375] - Field: 'conditions' [17:27:57.376] - Field: 'persistent' [17:27:57.376] - Field: 'expr' [17:27:57.376] - Field: 'uuid' [17:27:57.376] - Field: 'seed' [17:27:57.376] - Field: 'version' [17:27:57.376] - Field: 'result' [17:27:57.377] - Field: 'asynchronous' [17:27:57.377] - Field: 'calls' [17:27:57.377] - Field: 'globals' [17:27:57.377] - Field: 'stdout' [17:27:57.377] - Field: 'earlySignal' [17:27:57.377] - Field: 'lazy' [17:27:57.378] - Field: 'state' [17:27:57.378] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:57.378] - Launch lazy future ... [17:27:57.378] Packages needed by the future expression (n = 0): [17:27:57.378] Packages needed by future strategies (n = 0): [17:27:57.379] { [17:27:57.379] { [17:27:57.379] { [17:27:57.379] ...future.startTime <- base::Sys.time() [17:27:57.379] { [17:27:57.379] { [17:27:57.379] { [17:27:57.379] { [17:27:57.379] base::local({ [17:27:57.379] has_future <- base::requireNamespace("future", [17:27:57.379] quietly = TRUE) [17:27:57.379] if (has_future) { [17:27:57.379] ns <- base::getNamespace("future") [17:27:57.379] version <- ns[[".package"]][["version"]] [17:27:57.379] if (is.null(version)) [17:27:57.379] version <- utils::packageVersion("future") [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] version <- NULL [17:27:57.379] } [17:27:57.379] if (!has_future || version < "1.8.0") { [17:27:57.379] info <- base::c(r_version = base::gsub("R version ", [17:27:57.379] "", base::R.version$version.string), [17:27:57.379] platform = base::sprintf("%s (%s-bit)", [17:27:57.379] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:57.379] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:57.379] "release", "version")], collapse = " "), [17:27:57.379] hostname = base::Sys.info()[["nodename"]]) [17:27:57.379] info <- base::sprintf("%s: %s", base::names(info), [17:27:57.379] info) [17:27:57.379] info <- base::paste(info, collapse = "; ") [17:27:57.379] if (!has_future) { [17:27:57.379] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:57.379] info) [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:57.379] info, version) [17:27:57.379] } [17:27:57.379] base::stop(msg) [17:27:57.379] } [17:27:57.379] }) [17:27:57.379] } [17:27:57.379] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:57.379] base::options(mc.cores = 1L) [17:27:57.379] } [17:27:57.379] ...future.strategy.old <- future::plan("list") [17:27:57.379] options(future.plan = NULL) [17:27:57.379] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.379] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:57.379] } [17:27:57.379] ...future.workdir <- getwd() [17:27:57.379] } [17:27:57.379] ...future.oldOptions <- base::as.list(base::.Options) [17:27:57.379] ...future.oldEnvVars <- base::Sys.getenv() [17:27:57.379] } [17:27:57.379] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:57.379] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:57.379] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:57.379] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:57.379] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:57.379] future.stdout.windows.reencode = NULL, width = 80L) [17:27:57.379] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:57.379] base::names(...future.oldOptions)) [17:27:57.379] } [17:27:57.379] if (FALSE) { [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] if (TRUE) { [17:27:57.379] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:57.379] open = "w") [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:57.379] windows = "NUL", "/dev/null"), open = "w") [17:27:57.379] } [17:27:57.379] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:57.379] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:57.379] base::sink(type = "output", split = FALSE) [17:27:57.379] base::close(...future.stdout) [17:27:57.379] }, add = TRUE) [17:27:57.379] } [17:27:57.379] ...future.frame <- base::sys.nframe() [17:27:57.379] ...future.conditions <- base::list() [17:27:57.379] ...future.rng <- base::globalenv()$.Random.seed [17:27:57.379] if (FALSE) { [17:27:57.379] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:57.379] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:57.379] } [17:27:57.379] ...future.result <- base::tryCatch({ [17:27:57.379] base::withCallingHandlers({ [17:27:57.379] ...future.value <- base::withVisible(base::local({ [17:27:57.379] ...future.makeSendCondition <- base::local({ [17:27:57.379] sendCondition <- NULL [17:27:57.379] function(frame = 1L) { [17:27:57.379] if (is.function(sendCondition)) [17:27:57.379] return(sendCondition) [17:27:57.379] ns <- getNamespace("parallel") [17:27:57.379] if (exists("sendData", mode = "function", [17:27:57.379] envir = ns)) { [17:27:57.379] parallel_sendData <- get("sendData", mode = "function", [17:27:57.379] envir = ns) [17:27:57.379] envir <- sys.frame(frame) [17:27:57.379] master <- NULL [17:27:57.379] while (!identical(envir, .GlobalEnv) && [17:27:57.379] !identical(envir, emptyenv())) { [17:27:57.379] if (exists("master", mode = "list", envir = envir, [17:27:57.379] inherits = FALSE)) { [17:27:57.379] master <- get("master", mode = "list", [17:27:57.379] envir = envir, inherits = FALSE) [17:27:57.379] if (inherits(master, c("SOCKnode", [17:27:57.379] "SOCK0node"))) { [17:27:57.379] sendCondition <<- function(cond) { [17:27:57.379] data <- list(type = "VALUE", value = cond, [17:27:57.379] success = TRUE) [17:27:57.379] parallel_sendData(master, data) [17:27:57.379] } [17:27:57.379] return(sendCondition) [17:27:57.379] } [17:27:57.379] } [17:27:57.379] frame <- frame + 1L [17:27:57.379] envir <- sys.frame(frame) [17:27:57.379] } [17:27:57.379] } [17:27:57.379] sendCondition <<- function(cond) NULL [17:27:57.379] } [17:27:57.379] }) [17:27:57.379] withCallingHandlers({ [17:27:57.379] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:57.379] }, immediateCondition = function(cond) { [17:27:57.379] sendCondition <- ...future.makeSendCondition() [17:27:57.379] sendCondition(cond) [17:27:57.379] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.379] { [17:27:57.379] inherits <- base::inherits [17:27:57.379] invokeRestart <- base::invokeRestart [17:27:57.379] is.null <- base::is.null [17:27:57.379] muffled <- FALSE [17:27:57.379] if (inherits(cond, "message")) { [17:27:57.379] muffled <- grepl(pattern, "muffleMessage") [17:27:57.379] if (muffled) [17:27:57.379] invokeRestart("muffleMessage") [17:27:57.379] } [17:27:57.379] else if (inherits(cond, "warning")) { [17:27:57.379] muffled <- grepl(pattern, "muffleWarning") [17:27:57.379] if (muffled) [17:27:57.379] invokeRestart("muffleWarning") [17:27:57.379] } [17:27:57.379] else if (inherits(cond, "condition")) { [17:27:57.379] if (!is.null(pattern)) { [17:27:57.379] computeRestarts <- base::computeRestarts [17:27:57.379] grepl <- base::grepl [17:27:57.379] restarts <- computeRestarts(cond) [17:27:57.379] for (restart in restarts) { [17:27:57.379] name <- restart$name [17:27:57.379] if (is.null(name)) [17:27:57.379] next [17:27:57.379] if (!grepl(pattern, name)) [17:27:57.379] next [17:27:57.379] invokeRestart(restart) [17:27:57.379] muffled <- TRUE [17:27:57.379] break [17:27:57.379] } [17:27:57.379] } [17:27:57.379] } [17:27:57.379] invisible(muffled) [17:27:57.379] } [17:27:57.379] muffleCondition(cond) [17:27:57.379] }) [17:27:57.379] })) [17:27:57.379] future::FutureResult(value = ...future.value$value, [17:27:57.379] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.379] ...future.rng), globalenv = if (FALSE) [17:27:57.379] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:57.379] ...future.globalenv.names)) [17:27:57.379] else NULL, started = ...future.startTime, version = "1.8") [17:27:57.379] }, condition = base::local({ [17:27:57.379] c <- base::c [17:27:57.379] inherits <- base::inherits [17:27:57.379] invokeRestart <- base::invokeRestart [17:27:57.379] length <- base::length [17:27:57.379] list <- base::list [17:27:57.379] seq.int <- base::seq.int [17:27:57.379] signalCondition <- base::signalCondition [17:27:57.379] sys.calls <- base::sys.calls [17:27:57.379] `[[` <- base::`[[` [17:27:57.379] `+` <- base::`+` [17:27:57.379] `<<-` <- base::`<<-` [17:27:57.379] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:57.379] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:57.379] 3L)] [17:27:57.379] } [17:27:57.379] function(cond) { [17:27:57.379] is_error <- inherits(cond, "error") [17:27:57.379] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:57.379] NULL) [17:27:57.379] if (is_error) { [17:27:57.379] sessionInformation <- function() { [17:27:57.379] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:57.379] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:57.379] search = base::search(), system = base::Sys.info()) [17:27:57.379] } [17:27:57.379] ...future.conditions[[length(...future.conditions) + [17:27:57.379] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:57.379] cond$call), session = sessionInformation(), [17:27:57.379] timestamp = base::Sys.time(), signaled = 0L) [17:27:57.379] signalCondition(cond) [17:27:57.379] } [17:27:57.379] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:57.379] "immediateCondition"))) { [17:27:57.379] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:57.379] ...future.conditions[[length(...future.conditions) + [17:27:57.379] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:57.379] if (TRUE && !signal) { [17:27:57.379] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.379] { [17:27:57.379] inherits <- base::inherits [17:27:57.379] invokeRestart <- base::invokeRestart [17:27:57.379] is.null <- base::is.null [17:27:57.379] muffled <- FALSE [17:27:57.379] if (inherits(cond, "message")) { [17:27:57.379] muffled <- grepl(pattern, "muffleMessage") [17:27:57.379] if (muffled) [17:27:57.379] invokeRestart("muffleMessage") [17:27:57.379] } [17:27:57.379] else if (inherits(cond, "warning")) { [17:27:57.379] muffled <- grepl(pattern, "muffleWarning") [17:27:57.379] if (muffled) [17:27:57.379] invokeRestart("muffleWarning") [17:27:57.379] } [17:27:57.379] else if (inherits(cond, "condition")) { [17:27:57.379] if (!is.null(pattern)) { [17:27:57.379] computeRestarts <- base::computeRestarts [17:27:57.379] grepl <- base::grepl [17:27:57.379] restarts <- computeRestarts(cond) [17:27:57.379] for (restart in restarts) { [17:27:57.379] name <- restart$name [17:27:57.379] if (is.null(name)) [17:27:57.379] next [17:27:57.379] if (!grepl(pattern, name)) [17:27:57.379] next [17:27:57.379] invokeRestart(restart) [17:27:57.379] muffled <- TRUE [17:27:57.379] break [17:27:57.379] } [17:27:57.379] } [17:27:57.379] } [17:27:57.379] invisible(muffled) [17:27:57.379] } [17:27:57.379] muffleCondition(cond, pattern = "^muffle") [17:27:57.379] } [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] if (TRUE) { [17:27:57.379] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.379] { [17:27:57.379] inherits <- base::inherits [17:27:57.379] invokeRestart <- base::invokeRestart [17:27:57.379] is.null <- base::is.null [17:27:57.379] muffled <- FALSE [17:27:57.379] if (inherits(cond, "message")) { [17:27:57.379] muffled <- grepl(pattern, "muffleMessage") [17:27:57.379] if (muffled) [17:27:57.379] invokeRestart("muffleMessage") [17:27:57.379] } [17:27:57.379] else if (inherits(cond, "warning")) { [17:27:57.379] muffled <- grepl(pattern, "muffleWarning") [17:27:57.379] if (muffled) [17:27:57.379] invokeRestart("muffleWarning") [17:27:57.379] } [17:27:57.379] else if (inherits(cond, "condition")) { [17:27:57.379] if (!is.null(pattern)) { [17:27:57.379] computeRestarts <- base::computeRestarts [17:27:57.379] grepl <- base::grepl [17:27:57.379] restarts <- computeRestarts(cond) [17:27:57.379] for (restart in restarts) { [17:27:57.379] name <- restart$name [17:27:57.379] if (is.null(name)) [17:27:57.379] next [17:27:57.379] if (!grepl(pattern, name)) [17:27:57.379] next [17:27:57.379] invokeRestart(restart) [17:27:57.379] muffled <- TRUE [17:27:57.379] break [17:27:57.379] } [17:27:57.379] } [17:27:57.379] } [17:27:57.379] invisible(muffled) [17:27:57.379] } [17:27:57.379] muffleCondition(cond, pattern = "^muffle") [17:27:57.379] } [17:27:57.379] } [17:27:57.379] } [17:27:57.379] })) [17:27:57.379] }, error = function(ex) { [17:27:57.379] base::structure(base::list(value = NULL, visible = NULL, [17:27:57.379] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.379] ...future.rng), started = ...future.startTime, [17:27:57.379] finished = Sys.time(), session_uuid = NA_character_, [17:27:57.379] version = "1.8"), class = "FutureResult") [17:27:57.379] }, finally = { [17:27:57.379] if (!identical(...future.workdir, getwd())) [17:27:57.379] setwd(...future.workdir) [17:27:57.379] { [17:27:57.379] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:57.379] ...future.oldOptions$nwarnings <- NULL [17:27:57.379] } [17:27:57.379] base::options(...future.oldOptions) [17:27:57.379] if (.Platform$OS.type == "windows") { [17:27:57.379] old_names <- names(...future.oldEnvVars) [17:27:57.379] envs <- base::Sys.getenv() [17:27:57.379] names <- names(envs) [17:27:57.379] common <- intersect(names, old_names) [17:27:57.379] added <- setdiff(names, old_names) [17:27:57.379] removed <- setdiff(old_names, names) [17:27:57.379] changed <- common[...future.oldEnvVars[common] != [17:27:57.379] envs[common]] [17:27:57.379] NAMES <- toupper(changed) [17:27:57.379] args <- list() [17:27:57.379] for (kk in seq_along(NAMES)) { [17:27:57.379] name <- changed[[kk]] [17:27:57.379] NAME <- NAMES[[kk]] [17:27:57.379] if (name != NAME && is.element(NAME, old_names)) [17:27:57.379] next [17:27:57.379] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.379] } [17:27:57.379] NAMES <- toupper(added) [17:27:57.379] for (kk in seq_along(NAMES)) { [17:27:57.379] name <- added[[kk]] [17:27:57.379] NAME <- NAMES[[kk]] [17:27:57.379] if (name != NAME && is.element(NAME, old_names)) [17:27:57.379] next [17:27:57.379] args[[name]] <- "" [17:27:57.379] } [17:27:57.379] NAMES <- toupper(removed) [17:27:57.379] for (kk in seq_along(NAMES)) { [17:27:57.379] name <- removed[[kk]] [17:27:57.379] NAME <- NAMES[[kk]] [17:27:57.379] if (name != NAME && is.element(NAME, old_names)) [17:27:57.379] next [17:27:57.379] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.379] } [17:27:57.379] if (length(args) > 0) [17:27:57.379] base::do.call(base::Sys.setenv, args = args) [17:27:57.379] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:57.379] } [17:27:57.379] { [17:27:57.379] if (base::length(...future.futureOptionsAdded) > [17:27:57.379] 0L) { [17:27:57.379] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:57.379] base::names(opts) <- ...future.futureOptionsAdded [17:27:57.379] base::options(opts) [17:27:57.379] } [17:27:57.379] { [17:27:57.379] { [17:27:57.379] base::options(mc.cores = ...future.mc.cores.old) [17:27:57.379] NULL [17:27:57.379] } [17:27:57.379] options(future.plan = NULL) [17:27:57.379] if (is.na(NA_character_)) [17:27:57.379] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.379] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:57.379] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:57.379] .init = FALSE) [17:27:57.379] } [17:27:57.379] } [17:27:57.379] } [17:27:57.379] }) [17:27:57.379] if (TRUE) { [17:27:57.379] base::sink(type = "output", split = FALSE) [17:27:57.379] if (TRUE) { [17:27:57.379] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:57.379] } [17:27:57.379] else { [17:27:57.379] ...future.result["stdout"] <- base::list(NULL) [17:27:57.379] } [17:27:57.379] base::close(...future.stdout) [17:27:57.379] ...future.stdout <- NULL [17:27:57.379] } [17:27:57.379] ...future.result$conditions <- ...future.conditions [17:27:57.379] ...future.result$finished <- base::Sys.time() [17:27:57.379] ...future.result [17:27:57.379] } [17:27:57.384] Poll #1 (0): usedNodes() = 2, workers = 2 [17:27:57.413] receiveMessageFromWorker() for ClusterFuture ... [17:27:57.414] - Validating connection of MultisessionFuture [17:27:57.414] - received message: FutureResult [17:27:57.414] - Received FutureResult [17:27:57.414] - Erased future from FutureRegistry [17:27:57.414] result() for ClusterFuture ... [17:27:57.415] - result already collected: FutureResult [17:27:57.415] result() for ClusterFuture ... done [17:27:57.415] receiveMessageFromWorker() for ClusterFuture ... done [17:27:57.415] result() for ClusterFuture ... [17:27:57.415] - result already collected: FutureResult [17:27:57.415] result() for ClusterFuture ... done [17:27:57.416] result() for ClusterFuture ... [17:27:57.416] - result already collected: FutureResult [17:27:57.416] result() for ClusterFuture ... done [17:27:57.417] MultisessionFuture started [17:27:57.417] - Launch lazy future ... done [17:27:57.417] run() for 'MultisessionFuture' ... done [17:27:57.418] getGlobalsAndPackages() ... [17:27:57.418] Searching for globals... [17:27:57.419] - globals found: [2] 'list', 'stop' [17:27:57.419] Searching for globals ... DONE [17:27:57.419] Resolving globals: FALSE [17:27:57.419] [17:27:57.420] [17:27:57.420] getGlobalsAndPackages() ... DONE - result = TRUE, recursive = -1 ... DONE - result = TRUE, recursive = 0 ... [17:27:57.420] getGlobalsAndPackages() ... [17:27:57.421] Searching for globals... [17:27:57.422] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:57.422] Searching for globals ... DONE [17:27:57.422] Resolving globals: FALSE [17:27:57.423] [17:27:57.423] [17:27:57.423] getGlobalsAndPackages() ... DONE [17:27:57.423] run() for 'Future' ... [17:27:57.423] - state: 'created' [17:27:57.424] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:57.437] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:57.437] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:57.437] - Field: 'node' [17:27:57.438] - Field: 'label' [17:27:57.438] - Field: 'local' [17:27:57.438] - Field: 'owner' [17:27:57.438] - Field: 'envir' [17:27:57.438] - Field: 'workers' [17:27:57.439] - Field: 'packages' [17:27:57.439] - Field: 'gc' [17:27:57.439] - Field: 'conditions' [17:27:57.439] - Field: 'persistent' [17:27:57.439] - Field: 'expr' [17:27:57.439] - Field: 'uuid' [17:27:57.440] - Field: 'seed' [17:27:57.440] - Field: 'version' [17:27:57.440] - Field: 'result' [17:27:57.440] - Field: 'asynchronous' [17:27:57.440] - Field: 'calls' [17:27:57.441] - Field: 'globals' [17:27:57.441] - Field: 'stdout' [17:27:57.441] - Field: 'earlySignal' [17:27:57.441] - Field: 'lazy' [17:27:57.441] - Field: 'state' [17:27:57.441] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:57.442] - Launch lazy future ... [17:27:57.442] Packages needed by the future expression (n = 0): [17:27:57.442] Packages needed by future strategies (n = 0): [17:27:57.443] { [17:27:57.443] { [17:27:57.443] { [17:27:57.443] ...future.startTime <- base::Sys.time() [17:27:57.443] { [17:27:57.443] { [17:27:57.443] { [17:27:57.443] { [17:27:57.443] base::local({ [17:27:57.443] has_future <- base::requireNamespace("future", [17:27:57.443] quietly = TRUE) [17:27:57.443] if (has_future) { [17:27:57.443] ns <- base::getNamespace("future") [17:27:57.443] version <- ns[[".package"]][["version"]] [17:27:57.443] if (is.null(version)) [17:27:57.443] version <- utils::packageVersion("future") [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] version <- NULL [17:27:57.443] } [17:27:57.443] if (!has_future || version < "1.8.0") { [17:27:57.443] info <- base::c(r_version = base::gsub("R version ", [17:27:57.443] "", base::R.version$version.string), [17:27:57.443] platform = base::sprintf("%s (%s-bit)", [17:27:57.443] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:57.443] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:57.443] "release", "version")], collapse = " "), [17:27:57.443] hostname = base::Sys.info()[["nodename"]]) [17:27:57.443] info <- base::sprintf("%s: %s", base::names(info), [17:27:57.443] info) [17:27:57.443] info <- base::paste(info, collapse = "; ") [17:27:57.443] if (!has_future) { [17:27:57.443] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:57.443] info) [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:57.443] info, version) [17:27:57.443] } [17:27:57.443] base::stop(msg) [17:27:57.443] } [17:27:57.443] }) [17:27:57.443] } [17:27:57.443] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:57.443] base::options(mc.cores = 1L) [17:27:57.443] } [17:27:57.443] ...future.strategy.old <- future::plan("list") [17:27:57.443] options(future.plan = NULL) [17:27:57.443] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.443] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:57.443] } [17:27:57.443] ...future.workdir <- getwd() [17:27:57.443] } [17:27:57.443] ...future.oldOptions <- base::as.list(base::.Options) [17:27:57.443] ...future.oldEnvVars <- base::Sys.getenv() [17:27:57.443] } [17:27:57.443] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:57.443] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:57.443] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:57.443] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:57.443] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:57.443] future.stdout.windows.reencode = NULL, width = 80L) [17:27:57.443] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:57.443] base::names(...future.oldOptions)) [17:27:57.443] } [17:27:57.443] if (FALSE) { [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] if (TRUE) { [17:27:57.443] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:57.443] open = "w") [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:57.443] windows = "NUL", "/dev/null"), open = "w") [17:27:57.443] } [17:27:57.443] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:57.443] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:57.443] base::sink(type = "output", split = FALSE) [17:27:57.443] base::close(...future.stdout) [17:27:57.443] }, add = TRUE) [17:27:57.443] } [17:27:57.443] ...future.frame <- base::sys.nframe() [17:27:57.443] ...future.conditions <- base::list() [17:27:57.443] ...future.rng <- base::globalenv()$.Random.seed [17:27:57.443] if (FALSE) { [17:27:57.443] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:57.443] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:57.443] } [17:27:57.443] ...future.result <- base::tryCatch({ [17:27:57.443] base::withCallingHandlers({ [17:27:57.443] ...future.value <- base::withVisible(base::local({ [17:27:57.443] ...future.makeSendCondition <- base::local({ [17:27:57.443] sendCondition <- NULL [17:27:57.443] function(frame = 1L) { [17:27:57.443] if (is.function(sendCondition)) [17:27:57.443] return(sendCondition) [17:27:57.443] ns <- getNamespace("parallel") [17:27:57.443] if (exists("sendData", mode = "function", [17:27:57.443] envir = ns)) { [17:27:57.443] parallel_sendData <- get("sendData", mode = "function", [17:27:57.443] envir = ns) [17:27:57.443] envir <- sys.frame(frame) [17:27:57.443] master <- NULL [17:27:57.443] while (!identical(envir, .GlobalEnv) && [17:27:57.443] !identical(envir, emptyenv())) { [17:27:57.443] if (exists("master", mode = "list", envir = envir, [17:27:57.443] inherits = FALSE)) { [17:27:57.443] master <- get("master", mode = "list", [17:27:57.443] envir = envir, inherits = FALSE) [17:27:57.443] if (inherits(master, c("SOCKnode", [17:27:57.443] "SOCK0node"))) { [17:27:57.443] sendCondition <<- function(cond) { [17:27:57.443] data <- list(type = "VALUE", value = cond, [17:27:57.443] success = TRUE) [17:27:57.443] parallel_sendData(master, data) [17:27:57.443] } [17:27:57.443] return(sendCondition) [17:27:57.443] } [17:27:57.443] } [17:27:57.443] frame <- frame + 1L [17:27:57.443] envir <- sys.frame(frame) [17:27:57.443] } [17:27:57.443] } [17:27:57.443] sendCondition <<- function(cond) NULL [17:27:57.443] } [17:27:57.443] }) [17:27:57.443] withCallingHandlers({ [17:27:57.443] { [17:27:57.443] Sys.sleep(0.5) [17:27:57.443] list(a = 1, b = 42L) [17:27:57.443] } [17:27:57.443] }, immediateCondition = function(cond) { [17:27:57.443] sendCondition <- ...future.makeSendCondition() [17:27:57.443] sendCondition(cond) [17:27:57.443] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.443] { [17:27:57.443] inherits <- base::inherits [17:27:57.443] invokeRestart <- base::invokeRestart [17:27:57.443] is.null <- base::is.null [17:27:57.443] muffled <- FALSE [17:27:57.443] if (inherits(cond, "message")) { [17:27:57.443] muffled <- grepl(pattern, "muffleMessage") [17:27:57.443] if (muffled) [17:27:57.443] invokeRestart("muffleMessage") [17:27:57.443] } [17:27:57.443] else if (inherits(cond, "warning")) { [17:27:57.443] muffled <- grepl(pattern, "muffleWarning") [17:27:57.443] if (muffled) [17:27:57.443] invokeRestart("muffleWarning") [17:27:57.443] } [17:27:57.443] else if (inherits(cond, "condition")) { [17:27:57.443] if (!is.null(pattern)) { [17:27:57.443] computeRestarts <- base::computeRestarts [17:27:57.443] grepl <- base::grepl [17:27:57.443] restarts <- computeRestarts(cond) [17:27:57.443] for (restart in restarts) { [17:27:57.443] name <- restart$name [17:27:57.443] if (is.null(name)) [17:27:57.443] next [17:27:57.443] if (!grepl(pattern, name)) [17:27:57.443] next [17:27:57.443] invokeRestart(restart) [17:27:57.443] muffled <- TRUE [17:27:57.443] break [17:27:57.443] } [17:27:57.443] } [17:27:57.443] } [17:27:57.443] invisible(muffled) [17:27:57.443] } [17:27:57.443] muffleCondition(cond) [17:27:57.443] }) [17:27:57.443] })) [17:27:57.443] future::FutureResult(value = ...future.value$value, [17:27:57.443] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.443] ...future.rng), globalenv = if (FALSE) [17:27:57.443] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:57.443] ...future.globalenv.names)) [17:27:57.443] else NULL, started = ...future.startTime, version = "1.8") [17:27:57.443] }, condition = base::local({ [17:27:57.443] c <- base::c [17:27:57.443] inherits <- base::inherits [17:27:57.443] invokeRestart <- base::invokeRestart [17:27:57.443] length <- base::length [17:27:57.443] list <- base::list [17:27:57.443] seq.int <- base::seq.int [17:27:57.443] signalCondition <- base::signalCondition [17:27:57.443] sys.calls <- base::sys.calls [17:27:57.443] `[[` <- base::`[[` [17:27:57.443] `+` <- base::`+` [17:27:57.443] `<<-` <- base::`<<-` [17:27:57.443] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:57.443] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:57.443] 3L)] [17:27:57.443] } [17:27:57.443] function(cond) { [17:27:57.443] is_error <- inherits(cond, "error") [17:27:57.443] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:57.443] NULL) [17:27:57.443] if (is_error) { [17:27:57.443] sessionInformation <- function() { [17:27:57.443] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:57.443] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:57.443] search = base::search(), system = base::Sys.info()) [17:27:57.443] } [17:27:57.443] ...future.conditions[[length(...future.conditions) + [17:27:57.443] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:57.443] cond$call), session = sessionInformation(), [17:27:57.443] timestamp = base::Sys.time(), signaled = 0L) [17:27:57.443] signalCondition(cond) [17:27:57.443] } [17:27:57.443] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:57.443] "immediateCondition"))) { [17:27:57.443] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:57.443] ...future.conditions[[length(...future.conditions) + [17:27:57.443] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:57.443] if (TRUE && !signal) { [17:27:57.443] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.443] { [17:27:57.443] inherits <- base::inherits [17:27:57.443] invokeRestart <- base::invokeRestart [17:27:57.443] is.null <- base::is.null [17:27:57.443] muffled <- FALSE [17:27:57.443] if (inherits(cond, "message")) { [17:27:57.443] muffled <- grepl(pattern, "muffleMessage") [17:27:57.443] if (muffled) [17:27:57.443] invokeRestart("muffleMessage") [17:27:57.443] } [17:27:57.443] else if (inherits(cond, "warning")) { [17:27:57.443] muffled <- grepl(pattern, "muffleWarning") [17:27:57.443] if (muffled) [17:27:57.443] invokeRestart("muffleWarning") [17:27:57.443] } [17:27:57.443] else if (inherits(cond, "condition")) { [17:27:57.443] if (!is.null(pattern)) { [17:27:57.443] computeRestarts <- base::computeRestarts [17:27:57.443] grepl <- base::grepl [17:27:57.443] restarts <- computeRestarts(cond) [17:27:57.443] for (restart in restarts) { [17:27:57.443] name <- restart$name [17:27:57.443] if (is.null(name)) [17:27:57.443] next [17:27:57.443] if (!grepl(pattern, name)) [17:27:57.443] next [17:27:57.443] invokeRestart(restart) [17:27:57.443] muffled <- TRUE [17:27:57.443] break [17:27:57.443] } [17:27:57.443] } [17:27:57.443] } [17:27:57.443] invisible(muffled) [17:27:57.443] } [17:27:57.443] muffleCondition(cond, pattern = "^muffle") [17:27:57.443] } [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] if (TRUE) { [17:27:57.443] muffleCondition <- function (cond, pattern = "^muffle") [17:27:57.443] { [17:27:57.443] inherits <- base::inherits [17:27:57.443] invokeRestart <- base::invokeRestart [17:27:57.443] is.null <- base::is.null [17:27:57.443] muffled <- FALSE [17:27:57.443] if (inherits(cond, "message")) { [17:27:57.443] muffled <- grepl(pattern, "muffleMessage") [17:27:57.443] if (muffled) [17:27:57.443] invokeRestart("muffleMessage") [17:27:57.443] } [17:27:57.443] else if (inherits(cond, "warning")) { [17:27:57.443] muffled <- grepl(pattern, "muffleWarning") [17:27:57.443] if (muffled) [17:27:57.443] invokeRestart("muffleWarning") [17:27:57.443] } [17:27:57.443] else if (inherits(cond, "condition")) { [17:27:57.443] if (!is.null(pattern)) { [17:27:57.443] computeRestarts <- base::computeRestarts [17:27:57.443] grepl <- base::grepl [17:27:57.443] restarts <- computeRestarts(cond) [17:27:57.443] for (restart in restarts) { [17:27:57.443] name <- restart$name [17:27:57.443] if (is.null(name)) [17:27:57.443] next [17:27:57.443] if (!grepl(pattern, name)) [17:27:57.443] next [17:27:57.443] invokeRestart(restart) [17:27:57.443] muffled <- TRUE [17:27:57.443] break [17:27:57.443] } [17:27:57.443] } [17:27:57.443] } [17:27:57.443] invisible(muffled) [17:27:57.443] } [17:27:57.443] muffleCondition(cond, pattern = "^muffle") [17:27:57.443] } [17:27:57.443] } [17:27:57.443] } [17:27:57.443] })) [17:27:57.443] }, error = function(ex) { [17:27:57.443] base::structure(base::list(value = NULL, visible = NULL, [17:27:57.443] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:57.443] ...future.rng), started = ...future.startTime, [17:27:57.443] finished = Sys.time(), session_uuid = NA_character_, [17:27:57.443] version = "1.8"), class = "FutureResult") [17:27:57.443] }, finally = { [17:27:57.443] if (!identical(...future.workdir, getwd())) [17:27:57.443] setwd(...future.workdir) [17:27:57.443] { [17:27:57.443] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:57.443] ...future.oldOptions$nwarnings <- NULL [17:27:57.443] } [17:27:57.443] base::options(...future.oldOptions) [17:27:57.443] if (.Platform$OS.type == "windows") { [17:27:57.443] old_names <- names(...future.oldEnvVars) [17:27:57.443] envs <- base::Sys.getenv() [17:27:57.443] names <- names(envs) [17:27:57.443] common <- intersect(names, old_names) [17:27:57.443] added <- setdiff(names, old_names) [17:27:57.443] removed <- setdiff(old_names, names) [17:27:57.443] changed <- common[...future.oldEnvVars[common] != [17:27:57.443] envs[common]] [17:27:57.443] NAMES <- toupper(changed) [17:27:57.443] args <- list() [17:27:57.443] for (kk in seq_along(NAMES)) { [17:27:57.443] name <- changed[[kk]] [17:27:57.443] NAME <- NAMES[[kk]] [17:27:57.443] if (name != NAME && is.element(NAME, old_names)) [17:27:57.443] next [17:27:57.443] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.443] } [17:27:57.443] NAMES <- toupper(added) [17:27:57.443] for (kk in seq_along(NAMES)) { [17:27:57.443] name <- added[[kk]] [17:27:57.443] NAME <- NAMES[[kk]] [17:27:57.443] if (name != NAME && is.element(NAME, old_names)) [17:27:57.443] next [17:27:57.443] args[[name]] <- "" [17:27:57.443] } [17:27:57.443] NAMES <- toupper(removed) [17:27:57.443] for (kk in seq_along(NAMES)) { [17:27:57.443] name <- removed[[kk]] [17:27:57.443] NAME <- NAMES[[kk]] [17:27:57.443] if (name != NAME && is.element(NAME, old_names)) [17:27:57.443] next [17:27:57.443] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:57.443] } [17:27:57.443] if (length(args) > 0) [17:27:57.443] base::do.call(base::Sys.setenv, args = args) [17:27:57.443] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:57.443] } [17:27:57.443] { [17:27:57.443] if (base::length(...future.futureOptionsAdded) > [17:27:57.443] 0L) { [17:27:57.443] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:57.443] base::names(opts) <- ...future.futureOptionsAdded [17:27:57.443] base::options(opts) [17:27:57.443] } [17:27:57.443] { [17:27:57.443] { [17:27:57.443] base::options(mc.cores = ...future.mc.cores.old) [17:27:57.443] NULL [17:27:57.443] } [17:27:57.443] options(future.plan = NULL) [17:27:57.443] if (is.na(NA_character_)) [17:27:57.443] Sys.unsetenv("R_FUTURE_PLAN") [17:27:57.443] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:57.443] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:57.443] .init = FALSE) [17:27:57.443] } [17:27:57.443] } [17:27:57.443] } [17:27:57.443] }) [17:27:57.443] if (TRUE) { [17:27:57.443] base::sink(type = "output", split = FALSE) [17:27:57.443] if (TRUE) { [17:27:57.443] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:57.443] } [17:27:57.443] else { [17:27:57.443] ...future.result["stdout"] <- base::list(NULL) [17:27:57.443] } [17:27:57.443] base::close(...future.stdout) [17:27:57.443] ...future.stdout <- NULL [17:27:57.443] } [17:27:57.443] ...future.result$conditions <- ...future.conditions [17:27:57.443] ...future.result$finished <- base::Sys.time() [17:27:57.443] ...future.result [17:27:57.443] } [17:27:57.447] Poll #1 (0): usedNodes() = 2, workers = 2 [17:27:57.670] receiveMessageFromWorker() for ClusterFuture ... [17:27:57.670] - Validating connection of MultisessionFuture [17:27:57.671] - received message: FutureResult [17:27:57.671] - Received FutureResult [17:27:57.671] - Erased future from FutureRegistry [17:27:57.671] result() for ClusterFuture ... [17:27:57.671] - result already collected: FutureResult [17:27:57.672] result() for ClusterFuture ... done [17:27:57.672] signalConditions() ... [17:27:57.672] - include = 'immediateCondition' [17:27:57.672] - exclude = [17:27:57.672] - resignal = FALSE [17:27:57.672] - Number of conditions: 1 [17:27:57.673] signalConditions() ... done [17:27:57.673] receiveMessageFromWorker() for ClusterFuture ... done [17:27:57.673] result() for ClusterFuture ... [17:27:57.673] - result already collected: FutureResult [17:27:57.673] result() for ClusterFuture ... done [17:27:57.674] result() for ClusterFuture ... [17:27:57.674] - result already collected: FutureResult [17:27:57.674] result() for ClusterFuture ... done [17:27:57.674] signalConditions() ... [17:27:57.674] - include = 'immediateCondition' [17:27:57.674] - exclude = [17:27:57.675] - resignal = FALSE [17:27:57.675] - Number of conditions: 1 [17:27:57.675] signalConditions() ... done [17:27:57.676] MultisessionFuture started [17:27:57.676] - Launch lazy future ... done [17:27:57.676] run() for 'MultisessionFuture' ... done [17:27:58.200] receiveMessageFromWorker() for ClusterFuture ... [17:27:58.200] - Validating connection of MultisessionFuture [17:27:58.200] - received message: FutureResult [17:27:58.201] - Received FutureResult [17:27:58.201] - Erased future from FutureRegistry [17:27:58.201] result() for ClusterFuture ... [17:27:58.201] - result already collected: FutureResult [17:27:58.201] result() for ClusterFuture ... done [17:27:58.201] receiveMessageFromWorker() for ClusterFuture ... done [17:27:58.202] A MultisessionFuture was resolved [17:27:58.202] getGlobalsAndPackages() ... [17:27:58.202] Searching for globals... [17:27:58.203] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:58.203] Searching for globals ... DONE [17:27:58.204] Resolving globals: FALSE [17:27:58.204] [17:27:58.204] [17:27:58.204] getGlobalsAndPackages() ... DONE [17:27:58.205] run() for 'Future' ... [17:27:58.205] - state: 'created' [17:27:58.205] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:58.219] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:58.219] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:58.219] - Field: 'node' [17:27:58.219] - Field: 'label' [17:27:58.219] - Field: 'local' [17:27:58.220] - Field: 'owner' [17:27:58.220] - Field: 'envir' [17:27:58.220] - Field: 'workers' [17:27:58.220] - Field: 'packages' [17:27:58.220] - Field: 'gc' [17:27:58.220] - Field: 'conditions' [17:27:58.221] - Field: 'persistent' [17:27:58.221] - Field: 'expr' [17:27:58.221] - Field: 'uuid' [17:27:58.221] - Field: 'seed' [17:27:58.221] - Field: 'version' [17:27:58.222] - Field: 'result' [17:27:58.222] - Field: 'asynchronous' [17:27:58.222] - Field: 'calls' [17:27:58.222] - Field: 'globals' [17:27:58.222] - Field: 'stdout' [17:27:58.222] - Field: 'earlySignal' [17:27:58.223] - Field: 'lazy' [17:27:58.223] - Field: 'state' [17:27:58.223] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:58.223] - Launch lazy future ... [17:27:58.223] Packages needed by the future expression (n = 0): [17:27:58.224] Packages needed by future strategies (n = 0): [17:27:58.224] { [17:27:58.224] { [17:27:58.224] { [17:27:58.224] ...future.startTime <- base::Sys.time() [17:27:58.224] { [17:27:58.224] { [17:27:58.224] { [17:27:58.224] { [17:27:58.224] base::local({ [17:27:58.224] has_future <- base::requireNamespace("future", [17:27:58.224] quietly = TRUE) [17:27:58.224] if (has_future) { [17:27:58.224] ns <- base::getNamespace("future") [17:27:58.224] version <- ns[[".package"]][["version"]] [17:27:58.224] if (is.null(version)) [17:27:58.224] version <- utils::packageVersion("future") [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] version <- NULL [17:27:58.224] } [17:27:58.224] if (!has_future || version < "1.8.0") { [17:27:58.224] info <- base::c(r_version = base::gsub("R version ", [17:27:58.224] "", base::R.version$version.string), [17:27:58.224] platform = base::sprintf("%s (%s-bit)", [17:27:58.224] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:58.224] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:58.224] "release", "version")], collapse = " "), [17:27:58.224] hostname = base::Sys.info()[["nodename"]]) [17:27:58.224] info <- base::sprintf("%s: %s", base::names(info), [17:27:58.224] info) [17:27:58.224] info <- base::paste(info, collapse = "; ") [17:27:58.224] if (!has_future) { [17:27:58.224] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:58.224] info) [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:58.224] info, version) [17:27:58.224] } [17:27:58.224] base::stop(msg) [17:27:58.224] } [17:27:58.224] }) [17:27:58.224] } [17:27:58.224] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:58.224] base::options(mc.cores = 1L) [17:27:58.224] } [17:27:58.224] ...future.strategy.old <- future::plan("list") [17:27:58.224] options(future.plan = NULL) [17:27:58.224] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.224] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:58.224] } [17:27:58.224] ...future.workdir <- getwd() [17:27:58.224] } [17:27:58.224] ...future.oldOptions <- base::as.list(base::.Options) [17:27:58.224] ...future.oldEnvVars <- base::Sys.getenv() [17:27:58.224] } [17:27:58.224] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:58.224] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:58.224] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:58.224] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:58.224] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:58.224] future.stdout.windows.reencode = NULL, width = 80L) [17:27:58.224] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:58.224] base::names(...future.oldOptions)) [17:27:58.224] } [17:27:58.224] if (FALSE) { [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] if (TRUE) { [17:27:58.224] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:58.224] open = "w") [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:58.224] windows = "NUL", "/dev/null"), open = "w") [17:27:58.224] } [17:27:58.224] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:58.224] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:58.224] base::sink(type = "output", split = FALSE) [17:27:58.224] base::close(...future.stdout) [17:27:58.224] }, add = TRUE) [17:27:58.224] } [17:27:58.224] ...future.frame <- base::sys.nframe() [17:27:58.224] ...future.conditions <- base::list() [17:27:58.224] ...future.rng <- base::globalenv()$.Random.seed [17:27:58.224] if (FALSE) { [17:27:58.224] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:58.224] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:58.224] } [17:27:58.224] ...future.result <- base::tryCatch({ [17:27:58.224] base::withCallingHandlers({ [17:27:58.224] ...future.value <- base::withVisible(base::local({ [17:27:58.224] ...future.makeSendCondition <- base::local({ [17:27:58.224] sendCondition <- NULL [17:27:58.224] function(frame = 1L) { [17:27:58.224] if (is.function(sendCondition)) [17:27:58.224] return(sendCondition) [17:27:58.224] ns <- getNamespace("parallel") [17:27:58.224] if (exists("sendData", mode = "function", [17:27:58.224] envir = ns)) { [17:27:58.224] parallel_sendData <- get("sendData", mode = "function", [17:27:58.224] envir = ns) [17:27:58.224] envir <- sys.frame(frame) [17:27:58.224] master <- NULL [17:27:58.224] while (!identical(envir, .GlobalEnv) && [17:27:58.224] !identical(envir, emptyenv())) { [17:27:58.224] if (exists("master", mode = "list", envir = envir, [17:27:58.224] inherits = FALSE)) { [17:27:58.224] master <- get("master", mode = "list", [17:27:58.224] envir = envir, inherits = FALSE) [17:27:58.224] if (inherits(master, c("SOCKnode", [17:27:58.224] "SOCK0node"))) { [17:27:58.224] sendCondition <<- function(cond) { [17:27:58.224] data <- list(type = "VALUE", value = cond, [17:27:58.224] success = TRUE) [17:27:58.224] parallel_sendData(master, data) [17:27:58.224] } [17:27:58.224] return(sendCondition) [17:27:58.224] } [17:27:58.224] } [17:27:58.224] frame <- frame + 1L [17:27:58.224] envir <- sys.frame(frame) [17:27:58.224] } [17:27:58.224] } [17:27:58.224] sendCondition <<- function(cond) NULL [17:27:58.224] } [17:27:58.224] }) [17:27:58.224] withCallingHandlers({ [17:27:58.224] { [17:27:58.224] Sys.sleep(0.5) [17:27:58.224] list(a = 1, b = 42L) [17:27:58.224] } [17:27:58.224] }, immediateCondition = function(cond) { [17:27:58.224] sendCondition <- ...future.makeSendCondition() [17:27:58.224] sendCondition(cond) [17:27:58.224] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.224] { [17:27:58.224] inherits <- base::inherits [17:27:58.224] invokeRestart <- base::invokeRestart [17:27:58.224] is.null <- base::is.null [17:27:58.224] muffled <- FALSE [17:27:58.224] if (inherits(cond, "message")) { [17:27:58.224] muffled <- grepl(pattern, "muffleMessage") [17:27:58.224] if (muffled) [17:27:58.224] invokeRestart("muffleMessage") [17:27:58.224] } [17:27:58.224] else if (inherits(cond, "warning")) { [17:27:58.224] muffled <- grepl(pattern, "muffleWarning") [17:27:58.224] if (muffled) [17:27:58.224] invokeRestart("muffleWarning") [17:27:58.224] } [17:27:58.224] else if (inherits(cond, "condition")) { [17:27:58.224] if (!is.null(pattern)) { [17:27:58.224] computeRestarts <- base::computeRestarts [17:27:58.224] grepl <- base::grepl [17:27:58.224] restarts <- computeRestarts(cond) [17:27:58.224] for (restart in restarts) { [17:27:58.224] name <- restart$name [17:27:58.224] if (is.null(name)) [17:27:58.224] next [17:27:58.224] if (!grepl(pattern, name)) [17:27:58.224] next [17:27:58.224] invokeRestart(restart) [17:27:58.224] muffled <- TRUE [17:27:58.224] break [17:27:58.224] } [17:27:58.224] } [17:27:58.224] } [17:27:58.224] invisible(muffled) [17:27:58.224] } [17:27:58.224] muffleCondition(cond) [17:27:58.224] }) [17:27:58.224] })) [17:27:58.224] future::FutureResult(value = ...future.value$value, [17:27:58.224] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.224] ...future.rng), globalenv = if (FALSE) [17:27:58.224] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:58.224] ...future.globalenv.names)) [17:27:58.224] else NULL, started = ...future.startTime, version = "1.8") [17:27:58.224] }, condition = base::local({ [17:27:58.224] c <- base::c [17:27:58.224] inherits <- base::inherits [17:27:58.224] invokeRestart <- base::invokeRestart [17:27:58.224] length <- base::length [17:27:58.224] list <- base::list [17:27:58.224] seq.int <- base::seq.int [17:27:58.224] signalCondition <- base::signalCondition [17:27:58.224] sys.calls <- base::sys.calls [17:27:58.224] `[[` <- base::`[[` [17:27:58.224] `+` <- base::`+` [17:27:58.224] `<<-` <- base::`<<-` [17:27:58.224] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:58.224] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:58.224] 3L)] [17:27:58.224] } [17:27:58.224] function(cond) { [17:27:58.224] is_error <- inherits(cond, "error") [17:27:58.224] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:58.224] NULL) [17:27:58.224] if (is_error) { [17:27:58.224] sessionInformation <- function() { [17:27:58.224] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:58.224] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:58.224] search = base::search(), system = base::Sys.info()) [17:27:58.224] } [17:27:58.224] ...future.conditions[[length(...future.conditions) + [17:27:58.224] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:58.224] cond$call), session = sessionInformation(), [17:27:58.224] timestamp = base::Sys.time(), signaled = 0L) [17:27:58.224] signalCondition(cond) [17:27:58.224] } [17:27:58.224] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:58.224] "immediateCondition"))) { [17:27:58.224] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:58.224] ...future.conditions[[length(...future.conditions) + [17:27:58.224] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:58.224] if (TRUE && !signal) { [17:27:58.224] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.224] { [17:27:58.224] inherits <- base::inherits [17:27:58.224] invokeRestart <- base::invokeRestart [17:27:58.224] is.null <- base::is.null [17:27:58.224] muffled <- FALSE [17:27:58.224] if (inherits(cond, "message")) { [17:27:58.224] muffled <- grepl(pattern, "muffleMessage") [17:27:58.224] if (muffled) [17:27:58.224] invokeRestart("muffleMessage") [17:27:58.224] } [17:27:58.224] else if (inherits(cond, "warning")) { [17:27:58.224] muffled <- grepl(pattern, "muffleWarning") [17:27:58.224] if (muffled) [17:27:58.224] invokeRestart("muffleWarning") [17:27:58.224] } [17:27:58.224] else if (inherits(cond, "condition")) { [17:27:58.224] if (!is.null(pattern)) { [17:27:58.224] computeRestarts <- base::computeRestarts [17:27:58.224] grepl <- base::grepl [17:27:58.224] restarts <- computeRestarts(cond) [17:27:58.224] for (restart in restarts) { [17:27:58.224] name <- restart$name [17:27:58.224] if (is.null(name)) [17:27:58.224] next [17:27:58.224] if (!grepl(pattern, name)) [17:27:58.224] next [17:27:58.224] invokeRestart(restart) [17:27:58.224] muffled <- TRUE [17:27:58.224] break [17:27:58.224] } [17:27:58.224] } [17:27:58.224] } [17:27:58.224] invisible(muffled) [17:27:58.224] } [17:27:58.224] muffleCondition(cond, pattern = "^muffle") [17:27:58.224] } [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] if (TRUE) { [17:27:58.224] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.224] { [17:27:58.224] inherits <- base::inherits [17:27:58.224] invokeRestart <- base::invokeRestart [17:27:58.224] is.null <- base::is.null [17:27:58.224] muffled <- FALSE [17:27:58.224] if (inherits(cond, "message")) { [17:27:58.224] muffled <- grepl(pattern, "muffleMessage") [17:27:58.224] if (muffled) [17:27:58.224] invokeRestart("muffleMessage") [17:27:58.224] } [17:27:58.224] else if (inherits(cond, "warning")) { [17:27:58.224] muffled <- grepl(pattern, "muffleWarning") [17:27:58.224] if (muffled) [17:27:58.224] invokeRestart("muffleWarning") [17:27:58.224] } [17:27:58.224] else if (inherits(cond, "condition")) { [17:27:58.224] if (!is.null(pattern)) { [17:27:58.224] computeRestarts <- base::computeRestarts [17:27:58.224] grepl <- base::grepl [17:27:58.224] restarts <- computeRestarts(cond) [17:27:58.224] for (restart in restarts) { [17:27:58.224] name <- restart$name [17:27:58.224] if (is.null(name)) [17:27:58.224] next [17:27:58.224] if (!grepl(pattern, name)) [17:27:58.224] next [17:27:58.224] invokeRestart(restart) [17:27:58.224] muffled <- TRUE [17:27:58.224] break [17:27:58.224] } [17:27:58.224] } [17:27:58.224] } [17:27:58.224] invisible(muffled) [17:27:58.224] } [17:27:58.224] muffleCondition(cond, pattern = "^muffle") [17:27:58.224] } [17:27:58.224] } [17:27:58.224] } [17:27:58.224] })) [17:27:58.224] }, error = function(ex) { [17:27:58.224] base::structure(base::list(value = NULL, visible = NULL, [17:27:58.224] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.224] ...future.rng), started = ...future.startTime, [17:27:58.224] finished = Sys.time(), session_uuid = NA_character_, [17:27:58.224] version = "1.8"), class = "FutureResult") [17:27:58.224] }, finally = { [17:27:58.224] if (!identical(...future.workdir, getwd())) [17:27:58.224] setwd(...future.workdir) [17:27:58.224] { [17:27:58.224] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:58.224] ...future.oldOptions$nwarnings <- NULL [17:27:58.224] } [17:27:58.224] base::options(...future.oldOptions) [17:27:58.224] if (.Platform$OS.type == "windows") { [17:27:58.224] old_names <- names(...future.oldEnvVars) [17:27:58.224] envs <- base::Sys.getenv() [17:27:58.224] names <- names(envs) [17:27:58.224] common <- intersect(names, old_names) [17:27:58.224] added <- setdiff(names, old_names) [17:27:58.224] removed <- setdiff(old_names, names) [17:27:58.224] changed <- common[...future.oldEnvVars[common] != [17:27:58.224] envs[common]] [17:27:58.224] NAMES <- toupper(changed) [17:27:58.224] args <- list() [17:27:58.224] for (kk in seq_along(NAMES)) { [17:27:58.224] name <- changed[[kk]] [17:27:58.224] NAME <- NAMES[[kk]] [17:27:58.224] if (name != NAME && is.element(NAME, old_names)) [17:27:58.224] next [17:27:58.224] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.224] } [17:27:58.224] NAMES <- toupper(added) [17:27:58.224] for (kk in seq_along(NAMES)) { [17:27:58.224] name <- added[[kk]] [17:27:58.224] NAME <- NAMES[[kk]] [17:27:58.224] if (name != NAME && is.element(NAME, old_names)) [17:27:58.224] next [17:27:58.224] args[[name]] <- "" [17:27:58.224] } [17:27:58.224] NAMES <- toupper(removed) [17:27:58.224] for (kk in seq_along(NAMES)) { [17:27:58.224] name <- removed[[kk]] [17:27:58.224] NAME <- NAMES[[kk]] [17:27:58.224] if (name != NAME && is.element(NAME, old_names)) [17:27:58.224] next [17:27:58.224] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.224] } [17:27:58.224] if (length(args) > 0) [17:27:58.224] base::do.call(base::Sys.setenv, args = args) [17:27:58.224] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:58.224] } [17:27:58.224] { [17:27:58.224] if (base::length(...future.futureOptionsAdded) > [17:27:58.224] 0L) { [17:27:58.224] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:58.224] base::names(opts) <- ...future.futureOptionsAdded [17:27:58.224] base::options(opts) [17:27:58.224] } [17:27:58.224] { [17:27:58.224] { [17:27:58.224] base::options(mc.cores = ...future.mc.cores.old) [17:27:58.224] NULL [17:27:58.224] } [17:27:58.224] options(future.plan = NULL) [17:27:58.224] if (is.na(NA_character_)) [17:27:58.224] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.224] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:58.224] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:58.224] .init = FALSE) [17:27:58.224] } [17:27:58.224] } [17:27:58.224] } [17:27:58.224] }) [17:27:58.224] if (TRUE) { [17:27:58.224] base::sink(type = "output", split = FALSE) [17:27:58.224] if (TRUE) { [17:27:58.224] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:58.224] } [17:27:58.224] else { [17:27:58.224] ...future.result["stdout"] <- base::list(NULL) [17:27:58.224] } [17:27:58.224] base::close(...future.stdout) [17:27:58.224] ...future.stdout <- NULL [17:27:58.224] } [17:27:58.224] ...future.result$conditions <- ...future.conditions [17:27:58.224] ...future.result$finished <- base::Sys.time() [17:27:58.224] ...future.result [17:27:58.224] } [17:27:58.230] MultisessionFuture started [17:27:58.230] - Launch lazy future ... done [17:27:58.230] run() for 'MultisessionFuture' ... done [17:27:58.745] receiveMessageFromWorker() for ClusterFuture ... [17:27:58.745] - Validating connection of MultisessionFuture [17:27:58.746] - received message: FutureResult [17:27:58.746] - Received FutureResult [17:27:58.746] - Erased future from FutureRegistry [17:27:58.746] result() for ClusterFuture ... [17:27:58.746] - result already collected: FutureResult [17:27:58.747] result() for ClusterFuture ... done [17:27:58.747] receiveMessageFromWorker() for ClusterFuture ... done [17:27:58.747] A MultisessionFuture was resolved - w/ exception ... [17:27:58.747] getGlobalsAndPackages() ... [17:27:58.747] Searching for globals... [17:27:58.748] - globals found: [2] 'list', 'stop' [17:27:58.748] Searching for globals ... DONE [17:27:58.748] Resolving globals: FALSE [17:27:58.749] [17:27:58.749] [17:27:58.749] getGlobalsAndPackages() ... DONE [17:27:58.749] run() for 'Future' ... [17:27:58.750] - state: 'created' [17:27:58.750] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:58.764] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:58.764] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:58.764] - Field: 'node' [17:27:58.764] - Field: 'label' [17:27:58.764] - Field: 'local' [17:27:58.765] - Field: 'owner' [17:27:58.765] - Field: 'envir' [17:27:58.765] - Field: 'workers' [17:27:58.765] - Field: 'packages' [17:27:58.765] - Field: 'gc' [17:27:58.766] - Field: 'conditions' [17:27:58.766] - Field: 'persistent' [17:27:58.766] - Field: 'expr' [17:27:58.766] - Field: 'uuid' [17:27:58.766] - Field: 'seed' [17:27:58.766] - Field: 'version' [17:27:58.767] - Field: 'result' [17:27:58.767] - Field: 'asynchronous' [17:27:58.767] - Field: 'calls' [17:27:58.767] - Field: 'globals' [17:27:58.767] - Field: 'stdout' [17:27:58.767] - Field: 'earlySignal' [17:27:58.768] - Field: 'lazy' [17:27:58.768] - Field: 'state' [17:27:58.768] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:58.768] - Launch lazy future ... [17:27:58.769] Packages needed by the future expression (n = 0): [17:27:58.769] Packages needed by future strategies (n = 0): [17:27:58.769] { [17:27:58.769] { [17:27:58.769] { [17:27:58.769] ...future.startTime <- base::Sys.time() [17:27:58.769] { [17:27:58.769] { [17:27:58.769] { [17:27:58.769] { [17:27:58.769] base::local({ [17:27:58.769] has_future <- base::requireNamespace("future", [17:27:58.769] quietly = TRUE) [17:27:58.769] if (has_future) { [17:27:58.769] ns <- base::getNamespace("future") [17:27:58.769] version <- ns[[".package"]][["version"]] [17:27:58.769] if (is.null(version)) [17:27:58.769] version <- utils::packageVersion("future") [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] version <- NULL [17:27:58.769] } [17:27:58.769] if (!has_future || version < "1.8.0") { [17:27:58.769] info <- base::c(r_version = base::gsub("R version ", [17:27:58.769] "", base::R.version$version.string), [17:27:58.769] platform = base::sprintf("%s (%s-bit)", [17:27:58.769] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:58.769] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:58.769] "release", "version")], collapse = " "), [17:27:58.769] hostname = base::Sys.info()[["nodename"]]) [17:27:58.769] info <- base::sprintf("%s: %s", base::names(info), [17:27:58.769] info) [17:27:58.769] info <- base::paste(info, collapse = "; ") [17:27:58.769] if (!has_future) { [17:27:58.769] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:58.769] info) [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:58.769] info, version) [17:27:58.769] } [17:27:58.769] base::stop(msg) [17:27:58.769] } [17:27:58.769] }) [17:27:58.769] } [17:27:58.769] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:58.769] base::options(mc.cores = 1L) [17:27:58.769] } [17:27:58.769] ...future.strategy.old <- future::plan("list") [17:27:58.769] options(future.plan = NULL) [17:27:58.769] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.769] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:58.769] } [17:27:58.769] ...future.workdir <- getwd() [17:27:58.769] } [17:27:58.769] ...future.oldOptions <- base::as.list(base::.Options) [17:27:58.769] ...future.oldEnvVars <- base::Sys.getenv() [17:27:58.769] } [17:27:58.769] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:58.769] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:58.769] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:58.769] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:58.769] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:58.769] future.stdout.windows.reencode = NULL, width = 80L) [17:27:58.769] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:58.769] base::names(...future.oldOptions)) [17:27:58.769] } [17:27:58.769] if (FALSE) { [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] if (TRUE) { [17:27:58.769] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:58.769] open = "w") [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:58.769] windows = "NUL", "/dev/null"), open = "w") [17:27:58.769] } [17:27:58.769] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:58.769] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:58.769] base::sink(type = "output", split = FALSE) [17:27:58.769] base::close(...future.stdout) [17:27:58.769] }, add = TRUE) [17:27:58.769] } [17:27:58.769] ...future.frame <- base::sys.nframe() [17:27:58.769] ...future.conditions <- base::list() [17:27:58.769] ...future.rng <- base::globalenv()$.Random.seed [17:27:58.769] if (FALSE) { [17:27:58.769] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:58.769] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:58.769] } [17:27:58.769] ...future.result <- base::tryCatch({ [17:27:58.769] base::withCallingHandlers({ [17:27:58.769] ...future.value <- base::withVisible(base::local({ [17:27:58.769] ...future.makeSendCondition <- base::local({ [17:27:58.769] sendCondition <- NULL [17:27:58.769] function(frame = 1L) { [17:27:58.769] if (is.function(sendCondition)) [17:27:58.769] return(sendCondition) [17:27:58.769] ns <- getNamespace("parallel") [17:27:58.769] if (exists("sendData", mode = "function", [17:27:58.769] envir = ns)) { [17:27:58.769] parallel_sendData <- get("sendData", mode = "function", [17:27:58.769] envir = ns) [17:27:58.769] envir <- sys.frame(frame) [17:27:58.769] master <- NULL [17:27:58.769] while (!identical(envir, .GlobalEnv) && [17:27:58.769] !identical(envir, emptyenv())) { [17:27:58.769] if (exists("master", mode = "list", envir = envir, [17:27:58.769] inherits = FALSE)) { [17:27:58.769] master <- get("master", mode = "list", [17:27:58.769] envir = envir, inherits = FALSE) [17:27:58.769] if (inherits(master, c("SOCKnode", [17:27:58.769] "SOCK0node"))) { [17:27:58.769] sendCondition <<- function(cond) { [17:27:58.769] data <- list(type = "VALUE", value = cond, [17:27:58.769] success = TRUE) [17:27:58.769] parallel_sendData(master, data) [17:27:58.769] } [17:27:58.769] return(sendCondition) [17:27:58.769] } [17:27:58.769] } [17:27:58.769] frame <- frame + 1L [17:27:58.769] envir <- sys.frame(frame) [17:27:58.769] } [17:27:58.769] } [17:27:58.769] sendCondition <<- function(cond) NULL [17:27:58.769] } [17:27:58.769] }) [17:27:58.769] withCallingHandlers({ [17:27:58.769] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:58.769] }, immediateCondition = function(cond) { [17:27:58.769] sendCondition <- ...future.makeSendCondition() [17:27:58.769] sendCondition(cond) [17:27:58.769] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.769] { [17:27:58.769] inherits <- base::inherits [17:27:58.769] invokeRestart <- base::invokeRestart [17:27:58.769] is.null <- base::is.null [17:27:58.769] muffled <- FALSE [17:27:58.769] if (inherits(cond, "message")) { [17:27:58.769] muffled <- grepl(pattern, "muffleMessage") [17:27:58.769] if (muffled) [17:27:58.769] invokeRestart("muffleMessage") [17:27:58.769] } [17:27:58.769] else if (inherits(cond, "warning")) { [17:27:58.769] muffled <- grepl(pattern, "muffleWarning") [17:27:58.769] if (muffled) [17:27:58.769] invokeRestart("muffleWarning") [17:27:58.769] } [17:27:58.769] else if (inherits(cond, "condition")) { [17:27:58.769] if (!is.null(pattern)) { [17:27:58.769] computeRestarts <- base::computeRestarts [17:27:58.769] grepl <- base::grepl [17:27:58.769] restarts <- computeRestarts(cond) [17:27:58.769] for (restart in restarts) { [17:27:58.769] name <- restart$name [17:27:58.769] if (is.null(name)) [17:27:58.769] next [17:27:58.769] if (!grepl(pattern, name)) [17:27:58.769] next [17:27:58.769] invokeRestart(restart) [17:27:58.769] muffled <- TRUE [17:27:58.769] break [17:27:58.769] } [17:27:58.769] } [17:27:58.769] } [17:27:58.769] invisible(muffled) [17:27:58.769] } [17:27:58.769] muffleCondition(cond) [17:27:58.769] }) [17:27:58.769] })) [17:27:58.769] future::FutureResult(value = ...future.value$value, [17:27:58.769] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.769] ...future.rng), globalenv = if (FALSE) [17:27:58.769] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:58.769] ...future.globalenv.names)) [17:27:58.769] else NULL, started = ...future.startTime, version = "1.8") [17:27:58.769] }, condition = base::local({ [17:27:58.769] c <- base::c [17:27:58.769] inherits <- base::inherits [17:27:58.769] invokeRestart <- base::invokeRestart [17:27:58.769] length <- base::length [17:27:58.769] list <- base::list [17:27:58.769] seq.int <- base::seq.int [17:27:58.769] signalCondition <- base::signalCondition [17:27:58.769] sys.calls <- base::sys.calls [17:27:58.769] `[[` <- base::`[[` [17:27:58.769] `+` <- base::`+` [17:27:58.769] `<<-` <- base::`<<-` [17:27:58.769] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:58.769] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:58.769] 3L)] [17:27:58.769] } [17:27:58.769] function(cond) { [17:27:58.769] is_error <- inherits(cond, "error") [17:27:58.769] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:58.769] NULL) [17:27:58.769] if (is_error) { [17:27:58.769] sessionInformation <- function() { [17:27:58.769] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:58.769] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:58.769] search = base::search(), system = base::Sys.info()) [17:27:58.769] } [17:27:58.769] ...future.conditions[[length(...future.conditions) + [17:27:58.769] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:58.769] cond$call), session = sessionInformation(), [17:27:58.769] timestamp = base::Sys.time(), signaled = 0L) [17:27:58.769] signalCondition(cond) [17:27:58.769] } [17:27:58.769] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:58.769] "immediateCondition"))) { [17:27:58.769] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:58.769] ...future.conditions[[length(...future.conditions) + [17:27:58.769] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:58.769] if (TRUE && !signal) { [17:27:58.769] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.769] { [17:27:58.769] inherits <- base::inherits [17:27:58.769] invokeRestart <- base::invokeRestart [17:27:58.769] is.null <- base::is.null [17:27:58.769] muffled <- FALSE [17:27:58.769] if (inherits(cond, "message")) { [17:27:58.769] muffled <- grepl(pattern, "muffleMessage") [17:27:58.769] if (muffled) [17:27:58.769] invokeRestart("muffleMessage") [17:27:58.769] } [17:27:58.769] else if (inherits(cond, "warning")) { [17:27:58.769] muffled <- grepl(pattern, "muffleWarning") [17:27:58.769] if (muffled) [17:27:58.769] invokeRestart("muffleWarning") [17:27:58.769] } [17:27:58.769] else if (inherits(cond, "condition")) { [17:27:58.769] if (!is.null(pattern)) { [17:27:58.769] computeRestarts <- base::computeRestarts [17:27:58.769] grepl <- base::grepl [17:27:58.769] restarts <- computeRestarts(cond) [17:27:58.769] for (restart in restarts) { [17:27:58.769] name <- restart$name [17:27:58.769] if (is.null(name)) [17:27:58.769] next [17:27:58.769] if (!grepl(pattern, name)) [17:27:58.769] next [17:27:58.769] invokeRestart(restart) [17:27:58.769] muffled <- TRUE [17:27:58.769] break [17:27:58.769] } [17:27:58.769] } [17:27:58.769] } [17:27:58.769] invisible(muffled) [17:27:58.769] } [17:27:58.769] muffleCondition(cond, pattern = "^muffle") [17:27:58.769] } [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] if (TRUE) { [17:27:58.769] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.769] { [17:27:58.769] inherits <- base::inherits [17:27:58.769] invokeRestart <- base::invokeRestart [17:27:58.769] is.null <- base::is.null [17:27:58.769] muffled <- FALSE [17:27:58.769] if (inherits(cond, "message")) { [17:27:58.769] muffled <- grepl(pattern, "muffleMessage") [17:27:58.769] if (muffled) [17:27:58.769] invokeRestart("muffleMessage") [17:27:58.769] } [17:27:58.769] else if (inherits(cond, "warning")) { [17:27:58.769] muffled <- grepl(pattern, "muffleWarning") [17:27:58.769] if (muffled) [17:27:58.769] invokeRestart("muffleWarning") [17:27:58.769] } [17:27:58.769] else if (inherits(cond, "condition")) { [17:27:58.769] if (!is.null(pattern)) { [17:27:58.769] computeRestarts <- base::computeRestarts [17:27:58.769] grepl <- base::grepl [17:27:58.769] restarts <- computeRestarts(cond) [17:27:58.769] for (restart in restarts) { [17:27:58.769] name <- restart$name [17:27:58.769] if (is.null(name)) [17:27:58.769] next [17:27:58.769] if (!grepl(pattern, name)) [17:27:58.769] next [17:27:58.769] invokeRestart(restart) [17:27:58.769] muffled <- TRUE [17:27:58.769] break [17:27:58.769] } [17:27:58.769] } [17:27:58.769] } [17:27:58.769] invisible(muffled) [17:27:58.769] } [17:27:58.769] muffleCondition(cond, pattern = "^muffle") [17:27:58.769] } [17:27:58.769] } [17:27:58.769] } [17:27:58.769] })) [17:27:58.769] }, error = function(ex) { [17:27:58.769] base::structure(base::list(value = NULL, visible = NULL, [17:27:58.769] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.769] ...future.rng), started = ...future.startTime, [17:27:58.769] finished = Sys.time(), session_uuid = NA_character_, [17:27:58.769] version = "1.8"), class = "FutureResult") [17:27:58.769] }, finally = { [17:27:58.769] if (!identical(...future.workdir, getwd())) [17:27:58.769] setwd(...future.workdir) [17:27:58.769] { [17:27:58.769] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:58.769] ...future.oldOptions$nwarnings <- NULL [17:27:58.769] } [17:27:58.769] base::options(...future.oldOptions) [17:27:58.769] if (.Platform$OS.type == "windows") { [17:27:58.769] old_names <- names(...future.oldEnvVars) [17:27:58.769] envs <- base::Sys.getenv() [17:27:58.769] names <- names(envs) [17:27:58.769] common <- intersect(names, old_names) [17:27:58.769] added <- setdiff(names, old_names) [17:27:58.769] removed <- setdiff(old_names, names) [17:27:58.769] changed <- common[...future.oldEnvVars[common] != [17:27:58.769] envs[common]] [17:27:58.769] NAMES <- toupper(changed) [17:27:58.769] args <- list() [17:27:58.769] for (kk in seq_along(NAMES)) { [17:27:58.769] name <- changed[[kk]] [17:27:58.769] NAME <- NAMES[[kk]] [17:27:58.769] if (name != NAME && is.element(NAME, old_names)) [17:27:58.769] next [17:27:58.769] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.769] } [17:27:58.769] NAMES <- toupper(added) [17:27:58.769] for (kk in seq_along(NAMES)) { [17:27:58.769] name <- added[[kk]] [17:27:58.769] NAME <- NAMES[[kk]] [17:27:58.769] if (name != NAME && is.element(NAME, old_names)) [17:27:58.769] next [17:27:58.769] args[[name]] <- "" [17:27:58.769] } [17:27:58.769] NAMES <- toupper(removed) [17:27:58.769] for (kk in seq_along(NAMES)) { [17:27:58.769] name <- removed[[kk]] [17:27:58.769] NAME <- NAMES[[kk]] [17:27:58.769] if (name != NAME && is.element(NAME, old_names)) [17:27:58.769] next [17:27:58.769] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.769] } [17:27:58.769] if (length(args) > 0) [17:27:58.769] base::do.call(base::Sys.setenv, args = args) [17:27:58.769] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:58.769] } [17:27:58.769] { [17:27:58.769] if (base::length(...future.futureOptionsAdded) > [17:27:58.769] 0L) { [17:27:58.769] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:58.769] base::names(opts) <- ...future.futureOptionsAdded [17:27:58.769] base::options(opts) [17:27:58.769] } [17:27:58.769] { [17:27:58.769] { [17:27:58.769] base::options(mc.cores = ...future.mc.cores.old) [17:27:58.769] NULL [17:27:58.769] } [17:27:58.769] options(future.plan = NULL) [17:27:58.769] if (is.na(NA_character_)) [17:27:58.769] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.769] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:58.769] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:58.769] .init = FALSE) [17:27:58.769] } [17:27:58.769] } [17:27:58.769] } [17:27:58.769] }) [17:27:58.769] if (TRUE) { [17:27:58.769] base::sink(type = "output", split = FALSE) [17:27:58.769] if (TRUE) { [17:27:58.769] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:58.769] } [17:27:58.769] else { [17:27:58.769] ...future.result["stdout"] <- base::list(NULL) [17:27:58.769] } [17:27:58.769] base::close(...future.stdout) [17:27:58.769] ...future.stdout <- NULL [17:27:58.769] } [17:27:58.769] ...future.result$conditions <- ...future.conditions [17:27:58.769] ...future.result$finished <- base::Sys.time() [17:27:58.769] ...future.result [17:27:58.769] } [17:27:58.775] MultisessionFuture started [17:27:58.775] - Launch lazy future ... done [17:27:58.775] run() for 'MultisessionFuture' ... done [17:27:58.789] receiveMessageFromWorker() for ClusterFuture ... [17:27:58.789] - Validating connection of MultisessionFuture [17:27:58.790] - received message: FutureResult [17:27:58.790] - Received FutureResult [17:27:58.790] - Erased future from FutureRegistry [17:27:58.790] result() for ClusterFuture ... [17:27:58.790] - result already collected: FutureResult [17:27:58.790] result() for ClusterFuture ... done [17:27:58.791] signalConditions() ... [17:27:58.791] - include = 'immediateCondition' [17:27:58.791] - exclude = [17:27:58.791] - resignal = FALSE [17:27:58.791] - Number of conditions: 1 [17:27:58.791] signalConditions() ... done [17:27:58.792] receiveMessageFromWorker() for ClusterFuture ... done [17:27:58.792] A MultisessionFuture was resolved [17:27:58.792] getGlobalsAndPackages() ... [17:27:58.792] Searching for globals... [17:27:58.793] - globals found: [2] 'list', 'stop' [17:27:58.793] Searching for globals ... DONE [17:27:58.793] Resolving globals: FALSE [17:27:58.794] [17:27:58.794] [17:27:58.794] getGlobalsAndPackages() ... DONE [17:27:58.794] run() for 'Future' ... [17:27:58.795] - state: 'created' [17:27:58.795] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:58.809] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:58.809] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:58.809] - Field: 'node' [17:27:58.809] - Field: 'label' [17:27:58.810] - Field: 'local' [17:27:58.810] - Field: 'owner' [17:27:58.810] - Field: 'envir' [17:27:58.810] - Field: 'workers' [17:27:58.810] - Field: 'packages' [17:27:58.810] - Field: 'gc' [17:27:58.811] - Field: 'conditions' [17:27:58.811] - Field: 'persistent' [17:27:58.811] - Field: 'expr' [17:27:58.811] - Field: 'uuid' [17:27:58.811] - Field: 'seed' [17:27:58.811] - Field: 'version' [17:27:58.812] - Field: 'result' [17:27:58.812] - Field: 'asynchronous' [17:27:58.812] - Field: 'calls' [17:27:58.812] - Field: 'globals' [17:27:58.812] - Field: 'stdout' [17:27:58.813] - Field: 'earlySignal' [17:27:58.813] - Field: 'lazy' [17:27:58.813] - Field: 'state' [17:27:58.813] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:58.813] - Launch lazy future ... [17:27:58.814] Packages needed by the future expression (n = 0): [17:27:58.814] Packages needed by future strategies (n = 0): [17:27:58.814] { [17:27:58.814] { [17:27:58.814] { [17:27:58.814] ...future.startTime <- base::Sys.time() [17:27:58.814] { [17:27:58.814] { [17:27:58.814] { [17:27:58.814] { [17:27:58.814] base::local({ [17:27:58.814] has_future <- base::requireNamespace("future", [17:27:58.814] quietly = TRUE) [17:27:58.814] if (has_future) { [17:27:58.814] ns <- base::getNamespace("future") [17:27:58.814] version <- ns[[".package"]][["version"]] [17:27:58.814] if (is.null(version)) [17:27:58.814] version <- utils::packageVersion("future") [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] version <- NULL [17:27:58.814] } [17:27:58.814] if (!has_future || version < "1.8.0") { [17:27:58.814] info <- base::c(r_version = base::gsub("R version ", [17:27:58.814] "", base::R.version$version.string), [17:27:58.814] platform = base::sprintf("%s (%s-bit)", [17:27:58.814] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:58.814] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:58.814] "release", "version")], collapse = " "), [17:27:58.814] hostname = base::Sys.info()[["nodename"]]) [17:27:58.814] info <- base::sprintf("%s: %s", base::names(info), [17:27:58.814] info) [17:27:58.814] info <- base::paste(info, collapse = "; ") [17:27:58.814] if (!has_future) { [17:27:58.814] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:58.814] info) [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:58.814] info, version) [17:27:58.814] } [17:27:58.814] base::stop(msg) [17:27:58.814] } [17:27:58.814] }) [17:27:58.814] } [17:27:58.814] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:58.814] base::options(mc.cores = 1L) [17:27:58.814] } [17:27:58.814] ...future.strategy.old <- future::plan("list") [17:27:58.814] options(future.plan = NULL) [17:27:58.814] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.814] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:58.814] } [17:27:58.814] ...future.workdir <- getwd() [17:27:58.814] } [17:27:58.814] ...future.oldOptions <- base::as.list(base::.Options) [17:27:58.814] ...future.oldEnvVars <- base::Sys.getenv() [17:27:58.814] } [17:27:58.814] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:58.814] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:58.814] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:58.814] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:58.814] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:58.814] future.stdout.windows.reencode = NULL, width = 80L) [17:27:58.814] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:58.814] base::names(...future.oldOptions)) [17:27:58.814] } [17:27:58.814] if (FALSE) { [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] if (TRUE) { [17:27:58.814] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:58.814] open = "w") [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:58.814] windows = "NUL", "/dev/null"), open = "w") [17:27:58.814] } [17:27:58.814] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:58.814] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:58.814] base::sink(type = "output", split = FALSE) [17:27:58.814] base::close(...future.stdout) [17:27:58.814] }, add = TRUE) [17:27:58.814] } [17:27:58.814] ...future.frame <- base::sys.nframe() [17:27:58.814] ...future.conditions <- base::list() [17:27:58.814] ...future.rng <- base::globalenv()$.Random.seed [17:27:58.814] if (FALSE) { [17:27:58.814] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:58.814] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:58.814] } [17:27:58.814] ...future.result <- base::tryCatch({ [17:27:58.814] base::withCallingHandlers({ [17:27:58.814] ...future.value <- base::withVisible(base::local({ [17:27:58.814] ...future.makeSendCondition <- base::local({ [17:27:58.814] sendCondition <- NULL [17:27:58.814] function(frame = 1L) { [17:27:58.814] if (is.function(sendCondition)) [17:27:58.814] return(sendCondition) [17:27:58.814] ns <- getNamespace("parallel") [17:27:58.814] if (exists("sendData", mode = "function", [17:27:58.814] envir = ns)) { [17:27:58.814] parallel_sendData <- get("sendData", mode = "function", [17:27:58.814] envir = ns) [17:27:58.814] envir <- sys.frame(frame) [17:27:58.814] master <- NULL [17:27:58.814] while (!identical(envir, .GlobalEnv) && [17:27:58.814] !identical(envir, emptyenv())) { [17:27:58.814] if (exists("master", mode = "list", envir = envir, [17:27:58.814] inherits = FALSE)) { [17:27:58.814] master <- get("master", mode = "list", [17:27:58.814] envir = envir, inherits = FALSE) [17:27:58.814] if (inherits(master, c("SOCKnode", [17:27:58.814] "SOCK0node"))) { [17:27:58.814] sendCondition <<- function(cond) { [17:27:58.814] data <- list(type = "VALUE", value = cond, [17:27:58.814] success = TRUE) [17:27:58.814] parallel_sendData(master, data) [17:27:58.814] } [17:27:58.814] return(sendCondition) [17:27:58.814] } [17:27:58.814] } [17:27:58.814] frame <- frame + 1L [17:27:58.814] envir <- sys.frame(frame) [17:27:58.814] } [17:27:58.814] } [17:27:58.814] sendCondition <<- function(cond) NULL [17:27:58.814] } [17:27:58.814] }) [17:27:58.814] withCallingHandlers({ [17:27:58.814] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:58.814] }, immediateCondition = function(cond) { [17:27:58.814] sendCondition <- ...future.makeSendCondition() [17:27:58.814] sendCondition(cond) [17:27:58.814] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.814] { [17:27:58.814] inherits <- base::inherits [17:27:58.814] invokeRestart <- base::invokeRestart [17:27:58.814] is.null <- base::is.null [17:27:58.814] muffled <- FALSE [17:27:58.814] if (inherits(cond, "message")) { [17:27:58.814] muffled <- grepl(pattern, "muffleMessage") [17:27:58.814] if (muffled) [17:27:58.814] invokeRestart("muffleMessage") [17:27:58.814] } [17:27:58.814] else if (inherits(cond, "warning")) { [17:27:58.814] muffled <- grepl(pattern, "muffleWarning") [17:27:58.814] if (muffled) [17:27:58.814] invokeRestart("muffleWarning") [17:27:58.814] } [17:27:58.814] else if (inherits(cond, "condition")) { [17:27:58.814] if (!is.null(pattern)) { [17:27:58.814] computeRestarts <- base::computeRestarts [17:27:58.814] grepl <- base::grepl [17:27:58.814] restarts <- computeRestarts(cond) [17:27:58.814] for (restart in restarts) { [17:27:58.814] name <- restart$name [17:27:58.814] if (is.null(name)) [17:27:58.814] next [17:27:58.814] if (!grepl(pattern, name)) [17:27:58.814] next [17:27:58.814] invokeRestart(restart) [17:27:58.814] muffled <- TRUE [17:27:58.814] break [17:27:58.814] } [17:27:58.814] } [17:27:58.814] } [17:27:58.814] invisible(muffled) [17:27:58.814] } [17:27:58.814] muffleCondition(cond) [17:27:58.814] }) [17:27:58.814] })) [17:27:58.814] future::FutureResult(value = ...future.value$value, [17:27:58.814] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.814] ...future.rng), globalenv = if (FALSE) [17:27:58.814] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:58.814] ...future.globalenv.names)) [17:27:58.814] else NULL, started = ...future.startTime, version = "1.8") [17:27:58.814] }, condition = base::local({ [17:27:58.814] c <- base::c [17:27:58.814] inherits <- base::inherits [17:27:58.814] invokeRestart <- base::invokeRestart [17:27:58.814] length <- base::length [17:27:58.814] list <- base::list [17:27:58.814] seq.int <- base::seq.int [17:27:58.814] signalCondition <- base::signalCondition [17:27:58.814] sys.calls <- base::sys.calls [17:27:58.814] `[[` <- base::`[[` [17:27:58.814] `+` <- base::`+` [17:27:58.814] `<<-` <- base::`<<-` [17:27:58.814] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:58.814] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:58.814] 3L)] [17:27:58.814] } [17:27:58.814] function(cond) { [17:27:58.814] is_error <- inherits(cond, "error") [17:27:58.814] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:58.814] NULL) [17:27:58.814] if (is_error) { [17:27:58.814] sessionInformation <- function() { [17:27:58.814] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:58.814] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:58.814] search = base::search(), system = base::Sys.info()) [17:27:58.814] } [17:27:58.814] ...future.conditions[[length(...future.conditions) + [17:27:58.814] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:58.814] cond$call), session = sessionInformation(), [17:27:58.814] timestamp = base::Sys.time(), signaled = 0L) [17:27:58.814] signalCondition(cond) [17:27:58.814] } [17:27:58.814] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:58.814] "immediateCondition"))) { [17:27:58.814] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:58.814] ...future.conditions[[length(...future.conditions) + [17:27:58.814] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:58.814] if (TRUE && !signal) { [17:27:58.814] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.814] { [17:27:58.814] inherits <- base::inherits [17:27:58.814] invokeRestart <- base::invokeRestart [17:27:58.814] is.null <- base::is.null [17:27:58.814] muffled <- FALSE [17:27:58.814] if (inherits(cond, "message")) { [17:27:58.814] muffled <- grepl(pattern, "muffleMessage") [17:27:58.814] if (muffled) [17:27:58.814] invokeRestart("muffleMessage") [17:27:58.814] } [17:27:58.814] else if (inherits(cond, "warning")) { [17:27:58.814] muffled <- grepl(pattern, "muffleWarning") [17:27:58.814] if (muffled) [17:27:58.814] invokeRestart("muffleWarning") [17:27:58.814] } [17:27:58.814] else if (inherits(cond, "condition")) { [17:27:58.814] if (!is.null(pattern)) { [17:27:58.814] computeRestarts <- base::computeRestarts [17:27:58.814] grepl <- base::grepl [17:27:58.814] restarts <- computeRestarts(cond) [17:27:58.814] for (restart in restarts) { [17:27:58.814] name <- restart$name [17:27:58.814] if (is.null(name)) [17:27:58.814] next [17:27:58.814] if (!grepl(pattern, name)) [17:27:58.814] next [17:27:58.814] invokeRestart(restart) [17:27:58.814] muffled <- TRUE [17:27:58.814] break [17:27:58.814] } [17:27:58.814] } [17:27:58.814] } [17:27:58.814] invisible(muffled) [17:27:58.814] } [17:27:58.814] muffleCondition(cond, pattern = "^muffle") [17:27:58.814] } [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] if (TRUE) { [17:27:58.814] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.814] { [17:27:58.814] inherits <- base::inherits [17:27:58.814] invokeRestart <- base::invokeRestart [17:27:58.814] is.null <- base::is.null [17:27:58.814] muffled <- FALSE [17:27:58.814] if (inherits(cond, "message")) { [17:27:58.814] muffled <- grepl(pattern, "muffleMessage") [17:27:58.814] if (muffled) [17:27:58.814] invokeRestart("muffleMessage") [17:27:58.814] } [17:27:58.814] else if (inherits(cond, "warning")) { [17:27:58.814] muffled <- grepl(pattern, "muffleWarning") [17:27:58.814] if (muffled) [17:27:58.814] invokeRestart("muffleWarning") [17:27:58.814] } [17:27:58.814] else if (inherits(cond, "condition")) { [17:27:58.814] if (!is.null(pattern)) { [17:27:58.814] computeRestarts <- base::computeRestarts [17:27:58.814] grepl <- base::grepl [17:27:58.814] restarts <- computeRestarts(cond) [17:27:58.814] for (restart in restarts) { [17:27:58.814] name <- restart$name [17:27:58.814] if (is.null(name)) [17:27:58.814] next [17:27:58.814] if (!grepl(pattern, name)) [17:27:58.814] next [17:27:58.814] invokeRestart(restart) [17:27:58.814] muffled <- TRUE [17:27:58.814] break [17:27:58.814] } [17:27:58.814] } [17:27:58.814] } [17:27:58.814] invisible(muffled) [17:27:58.814] } [17:27:58.814] muffleCondition(cond, pattern = "^muffle") [17:27:58.814] } [17:27:58.814] } [17:27:58.814] } [17:27:58.814] })) [17:27:58.814] }, error = function(ex) { [17:27:58.814] base::structure(base::list(value = NULL, visible = NULL, [17:27:58.814] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.814] ...future.rng), started = ...future.startTime, [17:27:58.814] finished = Sys.time(), session_uuid = NA_character_, [17:27:58.814] version = "1.8"), class = "FutureResult") [17:27:58.814] }, finally = { [17:27:58.814] if (!identical(...future.workdir, getwd())) [17:27:58.814] setwd(...future.workdir) [17:27:58.814] { [17:27:58.814] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:58.814] ...future.oldOptions$nwarnings <- NULL [17:27:58.814] } [17:27:58.814] base::options(...future.oldOptions) [17:27:58.814] if (.Platform$OS.type == "windows") { [17:27:58.814] old_names <- names(...future.oldEnvVars) [17:27:58.814] envs <- base::Sys.getenv() [17:27:58.814] names <- names(envs) [17:27:58.814] common <- intersect(names, old_names) [17:27:58.814] added <- setdiff(names, old_names) [17:27:58.814] removed <- setdiff(old_names, names) [17:27:58.814] changed <- common[...future.oldEnvVars[common] != [17:27:58.814] envs[common]] [17:27:58.814] NAMES <- toupper(changed) [17:27:58.814] args <- list() [17:27:58.814] for (kk in seq_along(NAMES)) { [17:27:58.814] name <- changed[[kk]] [17:27:58.814] NAME <- NAMES[[kk]] [17:27:58.814] if (name != NAME && is.element(NAME, old_names)) [17:27:58.814] next [17:27:58.814] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.814] } [17:27:58.814] NAMES <- toupper(added) [17:27:58.814] for (kk in seq_along(NAMES)) { [17:27:58.814] name <- added[[kk]] [17:27:58.814] NAME <- NAMES[[kk]] [17:27:58.814] if (name != NAME && is.element(NAME, old_names)) [17:27:58.814] next [17:27:58.814] args[[name]] <- "" [17:27:58.814] } [17:27:58.814] NAMES <- toupper(removed) [17:27:58.814] for (kk in seq_along(NAMES)) { [17:27:58.814] name <- removed[[kk]] [17:27:58.814] NAME <- NAMES[[kk]] [17:27:58.814] if (name != NAME && is.element(NAME, old_names)) [17:27:58.814] next [17:27:58.814] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.814] } [17:27:58.814] if (length(args) > 0) [17:27:58.814] base::do.call(base::Sys.setenv, args = args) [17:27:58.814] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:58.814] } [17:27:58.814] { [17:27:58.814] if (base::length(...future.futureOptionsAdded) > [17:27:58.814] 0L) { [17:27:58.814] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:58.814] base::names(opts) <- ...future.futureOptionsAdded [17:27:58.814] base::options(opts) [17:27:58.814] } [17:27:58.814] { [17:27:58.814] { [17:27:58.814] base::options(mc.cores = ...future.mc.cores.old) [17:27:58.814] NULL [17:27:58.814] } [17:27:58.814] options(future.plan = NULL) [17:27:58.814] if (is.na(NA_character_)) [17:27:58.814] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.814] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:58.814] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:58.814] .init = FALSE) [17:27:58.814] } [17:27:58.814] } [17:27:58.814] } [17:27:58.814] }) [17:27:58.814] if (TRUE) { [17:27:58.814] base::sink(type = "output", split = FALSE) [17:27:58.814] if (TRUE) { [17:27:58.814] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:58.814] } [17:27:58.814] else { [17:27:58.814] ...future.result["stdout"] <- base::list(NULL) [17:27:58.814] } [17:27:58.814] base::close(...future.stdout) [17:27:58.814] ...future.stdout <- NULL [17:27:58.814] } [17:27:58.814] ...future.result$conditions <- ...future.conditions [17:27:58.814] ...future.result$finished <- base::Sys.time() [17:27:58.814] ...future.result [17:27:58.814] } [17:27:58.820] MultisessionFuture started [17:27:58.820] - Launch lazy future ... done [17:27:58.820] run() for 'MultisessionFuture' ... done [17:27:58.835] receiveMessageFromWorker() for ClusterFuture ... [17:27:58.835] - Validating connection of MultisessionFuture [17:27:58.836] - received message: FutureResult [17:27:58.836] - Received FutureResult [17:27:58.836] - Erased future from FutureRegistry [17:27:58.836] result() for ClusterFuture ... [17:27:58.837] - result already collected: FutureResult [17:27:58.837] result() for ClusterFuture ... done [17:27:58.837] signalConditions() ... [17:27:58.837] - include = 'immediateCondition' [17:27:58.837] - exclude = [17:27:58.840] - resignal = FALSE [17:27:58.840] - Number of conditions: 1 [17:27:58.840] signalConditions() ... done [17:27:58.840] receiveMessageFromWorker() for ClusterFuture ... done [17:27:58.841] A MultisessionFuture was resolved - result = TRUE, recursive = 0 ... DONE - result = TRUE, recursive = 1 ... [17:27:58.841] getGlobalsAndPackages() ... [17:27:58.841] Searching for globals... [17:27:58.843] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:58.843] Searching for globals ... DONE [17:27:58.843] Resolving globals: FALSE [17:27:58.843] [17:27:58.844] [17:27:58.844] getGlobalsAndPackages() ... DONE [17:27:58.844] run() for 'Future' ... [17:27:58.844] - state: 'created' [17:27:58.844] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:58.859] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:58.859] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:58.859] - Field: 'node' [17:27:58.859] - Field: 'label' [17:27:58.860] - Field: 'local' [17:27:58.860] - Field: 'owner' [17:27:58.860] - Field: 'envir' [17:27:58.860] - Field: 'workers' [17:27:58.860] - Field: 'packages' [17:27:58.861] - Field: 'gc' [17:27:58.861] - Field: 'conditions' [17:27:58.861] - Field: 'persistent' [17:27:58.861] - Field: 'expr' [17:27:58.861] - Field: 'uuid' [17:27:58.861] - Field: 'seed' [17:27:58.862] - Field: 'version' [17:27:58.862] - Field: 'result' [17:27:58.862] - Field: 'asynchronous' [17:27:58.862] - Field: 'calls' [17:27:58.862] - Field: 'globals' [17:27:58.862] - Field: 'stdout' [17:27:58.863] - Field: 'earlySignal' [17:27:58.863] - Field: 'lazy' [17:27:58.863] - Field: 'state' [17:27:58.863] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:58.863] - Launch lazy future ... [17:27:58.864] Packages needed by the future expression (n = 0): [17:27:58.864] Packages needed by future strategies (n = 0): [17:27:58.864] { [17:27:58.864] { [17:27:58.864] { [17:27:58.864] ...future.startTime <- base::Sys.time() [17:27:58.864] { [17:27:58.864] { [17:27:58.864] { [17:27:58.864] { [17:27:58.864] base::local({ [17:27:58.864] has_future <- base::requireNamespace("future", [17:27:58.864] quietly = TRUE) [17:27:58.864] if (has_future) { [17:27:58.864] ns <- base::getNamespace("future") [17:27:58.864] version <- ns[[".package"]][["version"]] [17:27:58.864] if (is.null(version)) [17:27:58.864] version <- utils::packageVersion("future") [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] version <- NULL [17:27:58.864] } [17:27:58.864] if (!has_future || version < "1.8.0") { [17:27:58.864] info <- base::c(r_version = base::gsub("R version ", [17:27:58.864] "", base::R.version$version.string), [17:27:58.864] platform = base::sprintf("%s (%s-bit)", [17:27:58.864] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:58.864] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:58.864] "release", "version")], collapse = " "), [17:27:58.864] hostname = base::Sys.info()[["nodename"]]) [17:27:58.864] info <- base::sprintf("%s: %s", base::names(info), [17:27:58.864] info) [17:27:58.864] info <- base::paste(info, collapse = "; ") [17:27:58.864] if (!has_future) { [17:27:58.864] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:58.864] info) [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:58.864] info, version) [17:27:58.864] } [17:27:58.864] base::stop(msg) [17:27:58.864] } [17:27:58.864] }) [17:27:58.864] } [17:27:58.864] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:58.864] base::options(mc.cores = 1L) [17:27:58.864] } [17:27:58.864] ...future.strategy.old <- future::plan("list") [17:27:58.864] options(future.plan = NULL) [17:27:58.864] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.864] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:58.864] } [17:27:58.864] ...future.workdir <- getwd() [17:27:58.864] } [17:27:58.864] ...future.oldOptions <- base::as.list(base::.Options) [17:27:58.864] ...future.oldEnvVars <- base::Sys.getenv() [17:27:58.864] } [17:27:58.864] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:58.864] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:58.864] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:58.864] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:58.864] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:58.864] future.stdout.windows.reencode = NULL, width = 80L) [17:27:58.864] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:58.864] base::names(...future.oldOptions)) [17:27:58.864] } [17:27:58.864] if (FALSE) { [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] if (TRUE) { [17:27:58.864] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:58.864] open = "w") [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:58.864] windows = "NUL", "/dev/null"), open = "w") [17:27:58.864] } [17:27:58.864] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:58.864] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:58.864] base::sink(type = "output", split = FALSE) [17:27:58.864] base::close(...future.stdout) [17:27:58.864] }, add = TRUE) [17:27:58.864] } [17:27:58.864] ...future.frame <- base::sys.nframe() [17:27:58.864] ...future.conditions <- base::list() [17:27:58.864] ...future.rng <- base::globalenv()$.Random.seed [17:27:58.864] if (FALSE) { [17:27:58.864] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:58.864] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:58.864] } [17:27:58.864] ...future.result <- base::tryCatch({ [17:27:58.864] base::withCallingHandlers({ [17:27:58.864] ...future.value <- base::withVisible(base::local({ [17:27:58.864] ...future.makeSendCondition <- base::local({ [17:27:58.864] sendCondition <- NULL [17:27:58.864] function(frame = 1L) { [17:27:58.864] if (is.function(sendCondition)) [17:27:58.864] return(sendCondition) [17:27:58.864] ns <- getNamespace("parallel") [17:27:58.864] if (exists("sendData", mode = "function", [17:27:58.864] envir = ns)) { [17:27:58.864] parallel_sendData <- get("sendData", mode = "function", [17:27:58.864] envir = ns) [17:27:58.864] envir <- sys.frame(frame) [17:27:58.864] master <- NULL [17:27:58.864] while (!identical(envir, .GlobalEnv) && [17:27:58.864] !identical(envir, emptyenv())) { [17:27:58.864] if (exists("master", mode = "list", envir = envir, [17:27:58.864] inherits = FALSE)) { [17:27:58.864] master <- get("master", mode = "list", [17:27:58.864] envir = envir, inherits = FALSE) [17:27:58.864] if (inherits(master, c("SOCKnode", [17:27:58.864] "SOCK0node"))) { [17:27:58.864] sendCondition <<- function(cond) { [17:27:58.864] data <- list(type = "VALUE", value = cond, [17:27:58.864] success = TRUE) [17:27:58.864] parallel_sendData(master, data) [17:27:58.864] } [17:27:58.864] return(sendCondition) [17:27:58.864] } [17:27:58.864] } [17:27:58.864] frame <- frame + 1L [17:27:58.864] envir <- sys.frame(frame) [17:27:58.864] } [17:27:58.864] } [17:27:58.864] sendCondition <<- function(cond) NULL [17:27:58.864] } [17:27:58.864] }) [17:27:58.864] withCallingHandlers({ [17:27:58.864] { [17:27:58.864] Sys.sleep(0.5) [17:27:58.864] list(a = 1, b = 42L) [17:27:58.864] } [17:27:58.864] }, immediateCondition = function(cond) { [17:27:58.864] sendCondition <- ...future.makeSendCondition() [17:27:58.864] sendCondition(cond) [17:27:58.864] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.864] { [17:27:58.864] inherits <- base::inherits [17:27:58.864] invokeRestart <- base::invokeRestart [17:27:58.864] is.null <- base::is.null [17:27:58.864] muffled <- FALSE [17:27:58.864] if (inherits(cond, "message")) { [17:27:58.864] muffled <- grepl(pattern, "muffleMessage") [17:27:58.864] if (muffled) [17:27:58.864] invokeRestart("muffleMessage") [17:27:58.864] } [17:27:58.864] else if (inherits(cond, "warning")) { [17:27:58.864] muffled <- grepl(pattern, "muffleWarning") [17:27:58.864] if (muffled) [17:27:58.864] invokeRestart("muffleWarning") [17:27:58.864] } [17:27:58.864] else if (inherits(cond, "condition")) { [17:27:58.864] if (!is.null(pattern)) { [17:27:58.864] computeRestarts <- base::computeRestarts [17:27:58.864] grepl <- base::grepl [17:27:58.864] restarts <- computeRestarts(cond) [17:27:58.864] for (restart in restarts) { [17:27:58.864] name <- restart$name [17:27:58.864] if (is.null(name)) [17:27:58.864] next [17:27:58.864] if (!grepl(pattern, name)) [17:27:58.864] next [17:27:58.864] invokeRestart(restart) [17:27:58.864] muffled <- TRUE [17:27:58.864] break [17:27:58.864] } [17:27:58.864] } [17:27:58.864] } [17:27:58.864] invisible(muffled) [17:27:58.864] } [17:27:58.864] muffleCondition(cond) [17:27:58.864] }) [17:27:58.864] })) [17:27:58.864] future::FutureResult(value = ...future.value$value, [17:27:58.864] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.864] ...future.rng), globalenv = if (FALSE) [17:27:58.864] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:58.864] ...future.globalenv.names)) [17:27:58.864] else NULL, started = ...future.startTime, version = "1.8") [17:27:58.864] }, condition = base::local({ [17:27:58.864] c <- base::c [17:27:58.864] inherits <- base::inherits [17:27:58.864] invokeRestart <- base::invokeRestart [17:27:58.864] length <- base::length [17:27:58.864] list <- base::list [17:27:58.864] seq.int <- base::seq.int [17:27:58.864] signalCondition <- base::signalCondition [17:27:58.864] sys.calls <- base::sys.calls [17:27:58.864] `[[` <- base::`[[` [17:27:58.864] `+` <- base::`+` [17:27:58.864] `<<-` <- base::`<<-` [17:27:58.864] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:58.864] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:58.864] 3L)] [17:27:58.864] } [17:27:58.864] function(cond) { [17:27:58.864] is_error <- inherits(cond, "error") [17:27:58.864] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:58.864] NULL) [17:27:58.864] if (is_error) { [17:27:58.864] sessionInformation <- function() { [17:27:58.864] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:58.864] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:58.864] search = base::search(), system = base::Sys.info()) [17:27:58.864] } [17:27:58.864] ...future.conditions[[length(...future.conditions) + [17:27:58.864] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:58.864] cond$call), session = sessionInformation(), [17:27:58.864] timestamp = base::Sys.time(), signaled = 0L) [17:27:58.864] signalCondition(cond) [17:27:58.864] } [17:27:58.864] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:58.864] "immediateCondition"))) { [17:27:58.864] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:58.864] ...future.conditions[[length(...future.conditions) + [17:27:58.864] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:58.864] if (TRUE && !signal) { [17:27:58.864] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.864] { [17:27:58.864] inherits <- base::inherits [17:27:58.864] invokeRestart <- base::invokeRestart [17:27:58.864] is.null <- base::is.null [17:27:58.864] muffled <- FALSE [17:27:58.864] if (inherits(cond, "message")) { [17:27:58.864] muffled <- grepl(pattern, "muffleMessage") [17:27:58.864] if (muffled) [17:27:58.864] invokeRestart("muffleMessage") [17:27:58.864] } [17:27:58.864] else if (inherits(cond, "warning")) { [17:27:58.864] muffled <- grepl(pattern, "muffleWarning") [17:27:58.864] if (muffled) [17:27:58.864] invokeRestart("muffleWarning") [17:27:58.864] } [17:27:58.864] else if (inherits(cond, "condition")) { [17:27:58.864] if (!is.null(pattern)) { [17:27:58.864] computeRestarts <- base::computeRestarts [17:27:58.864] grepl <- base::grepl [17:27:58.864] restarts <- computeRestarts(cond) [17:27:58.864] for (restart in restarts) { [17:27:58.864] name <- restart$name [17:27:58.864] if (is.null(name)) [17:27:58.864] next [17:27:58.864] if (!grepl(pattern, name)) [17:27:58.864] next [17:27:58.864] invokeRestart(restart) [17:27:58.864] muffled <- TRUE [17:27:58.864] break [17:27:58.864] } [17:27:58.864] } [17:27:58.864] } [17:27:58.864] invisible(muffled) [17:27:58.864] } [17:27:58.864] muffleCondition(cond, pattern = "^muffle") [17:27:58.864] } [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] if (TRUE) { [17:27:58.864] muffleCondition <- function (cond, pattern = "^muffle") [17:27:58.864] { [17:27:58.864] inherits <- base::inherits [17:27:58.864] invokeRestart <- base::invokeRestart [17:27:58.864] is.null <- base::is.null [17:27:58.864] muffled <- FALSE [17:27:58.864] if (inherits(cond, "message")) { [17:27:58.864] muffled <- grepl(pattern, "muffleMessage") [17:27:58.864] if (muffled) [17:27:58.864] invokeRestart("muffleMessage") [17:27:58.864] } [17:27:58.864] else if (inherits(cond, "warning")) { [17:27:58.864] muffled <- grepl(pattern, "muffleWarning") [17:27:58.864] if (muffled) [17:27:58.864] invokeRestart("muffleWarning") [17:27:58.864] } [17:27:58.864] else if (inherits(cond, "condition")) { [17:27:58.864] if (!is.null(pattern)) { [17:27:58.864] computeRestarts <- base::computeRestarts [17:27:58.864] grepl <- base::grepl [17:27:58.864] restarts <- computeRestarts(cond) [17:27:58.864] for (restart in restarts) { [17:27:58.864] name <- restart$name [17:27:58.864] if (is.null(name)) [17:27:58.864] next [17:27:58.864] if (!grepl(pattern, name)) [17:27:58.864] next [17:27:58.864] invokeRestart(restart) [17:27:58.864] muffled <- TRUE [17:27:58.864] break [17:27:58.864] } [17:27:58.864] } [17:27:58.864] } [17:27:58.864] invisible(muffled) [17:27:58.864] } [17:27:58.864] muffleCondition(cond, pattern = "^muffle") [17:27:58.864] } [17:27:58.864] } [17:27:58.864] } [17:27:58.864] })) [17:27:58.864] }, error = function(ex) { [17:27:58.864] base::structure(base::list(value = NULL, visible = NULL, [17:27:58.864] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:58.864] ...future.rng), started = ...future.startTime, [17:27:58.864] finished = Sys.time(), session_uuid = NA_character_, [17:27:58.864] version = "1.8"), class = "FutureResult") [17:27:58.864] }, finally = { [17:27:58.864] if (!identical(...future.workdir, getwd())) [17:27:58.864] setwd(...future.workdir) [17:27:58.864] { [17:27:58.864] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:58.864] ...future.oldOptions$nwarnings <- NULL [17:27:58.864] } [17:27:58.864] base::options(...future.oldOptions) [17:27:58.864] if (.Platform$OS.type == "windows") { [17:27:58.864] old_names <- names(...future.oldEnvVars) [17:27:58.864] envs <- base::Sys.getenv() [17:27:58.864] names <- names(envs) [17:27:58.864] common <- intersect(names, old_names) [17:27:58.864] added <- setdiff(names, old_names) [17:27:58.864] removed <- setdiff(old_names, names) [17:27:58.864] changed <- common[...future.oldEnvVars[common] != [17:27:58.864] envs[common]] [17:27:58.864] NAMES <- toupper(changed) [17:27:58.864] args <- list() [17:27:58.864] for (kk in seq_along(NAMES)) { [17:27:58.864] name <- changed[[kk]] [17:27:58.864] NAME <- NAMES[[kk]] [17:27:58.864] if (name != NAME && is.element(NAME, old_names)) [17:27:58.864] next [17:27:58.864] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.864] } [17:27:58.864] NAMES <- toupper(added) [17:27:58.864] for (kk in seq_along(NAMES)) { [17:27:58.864] name <- added[[kk]] [17:27:58.864] NAME <- NAMES[[kk]] [17:27:58.864] if (name != NAME && is.element(NAME, old_names)) [17:27:58.864] next [17:27:58.864] args[[name]] <- "" [17:27:58.864] } [17:27:58.864] NAMES <- toupper(removed) [17:27:58.864] for (kk in seq_along(NAMES)) { [17:27:58.864] name <- removed[[kk]] [17:27:58.864] NAME <- NAMES[[kk]] [17:27:58.864] if (name != NAME && is.element(NAME, old_names)) [17:27:58.864] next [17:27:58.864] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:58.864] } [17:27:58.864] if (length(args) > 0) [17:27:58.864] base::do.call(base::Sys.setenv, args = args) [17:27:58.864] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:58.864] } [17:27:58.864] { [17:27:58.864] if (base::length(...future.futureOptionsAdded) > [17:27:58.864] 0L) { [17:27:58.864] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:58.864] base::names(opts) <- ...future.futureOptionsAdded [17:27:58.864] base::options(opts) [17:27:58.864] } [17:27:58.864] { [17:27:58.864] { [17:27:58.864] base::options(mc.cores = ...future.mc.cores.old) [17:27:58.864] NULL [17:27:58.864] } [17:27:58.864] options(future.plan = NULL) [17:27:58.864] if (is.na(NA_character_)) [17:27:58.864] Sys.unsetenv("R_FUTURE_PLAN") [17:27:58.864] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:58.864] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:58.864] .init = FALSE) [17:27:58.864] } [17:27:58.864] } [17:27:58.864] } [17:27:58.864] }) [17:27:58.864] if (TRUE) { [17:27:58.864] base::sink(type = "output", split = FALSE) [17:27:58.864] if (TRUE) { [17:27:58.864] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:58.864] } [17:27:58.864] else { [17:27:58.864] ...future.result["stdout"] <- base::list(NULL) [17:27:58.864] } [17:27:58.864] base::close(...future.stdout) [17:27:58.864] ...future.stdout <- NULL [17:27:58.864] } [17:27:58.864] ...future.result$conditions <- ...future.conditions [17:27:58.864] ...future.result$finished <- base::Sys.time() [17:27:58.864] ...future.result [17:27:58.864] } [17:27:58.870] MultisessionFuture started [17:27:58.870] - Launch lazy future ... done [17:27:58.870] run() for 'MultisessionFuture' ... done [17:27:59.389] receiveMessageFromWorker() for ClusterFuture ... [17:27:59.389] - Validating connection of MultisessionFuture [17:27:59.389] - received message: FutureResult [17:27:59.390] - Received FutureResult [17:27:59.390] - Erased future from FutureRegistry [17:27:59.390] result() for ClusterFuture ... [17:27:59.390] - result already collected: FutureResult [17:27:59.390] result() for ClusterFuture ... done [17:27:59.390] receiveMessageFromWorker() for ClusterFuture ... done [17:27:59.391] resolve() on list ... [17:27:59.391] recursive: 0 [17:27:59.391] length: 2 [17:27:59.391] elements: 'a', 'b' [17:27:59.391] length: 1 (resolved future 1) [17:27:59.392] length: 0 (resolved future 2) [17:27:59.392] resolve() on list ... DONE [17:27:59.392] A MultisessionFuture was resolved (and resolved itself) [17:27:59.392] getGlobalsAndPackages() ... [17:27:59.392] Searching for globals... [17:27:59.394] - globals found: [3] '{', 'Sys.sleep', 'list' [17:27:59.394] Searching for globals ... DONE [17:27:59.394] Resolving globals: FALSE [17:27:59.394] [17:27:59.394] [17:27:59.395] getGlobalsAndPackages() ... DONE [17:27:59.395] run() for 'Future' ... [17:27:59.395] - state: 'created' [17:27:59.395] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:59.411] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:59.411] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:59.412] - Field: 'node' [17:27:59.412] - Field: 'label' [17:27:59.412] - Field: 'local' [17:27:59.412] - Field: 'owner' [17:27:59.412] - Field: 'envir' [17:27:59.413] - Field: 'workers' [17:27:59.413] - Field: 'packages' [17:27:59.413] - Field: 'gc' [17:27:59.413] - Field: 'conditions' [17:27:59.413] - Field: 'persistent' [17:27:59.413] - Field: 'expr' [17:27:59.414] - Field: 'uuid' [17:27:59.414] - Field: 'seed' [17:27:59.414] - Field: 'version' [17:27:59.414] - Field: 'result' [17:27:59.414] - Field: 'asynchronous' [17:27:59.415] - Field: 'calls' [17:27:59.415] - Field: 'globals' [17:27:59.415] - Field: 'stdout' [17:27:59.415] - Field: 'earlySignal' [17:27:59.415] - Field: 'lazy' [17:27:59.415] - Field: 'state' [17:27:59.416] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:59.416] - Launch lazy future ... [17:27:59.416] Packages needed by the future expression (n = 0): [17:27:59.416] Packages needed by future strategies (n = 0): [17:27:59.417] { [17:27:59.417] { [17:27:59.417] { [17:27:59.417] ...future.startTime <- base::Sys.time() [17:27:59.417] { [17:27:59.417] { [17:27:59.417] { [17:27:59.417] { [17:27:59.417] base::local({ [17:27:59.417] has_future <- base::requireNamespace("future", [17:27:59.417] quietly = TRUE) [17:27:59.417] if (has_future) { [17:27:59.417] ns <- base::getNamespace("future") [17:27:59.417] version <- ns[[".package"]][["version"]] [17:27:59.417] if (is.null(version)) [17:27:59.417] version <- utils::packageVersion("future") [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] version <- NULL [17:27:59.417] } [17:27:59.417] if (!has_future || version < "1.8.0") { [17:27:59.417] info <- base::c(r_version = base::gsub("R version ", [17:27:59.417] "", base::R.version$version.string), [17:27:59.417] platform = base::sprintf("%s (%s-bit)", [17:27:59.417] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:59.417] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:59.417] "release", "version")], collapse = " "), [17:27:59.417] hostname = base::Sys.info()[["nodename"]]) [17:27:59.417] info <- base::sprintf("%s: %s", base::names(info), [17:27:59.417] info) [17:27:59.417] info <- base::paste(info, collapse = "; ") [17:27:59.417] if (!has_future) { [17:27:59.417] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:59.417] info) [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:59.417] info, version) [17:27:59.417] } [17:27:59.417] base::stop(msg) [17:27:59.417] } [17:27:59.417] }) [17:27:59.417] } [17:27:59.417] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:59.417] base::options(mc.cores = 1L) [17:27:59.417] } [17:27:59.417] ...future.strategy.old <- future::plan("list") [17:27:59.417] options(future.plan = NULL) [17:27:59.417] Sys.unsetenv("R_FUTURE_PLAN") [17:27:59.417] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:59.417] } [17:27:59.417] ...future.workdir <- getwd() [17:27:59.417] } [17:27:59.417] ...future.oldOptions <- base::as.list(base::.Options) [17:27:59.417] ...future.oldEnvVars <- base::Sys.getenv() [17:27:59.417] } [17:27:59.417] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:59.417] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:59.417] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:59.417] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:59.417] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:59.417] future.stdout.windows.reencode = NULL, width = 80L) [17:27:59.417] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:59.417] base::names(...future.oldOptions)) [17:27:59.417] } [17:27:59.417] if (FALSE) { [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] if (TRUE) { [17:27:59.417] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:59.417] open = "w") [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:59.417] windows = "NUL", "/dev/null"), open = "w") [17:27:59.417] } [17:27:59.417] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:59.417] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:59.417] base::sink(type = "output", split = FALSE) [17:27:59.417] base::close(...future.stdout) [17:27:59.417] }, add = TRUE) [17:27:59.417] } [17:27:59.417] ...future.frame <- base::sys.nframe() [17:27:59.417] ...future.conditions <- base::list() [17:27:59.417] ...future.rng <- base::globalenv()$.Random.seed [17:27:59.417] if (FALSE) { [17:27:59.417] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:59.417] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:59.417] } [17:27:59.417] ...future.result <- base::tryCatch({ [17:27:59.417] base::withCallingHandlers({ [17:27:59.417] ...future.value <- base::withVisible(base::local({ [17:27:59.417] ...future.makeSendCondition <- base::local({ [17:27:59.417] sendCondition <- NULL [17:27:59.417] function(frame = 1L) { [17:27:59.417] if (is.function(sendCondition)) [17:27:59.417] return(sendCondition) [17:27:59.417] ns <- getNamespace("parallel") [17:27:59.417] if (exists("sendData", mode = "function", [17:27:59.417] envir = ns)) { [17:27:59.417] parallel_sendData <- get("sendData", mode = "function", [17:27:59.417] envir = ns) [17:27:59.417] envir <- sys.frame(frame) [17:27:59.417] master <- NULL [17:27:59.417] while (!identical(envir, .GlobalEnv) && [17:27:59.417] !identical(envir, emptyenv())) { [17:27:59.417] if (exists("master", mode = "list", envir = envir, [17:27:59.417] inherits = FALSE)) { [17:27:59.417] master <- get("master", mode = "list", [17:27:59.417] envir = envir, inherits = FALSE) [17:27:59.417] if (inherits(master, c("SOCKnode", [17:27:59.417] "SOCK0node"))) { [17:27:59.417] sendCondition <<- function(cond) { [17:27:59.417] data <- list(type = "VALUE", value = cond, [17:27:59.417] success = TRUE) [17:27:59.417] parallel_sendData(master, data) [17:27:59.417] } [17:27:59.417] return(sendCondition) [17:27:59.417] } [17:27:59.417] } [17:27:59.417] frame <- frame + 1L [17:27:59.417] envir <- sys.frame(frame) [17:27:59.417] } [17:27:59.417] } [17:27:59.417] sendCondition <<- function(cond) NULL [17:27:59.417] } [17:27:59.417] }) [17:27:59.417] withCallingHandlers({ [17:27:59.417] { [17:27:59.417] Sys.sleep(0.5) [17:27:59.417] list(a = 1, b = 42L) [17:27:59.417] } [17:27:59.417] }, immediateCondition = function(cond) { [17:27:59.417] sendCondition <- ...future.makeSendCondition() [17:27:59.417] sendCondition(cond) [17:27:59.417] muffleCondition <- function (cond, pattern = "^muffle") [17:27:59.417] { [17:27:59.417] inherits <- base::inherits [17:27:59.417] invokeRestart <- base::invokeRestart [17:27:59.417] is.null <- base::is.null [17:27:59.417] muffled <- FALSE [17:27:59.417] if (inherits(cond, "message")) { [17:27:59.417] muffled <- grepl(pattern, "muffleMessage") [17:27:59.417] if (muffled) [17:27:59.417] invokeRestart("muffleMessage") [17:27:59.417] } [17:27:59.417] else if (inherits(cond, "warning")) { [17:27:59.417] muffled <- grepl(pattern, "muffleWarning") [17:27:59.417] if (muffled) [17:27:59.417] invokeRestart("muffleWarning") [17:27:59.417] } [17:27:59.417] else if (inherits(cond, "condition")) { [17:27:59.417] if (!is.null(pattern)) { [17:27:59.417] computeRestarts <- base::computeRestarts [17:27:59.417] grepl <- base::grepl [17:27:59.417] restarts <- computeRestarts(cond) [17:27:59.417] for (restart in restarts) { [17:27:59.417] name <- restart$name [17:27:59.417] if (is.null(name)) [17:27:59.417] next [17:27:59.417] if (!grepl(pattern, name)) [17:27:59.417] next [17:27:59.417] invokeRestart(restart) [17:27:59.417] muffled <- TRUE [17:27:59.417] break [17:27:59.417] } [17:27:59.417] } [17:27:59.417] } [17:27:59.417] invisible(muffled) [17:27:59.417] } [17:27:59.417] muffleCondition(cond) [17:27:59.417] }) [17:27:59.417] })) [17:27:59.417] future::FutureResult(value = ...future.value$value, [17:27:59.417] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:59.417] ...future.rng), globalenv = if (FALSE) [17:27:59.417] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:59.417] ...future.globalenv.names)) [17:27:59.417] else NULL, started = ...future.startTime, version = "1.8") [17:27:59.417] }, condition = base::local({ [17:27:59.417] c <- base::c [17:27:59.417] inherits <- base::inherits [17:27:59.417] invokeRestart <- base::invokeRestart [17:27:59.417] length <- base::length [17:27:59.417] list <- base::list [17:27:59.417] seq.int <- base::seq.int [17:27:59.417] signalCondition <- base::signalCondition [17:27:59.417] sys.calls <- base::sys.calls [17:27:59.417] `[[` <- base::`[[` [17:27:59.417] `+` <- base::`+` [17:27:59.417] `<<-` <- base::`<<-` [17:27:59.417] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:59.417] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:59.417] 3L)] [17:27:59.417] } [17:27:59.417] function(cond) { [17:27:59.417] is_error <- inherits(cond, "error") [17:27:59.417] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:59.417] NULL) [17:27:59.417] if (is_error) { [17:27:59.417] sessionInformation <- function() { [17:27:59.417] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:59.417] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:59.417] search = base::search(), system = base::Sys.info()) [17:27:59.417] } [17:27:59.417] ...future.conditions[[length(...future.conditions) + [17:27:59.417] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:59.417] cond$call), session = sessionInformation(), [17:27:59.417] timestamp = base::Sys.time(), signaled = 0L) [17:27:59.417] signalCondition(cond) [17:27:59.417] } [17:27:59.417] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:59.417] "immediateCondition"))) { [17:27:59.417] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:59.417] ...future.conditions[[length(...future.conditions) + [17:27:59.417] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:59.417] if (TRUE && !signal) { [17:27:59.417] muffleCondition <- function (cond, pattern = "^muffle") [17:27:59.417] { [17:27:59.417] inherits <- base::inherits [17:27:59.417] invokeRestart <- base::invokeRestart [17:27:59.417] is.null <- base::is.null [17:27:59.417] muffled <- FALSE [17:27:59.417] if (inherits(cond, "message")) { [17:27:59.417] muffled <- grepl(pattern, "muffleMessage") [17:27:59.417] if (muffled) [17:27:59.417] invokeRestart("muffleMessage") [17:27:59.417] } [17:27:59.417] else if (inherits(cond, "warning")) { [17:27:59.417] muffled <- grepl(pattern, "muffleWarning") [17:27:59.417] if (muffled) [17:27:59.417] invokeRestart("muffleWarning") [17:27:59.417] } [17:27:59.417] else if (inherits(cond, "condition")) { [17:27:59.417] if (!is.null(pattern)) { [17:27:59.417] computeRestarts <- base::computeRestarts [17:27:59.417] grepl <- base::grepl [17:27:59.417] restarts <- computeRestarts(cond) [17:27:59.417] for (restart in restarts) { [17:27:59.417] name <- restart$name [17:27:59.417] if (is.null(name)) [17:27:59.417] next [17:27:59.417] if (!grepl(pattern, name)) [17:27:59.417] next [17:27:59.417] invokeRestart(restart) [17:27:59.417] muffled <- TRUE [17:27:59.417] break [17:27:59.417] } [17:27:59.417] } [17:27:59.417] } [17:27:59.417] invisible(muffled) [17:27:59.417] } [17:27:59.417] muffleCondition(cond, pattern = "^muffle") [17:27:59.417] } [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] if (TRUE) { [17:27:59.417] muffleCondition <- function (cond, pattern = "^muffle") [17:27:59.417] { [17:27:59.417] inherits <- base::inherits [17:27:59.417] invokeRestart <- base::invokeRestart [17:27:59.417] is.null <- base::is.null [17:27:59.417] muffled <- FALSE [17:27:59.417] if (inherits(cond, "message")) { [17:27:59.417] muffled <- grepl(pattern, "muffleMessage") [17:27:59.417] if (muffled) [17:27:59.417] invokeRestart("muffleMessage") [17:27:59.417] } [17:27:59.417] else if (inherits(cond, "warning")) { [17:27:59.417] muffled <- grepl(pattern, "muffleWarning") [17:27:59.417] if (muffled) [17:27:59.417] invokeRestart("muffleWarning") [17:27:59.417] } [17:27:59.417] else if (inherits(cond, "condition")) { [17:27:59.417] if (!is.null(pattern)) { [17:27:59.417] computeRestarts <- base::computeRestarts [17:27:59.417] grepl <- base::grepl [17:27:59.417] restarts <- computeRestarts(cond) [17:27:59.417] for (restart in restarts) { [17:27:59.417] name <- restart$name [17:27:59.417] if (is.null(name)) [17:27:59.417] next [17:27:59.417] if (!grepl(pattern, name)) [17:27:59.417] next [17:27:59.417] invokeRestart(restart) [17:27:59.417] muffled <- TRUE [17:27:59.417] break [17:27:59.417] } [17:27:59.417] } [17:27:59.417] } [17:27:59.417] invisible(muffled) [17:27:59.417] } [17:27:59.417] muffleCondition(cond, pattern = "^muffle") [17:27:59.417] } [17:27:59.417] } [17:27:59.417] } [17:27:59.417] })) [17:27:59.417] }, error = function(ex) { [17:27:59.417] base::structure(base::list(value = NULL, visible = NULL, [17:27:59.417] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:59.417] ...future.rng), started = ...future.startTime, [17:27:59.417] finished = Sys.time(), session_uuid = NA_character_, [17:27:59.417] version = "1.8"), class = "FutureResult") [17:27:59.417] }, finally = { [17:27:59.417] if (!identical(...future.workdir, getwd())) [17:27:59.417] setwd(...future.workdir) [17:27:59.417] { [17:27:59.417] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:59.417] ...future.oldOptions$nwarnings <- NULL [17:27:59.417] } [17:27:59.417] base::options(...future.oldOptions) [17:27:59.417] if (.Platform$OS.type == "windows") { [17:27:59.417] old_names <- names(...future.oldEnvVars) [17:27:59.417] envs <- base::Sys.getenv() [17:27:59.417] names <- names(envs) [17:27:59.417] common <- intersect(names, old_names) [17:27:59.417] added <- setdiff(names, old_names) [17:27:59.417] removed <- setdiff(old_names, names) [17:27:59.417] changed <- common[...future.oldEnvVars[common] != [17:27:59.417] envs[common]] [17:27:59.417] NAMES <- toupper(changed) [17:27:59.417] args <- list() [17:27:59.417] for (kk in seq_along(NAMES)) { [17:27:59.417] name <- changed[[kk]] [17:27:59.417] NAME <- NAMES[[kk]] [17:27:59.417] if (name != NAME && is.element(NAME, old_names)) [17:27:59.417] next [17:27:59.417] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:59.417] } [17:27:59.417] NAMES <- toupper(added) [17:27:59.417] for (kk in seq_along(NAMES)) { [17:27:59.417] name <- added[[kk]] [17:27:59.417] NAME <- NAMES[[kk]] [17:27:59.417] if (name != NAME && is.element(NAME, old_names)) [17:27:59.417] next [17:27:59.417] args[[name]] <- "" [17:27:59.417] } [17:27:59.417] NAMES <- toupper(removed) [17:27:59.417] for (kk in seq_along(NAMES)) { [17:27:59.417] name <- removed[[kk]] [17:27:59.417] NAME <- NAMES[[kk]] [17:27:59.417] if (name != NAME && is.element(NAME, old_names)) [17:27:59.417] next [17:27:59.417] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:59.417] } [17:27:59.417] if (length(args) > 0) [17:27:59.417] base::do.call(base::Sys.setenv, args = args) [17:27:59.417] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:59.417] } [17:27:59.417] { [17:27:59.417] if (base::length(...future.futureOptionsAdded) > [17:27:59.417] 0L) { [17:27:59.417] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:59.417] base::names(opts) <- ...future.futureOptionsAdded [17:27:59.417] base::options(opts) [17:27:59.417] } [17:27:59.417] { [17:27:59.417] { [17:27:59.417] base::options(mc.cores = ...future.mc.cores.old) [17:27:59.417] NULL [17:27:59.417] } [17:27:59.417] options(future.plan = NULL) [17:27:59.417] if (is.na(NA_character_)) [17:27:59.417] Sys.unsetenv("R_FUTURE_PLAN") [17:27:59.417] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:59.417] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:59.417] .init = FALSE) [17:27:59.417] } [17:27:59.417] } [17:27:59.417] } [17:27:59.417] }) [17:27:59.417] if (TRUE) { [17:27:59.417] base::sink(type = "output", split = FALSE) [17:27:59.417] if (TRUE) { [17:27:59.417] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:59.417] } [17:27:59.417] else { [17:27:59.417] ...future.result["stdout"] <- base::list(NULL) [17:27:59.417] } [17:27:59.417] base::close(...future.stdout) [17:27:59.417] ...future.stdout <- NULL [17:27:59.417] } [17:27:59.417] ...future.result$conditions <- ...future.conditions [17:27:59.417] ...future.result$finished <- base::Sys.time() [17:27:59.417] ...future.result [17:27:59.417] } [17:27:59.422] MultisessionFuture started [17:27:59.422] - Launch lazy future ... done [17:27:59.423] run() for 'MultisessionFuture' ... done [17:27:59.951] receiveMessageFromWorker() for ClusterFuture ... [17:27:59.951] - Validating connection of MultisessionFuture [17:27:59.952] - received message: FutureResult [17:27:59.952] - Received FutureResult [17:27:59.952] - Erased future from FutureRegistry [17:27:59.952] result() for ClusterFuture ... [17:27:59.952] - result already collected: FutureResult [17:27:59.953] result() for ClusterFuture ... done [17:27:59.953] receiveMessageFromWorker() for ClusterFuture ... done [17:27:59.953] resolve() on list ... [17:27:59.953] recursive: 0 [17:27:59.953] length: 2 [17:27:59.953] elements: 'a', 'b' [17:27:59.954] length: 1 (resolved future 1) [17:27:59.954] length: 0 (resolved future 2) [17:27:59.954] resolve() on list ... DONE [17:27:59.954] A MultisessionFuture was resolved (and resolved itself) - w/ exception ... [17:27:59.954] getGlobalsAndPackages() ... [17:27:59.955] Searching for globals... [17:27:59.955] - globals found: [2] 'list', 'stop' [17:27:59.956] Searching for globals ... DONE [17:27:59.956] Resolving globals: FALSE [17:27:59.956] [17:27:59.956] [17:27:59.956] getGlobalsAndPackages() ... DONE [17:27:59.957] run() for 'Future' ... [17:27:59.957] - state: 'created' [17:27:59.957] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:27:59.971] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:27:59.971] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:27:59.971] - Field: 'node' [17:27:59.972] - Field: 'label' [17:27:59.972] - Field: 'local' [17:27:59.972] - Field: 'owner' [17:27:59.972] - Field: 'envir' [17:27:59.972] - Field: 'workers' [17:27:59.972] - Field: 'packages' [17:27:59.973] - Field: 'gc' [17:27:59.973] - Field: 'conditions' [17:27:59.973] - Field: 'persistent' [17:27:59.973] - Field: 'expr' [17:27:59.973] - Field: 'uuid' [17:27:59.973] - Field: 'seed' [17:27:59.974] - Field: 'version' [17:27:59.974] - Field: 'result' [17:27:59.974] - Field: 'asynchronous' [17:27:59.974] - Field: 'calls' [17:27:59.974] - Field: 'globals' [17:27:59.974] - Field: 'stdout' [17:27:59.975] - Field: 'earlySignal' [17:27:59.975] - Field: 'lazy' [17:27:59.975] - Field: 'state' [17:27:59.975] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:27:59.975] - Launch lazy future ... [17:27:59.976] Packages needed by the future expression (n = 0): [17:27:59.976] Packages needed by future strategies (n = 0): [17:27:59.976] { [17:27:59.976] { [17:27:59.976] { [17:27:59.976] ...future.startTime <- base::Sys.time() [17:27:59.976] { [17:27:59.976] { [17:27:59.976] { [17:27:59.976] { [17:27:59.976] base::local({ [17:27:59.976] has_future <- base::requireNamespace("future", [17:27:59.976] quietly = TRUE) [17:27:59.976] if (has_future) { [17:27:59.976] ns <- base::getNamespace("future") [17:27:59.976] version <- ns[[".package"]][["version"]] [17:27:59.976] if (is.null(version)) [17:27:59.976] version <- utils::packageVersion("future") [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] version <- NULL [17:27:59.976] } [17:27:59.976] if (!has_future || version < "1.8.0") { [17:27:59.976] info <- base::c(r_version = base::gsub("R version ", [17:27:59.976] "", base::R.version$version.string), [17:27:59.976] platform = base::sprintf("%s (%s-bit)", [17:27:59.976] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:27:59.976] os = base::paste(base::Sys.info()[base::c("sysname", [17:27:59.976] "release", "version")], collapse = " "), [17:27:59.976] hostname = base::Sys.info()[["nodename"]]) [17:27:59.976] info <- base::sprintf("%s: %s", base::names(info), [17:27:59.976] info) [17:27:59.976] info <- base::paste(info, collapse = "; ") [17:27:59.976] if (!has_future) { [17:27:59.976] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:27:59.976] info) [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:27:59.976] info, version) [17:27:59.976] } [17:27:59.976] base::stop(msg) [17:27:59.976] } [17:27:59.976] }) [17:27:59.976] } [17:27:59.976] ...future.mc.cores.old <- base::getOption("mc.cores") [17:27:59.976] base::options(mc.cores = 1L) [17:27:59.976] } [17:27:59.976] ...future.strategy.old <- future::plan("list") [17:27:59.976] options(future.plan = NULL) [17:27:59.976] Sys.unsetenv("R_FUTURE_PLAN") [17:27:59.976] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:27:59.976] } [17:27:59.976] ...future.workdir <- getwd() [17:27:59.976] } [17:27:59.976] ...future.oldOptions <- base::as.list(base::.Options) [17:27:59.976] ...future.oldEnvVars <- base::Sys.getenv() [17:27:59.976] } [17:27:59.976] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:27:59.976] future.globals.maxSize = NULL, future.globals.method = NULL, [17:27:59.976] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:27:59.976] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:27:59.976] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:27:59.976] future.stdout.windows.reencode = NULL, width = 80L) [17:27:59.976] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:27:59.976] base::names(...future.oldOptions)) [17:27:59.976] } [17:27:59.976] if (FALSE) { [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] if (TRUE) { [17:27:59.976] ...future.stdout <- base::rawConnection(base::raw(0L), [17:27:59.976] open = "w") [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:27:59.976] windows = "NUL", "/dev/null"), open = "w") [17:27:59.976] } [17:27:59.976] base::sink(...future.stdout, type = "output", split = FALSE) [17:27:59.976] base::on.exit(if (!base::is.null(...future.stdout)) { [17:27:59.976] base::sink(type = "output", split = FALSE) [17:27:59.976] base::close(...future.stdout) [17:27:59.976] }, add = TRUE) [17:27:59.976] } [17:27:59.976] ...future.frame <- base::sys.nframe() [17:27:59.976] ...future.conditions <- base::list() [17:27:59.976] ...future.rng <- base::globalenv()$.Random.seed [17:27:59.976] if (FALSE) { [17:27:59.976] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:27:59.976] "...future.value", "...future.globalenv.names", ".Random.seed") [17:27:59.976] } [17:27:59.976] ...future.result <- base::tryCatch({ [17:27:59.976] base::withCallingHandlers({ [17:27:59.976] ...future.value <- base::withVisible(base::local({ [17:27:59.976] ...future.makeSendCondition <- base::local({ [17:27:59.976] sendCondition <- NULL [17:27:59.976] function(frame = 1L) { [17:27:59.976] if (is.function(sendCondition)) [17:27:59.976] return(sendCondition) [17:27:59.976] ns <- getNamespace("parallel") [17:27:59.976] if (exists("sendData", mode = "function", [17:27:59.976] envir = ns)) { [17:27:59.976] parallel_sendData <- get("sendData", mode = "function", [17:27:59.976] envir = ns) [17:27:59.976] envir <- sys.frame(frame) [17:27:59.976] master <- NULL [17:27:59.976] while (!identical(envir, .GlobalEnv) && [17:27:59.976] !identical(envir, emptyenv())) { [17:27:59.976] if (exists("master", mode = "list", envir = envir, [17:27:59.976] inherits = FALSE)) { [17:27:59.976] master <- get("master", mode = "list", [17:27:59.976] envir = envir, inherits = FALSE) [17:27:59.976] if (inherits(master, c("SOCKnode", [17:27:59.976] "SOCK0node"))) { [17:27:59.976] sendCondition <<- function(cond) { [17:27:59.976] data <- list(type = "VALUE", value = cond, [17:27:59.976] success = TRUE) [17:27:59.976] parallel_sendData(master, data) [17:27:59.976] } [17:27:59.976] return(sendCondition) [17:27:59.976] } [17:27:59.976] } [17:27:59.976] frame <- frame + 1L [17:27:59.976] envir <- sys.frame(frame) [17:27:59.976] } [17:27:59.976] } [17:27:59.976] sendCondition <<- function(cond) NULL [17:27:59.976] } [17:27:59.976] }) [17:27:59.976] withCallingHandlers({ [17:27:59.976] list(a = 1, b = 42L, c = stop("Nah!")) [17:27:59.976] }, immediateCondition = function(cond) { [17:27:59.976] sendCondition <- ...future.makeSendCondition() [17:27:59.976] sendCondition(cond) [17:27:59.976] muffleCondition <- function (cond, pattern = "^muffle") [17:27:59.976] { [17:27:59.976] inherits <- base::inherits [17:27:59.976] invokeRestart <- base::invokeRestart [17:27:59.976] is.null <- base::is.null [17:27:59.976] muffled <- FALSE [17:27:59.976] if (inherits(cond, "message")) { [17:27:59.976] muffled <- grepl(pattern, "muffleMessage") [17:27:59.976] if (muffled) [17:27:59.976] invokeRestart("muffleMessage") [17:27:59.976] } [17:27:59.976] else if (inherits(cond, "warning")) { [17:27:59.976] muffled <- grepl(pattern, "muffleWarning") [17:27:59.976] if (muffled) [17:27:59.976] invokeRestart("muffleWarning") [17:27:59.976] } [17:27:59.976] else if (inherits(cond, "condition")) { [17:27:59.976] if (!is.null(pattern)) { [17:27:59.976] computeRestarts <- base::computeRestarts [17:27:59.976] grepl <- base::grepl [17:27:59.976] restarts <- computeRestarts(cond) [17:27:59.976] for (restart in restarts) { [17:27:59.976] name <- restart$name [17:27:59.976] if (is.null(name)) [17:27:59.976] next [17:27:59.976] if (!grepl(pattern, name)) [17:27:59.976] next [17:27:59.976] invokeRestart(restart) [17:27:59.976] muffled <- TRUE [17:27:59.976] break [17:27:59.976] } [17:27:59.976] } [17:27:59.976] } [17:27:59.976] invisible(muffled) [17:27:59.976] } [17:27:59.976] muffleCondition(cond) [17:27:59.976] }) [17:27:59.976] })) [17:27:59.976] future::FutureResult(value = ...future.value$value, [17:27:59.976] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:27:59.976] ...future.rng), globalenv = if (FALSE) [17:27:59.976] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:27:59.976] ...future.globalenv.names)) [17:27:59.976] else NULL, started = ...future.startTime, version = "1.8") [17:27:59.976] }, condition = base::local({ [17:27:59.976] c <- base::c [17:27:59.976] inherits <- base::inherits [17:27:59.976] invokeRestart <- base::invokeRestart [17:27:59.976] length <- base::length [17:27:59.976] list <- base::list [17:27:59.976] seq.int <- base::seq.int [17:27:59.976] signalCondition <- base::signalCondition [17:27:59.976] sys.calls <- base::sys.calls [17:27:59.976] `[[` <- base::`[[` [17:27:59.976] `+` <- base::`+` [17:27:59.976] `<<-` <- base::`<<-` [17:27:59.976] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:27:59.976] calls[seq.int(from = from + 12L, to = length(calls) - [17:27:59.976] 3L)] [17:27:59.976] } [17:27:59.976] function(cond) { [17:27:59.976] is_error <- inherits(cond, "error") [17:27:59.976] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:27:59.976] NULL) [17:27:59.976] if (is_error) { [17:27:59.976] sessionInformation <- function() { [17:27:59.976] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:27:59.976] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:27:59.976] search = base::search(), system = base::Sys.info()) [17:27:59.976] } [17:27:59.976] ...future.conditions[[length(...future.conditions) + [17:27:59.976] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:27:59.976] cond$call), session = sessionInformation(), [17:27:59.976] timestamp = base::Sys.time(), signaled = 0L) [17:27:59.976] signalCondition(cond) [17:27:59.976] } [17:27:59.976] else if (!ignore && TRUE && inherits(cond, c("condition", [17:27:59.976] "immediateCondition"))) { [17:27:59.976] signal <- TRUE && inherits(cond, "immediateCondition") [17:27:59.976] ...future.conditions[[length(...future.conditions) + [17:27:59.976] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:27:59.976] if (TRUE && !signal) { [17:27:59.976] muffleCondition <- function (cond, pattern = "^muffle") [17:27:59.976] { [17:27:59.976] inherits <- base::inherits [17:27:59.976] invokeRestart <- base::invokeRestart [17:27:59.976] is.null <- base::is.null [17:27:59.976] muffled <- FALSE [17:27:59.976] if (inherits(cond, "message")) { [17:27:59.976] muffled <- grepl(pattern, "muffleMessage") [17:27:59.976] if (muffled) [17:27:59.976] invokeRestart("muffleMessage") [17:27:59.976] } [17:27:59.976] else if (inherits(cond, "warning")) { [17:27:59.976] muffled <- grepl(pattern, "muffleWarning") [17:27:59.976] if (muffled) [17:27:59.976] invokeRestart("muffleWarning") [17:27:59.976] } [17:27:59.976] else if (inherits(cond, "condition")) { [17:27:59.976] if (!is.null(pattern)) { [17:27:59.976] computeRestarts <- base::computeRestarts [17:27:59.976] grepl <- base::grepl [17:27:59.976] restarts <- computeRestarts(cond) [17:27:59.976] for (restart in restarts) { [17:27:59.976] name <- restart$name [17:27:59.976] if (is.null(name)) [17:27:59.976] next [17:27:59.976] if (!grepl(pattern, name)) [17:27:59.976] next [17:27:59.976] invokeRestart(restart) [17:27:59.976] muffled <- TRUE [17:27:59.976] break [17:27:59.976] } [17:27:59.976] } [17:27:59.976] } [17:27:59.976] invisible(muffled) [17:27:59.976] } [17:27:59.976] muffleCondition(cond, pattern = "^muffle") [17:27:59.976] } [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] if (TRUE) { [17:27:59.976] muffleCondition <- function (cond, pattern = "^muffle") [17:27:59.976] { [17:27:59.976] inherits <- base::inherits [17:27:59.976] invokeRestart <- base::invokeRestart [17:27:59.976] is.null <- base::is.null [17:27:59.976] muffled <- FALSE [17:27:59.976] if (inherits(cond, "message")) { [17:27:59.976] muffled <- grepl(pattern, "muffleMessage") [17:27:59.976] if (muffled) [17:27:59.976] invokeRestart("muffleMessage") [17:27:59.976] } [17:27:59.976] else if (inherits(cond, "warning")) { [17:27:59.976] muffled <- grepl(pattern, "muffleWarning") [17:27:59.976] if (muffled) [17:27:59.976] invokeRestart("muffleWarning") [17:27:59.976] } [17:27:59.976] else if (inherits(cond, "condition")) { [17:27:59.976] if (!is.null(pattern)) { [17:27:59.976] computeRestarts <- base::computeRestarts [17:27:59.976] grepl <- base::grepl [17:27:59.976] restarts <- computeRestarts(cond) [17:27:59.976] for (restart in restarts) { [17:27:59.976] name <- restart$name [17:27:59.976] if (is.null(name)) [17:27:59.976] next [17:27:59.976] if (!grepl(pattern, name)) [17:27:59.976] next [17:27:59.976] invokeRestart(restart) [17:27:59.976] muffled <- TRUE [17:27:59.976] break [17:27:59.976] } [17:27:59.976] } [17:27:59.976] } [17:27:59.976] invisible(muffled) [17:27:59.976] } [17:27:59.976] muffleCondition(cond, pattern = "^muffle") [17:27:59.976] } [17:27:59.976] } [17:27:59.976] } [17:27:59.976] })) [17:27:59.976] }, error = function(ex) { [17:27:59.976] base::structure(base::list(value = NULL, visible = NULL, [17:27:59.976] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:27:59.976] ...future.rng), started = ...future.startTime, [17:27:59.976] finished = Sys.time(), session_uuid = NA_character_, [17:27:59.976] version = "1.8"), class = "FutureResult") [17:27:59.976] }, finally = { [17:27:59.976] if (!identical(...future.workdir, getwd())) [17:27:59.976] setwd(...future.workdir) [17:27:59.976] { [17:27:59.976] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:27:59.976] ...future.oldOptions$nwarnings <- NULL [17:27:59.976] } [17:27:59.976] base::options(...future.oldOptions) [17:27:59.976] if (.Platform$OS.type == "windows") { [17:27:59.976] old_names <- names(...future.oldEnvVars) [17:27:59.976] envs <- base::Sys.getenv() [17:27:59.976] names <- names(envs) [17:27:59.976] common <- intersect(names, old_names) [17:27:59.976] added <- setdiff(names, old_names) [17:27:59.976] removed <- setdiff(old_names, names) [17:27:59.976] changed <- common[...future.oldEnvVars[common] != [17:27:59.976] envs[common]] [17:27:59.976] NAMES <- toupper(changed) [17:27:59.976] args <- list() [17:27:59.976] for (kk in seq_along(NAMES)) { [17:27:59.976] name <- changed[[kk]] [17:27:59.976] NAME <- NAMES[[kk]] [17:27:59.976] if (name != NAME && is.element(NAME, old_names)) [17:27:59.976] next [17:27:59.976] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:59.976] } [17:27:59.976] NAMES <- toupper(added) [17:27:59.976] for (kk in seq_along(NAMES)) { [17:27:59.976] name <- added[[kk]] [17:27:59.976] NAME <- NAMES[[kk]] [17:27:59.976] if (name != NAME && is.element(NAME, old_names)) [17:27:59.976] next [17:27:59.976] args[[name]] <- "" [17:27:59.976] } [17:27:59.976] NAMES <- toupper(removed) [17:27:59.976] for (kk in seq_along(NAMES)) { [17:27:59.976] name <- removed[[kk]] [17:27:59.976] NAME <- NAMES[[kk]] [17:27:59.976] if (name != NAME && is.element(NAME, old_names)) [17:27:59.976] next [17:27:59.976] args[[name]] <- ...future.oldEnvVars[[name]] [17:27:59.976] } [17:27:59.976] if (length(args) > 0) [17:27:59.976] base::do.call(base::Sys.setenv, args = args) [17:27:59.976] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:27:59.976] } [17:27:59.976] { [17:27:59.976] if (base::length(...future.futureOptionsAdded) > [17:27:59.976] 0L) { [17:27:59.976] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:27:59.976] base::names(opts) <- ...future.futureOptionsAdded [17:27:59.976] base::options(opts) [17:27:59.976] } [17:27:59.976] { [17:27:59.976] { [17:27:59.976] base::options(mc.cores = ...future.mc.cores.old) [17:27:59.976] NULL [17:27:59.976] } [17:27:59.976] options(future.plan = NULL) [17:27:59.976] if (is.na(NA_character_)) [17:27:59.976] Sys.unsetenv("R_FUTURE_PLAN") [17:27:59.976] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:27:59.976] future::plan(...future.strategy.old, .cleanup = FALSE, [17:27:59.976] .init = FALSE) [17:27:59.976] } [17:27:59.976] } [17:27:59.976] } [17:27:59.976] }) [17:27:59.976] if (TRUE) { [17:27:59.976] base::sink(type = "output", split = FALSE) [17:27:59.976] if (TRUE) { [17:27:59.976] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:27:59.976] } [17:27:59.976] else { [17:27:59.976] ...future.result["stdout"] <- base::list(NULL) [17:27:59.976] } [17:27:59.976] base::close(...future.stdout) [17:27:59.976] ...future.stdout <- NULL [17:27:59.976] } [17:27:59.976] ...future.result$conditions <- ...future.conditions [17:27:59.976] ...future.result$finished <- base::Sys.time() [17:27:59.976] ...future.result [17:27:59.976] } [17:27:59.982] MultisessionFuture started [17:27:59.982] - Launch lazy future ... done [17:27:59.982] run() for 'MultisessionFuture' ... done [17:27:59.997] receiveMessageFromWorker() for ClusterFuture ... [17:27:59.998] - Validating connection of MultisessionFuture [17:27:59.998] - received message: FutureResult [17:27:59.998] - Received FutureResult [17:27:59.998] - Erased future from FutureRegistry [17:27:59.999] result() for ClusterFuture ... [17:27:59.999] - result already collected: FutureResult [17:27:59.999] result() for ClusterFuture ... done [17:27:59.999] signalConditions() ... [17:27:59.999] - include = 'immediateCondition' [17:27:59.999] - exclude = [17:28:00.000] - resignal = FALSE [17:28:00.000] - Number of conditions: 1 [17:28:00.000] signalConditions() ... done [17:28:00.000] receiveMessageFromWorker() for ClusterFuture ... done [17:28:00.000] A MultisessionFuture was resolved (and resolved itself) [17:28:00.000] getGlobalsAndPackages() ... [17:28:00.001] Searching for globals... [17:28:00.001] - globals found: [2] 'list', 'stop' [17:28:00.002] Searching for globals ... DONE [17:28:00.002] Resolving globals: FALSE [17:28:00.002] [17:28:00.002] [17:28:00.002] getGlobalsAndPackages() ... DONE [17:28:00.003] run() for 'Future' ... [17:28:00.003] - state: 'created' [17:28:00.003] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:00.017] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:00.017] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:00.017] - Field: 'node' [17:28:00.017] - Field: 'label' [17:28:00.018] - Field: 'local' [17:28:00.018] - Field: 'owner' [17:28:00.018] - Field: 'envir' [17:28:00.018] - Field: 'workers' [17:28:00.018] - Field: 'packages' [17:28:00.018] - Field: 'gc' [17:28:00.019] - Field: 'conditions' [17:28:00.019] - Field: 'persistent' [17:28:00.019] - Field: 'expr' [17:28:00.019] - Field: 'uuid' [17:28:00.019] - Field: 'seed' [17:28:00.020] - Field: 'version' [17:28:00.020] - Field: 'result' [17:28:00.020] - Field: 'asynchronous' [17:28:00.020] - Field: 'calls' [17:28:00.020] - Field: 'globals' [17:28:00.021] - Field: 'stdout' [17:28:00.021] - Field: 'earlySignal' [17:28:00.021] - Field: 'lazy' [17:28:00.021] - Field: 'state' [17:28:00.021] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:00.021] - Launch lazy future ... [17:28:00.022] Packages needed by the future expression (n = 0): [17:28:00.022] Packages needed by future strategies (n = 0): [17:28:00.023] { [17:28:00.023] { [17:28:00.023] { [17:28:00.023] ...future.startTime <- base::Sys.time() [17:28:00.023] { [17:28:00.023] { [17:28:00.023] { [17:28:00.023] { [17:28:00.023] base::local({ [17:28:00.023] has_future <- base::requireNamespace("future", [17:28:00.023] quietly = TRUE) [17:28:00.023] if (has_future) { [17:28:00.023] ns <- base::getNamespace("future") [17:28:00.023] version <- ns[[".package"]][["version"]] [17:28:00.023] if (is.null(version)) [17:28:00.023] version <- utils::packageVersion("future") [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] version <- NULL [17:28:00.023] } [17:28:00.023] if (!has_future || version < "1.8.0") { [17:28:00.023] info <- base::c(r_version = base::gsub("R version ", [17:28:00.023] "", base::R.version$version.string), [17:28:00.023] platform = base::sprintf("%s (%s-bit)", [17:28:00.023] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:00.023] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:00.023] "release", "version")], collapse = " "), [17:28:00.023] hostname = base::Sys.info()[["nodename"]]) [17:28:00.023] info <- base::sprintf("%s: %s", base::names(info), [17:28:00.023] info) [17:28:00.023] info <- base::paste(info, collapse = "; ") [17:28:00.023] if (!has_future) { [17:28:00.023] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:00.023] info) [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:00.023] info, version) [17:28:00.023] } [17:28:00.023] base::stop(msg) [17:28:00.023] } [17:28:00.023] }) [17:28:00.023] } [17:28:00.023] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:00.023] base::options(mc.cores = 1L) [17:28:00.023] } [17:28:00.023] ...future.strategy.old <- future::plan("list") [17:28:00.023] options(future.plan = NULL) [17:28:00.023] Sys.unsetenv("R_FUTURE_PLAN") [17:28:00.023] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:00.023] } [17:28:00.023] ...future.workdir <- getwd() [17:28:00.023] } [17:28:00.023] ...future.oldOptions <- base::as.list(base::.Options) [17:28:00.023] ...future.oldEnvVars <- base::Sys.getenv() [17:28:00.023] } [17:28:00.023] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:00.023] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:00.023] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:00.023] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:00.023] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:00.023] future.stdout.windows.reencode = NULL, width = 80L) [17:28:00.023] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:00.023] base::names(...future.oldOptions)) [17:28:00.023] } [17:28:00.023] if (FALSE) { [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] if (TRUE) { [17:28:00.023] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:00.023] open = "w") [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:00.023] windows = "NUL", "/dev/null"), open = "w") [17:28:00.023] } [17:28:00.023] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:00.023] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:00.023] base::sink(type = "output", split = FALSE) [17:28:00.023] base::close(...future.stdout) [17:28:00.023] }, add = TRUE) [17:28:00.023] } [17:28:00.023] ...future.frame <- base::sys.nframe() [17:28:00.023] ...future.conditions <- base::list() [17:28:00.023] ...future.rng <- base::globalenv()$.Random.seed [17:28:00.023] if (FALSE) { [17:28:00.023] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:00.023] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:00.023] } [17:28:00.023] ...future.result <- base::tryCatch({ [17:28:00.023] base::withCallingHandlers({ [17:28:00.023] ...future.value <- base::withVisible(base::local({ [17:28:00.023] ...future.makeSendCondition <- base::local({ [17:28:00.023] sendCondition <- NULL [17:28:00.023] function(frame = 1L) { [17:28:00.023] if (is.function(sendCondition)) [17:28:00.023] return(sendCondition) [17:28:00.023] ns <- getNamespace("parallel") [17:28:00.023] if (exists("sendData", mode = "function", [17:28:00.023] envir = ns)) { [17:28:00.023] parallel_sendData <- get("sendData", mode = "function", [17:28:00.023] envir = ns) [17:28:00.023] envir <- sys.frame(frame) [17:28:00.023] master <- NULL [17:28:00.023] while (!identical(envir, .GlobalEnv) && [17:28:00.023] !identical(envir, emptyenv())) { [17:28:00.023] if (exists("master", mode = "list", envir = envir, [17:28:00.023] inherits = FALSE)) { [17:28:00.023] master <- get("master", mode = "list", [17:28:00.023] envir = envir, inherits = FALSE) [17:28:00.023] if (inherits(master, c("SOCKnode", [17:28:00.023] "SOCK0node"))) { [17:28:00.023] sendCondition <<- function(cond) { [17:28:00.023] data <- list(type = "VALUE", value = cond, [17:28:00.023] success = TRUE) [17:28:00.023] parallel_sendData(master, data) [17:28:00.023] } [17:28:00.023] return(sendCondition) [17:28:00.023] } [17:28:00.023] } [17:28:00.023] frame <- frame + 1L [17:28:00.023] envir <- sys.frame(frame) [17:28:00.023] } [17:28:00.023] } [17:28:00.023] sendCondition <<- function(cond) NULL [17:28:00.023] } [17:28:00.023] }) [17:28:00.023] withCallingHandlers({ [17:28:00.023] list(a = 1, b = 42L, c = stop("Nah!")) [17:28:00.023] }, immediateCondition = function(cond) { [17:28:00.023] sendCondition <- ...future.makeSendCondition() [17:28:00.023] sendCondition(cond) [17:28:00.023] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.023] { [17:28:00.023] inherits <- base::inherits [17:28:00.023] invokeRestart <- base::invokeRestart [17:28:00.023] is.null <- base::is.null [17:28:00.023] muffled <- FALSE [17:28:00.023] if (inherits(cond, "message")) { [17:28:00.023] muffled <- grepl(pattern, "muffleMessage") [17:28:00.023] if (muffled) [17:28:00.023] invokeRestart("muffleMessage") [17:28:00.023] } [17:28:00.023] else if (inherits(cond, "warning")) { [17:28:00.023] muffled <- grepl(pattern, "muffleWarning") [17:28:00.023] if (muffled) [17:28:00.023] invokeRestart("muffleWarning") [17:28:00.023] } [17:28:00.023] else if (inherits(cond, "condition")) { [17:28:00.023] if (!is.null(pattern)) { [17:28:00.023] computeRestarts <- base::computeRestarts [17:28:00.023] grepl <- base::grepl [17:28:00.023] restarts <- computeRestarts(cond) [17:28:00.023] for (restart in restarts) { [17:28:00.023] name <- restart$name [17:28:00.023] if (is.null(name)) [17:28:00.023] next [17:28:00.023] if (!grepl(pattern, name)) [17:28:00.023] next [17:28:00.023] invokeRestart(restart) [17:28:00.023] muffled <- TRUE [17:28:00.023] break [17:28:00.023] } [17:28:00.023] } [17:28:00.023] } [17:28:00.023] invisible(muffled) [17:28:00.023] } [17:28:00.023] muffleCondition(cond) [17:28:00.023] }) [17:28:00.023] })) [17:28:00.023] future::FutureResult(value = ...future.value$value, [17:28:00.023] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:00.023] ...future.rng), globalenv = if (FALSE) [17:28:00.023] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:00.023] ...future.globalenv.names)) [17:28:00.023] else NULL, started = ...future.startTime, version = "1.8") [17:28:00.023] }, condition = base::local({ [17:28:00.023] c <- base::c [17:28:00.023] inherits <- base::inherits [17:28:00.023] invokeRestart <- base::invokeRestart [17:28:00.023] length <- base::length [17:28:00.023] list <- base::list [17:28:00.023] seq.int <- base::seq.int [17:28:00.023] signalCondition <- base::signalCondition [17:28:00.023] sys.calls <- base::sys.calls [17:28:00.023] `[[` <- base::`[[` [17:28:00.023] `+` <- base::`+` [17:28:00.023] `<<-` <- base::`<<-` [17:28:00.023] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:00.023] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:00.023] 3L)] [17:28:00.023] } [17:28:00.023] function(cond) { [17:28:00.023] is_error <- inherits(cond, "error") [17:28:00.023] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:00.023] NULL) [17:28:00.023] if (is_error) { [17:28:00.023] sessionInformation <- function() { [17:28:00.023] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:00.023] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:00.023] search = base::search(), system = base::Sys.info()) [17:28:00.023] } [17:28:00.023] ...future.conditions[[length(...future.conditions) + [17:28:00.023] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:00.023] cond$call), session = sessionInformation(), [17:28:00.023] timestamp = base::Sys.time(), signaled = 0L) [17:28:00.023] signalCondition(cond) [17:28:00.023] } [17:28:00.023] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:00.023] "immediateCondition"))) { [17:28:00.023] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:00.023] ...future.conditions[[length(...future.conditions) + [17:28:00.023] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:00.023] if (TRUE && !signal) { [17:28:00.023] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.023] { [17:28:00.023] inherits <- base::inherits [17:28:00.023] invokeRestart <- base::invokeRestart [17:28:00.023] is.null <- base::is.null [17:28:00.023] muffled <- FALSE [17:28:00.023] if (inherits(cond, "message")) { [17:28:00.023] muffled <- grepl(pattern, "muffleMessage") [17:28:00.023] if (muffled) [17:28:00.023] invokeRestart("muffleMessage") [17:28:00.023] } [17:28:00.023] else if (inherits(cond, "warning")) { [17:28:00.023] muffled <- grepl(pattern, "muffleWarning") [17:28:00.023] if (muffled) [17:28:00.023] invokeRestart("muffleWarning") [17:28:00.023] } [17:28:00.023] else if (inherits(cond, "condition")) { [17:28:00.023] if (!is.null(pattern)) { [17:28:00.023] computeRestarts <- base::computeRestarts [17:28:00.023] grepl <- base::grepl [17:28:00.023] restarts <- computeRestarts(cond) [17:28:00.023] for (restart in restarts) { [17:28:00.023] name <- restart$name [17:28:00.023] if (is.null(name)) [17:28:00.023] next [17:28:00.023] if (!grepl(pattern, name)) [17:28:00.023] next [17:28:00.023] invokeRestart(restart) [17:28:00.023] muffled <- TRUE [17:28:00.023] break [17:28:00.023] } [17:28:00.023] } [17:28:00.023] } [17:28:00.023] invisible(muffled) [17:28:00.023] } [17:28:00.023] muffleCondition(cond, pattern = "^muffle") [17:28:00.023] } [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] if (TRUE) { [17:28:00.023] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.023] { [17:28:00.023] inherits <- base::inherits [17:28:00.023] invokeRestart <- base::invokeRestart [17:28:00.023] is.null <- base::is.null [17:28:00.023] muffled <- FALSE [17:28:00.023] if (inherits(cond, "message")) { [17:28:00.023] muffled <- grepl(pattern, "muffleMessage") [17:28:00.023] if (muffled) [17:28:00.023] invokeRestart("muffleMessage") [17:28:00.023] } [17:28:00.023] else if (inherits(cond, "warning")) { [17:28:00.023] muffled <- grepl(pattern, "muffleWarning") [17:28:00.023] if (muffled) [17:28:00.023] invokeRestart("muffleWarning") [17:28:00.023] } [17:28:00.023] else if (inherits(cond, "condition")) { [17:28:00.023] if (!is.null(pattern)) { [17:28:00.023] computeRestarts <- base::computeRestarts [17:28:00.023] grepl <- base::grepl [17:28:00.023] restarts <- computeRestarts(cond) [17:28:00.023] for (restart in restarts) { [17:28:00.023] name <- restart$name [17:28:00.023] if (is.null(name)) [17:28:00.023] next [17:28:00.023] if (!grepl(pattern, name)) [17:28:00.023] next [17:28:00.023] invokeRestart(restart) [17:28:00.023] muffled <- TRUE [17:28:00.023] break [17:28:00.023] } [17:28:00.023] } [17:28:00.023] } [17:28:00.023] invisible(muffled) [17:28:00.023] } [17:28:00.023] muffleCondition(cond, pattern = "^muffle") [17:28:00.023] } [17:28:00.023] } [17:28:00.023] } [17:28:00.023] })) [17:28:00.023] }, error = function(ex) { [17:28:00.023] base::structure(base::list(value = NULL, visible = NULL, [17:28:00.023] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:00.023] ...future.rng), started = ...future.startTime, [17:28:00.023] finished = Sys.time(), session_uuid = NA_character_, [17:28:00.023] version = "1.8"), class = "FutureResult") [17:28:00.023] }, finally = { [17:28:00.023] if (!identical(...future.workdir, getwd())) [17:28:00.023] setwd(...future.workdir) [17:28:00.023] { [17:28:00.023] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:00.023] ...future.oldOptions$nwarnings <- NULL [17:28:00.023] } [17:28:00.023] base::options(...future.oldOptions) [17:28:00.023] if (.Platform$OS.type == "windows") { [17:28:00.023] old_names <- names(...future.oldEnvVars) [17:28:00.023] envs <- base::Sys.getenv() [17:28:00.023] names <- names(envs) [17:28:00.023] common <- intersect(names, old_names) [17:28:00.023] added <- setdiff(names, old_names) [17:28:00.023] removed <- setdiff(old_names, names) [17:28:00.023] changed <- common[...future.oldEnvVars[common] != [17:28:00.023] envs[common]] [17:28:00.023] NAMES <- toupper(changed) [17:28:00.023] args <- list() [17:28:00.023] for (kk in seq_along(NAMES)) { [17:28:00.023] name <- changed[[kk]] [17:28:00.023] NAME <- NAMES[[kk]] [17:28:00.023] if (name != NAME && is.element(NAME, old_names)) [17:28:00.023] next [17:28:00.023] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:00.023] } [17:28:00.023] NAMES <- toupper(added) [17:28:00.023] for (kk in seq_along(NAMES)) { [17:28:00.023] name <- added[[kk]] [17:28:00.023] NAME <- NAMES[[kk]] [17:28:00.023] if (name != NAME && is.element(NAME, old_names)) [17:28:00.023] next [17:28:00.023] args[[name]] <- "" [17:28:00.023] } [17:28:00.023] NAMES <- toupper(removed) [17:28:00.023] for (kk in seq_along(NAMES)) { [17:28:00.023] name <- removed[[kk]] [17:28:00.023] NAME <- NAMES[[kk]] [17:28:00.023] if (name != NAME && is.element(NAME, old_names)) [17:28:00.023] next [17:28:00.023] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:00.023] } [17:28:00.023] if (length(args) > 0) [17:28:00.023] base::do.call(base::Sys.setenv, args = args) [17:28:00.023] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:00.023] } [17:28:00.023] { [17:28:00.023] if (base::length(...future.futureOptionsAdded) > [17:28:00.023] 0L) { [17:28:00.023] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:00.023] base::names(opts) <- ...future.futureOptionsAdded [17:28:00.023] base::options(opts) [17:28:00.023] } [17:28:00.023] { [17:28:00.023] { [17:28:00.023] base::options(mc.cores = ...future.mc.cores.old) [17:28:00.023] NULL [17:28:00.023] } [17:28:00.023] options(future.plan = NULL) [17:28:00.023] if (is.na(NA_character_)) [17:28:00.023] Sys.unsetenv("R_FUTURE_PLAN") [17:28:00.023] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:00.023] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:00.023] .init = FALSE) [17:28:00.023] } [17:28:00.023] } [17:28:00.023] } [17:28:00.023] }) [17:28:00.023] if (TRUE) { [17:28:00.023] base::sink(type = "output", split = FALSE) [17:28:00.023] if (TRUE) { [17:28:00.023] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:00.023] } [17:28:00.023] else { [17:28:00.023] ...future.result["stdout"] <- base::list(NULL) [17:28:00.023] } [17:28:00.023] base::close(...future.stdout) [17:28:00.023] ...future.stdout <- NULL [17:28:00.023] } [17:28:00.023] ...future.result$conditions <- ...future.conditions [17:28:00.023] ...future.result$finished <- base::Sys.time() [17:28:00.023] ...future.result [17:28:00.023] } [17:28:00.028] MultisessionFuture started [17:28:00.028] - Launch lazy future ... done [17:28:00.028] run() for 'MultisessionFuture' ... done [17:28:00.042] receiveMessageFromWorker() for ClusterFuture ... [17:28:00.042] - Validating connection of MultisessionFuture [17:28:00.043] - received message: FutureResult [17:28:00.043] - Received FutureResult [17:28:00.044] - Erased future from FutureRegistry [17:28:00.044] result() for ClusterFuture ... [17:28:00.044] - result already collected: FutureResult [17:28:00.044] result() for ClusterFuture ... done [17:28:00.044] signalConditions() ... [17:28:00.044] - include = 'immediateCondition' [17:28:00.045] - exclude = [17:28:00.045] - resignal = FALSE [17:28:00.045] - Number of conditions: 1 [17:28:00.045] signalConditions() ... done [17:28:00.045] receiveMessageFromWorker() for ClusterFuture ... done [17:28:00.045] A MultisessionFuture was resolved (and resolved itself) - result = TRUE, recursive = 1 ... DONE - result = TRUE, recursive = 2 ... [17:28:00.046] getGlobalsAndPackages() ... [17:28:00.046] Searching for globals... [17:28:00.047] - globals found: [3] '{', 'Sys.sleep', 'list' [17:28:00.048] Searching for globals ... DONE [17:28:00.048] Resolving globals: FALSE [17:28:00.048] [17:28:00.048] [17:28:00.048] getGlobalsAndPackages() ... DONE [17:28:00.049] run() for 'Future' ... [17:28:00.049] - state: 'created' [17:28:00.049] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:00.063] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:00.063] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:00.063] - Field: 'node' [17:28:00.064] - Field: 'label' [17:28:00.064] - Field: 'local' [17:28:00.064] - Field: 'owner' [17:28:00.064] - Field: 'envir' [17:28:00.064] - Field: 'workers' [17:28:00.065] - Field: 'packages' [17:28:00.065] - Field: 'gc' [17:28:00.065] - Field: 'conditions' [17:28:00.065] - Field: 'persistent' [17:28:00.065] - Field: 'expr' [17:28:00.065] - Field: 'uuid' [17:28:00.066] - Field: 'seed' [17:28:00.066] - Field: 'version' [17:28:00.066] - Field: 'result' [17:28:00.066] - Field: 'asynchronous' [17:28:00.066] - Field: 'calls' [17:28:00.066] - Field: 'globals' [17:28:00.067] - Field: 'stdout' [17:28:00.067] - Field: 'earlySignal' [17:28:00.067] - Field: 'lazy' [17:28:00.067] - Field: 'state' [17:28:00.067] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:00.068] - Launch lazy future ... [17:28:00.068] Packages needed by the future expression (n = 0): [17:28:00.068] Packages needed by future strategies (n = 0): [17:28:00.069] { [17:28:00.069] { [17:28:00.069] { [17:28:00.069] ...future.startTime <- base::Sys.time() [17:28:00.069] { [17:28:00.069] { [17:28:00.069] { [17:28:00.069] { [17:28:00.069] base::local({ [17:28:00.069] has_future <- base::requireNamespace("future", [17:28:00.069] quietly = TRUE) [17:28:00.069] if (has_future) { [17:28:00.069] ns <- base::getNamespace("future") [17:28:00.069] version <- ns[[".package"]][["version"]] [17:28:00.069] if (is.null(version)) [17:28:00.069] version <- utils::packageVersion("future") [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] version <- NULL [17:28:00.069] } [17:28:00.069] if (!has_future || version < "1.8.0") { [17:28:00.069] info <- base::c(r_version = base::gsub("R version ", [17:28:00.069] "", base::R.version$version.string), [17:28:00.069] platform = base::sprintf("%s (%s-bit)", [17:28:00.069] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:00.069] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:00.069] "release", "version")], collapse = " "), [17:28:00.069] hostname = base::Sys.info()[["nodename"]]) [17:28:00.069] info <- base::sprintf("%s: %s", base::names(info), [17:28:00.069] info) [17:28:00.069] info <- base::paste(info, collapse = "; ") [17:28:00.069] if (!has_future) { [17:28:00.069] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:00.069] info) [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:00.069] info, version) [17:28:00.069] } [17:28:00.069] base::stop(msg) [17:28:00.069] } [17:28:00.069] }) [17:28:00.069] } [17:28:00.069] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:00.069] base::options(mc.cores = 1L) [17:28:00.069] } [17:28:00.069] ...future.strategy.old <- future::plan("list") [17:28:00.069] options(future.plan = NULL) [17:28:00.069] Sys.unsetenv("R_FUTURE_PLAN") [17:28:00.069] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:00.069] } [17:28:00.069] ...future.workdir <- getwd() [17:28:00.069] } [17:28:00.069] ...future.oldOptions <- base::as.list(base::.Options) [17:28:00.069] ...future.oldEnvVars <- base::Sys.getenv() [17:28:00.069] } [17:28:00.069] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:00.069] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:00.069] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:00.069] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:00.069] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:00.069] future.stdout.windows.reencode = NULL, width = 80L) [17:28:00.069] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:00.069] base::names(...future.oldOptions)) [17:28:00.069] } [17:28:00.069] if (FALSE) { [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] if (TRUE) { [17:28:00.069] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:00.069] open = "w") [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:00.069] windows = "NUL", "/dev/null"), open = "w") [17:28:00.069] } [17:28:00.069] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:00.069] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:00.069] base::sink(type = "output", split = FALSE) [17:28:00.069] base::close(...future.stdout) [17:28:00.069] }, add = TRUE) [17:28:00.069] } [17:28:00.069] ...future.frame <- base::sys.nframe() [17:28:00.069] ...future.conditions <- base::list() [17:28:00.069] ...future.rng <- base::globalenv()$.Random.seed [17:28:00.069] if (FALSE) { [17:28:00.069] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:00.069] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:00.069] } [17:28:00.069] ...future.result <- base::tryCatch({ [17:28:00.069] base::withCallingHandlers({ [17:28:00.069] ...future.value <- base::withVisible(base::local({ [17:28:00.069] ...future.makeSendCondition <- base::local({ [17:28:00.069] sendCondition <- NULL [17:28:00.069] function(frame = 1L) { [17:28:00.069] if (is.function(sendCondition)) [17:28:00.069] return(sendCondition) [17:28:00.069] ns <- getNamespace("parallel") [17:28:00.069] if (exists("sendData", mode = "function", [17:28:00.069] envir = ns)) { [17:28:00.069] parallel_sendData <- get("sendData", mode = "function", [17:28:00.069] envir = ns) [17:28:00.069] envir <- sys.frame(frame) [17:28:00.069] master <- NULL [17:28:00.069] while (!identical(envir, .GlobalEnv) && [17:28:00.069] !identical(envir, emptyenv())) { [17:28:00.069] if (exists("master", mode = "list", envir = envir, [17:28:00.069] inherits = FALSE)) { [17:28:00.069] master <- get("master", mode = "list", [17:28:00.069] envir = envir, inherits = FALSE) [17:28:00.069] if (inherits(master, c("SOCKnode", [17:28:00.069] "SOCK0node"))) { [17:28:00.069] sendCondition <<- function(cond) { [17:28:00.069] data <- list(type = "VALUE", value = cond, [17:28:00.069] success = TRUE) [17:28:00.069] parallel_sendData(master, data) [17:28:00.069] } [17:28:00.069] return(sendCondition) [17:28:00.069] } [17:28:00.069] } [17:28:00.069] frame <- frame + 1L [17:28:00.069] envir <- sys.frame(frame) [17:28:00.069] } [17:28:00.069] } [17:28:00.069] sendCondition <<- function(cond) NULL [17:28:00.069] } [17:28:00.069] }) [17:28:00.069] withCallingHandlers({ [17:28:00.069] { [17:28:00.069] Sys.sleep(0.5) [17:28:00.069] list(a = 1, b = 42L) [17:28:00.069] } [17:28:00.069] }, immediateCondition = function(cond) { [17:28:00.069] sendCondition <- ...future.makeSendCondition() [17:28:00.069] sendCondition(cond) [17:28:00.069] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.069] { [17:28:00.069] inherits <- base::inherits [17:28:00.069] invokeRestart <- base::invokeRestart [17:28:00.069] is.null <- base::is.null [17:28:00.069] muffled <- FALSE [17:28:00.069] if (inherits(cond, "message")) { [17:28:00.069] muffled <- grepl(pattern, "muffleMessage") [17:28:00.069] if (muffled) [17:28:00.069] invokeRestart("muffleMessage") [17:28:00.069] } [17:28:00.069] else if (inherits(cond, "warning")) { [17:28:00.069] muffled <- grepl(pattern, "muffleWarning") [17:28:00.069] if (muffled) [17:28:00.069] invokeRestart("muffleWarning") [17:28:00.069] } [17:28:00.069] else if (inherits(cond, "condition")) { [17:28:00.069] if (!is.null(pattern)) { [17:28:00.069] computeRestarts <- base::computeRestarts [17:28:00.069] grepl <- base::grepl [17:28:00.069] restarts <- computeRestarts(cond) [17:28:00.069] for (restart in restarts) { [17:28:00.069] name <- restart$name [17:28:00.069] if (is.null(name)) [17:28:00.069] next [17:28:00.069] if (!grepl(pattern, name)) [17:28:00.069] next [17:28:00.069] invokeRestart(restart) [17:28:00.069] muffled <- TRUE [17:28:00.069] break [17:28:00.069] } [17:28:00.069] } [17:28:00.069] } [17:28:00.069] invisible(muffled) [17:28:00.069] } [17:28:00.069] muffleCondition(cond) [17:28:00.069] }) [17:28:00.069] })) [17:28:00.069] future::FutureResult(value = ...future.value$value, [17:28:00.069] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:00.069] ...future.rng), globalenv = if (FALSE) [17:28:00.069] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:00.069] ...future.globalenv.names)) [17:28:00.069] else NULL, started = ...future.startTime, version = "1.8") [17:28:00.069] }, condition = base::local({ [17:28:00.069] c <- base::c [17:28:00.069] inherits <- base::inherits [17:28:00.069] invokeRestart <- base::invokeRestart [17:28:00.069] length <- base::length [17:28:00.069] list <- base::list [17:28:00.069] seq.int <- base::seq.int [17:28:00.069] signalCondition <- base::signalCondition [17:28:00.069] sys.calls <- base::sys.calls [17:28:00.069] `[[` <- base::`[[` [17:28:00.069] `+` <- base::`+` [17:28:00.069] `<<-` <- base::`<<-` [17:28:00.069] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:00.069] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:00.069] 3L)] [17:28:00.069] } [17:28:00.069] function(cond) { [17:28:00.069] is_error <- inherits(cond, "error") [17:28:00.069] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:00.069] NULL) [17:28:00.069] if (is_error) { [17:28:00.069] sessionInformation <- function() { [17:28:00.069] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:00.069] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:00.069] search = base::search(), system = base::Sys.info()) [17:28:00.069] } [17:28:00.069] ...future.conditions[[length(...future.conditions) + [17:28:00.069] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:00.069] cond$call), session = sessionInformation(), [17:28:00.069] timestamp = base::Sys.time(), signaled = 0L) [17:28:00.069] signalCondition(cond) [17:28:00.069] } [17:28:00.069] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:00.069] "immediateCondition"))) { [17:28:00.069] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:00.069] ...future.conditions[[length(...future.conditions) + [17:28:00.069] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:00.069] if (TRUE && !signal) { [17:28:00.069] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.069] { [17:28:00.069] inherits <- base::inherits [17:28:00.069] invokeRestart <- base::invokeRestart [17:28:00.069] is.null <- base::is.null [17:28:00.069] muffled <- FALSE [17:28:00.069] if (inherits(cond, "message")) { [17:28:00.069] muffled <- grepl(pattern, "muffleMessage") [17:28:00.069] if (muffled) [17:28:00.069] invokeRestart("muffleMessage") [17:28:00.069] } [17:28:00.069] else if (inherits(cond, "warning")) { [17:28:00.069] muffled <- grepl(pattern, "muffleWarning") [17:28:00.069] if (muffled) [17:28:00.069] invokeRestart("muffleWarning") [17:28:00.069] } [17:28:00.069] else if (inherits(cond, "condition")) { [17:28:00.069] if (!is.null(pattern)) { [17:28:00.069] computeRestarts <- base::computeRestarts [17:28:00.069] grepl <- base::grepl [17:28:00.069] restarts <- computeRestarts(cond) [17:28:00.069] for (restart in restarts) { [17:28:00.069] name <- restart$name [17:28:00.069] if (is.null(name)) [17:28:00.069] next [17:28:00.069] if (!grepl(pattern, name)) [17:28:00.069] next [17:28:00.069] invokeRestart(restart) [17:28:00.069] muffled <- TRUE [17:28:00.069] break [17:28:00.069] } [17:28:00.069] } [17:28:00.069] } [17:28:00.069] invisible(muffled) [17:28:00.069] } [17:28:00.069] muffleCondition(cond, pattern = "^muffle") [17:28:00.069] } [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] if (TRUE) { [17:28:00.069] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.069] { [17:28:00.069] inherits <- base::inherits [17:28:00.069] invokeRestart <- base::invokeRestart [17:28:00.069] is.null <- base::is.null [17:28:00.069] muffled <- FALSE [17:28:00.069] if (inherits(cond, "message")) { [17:28:00.069] muffled <- grepl(pattern, "muffleMessage") [17:28:00.069] if (muffled) [17:28:00.069] invokeRestart("muffleMessage") [17:28:00.069] } [17:28:00.069] else if (inherits(cond, "warning")) { [17:28:00.069] muffled <- grepl(pattern, "muffleWarning") [17:28:00.069] if (muffled) [17:28:00.069] invokeRestart("muffleWarning") [17:28:00.069] } [17:28:00.069] else if (inherits(cond, "condition")) { [17:28:00.069] if (!is.null(pattern)) { [17:28:00.069] computeRestarts <- base::computeRestarts [17:28:00.069] grepl <- base::grepl [17:28:00.069] restarts <- computeRestarts(cond) [17:28:00.069] for (restart in restarts) { [17:28:00.069] name <- restart$name [17:28:00.069] if (is.null(name)) [17:28:00.069] next [17:28:00.069] if (!grepl(pattern, name)) [17:28:00.069] next [17:28:00.069] invokeRestart(restart) [17:28:00.069] muffled <- TRUE [17:28:00.069] break [17:28:00.069] } [17:28:00.069] } [17:28:00.069] } [17:28:00.069] invisible(muffled) [17:28:00.069] } [17:28:00.069] muffleCondition(cond, pattern = "^muffle") [17:28:00.069] } [17:28:00.069] } [17:28:00.069] } [17:28:00.069] })) [17:28:00.069] }, error = function(ex) { [17:28:00.069] base::structure(base::list(value = NULL, visible = NULL, [17:28:00.069] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:00.069] ...future.rng), started = ...future.startTime, [17:28:00.069] finished = Sys.time(), session_uuid = NA_character_, [17:28:00.069] version = "1.8"), class = "FutureResult") [17:28:00.069] }, finally = { [17:28:00.069] if (!identical(...future.workdir, getwd())) [17:28:00.069] setwd(...future.workdir) [17:28:00.069] { [17:28:00.069] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:00.069] ...future.oldOptions$nwarnings <- NULL [17:28:00.069] } [17:28:00.069] base::options(...future.oldOptions) [17:28:00.069] if (.Platform$OS.type == "windows") { [17:28:00.069] old_names <- names(...future.oldEnvVars) [17:28:00.069] envs <- base::Sys.getenv() [17:28:00.069] names <- names(envs) [17:28:00.069] common <- intersect(names, old_names) [17:28:00.069] added <- setdiff(names, old_names) [17:28:00.069] removed <- setdiff(old_names, names) [17:28:00.069] changed <- common[...future.oldEnvVars[common] != [17:28:00.069] envs[common]] [17:28:00.069] NAMES <- toupper(changed) [17:28:00.069] args <- list() [17:28:00.069] for (kk in seq_along(NAMES)) { [17:28:00.069] name <- changed[[kk]] [17:28:00.069] NAME <- NAMES[[kk]] [17:28:00.069] if (name != NAME && is.element(NAME, old_names)) [17:28:00.069] next [17:28:00.069] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:00.069] } [17:28:00.069] NAMES <- toupper(added) [17:28:00.069] for (kk in seq_along(NAMES)) { [17:28:00.069] name <- added[[kk]] [17:28:00.069] NAME <- NAMES[[kk]] [17:28:00.069] if (name != NAME && is.element(NAME, old_names)) [17:28:00.069] next [17:28:00.069] args[[name]] <- "" [17:28:00.069] } [17:28:00.069] NAMES <- toupper(removed) [17:28:00.069] for (kk in seq_along(NAMES)) { [17:28:00.069] name <- removed[[kk]] [17:28:00.069] NAME <- NAMES[[kk]] [17:28:00.069] if (name != NAME && is.element(NAME, old_names)) [17:28:00.069] next [17:28:00.069] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:00.069] } [17:28:00.069] if (length(args) > 0) [17:28:00.069] base::do.call(base::Sys.setenv, args = args) [17:28:00.069] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:00.069] } [17:28:00.069] { [17:28:00.069] if (base::length(...future.futureOptionsAdded) > [17:28:00.069] 0L) { [17:28:00.069] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:00.069] base::names(opts) <- ...future.futureOptionsAdded [17:28:00.069] base::options(opts) [17:28:00.069] } [17:28:00.069] { [17:28:00.069] { [17:28:00.069] base::options(mc.cores = ...future.mc.cores.old) [17:28:00.069] NULL [17:28:00.069] } [17:28:00.069] options(future.plan = NULL) [17:28:00.069] if (is.na(NA_character_)) [17:28:00.069] Sys.unsetenv("R_FUTURE_PLAN") [17:28:00.069] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:00.069] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:00.069] .init = FALSE) [17:28:00.069] } [17:28:00.069] } [17:28:00.069] } [17:28:00.069] }) [17:28:00.069] if (TRUE) { [17:28:00.069] base::sink(type = "output", split = FALSE) [17:28:00.069] if (TRUE) { [17:28:00.069] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:00.069] } [17:28:00.069] else { [17:28:00.069] ...future.result["stdout"] <- base::list(NULL) [17:28:00.069] } [17:28:00.069] base::close(...future.stdout) [17:28:00.069] ...future.stdout <- NULL [17:28:00.069] } [17:28:00.069] ...future.result$conditions <- ...future.conditions [17:28:00.069] ...future.result$finished <- base::Sys.time() [17:28:00.069] ...future.result [17:28:00.069] } [17:28:00.074] MultisessionFuture started [17:28:00.074] - Launch lazy future ... done [17:28:00.075] run() for 'MultisessionFuture' ... done [17:28:00.592] receiveMessageFromWorker() for ClusterFuture ... [17:28:00.592] - Validating connection of MultisessionFuture [17:28:00.592] - received message: FutureResult [17:28:00.593] - Received FutureResult [17:28:00.593] - Erased future from FutureRegistry [17:28:00.593] result() for ClusterFuture ... [17:28:00.593] - result already collected: FutureResult [17:28:00.593] result() for ClusterFuture ... done [17:28:00.594] receiveMessageFromWorker() for ClusterFuture ... done [17:28:00.594] resolve() on list ... [17:28:00.594] recursive: 1 [17:28:00.594] length: 2 [17:28:00.594] elements: 'a', 'b' [17:28:00.594] length: 1 (resolved future 1) [17:28:00.595] length: 0 (resolved future 2) [17:28:00.595] resolve() on list ... DONE [17:28:00.595] A MultisessionFuture was resolved (and resolved itself) [17:28:00.595] getGlobalsAndPackages() ... [17:28:00.595] Searching for globals... [17:28:00.597] - globals found: [3] '{', 'Sys.sleep', 'list' [17:28:00.597] Searching for globals ... DONE [17:28:00.597] Resolving globals: FALSE [17:28:00.597] [17:28:00.598] [17:28:00.598] getGlobalsAndPackages() ... DONE [17:28:00.598] run() for 'Future' ... [17:28:00.598] - state: 'created' [17:28:00.599] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:00.612] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:00.613] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:00.613] - Field: 'node' [17:28:00.613] - Field: 'label' [17:28:00.613] - Field: 'local' [17:28:00.613] - Field: 'owner' [17:28:00.613] - Field: 'envir' [17:28:00.614] - Field: 'workers' [17:28:00.614] - Field: 'packages' [17:28:00.614] - Field: 'gc' [17:28:00.614] - Field: 'conditions' [17:28:00.614] - Field: 'persistent' [17:28:00.614] - Field: 'expr' [17:28:00.615] - Field: 'uuid' [17:28:00.615] - Field: 'seed' [17:28:00.615] - Field: 'version' [17:28:00.615] - Field: 'result' [17:28:00.615] - Field: 'asynchronous' [17:28:00.616] - Field: 'calls' [17:28:00.616] - Field: 'globals' [17:28:00.616] - Field: 'stdout' [17:28:00.616] - Field: 'earlySignal' [17:28:00.616] - Field: 'lazy' [17:28:00.616] - Field: 'state' [17:28:00.617] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:00.617] - Launch lazy future ... [17:28:00.617] Packages needed by the future expression (n = 0): [17:28:00.617] Packages needed by future strategies (n = 0): [17:28:00.618] { [17:28:00.618] { [17:28:00.618] { [17:28:00.618] ...future.startTime <- base::Sys.time() [17:28:00.618] { [17:28:00.618] { [17:28:00.618] { [17:28:00.618] { [17:28:00.618] base::local({ [17:28:00.618] has_future <- base::requireNamespace("future", [17:28:00.618] quietly = TRUE) [17:28:00.618] if (has_future) { [17:28:00.618] ns <- base::getNamespace("future") [17:28:00.618] version <- ns[[".package"]][["version"]] [17:28:00.618] if (is.null(version)) [17:28:00.618] version <- utils::packageVersion("future") [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] version <- NULL [17:28:00.618] } [17:28:00.618] if (!has_future || version < "1.8.0") { [17:28:00.618] info <- base::c(r_version = base::gsub("R version ", [17:28:00.618] "", base::R.version$version.string), [17:28:00.618] platform = base::sprintf("%s (%s-bit)", [17:28:00.618] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:00.618] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:00.618] "release", "version")], collapse = " "), [17:28:00.618] hostname = base::Sys.info()[["nodename"]]) [17:28:00.618] info <- base::sprintf("%s: %s", base::names(info), [17:28:00.618] info) [17:28:00.618] info <- base::paste(info, collapse = "; ") [17:28:00.618] if (!has_future) { [17:28:00.618] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:00.618] info) [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:00.618] info, version) [17:28:00.618] } [17:28:00.618] base::stop(msg) [17:28:00.618] } [17:28:00.618] }) [17:28:00.618] } [17:28:00.618] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:00.618] base::options(mc.cores = 1L) [17:28:00.618] } [17:28:00.618] ...future.strategy.old <- future::plan("list") [17:28:00.618] options(future.plan = NULL) [17:28:00.618] Sys.unsetenv("R_FUTURE_PLAN") [17:28:00.618] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:00.618] } [17:28:00.618] ...future.workdir <- getwd() [17:28:00.618] } [17:28:00.618] ...future.oldOptions <- base::as.list(base::.Options) [17:28:00.618] ...future.oldEnvVars <- base::Sys.getenv() [17:28:00.618] } [17:28:00.618] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:00.618] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:00.618] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:00.618] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:00.618] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:00.618] future.stdout.windows.reencode = NULL, width = 80L) [17:28:00.618] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:00.618] base::names(...future.oldOptions)) [17:28:00.618] } [17:28:00.618] if (FALSE) { [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] if (TRUE) { [17:28:00.618] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:00.618] open = "w") [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:00.618] windows = "NUL", "/dev/null"), open = "w") [17:28:00.618] } [17:28:00.618] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:00.618] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:00.618] base::sink(type = "output", split = FALSE) [17:28:00.618] base::close(...future.stdout) [17:28:00.618] }, add = TRUE) [17:28:00.618] } [17:28:00.618] ...future.frame <- base::sys.nframe() [17:28:00.618] ...future.conditions <- base::list() [17:28:00.618] ...future.rng <- base::globalenv()$.Random.seed [17:28:00.618] if (FALSE) { [17:28:00.618] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:00.618] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:00.618] } [17:28:00.618] ...future.result <- base::tryCatch({ [17:28:00.618] base::withCallingHandlers({ [17:28:00.618] ...future.value <- base::withVisible(base::local({ [17:28:00.618] ...future.makeSendCondition <- base::local({ [17:28:00.618] sendCondition <- NULL [17:28:00.618] function(frame = 1L) { [17:28:00.618] if (is.function(sendCondition)) [17:28:00.618] return(sendCondition) [17:28:00.618] ns <- getNamespace("parallel") [17:28:00.618] if (exists("sendData", mode = "function", [17:28:00.618] envir = ns)) { [17:28:00.618] parallel_sendData <- get("sendData", mode = "function", [17:28:00.618] envir = ns) [17:28:00.618] envir <- sys.frame(frame) [17:28:00.618] master <- NULL [17:28:00.618] while (!identical(envir, .GlobalEnv) && [17:28:00.618] !identical(envir, emptyenv())) { [17:28:00.618] if (exists("master", mode = "list", envir = envir, [17:28:00.618] inherits = FALSE)) { [17:28:00.618] master <- get("master", mode = "list", [17:28:00.618] envir = envir, inherits = FALSE) [17:28:00.618] if (inherits(master, c("SOCKnode", [17:28:00.618] "SOCK0node"))) { [17:28:00.618] sendCondition <<- function(cond) { [17:28:00.618] data <- list(type = "VALUE", value = cond, [17:28:00.618] success = TRUE) [17:28:00.618] parallel_sendData(master, data) [17:28:00.618] } [17:28:00.618] return(sendCondition) [17:28:00.618] } [17:28:00.618] } [17:28:00.618] frame <- frame + 1L [17:28:00.618] envir <- sys.frame(frame) [17:28:00.618] } [17:28:00.618] } [17:28:00.618] sendCondition <<- function(cond) NULL [17:28:00.618] } [17:28:00.618] }) [17:28:00.618] withCallingHandlers({ [17:28:00.618] { [17:28:00.618] Sys.sleep(0.5) [17:28:00.618] list(a = 1, b = 42L) [17:28:00.618] } [17:28:00.618] }, immediateCondition = function(cond) { [17:28:00.618] sendCondition <- ...future.makeSendCondition() [17:28:00.618] sendCondition(cond) [17:28:00.618] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.618] { [17:28:00.618] inherits <- base::inherits [17:28:00.618] invokeRestart <- base::invokeRestart [17:28:00.618] is.null <- base::is.null [17:28:00.618] muffled <- FALSE [17:28:00.618] if (inherits(cond, "message")) { [17:28:00.618] muffled <- grepl(pattern, "muffleMessage") [17:28:00.618] if (muffled) [17:28:00.618] invokeRestart("muffleMessage") [17:28:00.618] } [17:28:00.618] else if (inherits(cond, "warning")) { [17:28:00.618] muffled <- grepl(pattern, "muffleWarning") [17:28:00.618] if (muffled) [17:28:00.618] invokeRestart("muffleWarning") [17:28:00.618] } [17:28:00.618] else if (inherits(cond, "condition")) { [17:28:00.618] if (!is.null(pattern)) { [17:28:00.618] computeRestarts <- base::computeRestarts [17:28:00.618] grepl <- base::grepl [17:28:00.618] restarts <- computeRestarts(cond) [17:28:00.618] for (restart in restarts) { [17:28:00.618] name <- restart$name [17:28:00.618] if (is.null(name)) [17:28:00.618] next [17:28:00.618] if (!grepl(pattern, name)) [17:28:00.618] next [17:28:00.618] invokeRestart(restart) [17:28:00.618] muffled <- TRUE [17:28:00.618] break [17:28:00.618] } [17:28:00.618] } [17:28:00.618] } [17:28:00.618] invisible(muffled) [17:28:00.618] } [17:28:00.618] muffleCondition(cond) [17:28:00.618] }) [17:28:00.618] })) [17:28:00.618] future::FutureResult(value = ...future.value$value, [17:28:00.618] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:00.618] ...future.rng), globalenv = if (FALSE) [17:28:00.618] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:00.618] ...future.globalenv.names)) [17:28:00.618] else NULL, started = ...future.startTime, version = "1.8") [17:28:00.618] }, condition = base::local({ [17:28:00.618] c <- base::c [17:28:00.618] inherits <- base::inherits [17:28:00.618] invokeRestart <- base::invokeRestart [17:28:00.618] length <- base::length [17:28:00.618] list <- base::list [17:28:00.618] seq.int <- base::seq.int [17:28:00.618] signalCondition <- base::signalCondition [17:28:00.618] sys.calls <- base::sys.calls [17:28:00.618] `[[` <- base::`[[` [17:28:00.618] `+` <- base::`+` [17:28:00.618] `<<-` <- base::`<<-` [17:28:00.618] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:00.618] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:00.618] 3L)] [17:28:00.618] } [17:28:00.618] function(cond) { [17:28:00.618] is_error <- inherits(cond, "error") [17:28:00.618] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:00.618] NULL) [17:28:00.618] if (is_error) { [17:28:00.618] sessionInformation <- function() { [17:28:00.618] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:00.618] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:00.618] search = base::search(), system = base::Sys.info()) [17:28:00.618] } [17:28:00.618] ...future.conditions[[length(...future.conditions) + [17:28:00.618] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:00.618] cond$call), session = sessionInformation(), [17:28:00.618] timestamp = base::Sys.time(), signaled = 0L) [17:28:00.618] signalCondition(cond) [17:28:00.618] } [17:28:00.618] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:00.618] "immediateCondition"))) { [17:28:00.618] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:00.618] ...future.conditions[[length(...future.conditions) + [17:28:00.618] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:00.618] if (TRUE && !signal) { [17:28:00.618] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.618] { [17:28:00.618] inherits <- base::inherits [17:28:00.618] invokeRestart <- base::invokeRestart [17:28:00.618] is.null <- base::is.null [17:28:00.618] muffled <- FALSE [17:28:00.618] if (inherits(cond, "message")) { [17:28:00.618] muffled <- grepl(pattern, "muffleMessage") [17:28:00.618] if (muffled) [17:28:00.618] invokeRestart("muffleMessage") [17:28:00.618] } [17:28:00.618] else if (inherits(cond, "warning")) { [17:28:00.618] muffled <- grepl(pattern, "muffleWarning") [17:28:00.618] if (muffled) [17:28:00.618] invokeRestart("muffleWarning") [17:28:00.618] } [17:28:00.618] else if (inherits(cond, "condition")) { [17:28:00.618] if (!is.null(pattern)) { [17:28:00.618] computeRestarts <- base::computeRestarts [17:28:00.618] grepl <- base::grepl [17:28:00.618] restarts <- computeRestarts(cond) [17:28:00.618] for (restart in restarts) { [17:28:00.618] name <- restart$name [17:28:00.618] if (is.null(name)) [17:28:00.618] next [17:28:00.618] if (!grepl(pattern, name)) [17:28:00.618] next [17:28:00.618] invokeRestart(restart) [17:28:00.618] muffled <- TRUE [17:28:00.618] break [17:28:00.618] } [17:28:00.618] } [17:28:00.618] } [17:28:00.618] invisible(muffled) [17:28:00.618] } [17:28:00.618] muffleCondition(cond, pattern = "^muffle") [17:28:00.618] } [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] if (TRUE) { [17:28:00.618] muffleCondition <- function (cond, pattern = "^muffle") [17:28:00.618] { [17:28:00.618] inherits <- base::inherits [17:28:00.618] invokeRestart <- base::invokeRestart [17:28:00.618] is.null <- base::is.null [17:28:00.618] muffled <- FALSE [17:28:00.618] if (inherits(cond, "message")) { [17:28:00.618] muffled <- grepl(pattern, "muffleMessage") [17:28:00.618] if (muffled) [17:28:00.618] invokeRestart("muffleMessage") [17:28:00.618] } [17:28:00.618] else if (inherits(cond, "warning")) { [17:28:00.618] muffled <- grepl(pattern, "muffleWarning") [17:28:00.618] if (muffled) [17:28:00.618] invokeRestart("muffleWarning") [17:28:00.618] } [17:28:00.618] else if (inherits(cond, "condition")) { [17:28:00.618] if (!is.null(pattern)) { [17:28:00.618] computeRestarts <- base::computeRestarts [17:28:00.618] grepl <- base::grepl [17:28:00.618] restarts <- computeRestarts(cond) [17:28:00.618] for (restart in restarts) { [17:28:00.618] name <- restart$name [17:28:00.618] if (is.null(name)) [17:28:00.618] next [17:28:00.618] if (!grepl(pattern, name)) [17:28:00.618] next [17:28:00.618] invokeRestart(restart) [17:28:00.618] muffled <- TRUE [17:28:00.618] break [17:28:00.618] } [17:28:00.618] } [17:28:00.618] } [17:28:00.618] invisible(muffled) [17:28:00.618] } [17:28:00.618] muffleCondition(cond, pattern = "^muffle") [17:28:00.618] } [17:28:00.618] } [17:28:00.618] } [17:28:00.618] })) [17:28:00.618] }, error = function(ex) { [17:28:00.618] base::structure(base::list(value = NULL, visible = NULL, [17:28:00.618] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:00.618] ...future.rng), started = ...future.startTime, [17:28:00.618] finished = Sys.time(), session_uuid = NA_character_, [17:28:00.618] version = "1.8"), class = "FutureResult") [17:28:00.618] }, finally = { [17:28:00.618] if (!identical(...future.workdir, getwd())) [17:28:00.618] setwd(...future.workdir) [17:28:00.618] { [17:28:00.618] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:00.618] ...future.oldOptions$nwarnings <- NULL [17:28:00.618] } [17:28:00.618] base::options(...future.oldOptions) [17:28:00.618] if (.Platform$OS.type == "windows") { [17:28:00.618] old_names <- names(...future.oldEnvVars) [17:28:00.618] envs <- base::Sys.getenv() [17:28:00.618] names <- names(envs) [17:28:00.618] common <- intersect(names, old_names) [17:28:00.618] added <- setdiff(names, old_names) [17:28:00.618] removed <- setdiff(old_names, names) [17:28:00.618] changed <- common[...future.oldEnvVars[common] != [17:28:00.618] envs[common]] [17:28:00.618] NAMES <- toupper(changed) [17:28:00.618] args <- list() [17:28:00.618] for (kk in seq_along(NAMES)) { [17:28:00.618] name <- changed[[kk]] [17:28:00.618] NAME <- NAMES[[kk]] [17:28:00.618] if (name != NAME && is.element(NAME, old_names)) [17:28:00.618] next [17:28:00.618] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:00.618] } [17:28:00.618] NAMES <- toupper(added) [17:28:00.618] for (kk in seq_along(NAMES)) { [17:28:00.618] name <- added[[kk]] [17:28:00.618] NAME <- NAMES[[kk]] [17:28:00.618] if (name != NAME && is.element(NAME, old_names)) [17:28:00.618] next [17:28:00.618] args[[name]] <- "" [17:28:00.618] } [17:28:00.618] NAMES <- toupper(removed) [17:28:00.618] for (kk in seq_along(NAMES)) { [17:28:00.618] name <- removed[[kk]] [17:28:00.618] NAME <- NAMES[[kk]] [17:28:00.618] if (name != NAME && is.element(NAME, old_names)) [17:28:00.618] next [17:28:00.618] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:00.618] } [17:28:00.618] if (length(args) > 0) [17:28:00.618] base::do.call(base::Sys.setenv, args = args) [17:28:00.618] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:00.618] } [17:28:00.618] { [17:28:00.618] if (base::length(...future.futureOptionsAdded) > [17:28:00.618] 0L) { [17:28:00.618] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:00.618] base::names(opts) <- ...future.futureOptionsAdded [17:28:00.618] base::options(opts) [17:28:00.618] } [17:28:00.618] { [17:28:00.618] { [17:28:00.618] base::options(mc.cores = ...future.mc.cores.old) [17:28:00.618] NULL [17:28:00.618] } [17:28:00.618] options(future.plan = NULL) [17:28:00.618] if (is.na(NA_character_)) [17:28:00.618] Sys.unsetenv("R_FUTURE_PLAN") [17:28:00.618] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:00.618] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:00.618] .init = FALSE) [17:28:00.618] } [17:28:00.618] } [17:28:00.618] } [17:28:00.618] }) [17:28:00.618] if (TRUE) { [17:28:00.618] base::sink(type = "output", split = FALSE) [17:28:00.618] if (TRUE) { [17:28:00.618] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:00.618] } [17:28:00.618] else { [17:28:00.618] ...future.result["stdout"] <- base::list(NULL) [17:28:00.618] } [17:28:00.618] base::close(...future.stdout) [17:28:00.618] ...future.stdout <- NULL [17:28:00.618] } [17:28:00.618] ...future.result$conditions <- ...future.conditions [17:28:00.618] ...future.result$finished <- base::Sys.time() [17:28:00.618] ...future.result [17:28:00.618] } [17:28:00.623] MultisessionFuture started [17:28:00.624] - Launch lazy future ... done [17:28:00.624] run() for 'MultisessionFuture' ... done [17:28:01.143] receiveMessageFromWorker() for ClusterFuture ... [17:28:01.144] - Validating connection of MultisessionFuture [17:28:01.144] - received message: FutureResult [17:28:01.144] - Received FutureResult [17:28:01.144] - Erased future from FutureRegistry [17:28:01.145] result() for ClusterFuture ... [17:28:01.147] - result already collected: FutureResult [17:28:01.148] result() for ClusterFuture ... done [17:28:01.148] receiveMessageFromWorker() for ClusterFuture ... done [17:28:01.148] resolve() on list ... [17:28:01.148] recursive: 1 [17:28:01.148] length: 2 [17:28:01.148] elements: 'a', 'b' [17:28:01.149] length: 1 (resolved future 1) [17:28:01.149] length: 0 (resolved future 2) [17:28:01.149] resolve() on list ... DONE [17:28:01.149] A MultisessionFuture was resolved (and resolved itself) - w/ exception ... [17:28:01.149] getGlobalsAndPackages() ... [17:28:01.150] Searching for globals... [17:28:01.150] - globals found: [2] 'list', 'stop' [17:28:01.151] Searching for globals ... DONE [17:28:01.151] Resolving globals: FALSE [17:28:01.151] [17:28:01.151] [17:28:01.151] getGlobalsAndPackages() ... DONE [17:28:01.152] run() for 'Future' ... [17:28:01.152] - state: 'created' [17:28:01.152] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:01.166] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:01.166] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:01.166] - Field: 'node' [17:28:01.166] - Field: 'label' [17:28:01.167] - Field: 'local' [17:28:01.167] - Field: 'owner' [17:28:01.167] - Field: 'envir' [17:28:01.167] - Field: 'workers' [17:28:01.167] - Field: 'packages' [17:28:01.168] - Field: 'gc' [17:28:01.168] - Field: 'conditions' [17:28:01.168] - Field: 'persistent' [17:28:01.168] - Field: 'expr' [17:28:01.168] - Field: 'uuid' [17:28:01.168] - Field: 'seed' [17:28:01.169] - Field: 'version' [17:28:01.169] - Field: 'result' [17:28:01.169] - Field: 'asynchronous' [17:28:01.169] - Field: 'calls' [17:28:01.169] - Field: 'globals' [17:28:01.169] - Field: 'stdout' [17:28:01.170] - Field: 'earlySignal' [17:28:01.170] - Field: 'lazy' [17:28:01.170] - Field: 'state' [17:28:01.170] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:01.170] - Launch lazy future ... [17:28:01.171] Packages needed by the future expression (n = 0): [17:28:01.171] Packages needed by future strategies (n = 0): [17:28:01.171] { [17:28:01.171] { [17:28:01.171] { [17:28:01.171] ...future.startTime <- base::Sys.time() [17:28:01.171] { [17:28:01.171] { [17:28:01.171] { [17:28:01.171] { [17:28:01.171] base::local({ [17:28:01.171] has_future <- base::requireNamespace("future", [17:28:01.171] quietly = TRUE) [17:28:01.171] if (has_future) { [17:28:01.171] ns <- base::getNamespace("future") [17:28:01.171] version <- ns[[".package"]][["version"]] [17:28:01.171] if (is.null(version)) [17:28:01.171] version <- utils::packageVersion("future") [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] version <- NULL [17:28:01.171] } [17:28:01.171] if (!has_future || version < "1.8.0") { [17:28:01.171] info <- base::c(r_version = base::gsub("R version ", [17:28:01.171] "", base::R.version$version.string), [17:28:01.171] platform = base::sprintf("%s (%s-bit)", [17:28:01.171] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:01.171] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:01.171] "release", "version")], collapse = " "), [17:28:01.171] hostname = base::Sys.info()[["nodename"]]) [17:28:01.171] info <- base::sprintf("%s: %s", base::names(info), [17:28:01.171] info) [17:28:01.171] info <- base::paste(info, collapse = "; ") [17:28:01.171] if (!has_future) { [17:28:01.171] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:01.171] info) [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:01.171] info, version) [17:28:01.171] } [17:28:01.171] base::stop(msg) [17:28:01.171] } [17:28:01.171] }) [17:28:01.171] } [17:28:01.171] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:01.171] base::options(mc.cores = 1L) [17:28:01.171] } [17:28:01.171] ...future.strategy.old <- future::plan("list") [17:28:01.171] options(future.plan = NULL) [17:28:01.171] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.171] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:01.171] } [17:28:01.171] ...future.workdir <- getwd() [17:28:01.171] } [17:28:01.171] ...future.oldOptions <- base::as.list(base::.Options) [17:28:01.171] ...future.oldEnvVars <- base::Sys.getenv() [17:28:01.171] } [17:28:01.171] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:01.171] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:01.171] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:01.171] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:01.171] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:01.171] future.stdout.windows.reencode = NULL, width = 80L) [17:28:01.171] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:01.171] base::names(...future.oldOptions)) [17:28:01.171] } [17:28:01.171] if (FALSE) { [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] if (TRUE) { [17:28:01.171] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:01.171] open = "w") [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:01.171] windows = "NUL", "/dev/null"), open = "w") [17:28:01.171] } [17:28:01.171] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:01.171] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:01.171] base::sink(type = "output", split = FALSE) [17:28:01.171] base::close(...future.stdout) [17:28:01.171] }, add = TRUE) [17:28:01.171] } [17:28:01.171] ...future.frame <- base::sys.nframe() [17:28:01.171] ...future.conditions <- base::list() [17:28:01.171] ...future.rng <- base::globalenv()$.Random.seed [17:28:01.171] if (FALSE) { [17:28:01.171] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:01.171] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:01.171] } [17:28:01.171] ...future.result <- base::tryCatch({ [17:28:01.171] base::withCallingHandlers({ [17:28:01.171] ...future.value <- base::withVisible(base::local({ [17:28:01.171] ...future.makeSendCondition <- base::local({ [17:28:01.171] sendCondition <- NULL [17:28:01.171] function(frame = 1L) { [17:28:01.171] if (is.function(sendCondition)) [17:28:01.171] return(sendCondition) [17:28:01.171] ns <- getNamespace("parallel") [17:28:01.171] if (exists("sendData", mode = "function", [17:28:01.171] envir = ns)) { [17:28:01.171] parallel_sendData <- get("sendData", mode = "function", [17:28:01.171] envir = ns) [17:28:01.171] envir <- sys.frame(frame) [17:28:01.171] master <- NULL [17:28:01.171] while (!identical(envir, .GlobalEnv) && [17:28:01.171] !identical(envir, emptyenv())) { [17:28:01.171] if (exists("master", mode = "list", envir = envir, [17:28:01.171] inherits = FALSE)) { [17:28:01.171] master <- get("master", mode = "list", [17:28:01.171] envir = envir, inherits = FALSE) [17:28:01.171] if (inherits(master, c("SOCKnode", [17:28:01.171] "SOCK0node"))) { [17:28:01.171] sendCondition <<- function(cond) { [17:28:01.171] data <- list(type = "VALUE", value = cond, [17:28:01.171] success = TRUE) [17:28:01.171] parallel_sendData(master, data) [17:28:01.171] } [17:28:01.171] return(sendCondition) [17:28:01.171] } [17:28:01.171] } [17:28:01.171] frame <- frame + 1L [17:28:01.171] envir <- sys.frame(frame) [17:28:01.171] } [17:28:01.171] } [17:28:01.171] sendCondition <<- function(cond) NULL [17:28:01.171] } [17:28:01.171] }) [17:28:01.171] withCallingHandlers({ [17:28:01.171] list(a = 1, b = 42L, c = stop("Nah!")) [17:28:01.171] }, immediateCondition = function(cond) { [17:28:01.171] sendCondition <- ...future.makeSendCondition() [17:28:01.171] sendCondition(cond) [17:28:01.171] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.171] { [17:28:01.171] inherits <- base::inherits [17:28:01.171] invokeRestart <- base::invokeRestart [17:28:01.171] is.null <- base::is.null [17:28:01.171] muffled <- FALSE [17:28:01.171] if (inherits(cond, "message")) { [17:28:01.171] muffled <- grepl(pattern, "muffleMessage") [17:28:01.171] if (muffled) [17:28:01.171] invokeRestart("muffleMessage") [17:28:01.171] } [17:28:01.171] else if (inherits(cond, "warning")) { [17:28:01.171] muffled <- grepl(pattern, "muffleWarning") [17:28:01.171] if (muffled) [17:28:01.171] invokeRestart("muffleWarning") [17:28:01.171] } [17:28:01.171] else if (inherits(cond, "condition")) { [17:28:01.171] if (!is.null(pattern)) { [17:28:01.171] computeRestarts <- base::computeRestarts [17:28:01.171] grepl <- base::grepl [17:28:01.171] restarts <- computeRestarts(cond) [17:28:01.171] for (restart in restarts) { [17:28:01.171] name <- restart$name [17:28:01.171] if (is.null(name)) [17:28:01.171] next [17:28:01.171] if (!grepl(pattern, name)) [17:28:01.171] next [17:28:01.171] invokeRestart(restart) [17:28:01.171] muffled <- TRUE [17:28:01.171] break [17:28:01.171] } [17:28:01.171] } [17:28:01.171] } [17:28:01.171] invisible(muffled) [17:28:01.171] } [17:28:01.171] muffleCondition(cond) [17:28:01.171] }) [17:28:01.171] })) [17:28:01.171] future::FutureResult(value = ...future.value$value, [17:28:01.171] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.171] ...future.rng), globalenv = if (FALSE) [17:28:01.171] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:01.171] ...future.globalenv.names)) [17:28:01.171] else NULL, started = ...future.startTime, version = "1.8") [17:28:01.171] }, condition = base::local({ [17:28:01.171] c <- base::c [17:28:01.171] inherits <- base::inherits [17:28:01.171] invokeRestart <- base::invokeRestart [17:28:01.171] length <- base::length [17:28:01.171] list <- base::list [17:28:01.171] seq.int <- base::seq.int [17:28:01.171] signalCondition <- base::signalCondition [17:28:01.171] sys.calls <- base::sys.calls [17:28:01.171] `[[` <- base::`[[` [17:28:01.171] `+` <- base::`+` [17:28:01.171] `<<-` <- base::`<<-` [17:28:01.171] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:01.171] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:01.171] 3L)] [17:28:01.171] } [17:28:01.171] function(cond) { [17:28:01.171] is_error <- inherits(cond, "error") [17:28:01.171] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:01.171] NULL) [17:28:01.171] if (is_error) { [17:28:01.171] sessionInformation <- function() { [17:28:01.171] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:01.171] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:01.171] search = base::search(), system = base::Sys.info()) [17:28:01.171] } [17:28:01.171] ...future.conditions[[length(...future.conditions) + [17:28:01.171] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:01.171] cond$call), session = sessionInformation(), [17:28:01.171] timestamp = base::Sys.time(), signaled = 0L) [17:28:01.171] signalCondition(cond) [17:28:01.171] } [17:28:01.171] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:01.171] "immediateCondition"))) { [17:28:01.171] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:01.171] ...future.conditions[[length(...future.conditions) + [17:28:01.171] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:01.171] if (TRUE && !signal) { [17:28:01.171] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.171] { [17:28:01.171] inherits <- base::inherits [17:28:01.171] invokeRestart <- base::invokeRestart [17:28:01.171] is.null <- base::is.null [17:28:01.171] muffled <- FALSE [17:28:01.171] if (inherits(cond, "message")) { [17:28:01.171] muffled <- grepl(pattern, "muffleMessage") [17:28:01.171] if (muffled) [17:28:01.171] invokeRestart("muffleMessage") [17:28:01.171] } [17:28:01.171] else if (inherits(cond, "warning")) { [17:28:01.171] muffled <- grepl(pattern, "muffleWarning") [17:28:01.171] if (muffled) [17:28:01.171] invokeRestart("muffleWarning") [17:28:01.171] } [17:28:01.171] else if (inherits(cond, "condition")) { [17:28:01.171] if (!is.null(pattern)) { [17:28:01.171] computeRestarts <- base::computeRestarts [17:28:01.171] grepl <- base::grepl [17:28:01.171] restarts <- computeRestarts(cond) [17:28:01.171] for (restart in restarts) { [17:28:01.171] name <- restart$name [17:28:01.171] if (is.null(name)) [17:28:01.171] next [17:28:01.171] if (!grepl(pattern, name)) [17:28:01.171] next [17:28:01.171] invokeRestart(restart) [17:28:01.171] muffled <- TRUE [17:28:01.171] break [17:28:01.171] } [17:28:01.171] } [17:28:01.171] } [17:28:01.171] invisible(muffled) [17:28:01.171] } [17:28:01.171] muffleCondition(cond, pattern = "^muffle") [17:28:01.171] } [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] if (TRUE) { [17:28:01.171] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.171] { [17:28:01.171] inherits <- base::inherits [17:28:01.171] invokeRestart <- base::invokeRestart [17:28:01.171] is.null <- base::is.null [17:28:01.171] muffled <- FALSE [17:28:01.171] if (inherits(cond, "message")) { [17:28:01.171] muffled <- grepl(pattern, "muffleMessage") [17:28:01.171] if (muffled) [17:28:01.171] invokeRestart("muffleMessage") [17:28:01.171] } [17:28:01.171] else if (inherits(cond, "warning")) { [17:28:01.171] muffled <- grepl(pattern, "muffleWarning") [17:28:01.171] if (muffled) [17:28:01.171] invokeRestart("muffleWarning") [17:28:01.171] } [17:28:01.171] else if (inherits(cond, "condition")) { [17:28:01.171] if (!is.null(pattern)) { [17:28:01.171] computeRestarts <- base::computeRestarts [17:28:01.171] grepl <- base::grepl [17:28:01.171] restarts <- computeRestarts(cond) [17:28:01.171] for (restart in restarts) { [17:28:01.171] name <- restart$name [17:28:01.171] if (is.null(name)) [17:28:01.171] next [17:28:01.171] if (!grepl(pattern, name)) [17:28:01.171] next [17:28:01.171] invokeRestart(restart) [17:28:01.171] muffled <- TRUE [17:28:01.171] break [17:28:01.171] } [17:28:01.171] } [17:28:01.171] } [17:28:01.171] invisible(muffled) [17:28:01.171] } [17:28:01.171] muffleCondition(cond, pattern = "^muffle") [17:28:01.171] } [17:28:01.171] } [17:28:01.171] } [17:28:01.171] })) [17:28:01.171] }, error = function(ex) { [17:28:01.171] base::structure(base::list(value = NULL, visible = NULL, [17:28:01.171] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.171] ...future.rng), started = ...future.startTime, [17:28:01.171] finished = Sys.time(), session_uuid = NA_character_, [17:28:01.171] version = "1.8"), class = "FutureResult") [17:28:01.171] }, finally = { [17:28:01.171] if (!identical(...future.workdir, getwd())) [17:28:01.171] setwd(...future.workdir) [17:28:01.171] { [17:28:01.171] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:01.171] ...future.oldOptions$nwarnings <- NULL [17:28:01.171] } [17:28:01.171] base::options(...future.oldOptions) [17:28:01.171] if (.Platform$OS.type == "windows") { [17:28:01.171] old_names <- names(...future.oldEnvVars) [17:28:01.171] envs <- base::Sys.getenv() [17:28:01.171] names <- names(envs) [17:28:01.171] common <- intersect(names, old_names) [17:28:01.171] added <- setdiff(names, old_names) [17:28:01.171] removed <- setdiff(old_names, names) [17:28:01.171] changed <- common[...future.oldEnvVars[common] != [17:28:01.171] envs[common]] [17:28:01.171] NAMES <- toupper(changed) [17:28:01.171] args <- list() [17:28:01.171] for (kk in seq_along(NAMES)) { [17:28:01.171] name <- changed[[kk]] [17:28:01.171] NAME <- NAMES[[kk]] [17:28:01.171] if (name != NAME && is.element(NAME, old_names)) [17:28:01.171] next [17:28:01.171] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.171] } [17:28:01.171] NAMES <- toupper(added) [17:28:01.171] for (kk in seq_along(NAMES)) { [17:28:01.171] name <- added[[kk]] [17:28:01.171] NAME <- NAMES[[kk]] [17:28:01.171] if (name != NAME && is.element(NAME, old_names)) [17:28:01.171] next [17:28:01.171] args[[name]] <- "" [17:28:01.171] } [17:28:01.171] NAMES <- toupper(removed) [17:28:01.171] for (kk in seq_along(NAMES)) { [17:28:01.171] name <- removed[[kk]] [17:28:01.171] NAME <- NAMES[[kk]] [17:28:01.171] if (name != NAME && is.element(NAME, old_names)) [17:28:01.171] next [17:28:01.171] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.171] } [17:28:01.171] if (length(args) > 0) [17:28:01.171] base::do.call(base::Sys.setenv, args = args) [17:28:01.171] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:01.171] } [17:28:01.171] { [17:28:01.171] if (base::length(...future.futureOptionsAdded) > [17:28:01.171] 0L) { [17:28:01.171] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:01.171] base::names(opts) <- ...future.futureOptionsAdded [17:28:01.171] base::options(opts) [17:28:01.171] } [17:28:01.171] { [17:28:01.171] { [17:28:01.171] base::options(mc.cores = ...future.mc.cores.old) [17:28:01.171] NULL [17:28:01.171] } [17:28:01.171] options(future.plan = NULL) [17:28:01.171] if (is.na(NA_character_)) [17:28:01.171] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.171] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:01.171] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:01.171] .init = FALSE) [17:28:01.171] } [17:28:01.171] } [17:28:01.171] } [17:28:01.171] }) [17:28:01.171] if (TRUE) { [17:28:01.171] base::sink(type = "output", split = FALSE) [17:28:01.171] if (TRUE) { [17:28:01.171] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:01.171] } [17:28:01.171] else { [17:28:01.171] ...future.result["stdout"] <- base::list(NULL) [17:28:01.171] } [17:28:01.171] base::close(...future.stdout) [17:28:01.171] ...future.stdout <- NULL [17:28:01.171] } [17:28:01.171] ...future.result$conditions <- ...future.conditions [17:28:01.171] ...future.result$finished <- base::Sys.time() [17:28:01.171] ...future.result [17:28:01.171] } [17:28:01.177] MultisessionFuture started [17:28:01.177] - Launch lazy future ... done [17:28:01.177] run() for 'MultisessionFuture' ... done [17:28:01.192] receiveMessageFromWorker() for ClusterFuture ... [17:28:01.193] - Validating connection of MultisessionFuture [17:28:01.193] - received message: FutureResult [17:28:01.193] - Received FutureResult [17:28:01.193] - Erased future from FutureRegistry [17:28:01.194] result() for ClusterFuture ... [17:28:01.194] - result already collected: FutureResult [17:28:01.194] result() for ClusterFuture ... done [17:28:01.194] signalConditions() ... [17:28:01.194] - include = 'immediateCondition' [17:28:01.194] - exclude = [17:28:01.195] - resignal = FALSE [17:28:01.195] - Number of conditions: 1 [17:28:01.195] signalConditions() ... done [17:28:01.195] receiveMessageFromWorker() for ClusterFuture ... done [17:28:01.195] A MultisessionFuture was resolved (and resolved itself) [17:28:01.195] getGlobalsAndPackages() ... [17:28:01.196] Searching for globals... [17:28:01.196] - globals found: [2] 'list', 'stop' [17:28:01.197] Searching for globals ... DONE [17:28:01.197] Resolving globals: FALSE [17:28:01.197] [17:28:01.197] [17:28:01.197] getGlobalsAndPackages() ... DONE [17:28:01.198] run() for 'Future' ... [17:28:01.198] - state: 'created' [17:28:01.198] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:01.212] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:01.212] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:01.212] - Field: 'node' [17:28:01.213] - Field: 'label' [17:28:01.213] - Field: 'local' [17:28:01.213] - Field: 'owner' [17:28:01.213] - Field: 'envir' [17:28:01.213] - Field: 'workers' [17:28:01.213] - Field: 'packages' [17:28:01.214] - Field: 'gc' [17:28:01.214] - Field: 'conditions' [17:28:01.214] - Field: 'persistent' [17:28:01.214] - Field: 'expr' [17:28:01.214] - Field: 'uuid' [17:28:01.215] - Field: 'seed' [17:28:01.215] - Field: 'version' [17:28:01.215] - Field: 'result' [17:28:01.215] - Field: 'asynchronous' [17:28:01.215] - Field: 'calls' [17:28:01.215] - Field: 'globals' [17:28:01.216] - Field: 'stdout' [17:28:01.216] - Field: 'earlySignal' [17:28:01.216] - Field: 'lazy' [17:28:01.216] - Field: 'state' [17:28:01.216] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:01.216] - Launch lazy future ... [17:28:01.217] Packages needed by the future expression (n = 0): [17:28:01.217] Packages needed by future strategies (n = 0): [17:28:01.218] { [17:28:01.218] { [17:28:01.218] { [17:28:01.218] ...future.startTime <- base::Sys.time() [17:28:01.218] { [17:28:01.218] { [17:28:01.218] { [17:28:01.218] { [17:28:01.218] base::local({ [17:28:01.218] has_future <- base::requireNamespace("future", [17:28:01.218] quietly = TRUE) [17:28:01.218] if (has_future) { [17:28:01.218] ns <- base::getNamespace("future") [17:28:01.218] version <- ns[[".package"]][["version"]] [17:28:01.218] if (is.null(version)) [17:28:01.218] version <- utils::packageVersion("future") [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] version <- NULL [17:28:01.218] } [17:28:01.218] if (!has_future || version < "1.8.0") { [17:28:01.218] info <- base::c(r_version = base::gsub("R version ", [17:28:01.218] "", base::R.version$version.string), [17:28:01.218] platform = base::sprintf("%s (%s-bit)", [17:28:01.218] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:01.218] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:01.218] "release", "version")], collapse = " "), [17:28:01.218] hostname = base::Sys.info()[["nodename"]]) [17:28:01.218] info <- base::sprintf("%s: %s", base::names(info), [17:28:01.218] info) [17:28:01.218] info <- base::paste(info, collapse = "; ") [17:28:01.218] if (!has_future) { [17:28:01.218] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:01.218] info) [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:01.218] info, version) [17:28:01.218] } [17:28:01.218] base::stop(msg) [17:28:01.218] } [17:28:01.218] }) [17:28:01.218] } [17:28:01.218] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:01.218] base::options(mc.cores = 1L) [17:28:01.218] } [17:28:01.218] ...future.strategy.old <- future::plan("list") [17:28:01.218] options(future.plan = NULL) [17:28:01.218] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.218] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:01.218] } [17:28:01.218] ...future.workdir <- getwd() [17:28:01.218] } [17:28:01.218] ...future.oldOptions <- base::as.list(base::.Options) [17:28:01.218] ...future.oldEnvVars <- base::Sys.getenv() [17:28:01.218] } [17:28:01.218] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:01.218] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:01.218] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:01.218] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:01.218] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:01.218] future.stdout.windows.reencode = NULL, width = 80L) [17:28:01.218] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:01.218] base::names(...future.oldOptions)) [17:28:01.218] } [17:28:01.218] if (FALSE) { [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] if (TRUE) { [17:28:01.218] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:01.218] open = "w") [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:01.218] windows = "NUL", "/dev/null"), open = "w") [17:28:01.218] } [17:28:01.218] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:01.218] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:01.218] base::sink(type = "output", split = FALSE) [17:28:01.218] base::close(...future.stdout) [17:28:01.218] }, add = TRUE) [17:28:01.218] } [17:28:01.218] ...future.frame <- base::sys.nframe() [17:28:01.218] ...future.conditions <- base::list() [17:28:01.218] ...future.rng <- base::globalenv()$.Random.seed [17:28:01.218] if (FALSE) { [17:28:01.218] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:01.218] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:01.218] } [17:28:01.218] ...future.result <- base::tryCatch({ [17:28:01.218] base::withCallingHandlers({ [17:28:01.218] ...future.value <- base::withVisible(base::local({ [17:28:01.218] ...future.makeSendCondition <- base::local({ [17:28:01.218] sendCondition <- NULL [17:28:01.218] function(frame = 1L) { [17:28:01.218] if (is.function(sendCondition)) [17:28:01.218] return(sendCondition) [17:28:01.218] ns <- getNamespace("parallel") [17:28:01.218] if (exists("sendData", mode = "function", [17:28:01.218] envir = ns)) { [17:28:01.218] parallel_sendData <- get("sendData", mode = "function", [17:28:01.218] envir = ns) [17:28:01.218] envir <- sys.frame(frame) [17:28:01.218] master <- NULL [17:28:01.218] while (!identical(envir, .GlobalEnv) && [17:28:01.218] !identical(envir, emptyenv())) { [17:28:01.218] if (exists("master", mode = "list", envir = envir, [17:28:01.218] inherits = FALSE)) { [17:28:01.218] master <- get("master", mode = "list", [17:28:01.218] envir = envir, inherits = FALSE) [17:28:01.218] if (inherits(master, c("SOCKnode", [17:28:01.218] "SOCK0node"))) { [17:28:01.218] sendCondition <<- function(cond) { [17:28:01.218] data <- list(type = "VALUE", value = cond, [17:28:01.218] success = TRUE) [17:28:01.218] parallel_sendData(master, data) [17:28:01.218] } [17:28:01.218] return(sendCondition) [17:28:01.218] } [17:28:01.218] } [17:28:01.218] frame <- frame + 1L [17:28:01.218] envir <- sys.frame(frame) [17:28:01.218] } [17:28:01.218] } [17:28:01.218] sendCondition <<- function(cond) NULL [17:28:01.218] } [17:28:01.218] }) [17:28:01.218] withCallingHandlers({ [17:28:01.218] list(a = 1, b = 42L, c = stop("Nah!")) [17:28:01.218] }, immediateCondition = function(cond) { [17:28:01.218] sendCondition <- ...future.makeSendCondition() [17:28:01.218] sendCondition(cond) [17:28:01.218] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.218] { [17:28:01.218] inherits <- base::inherits [17:28:01.218] invokeRestart <- base::invokeRestart [17:28:01.218] is.null <- base::is.null [17:28:01.218] muffled <- FALSE [17:28:01.218] if (inherits(cond, "message")) { [17:28:01.218] muffled <- grepl(pattern, "muffleMessage") [17:28:01.218] if (muffled) [17:28:01.218] invokeRestart("muffleMessage") [17:28:01.218] } [17:28:01.218] else if (inherits(cond, "warning")) { [17:28:01.218] muffled <- grepl(pattern, "muffleWarning") [17:28:01.218] if (muffled) [17:28:01.218] invokeRestart("muffleWarning") [17:28:01.218] } [17:28:01.218] else if (inherits(cond, "condition")) { [17:28:01.218] if (!is.null(pattern)) { [17:28:01.218] computeRestarts <- base::computeRestarts [17:28:01.218] grepl <- base::grepl [17:28:01.218] restarts <- computeRestarts(cond) [17:28:01.218] for (restart in restarts) { [17:28:01.218] name <- restart$name [17:28:01.218] if (is.null(name)) [17:28:01.218] next [17:28:01.218] if (!grepl(pattern, name)) [17:28:01.218] next [17:28:01.218] invokeRestart(restart) [17:28:01.218] muffled <- TRUE [17:28:01.218] break [17:28:01.218] } [17:28:01.218] } [17:28:01.218] } [17:28:01.218] invisible(muffled) [17:28:01.218] } [17:28:01.218] muffleCondition(cond) [17:28:01.218] }) [17:28:01.218] })) [17:28:01.218] future::FutureResult(value = ...future.value$value, [17:28:01.218] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.218] ...future.rng), globalenv = if (FALSE) [17:28:01.218] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:01.218] ...future.globalenv.names)) [17:28:01.218] else NULL, started = ...future.startTime, version = "1.8") [17:28:01.218] }, condition = base::local({ [17:28:01.218] c <- base::c [17:28:01.218] inherits <- base::inherits [17:28:01.218] invokeRestart <- base::invokeRestart [17:28:01.218] length <- base::length [17:28:01.218] list <- base::list [17:28:01.218] seq.int <- base::seq.int [17:28:01.218] signalCondition <- base::signalCondition [17:28:01.218] sys.calls <- base::sys.calls [17:28:01.218] `[[` <- base::`[[` [17:28:01.218] `+` <- base::`+` [17:28:01.218] `<<-` <- base::`<<-` [17:28:01.218] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:01.218] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:01.218] 3L)] [17:28:01.218] } [17:28:01.218] function(cond) { [17:28:01.218] is_error <- inherits(cond, "error") [17:28:01.218] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:01.218] NULL) [17:28:01.218] if (is_error) { [17:28:01.218] sessionInformation <- function() { [17:28:01.218] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:01.218] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:01.218] search = base::search(), system = base::Sys.info()) [17:28:01.218] } [17:28:01.218] ...future.conditions[[length(...future.conditions) + [17:28:01.218] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:01.218] cond$call), session = sessionInformation(), [17:28:01.218] timestamp = base::Sys.time(), signaled = 0L) [17:28:01.218] signalCondition(cond) [17:28:01.218] } [17:28:01.218] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:01.218] "immediateCondition"))) { [17:28:01.218] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:01.218] ...future.conditions[[length(...future.conditions) + [17:28:01.218] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:01.218] if (TRUE && !signal) { [17:28:01.218] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.218] { [17:28:01.218] inherits <- base::inherits [17:28:01.218] invokeRestart <- base::invokeRestart [17:28:01.218] is.null <- base::is.null [17:28:01.218] muffled <- FALSE [17:28:01.218] if (inherits(cond, "message")) { [17:28:01.218] muffled <- grepl(pattern, "muffleMessage") [17:28:01.218] if (muffled) [17:28:01.218] invokeRestart("muffleMessage") [17:28:01.218] } [17:28:01.218] else if (inherits(cond, "warning")) { [17:28:01.218] muffled <- grepl(pattern, "muffleWarning") [17:28:01.218] if (muffled) [17:28:01.218] invokeRestart("muffleWarning") [17:28:01.218] } [17:28:01.218] else if (inherits(cond, "condition")) { [17:28:01.218] if (!is.null(pattern)) { [17:28:01.218] computeRestarts <- base::computeRestarts [17:28:01.218] grepl <- base::grepl [17:28:01.218] restarts <- computeRestarts(cond) [17:28:01.218] for (restart in restarts) { [17:28:01.218] name <- restart$name [17:28:01.218] if (is.null(name)) [17:28:01.218] next [17:28:01.218] if (!grepl(pattern, name)) [17:28:01.218] next [17:28:01.218] invokeRestart(restart) [17:28:01.218] muffled <- TRUE [17:28:01.218] break [17:28:01.218] } [17:28:01.218] } [17:28:01.218] } [17:28:01.218] invisible(muffled) [17:28:01.218] } [17:28:01.218] muffleCondition(cond, pattern = "^muffle") [17:28:01.218] } [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] if (TRUE) { [17:28:01.218] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.218] { [17:28:01.218] inherits <- base::inherits [17:28:01.218] invokeRestart <- base::invokeRestart [17:28:01.218] is.null <- base::is.null [17:28:01.218] muffled <- FALSE [17:28:01.218] if (inherits(cond, "message")) { [17:28:01.218] muffled <- grepl(pattern, "muffleMessage") [17:28:01.218] if (muffled) [17:28:01.218] invokeRestart("muffleMessage") [17:28:01.218] } [17:28:01.218] else if (inherits(cond, "warning")) { [17:28:01.218] muffled <- grepl(pattern, "muffleWarning") [17:28:01.218] if (muffled) [17:28:01.218] invokeRestart("muffleWarning") [17:28:01.218] } [17:28:01.218] else if (inherits(cond, "condition")) { [17:28:01.218] if (!is.null(pattern)) { [17:28:01.218] computeRestarts <- base::computeRestarts [17:28:01.218] grepl <- base::grepl [17:28:01.218] restarts <- computeRestarts(cond) [17:28:01.218] for (restart in restarts) { [17:28:01.218] name <- restart$name [17:28:01.218] if (is.null(name)) [17:28:01.218] next [17:28:01.218] if (!grepl(pattern, name)) [17:28:01.218] next [17:28:01.218] invokeRestart(restart) [17:28:01.218] muffled <- TRUE [17:28:01.218] break [17:28:01.218] } [17:28:01.218] } [17:28:01.218] } [17:28:01.218] invisible(muffled) [17:28:01.218] } [17:28:01.218] muffleCondition(cond, pattern = "^muffle") [17:28:01.218] } [17:28:01.218] } [17:28:01.218] } [17:28:01.218] })) [17:28:01.218] }, error = function(ex) { [17:28:01.218] base::structure(base::list(value = NULL, visible = NULL, [17:28:01.218] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.218] ...future.rng), started = ...future.startTime, [17:28:01.218] finished = Sys.time(), session_uuid = NA_character_, [17:28:01.218] version = "1.8"), class = "FutureResult") [17:28:01.218] }, finally = { [17:28:01.218] if (!identical(...future.workdir, getwd())) [17:28:01.218] setwd(...future.workdir) [17:28:01.218] { [17:28:01.218] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:01.218] ...future.oldOptions$nwarnings <- NULL [17:28:01.218] } [17:28:01.218] base::options(...future.oldOptions) [17:28:01.218] if (.Platform$OS.type == "windows") { [17:28:01.218] old_names <- names(...future.oldEnvVars) [17:28:01.218] envs <- base::Sys.getenv() [17:28:01.218] names <- names(envs) [17:28:01.218] common <- intersect(names, old_names) [17:28:01.218] added <- setdiff(names, old_names) [17:28:01.218] removed <- setdiff(old_names, names) [17:28:01.218] changed <- common[...future.oldEnvVars[common] != [17:28:01.218] envs[common]] [17:28:01.218] NAMES <- toupper(changed) [17:28:01.218] args <- list() [17:28:01.218] for (kk in seq_along(NAMES)) { [17:28:01.218] name <- changed[[kk]] [17:28:01.218] NAME <- NAMES[[kk]] [17:28:01.218] if (name != NAME && is.element(NAME, old_names)) [17:28:01.218] next [17:28:01.218] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.218] } [17:28:01.218] NAMES <- toupper(added) [17:28:01.218] for (kk in seq_along(NAMES)) { [17:28:01.218] name <- added[[kk]] [17:28:01.218] NAME <- NAMES[[kk]] [17:28:01.218] if (name != NAME && is.element(NAME, old_names)) [17:28:01.218] next [17:28:01.218] args[[name]] <- "" [17:28:01.218] } [17:28:01.218] NAMES <- toupper(removed) [17:28:01.218] for (kk in seq_along(NAMES)) { [17:28:01.218] name <- removed[[kk]] [17:28:01.218] NAME <- NAMES[[kk]] [17:28:01.218] if (name != NAME && is.element(NAME, old_names)) [17:28:01.218] next [17:28:01.218] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.218] } [17:28:01.218] if (length(args) > 0) [17:28:01.218] base::do.call(base::Sys.setenv, args = args) [17:28:01.218] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:01.218] } [17:28:01.218] { [17:28:01.218] if (base::length(...future.futureOptionsAdded) > [17:28:01.218] 0L) { [17:28:01.218] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:01.218] base::names(opts) <- ...future.futureOptionsAdded [17:28:01.218] base::options(opts) [17:28:01.218] } [17:28:01.218] { [17:28:01.218] { [17:28:01.218] base::options(mc.cores = ...future.mc.cores.old) [17:28:01.218] NULL [17:28:01.218] } [17:28:01.218] options(future.plan = NULL) [17:28:01.218] if (is.na(NA_character_)) [17:28:01.218] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.218] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:01.218] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:01.218] .init = FALSE) [17:28:01.218] } [17:28:01.218] } [17:28:01.218] } [17:28:01.218] }) [17:28:01.218] if (TRUE) { [17:28:01.218] base::sink(type = "output", split = FALSE) [17:28:01.218] if (TRUE) { [17:28:01.218] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:01.218] } [17:28:01.218] else { [17:28:01.218] ...future.result["stdout"] <- base::list(NULL) [17:28:01.218] } [17:28:01.218] base::close(...future.stdout) [17:28:01.218] ...future.stdout <- NULL [17:28:01.218] } [17:28:01.218] ...future.result$conditions <- ...future.conditions [17:28:01.218] ...future.result$finished <- base::Sys.time() [17:28:01.218] ...future.result [17:28:01.218] } [17:28:01.223] MultisessionFuture started [17:28:01.223] - Launch lazy future ... done [17:28:01.223] run() for 'MultisessionFuture' ... done [17:28:01.237] receiveMessageFromWorker() for ClusterFuture ... [17:28:01.237] - Validating connection of MultisessionFuture [17:28:01.238] - received message: FutureResult [17:28:01.238] - Received FutureResult [17:28:01.238] - Erased future from FutureRegistry [17:28:01.238] result() for ClusterFuture ... [17:28:01.239] - result already collected: FutureResult [17:28:01.239] result() for ClusterFuture ... done [17:28:01.239] signalConditions() ... [17:28:01.239] - include = 'immediateCondition' [17:28:01.239] - exclude = [17:28:01.239] - resignal = FALSE [17:28:01.239] - Number of conditions: 1 [17:28:01.240] signalConditions() ... done [17:28:01.240] receiveMessageFromWorker() for ClusterFuture ... done [17:28:01.240] A MultisessionFuture was resolved (and resolved itself) - result = TRUE, recursive = 2 ... DONE - result = TRUE, recursive = Inf ... [17:28:01.240] getGlobalsAndPackages() ... [17:28:01.241] Searching for globals... [17:28:01.242] - globals found: [3] '{', 'Sys.sleep', 'list' [17:28:01.242] Searching for globals ... DONE [17:28:01.242] Resolving globals: FALSE [17:28:01.243] [17:28:01.243] [17:28:01.243] getGlobalsAndPackages() ... DONE [17:28:01.243] run() for 'Future' ... [17:28:01.243] - state: 'created' [17:28:01.244] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:01.257] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:01.257] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:01.258] - Field: 'node' [17:28:01.258] - Field: 'label' [17:28:01.258] - Field: 'local' [17:28:01.258] - Field: 'owner' [17:28:01.258] - Field: 'envir' [17:28:01.259] - Field: 'workers' [17:28:01.259] - Field: 'packages' [17:28:01.259] - Field: 'gc' [17:28:01.259] - Field: 'conditions' [17:28:01.259] - Field: 'persistent' [17:28:01.259] - Field: 'expr' [17:28:01.260] - Field: 'uuid' [17:28:01.260] - Field: 'seed' [17:28:01.260] - Field: 'version' [17:28:01.260] - Field: 'result' [17:28:01.260] - Field: 'asynchronous' [17:28:01.260] - Field: 'calls' [17:28:01.261] - Field: 'globals' [17:28:01.261] - Field: 'stdout' [17:28:01.261] - Field: 'earlySignal' [17:28:01.261] - Field: 'lazy' [17:28:01.261] - Field: 'state' [17:28:01.261] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:01.262] - Launch lazy future ... [17:28:01.262] Packages needed by the future expression (n = 0): [17:28:01.262] Packages needed by future strategies (n = 0): [17:28:01.263] { [17:28:01.263] { [17:28:01.263] { [17:28:01.263] ...future.startTime <- base::Sys.time() [17:28:01.263] { [17:28:01.263] { [17:28:01.263] { [17:28:01.263] { [17:28:01.263] base::local({ [17:28:01.263] has_future <- base::requireNamespace("future", [17:28:01.263] quietly = TRUE) [17:28:01.263] if (has_future) { [17:28:01.263] ns <- base::getNamespace("future") [17:28:01.263] version <- ns[[".package"]][["version"]] [17:28:01.263] if (is.null(version)) [17:28:01.263] version <- utils::packageVersion("future") [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] version <- NULL [17:28:01.263] } [17:28:01.263] if (!has_future || version < "1.8.0") { [17:28:01.263] info <- base::c(r_version = base::gsub("R version ", [17:28:01.263] "", base::R.version$version.string), [17:28:01.263] platform = base::sprintf("%s (%s-bit)", [17:28:01.263] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:01.263] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:01.263] "release", "version")], collapse = " "), [17:28:01.263] hostname = base::Sys.info()[["nodename"]]) [17:28:01.263] info <- base::sprintf("%s: %s", base::names(info), [17:28:01.263] info) [17:28:01.263] info <- base::paste(info, collapse = "; ") [17:28:01.263] if (!has_future) { [17:28:01.263] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:01.263] info) [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:01.263] info, version) [17:28:01.263] } [17:28:01.263] base::stop(msg) [17:28:01.263] } [17:28:01.263] }) [17:28:01.263] } [17:28:01.263] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:01.263] base::options(mc.cores = 1L) [17:28:01.263] } [17:28:01.263] ...future.strategy.old <- future::plan("list") [17:28:01.263] options(future.plan = NULL) [17:28:01.263] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.263] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:01.263] } [17:28:01.263] ...future.workdir <- getwd() [17:28:01.263] } [17:28:01.263] ...future.oldOptions <- base::as.list(base::.Options) [17:28:01.263] ...future.oldEnvVars <- base::Sys.getenv() [17:28:01.263] } [17:28:01.263] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:01.263] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:01.263] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:01.263] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:01.263] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:01.263] future.stdout.windows.reencode = NULL, width = 80L) [17:28:01.263] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:01.263] base::names(...future.oldOptions)) [17:28:01.263] } [17:28:01.263] if (FALSE) { [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] if (TRUE) { [17:28:01.263] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:01.263] open = "w") [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:01.263] windows = "NUL", "/dev/null"), open = "w") [17:28:01.263] } [17:28:01.263] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:01.263] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:01.263] base::sink(type = "output", split = FALSE) [17:28:01.263] base::close(...future.stdout) [17:28:01.263] }, add = TRUE) [17:28:01.263] } [17:28:01.263] ...future.frame <- base::sys.nframe() [17:28:01.263] ...future.conditions <- base::list() [17:28:01.263] ...future.rng <- base::globalenv()$.Random.seed [17:28:01.263] if (FALSE) { [17:28:01.263] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:01.263] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:01.263] } [17:28:01.263] ...future.result <- base::tryCatch({ [17:28:01.263] base::withCallingHandlers({ [17:28:01.263] ...future.value <- base::withVisible(base::local({ [17:28:01.263] ...future.makeSendCondition <- base::local({ [17:28:01.263] sendCondition <- NULL [17:28:01.263] function(frame = 1L) { [17:28:01.263] if (is.function(sendCondition)) [17:28:01.263] return(sendCondition) [17:28:01.263] ns <- getNamespace("parallel") [17:28:01.263] if (exists("sendData", mode = "function", [17:28:01.263] envir = ns)) { [17:28:01.263] parallel_sendData <- get("sendData", mode = "function", [17:28:01.263] envir = ns) [17:28:01.263] envir <- sys.frame(frame) [17:28:01.263] master <- NULL [17:28:01.263] while (!identical(envir, .GlobalEnv) && [17:28:01.263] !identical(envir, emptyenv())) { [17:28:01.263] if (exists("master", mode = "list", envir = envir, [17:28:01.263] inherits = FALSE)) { [17:28:01.263] master <- get("master", mode = "list", [17:28:01.263] envir = envir, inherits = FALSE) [17:28:01.263] if (inherits(master, c("SOCKnode", [17:28:01.263] "SOCK0node"))) { [17:28:01.263] sendCondition <<- function(cond) { [17:28:01.263] data <- list(type = "VALUE", value = cond, [17:28:01.263] success = TRUE) [17:28:01.263] parallel_sendData(master, data) [17:28:01.263] } [17:28:01.263] return(sendCondition) [17:28:01.263] } [17:28:01.263] } [17:28:01.263] frame <- frame + 1L [17:28:01.263] envir <- sys.frame(frame) [17:28:01.263] } [17:28:01.263] } [17:28:01.263] sendCondition <<- function(cond) NULL [17:28:01.263] } [17:28:01.263] }) [17:28:01.263] withCallingHandlers({ [17:28:01.263] { [17:28:01.263] Sys.sleep(0.5) [17:28:01.263] list(a = 1, b = 42L) [17:28:01.263] } [17:28:01.263] }, immediateCondition = function(cond) { [17:28:01.263] sendCondition <- ...future.makeSendCondition() [17:28:01.263] sendCondition(cond) [17:28:01.263] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.263] { [17:28:01.263] inherits <- base::inherits [17:28:01.263] invokeRestart <- base::invokeRestart [17:28:01.263] is.null <- base::is.null [17:28:01.263] muffled <- FALSE [17:28:01.263] if (inherits(cond, "message")) { [17:28:01.263] muffled <- grepl(pattern, "muffleMessage") [17:28:01.263] if (muffled) [17:28:01.263] invokeRestart("muffleMessage") [17:28:01.263] } [17:28:01.263] else if (inherits(cond, "warning")) { [17:28:01.263] muffled <- grepl(pattern, "muffleWarning") [17:28:01.263] if (muffled) [17:28:01.263] invokeRestart("muffleWarning") [17:28:01.263] } [17:28:01.263] else if (inherits(cond, "condition")) { [17:28:01.263] if (!is.null(pattern)) { [17:28:01.263] computeRestarts <- base::computeRestarts [17:28:01.263] grepl <- base::grepl [17:28:01.263] restarts <- computeRestarts(cond) [17:28:01.263] for (restart in restarts) { [17:28:01.263] name <- restart$name [17:28:01.263] if (is.null(name)) [17:28:01.263] next [17:28:01.263] if (!grepl(pattern, name)) [17:28:01.263] next [17:28:01.263] invokeRestart(restart) [17:28:01.263] muffled <- TRUE [17:28:01.263] break [17:28:01.263] } [17:28:01.263] } [17:28:01.263] } [17:28:01.263] invisible(muffled) [17:28:01.263] } [17:28:01.263] muffleCondition(cond) [17:28:01.263] }) [17:28:01.263] })) [17:28:01.263] future::FutureResult(value = ...future.value$value, [17:28:01.263] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.263] ...future.rng), globalenv = if (FALSE) [17:28:01.263] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:01.263] ...future.globalenv.names)) [17:28:01.263] else NULL, started = ...future.startTime, version = "1.8") [17:28:01.263] }, condition = base::local({ [17:28:01.263] c <- base::c [17:28:01.263] inherits <- base::inherits [17:28:01.263] invokeRestart <- base::invokeRestart [17:28:01.263] length <- base::length [17:28:01.263] list <- base::list [17:28:01.263] seq.int <- base::seq.int [17:28:01.263] signalCondition <- base::signalCondition [17:28:01.263] sys.calls <- base::sys.calls [17:28:01.263] `[[` <- base::`[[` [17:28:01.263] `+` <- base::`+` [17:28:01.263] `<<-` <- base::`<<-` [17:28:01.263] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:01.263] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:01.263] 3L)] [17:28:01.263] } [17:28:01.263] function(cond) { [17:28:01.263] is_error <- inherits(cond, "error") [17:28:01.263] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:01.263] NULL) [17:28:01.263] if (is_error) { [17:28:01.263] sessionInformation <- function() { [17:28:01.263] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:01.263] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:01.263] search = base::search(), system = base::Sys.info()) [17:28:01.263] } [17:28:01.263] ...future.conditions[[length(...future.conditions) + [17:28:01.263] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:01.263] cond$call), session = sessionInformation(), [17:28:01.263] timestamp = base::Sys.time(), signaled = 0L) [17:28:01.263] signalCondition(cond) [17:28:01.263] } [17:28:01.263] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:01.263] "immediateCondition"))) { [17:28:01.263] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:01.263] ...future.conditions[[length(...future.conditions) + [17:28:01.263] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:01.263] if (TRUE && !signal) { [17:28:01.263] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.263] { [17:28:01.263] inherits <- base::inherits [17:28:01.263] invokeRestart <- base::invokeRestart [17:28:01.263] is.null <- base::is.null [17:28:01.263] muffled <- FALSE [17:28:01.263] if (inherits(cond, "message")) { [17:28:01.263] muffled <- grepl(pattern, "muffleMessage") [17:28:01.263] if (muffled) [17:28:01.263] invokeRestart("muffleMessage") [17:28:01.263] } [17:28:01.263] else if (inherits(cond, "warning")) { [17:28:01.263] muffled <- grepl(pattern, "muffleWarning") [17:28:01.263] if (muffled) [17:28:01.263] invokeRestart("muffleWarning") [17:28:01.263] } [17:28:01.263] else if (inherits(cond, "condition")) { [17:28:01.263] if (!is.null(pattern)) { [17:28:01.263] computeRestarts <- base::computeRestarts [17:28:01.263] grepl <- base::grepl [17:28:01.263] restarts <- computeRestarts(cond) [17:28:01.263] for (restart in restarts) { [17:28:01.263] name <- restart$name [17:28:01.263] if (is.null(name)) [17:28:01.263] next [17:28:01.263] if (!grepl(pattern, name)) [17:28:01.263] next [17:28:01.263] invokeRestart(restart) [17:28:01.263] muffled <- TRUE [17:28:01.263] break [17:28:01.263] } [17:28:01.263] } [17:28:01.263] } [17:28:01.263] invisible(muffled) [17:28:01.263] } [17:28:01.263] muffleCondition(cond, pattern = "^muffle") [17:28:01.263] } [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] if (TRUE) { [17:28:01.263] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.263] { [17:28:01.263] inherits <- base::inherits [17:28:01.263] invokeRestart <- base::invokeRestart [17:28:01.263] is.null <- base::is.null [17:28:01.263] muffled <- FALSE [17:28:01.263] if (inherits(cond, "message")) { [17:28:01.263] muffled <- grepl(pattern, "muffleMessage") [17:28:01.263] if (muffled) [17:28:01.263] invokeRestart("muffleMessage") [17:28:01.263] } [17:28:01.263] else if (inherits(cond, "warning")) { [17:28:01.263] muffled <- grepl(pattern, "muffleWarning") [17:28:01.263] if (muffled) [17:28:01.263] invokeRestart("muffleWarning") [17:28:01.263] } [17:28:01.263] else if (inherits(cond, "condition")) { [17:28:01.263] if (!is.null(pattern)) { [17:28:01.263] computeRestarts <- base::computeRestarts [17:28:01.263] grepl <- base::grepl [17:28:01.263] restarts <- computeRestarts(cond) [17:28:01.263] for (restart in restarts) { [17:28:01.263] name <- restart$name [17:28:01.263] if (is.null(name)) [17:28:01.263] next [17:28:01.263] if (!grepl(pattern, name)) [17:28:01.263] next [17:28:01.263] invokeRestart(restart) [17:28:01.263] muffled <- TRUE [17:28:01.263] break [17:28:01.263] } [17:28:01.263] } [17:28:01.263] } [17:28:01.263] invisible(muffled) [17:28:01.263] } [17:28:01.263] muffleCondition(cond, pattern = "^muffle") [17:28:01.263] } [17:28:01.263] } [17:28:01.263] } [17:28:01.263] })) [17:28:01.263] }, error = function(ex) { [17:28:01.263] base::structure(base::list(value = NULL, visible = NULL, [17:28:01.263] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.263] ...future.rng), started = ...future.startTime, [17:28:01.263] finished = Sys.time(), session_uuid = NA_character_, [17:28:01.263] version = "1.8"), class = "FutureResult") [17:28:01.263] }, finally = { [17:28:01.263] if (!identical(...future.workdir, getwd())) [17:28:01.263] setwd(...future.workdir) [17:28:01.263] { [17:28:01.263] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:01.263] ...future.oldOptions$nwarnings <- NULL [17:28:01.263] } [17:28:01.263] base::options(...future.oldOptions) [17:28:01.263] if (.Platform$OS.type == "windows") { [17:28:01.263] old_names <- names(...future.oldEnvVars) [17:28:01.263] envs <- base::Sys.getenv() [17:28:01.263] names <- names(envs) [17:28:01.263] common <- intersect(names, old_names) [17:28:01.263] added <- setdiff(names, old_names) [17:28:01.263] removed <- setdiff(old_names, names) [17:28:01.263] changed <- common[...future.oldEnvVars[common] != [17:28:01.263] envs[common]] [17:28:01.263] NAMES <- toupper(changed) [17:28:01.263] args <- list() [17:28:01.263] for (kk in seq_along(NAMES)) { [17:28:01.263] name <- changed[[kk]] [17:28:01.263] NAME <- NAMES[[kk]] [17:28:01.263] if (name != NAME && is.element(NAME, old_names)) [17:28:01.263] next [17:28:01.263] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.263] } [17:28:01.263] NAMES <- toupper(added) [17:28:01.263] for (kk in seq_along(NAMES)) { [17:28:01.263] name <- added[[kk]] [17:28:01.263] NAME <- NAMES[[kk]] [17:28:01.263] if (name != NAME && is.element(NAME, old_names)) [17:28:01.263] next [17:28:01.263] args[[name]] <- "" [17:28:01.263] } [17:28:01.263] NAMES <- toupper(removed) [17:28:01.263] for (kk in seq_along(NAMES)) { [17:28:01.263] name <- removed[[kk]] [17:28:01.263] NAME <- NAMES[[kk]] [17:28:01.263] if (name != NAME && is.element(NAME, old_names)) [17:28:01.263] next [17:28:01.263] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.263] } [17:28:01.263] if (length(args) > 0) [17:28:01.263] base::do.call(base::Sys.setenv, args = args) [17:28:01.263] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:01.263] } [17:28:01.263] { [17:28:01.263] if (base::length(...future.futureOptionsAdded) > [17:28:01.263] 0L) { [17:28:01.263] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:01.263] base::names(opts) <- ...future.futureOptionsAdded [17:28:01.263] base::options(opts) [17:28:01.263] } [17:28:01.263] { [17:28:01.263] { [17:28:01.263] base::options(mc.cores = ...future.mc.cores.old) [17:28:01.263] NULL [17:28:01.263] } [17:28:01.263] options(future.plan = NULL) [17:28:01.263] if (is.na(NA_character_)) [17:28:01.263] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.263] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:01.263] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:01.263] .init = FALSE) [17:28:01.263] } [17:28:01.263] } [17:28:01.263] } [17:28:01.263] }) [17:28:01.263] if (TRUE) { [17:28:01.263] base::sink(type = "output", split = FALSE) [17:28:01.263] if (TRUE) { [17:28:01.263] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:01.263] } [17:28:01.263] else { [17:28:01.263] ...future.result["stdout"] <- base::list(NULL) [17:28:01.263] } [17:28:01.263] base::close(...future.stdout) [17:28:01.263] ...future.stdout <- NULL [17:28:01.263] } [17:28:01.263] ...future.result$conditions <- ...future.conditions [17:28:01.263] ...future.result$finished <- base::Sys.time() [17:28:01.263] ...future.result [17:28:01.263] } [17:28:01.268] MultisessionFuture started [17:28:01.268] - Launch lazy future ... done [17:28:01.268] run() for 'MultisessionFuture' ... done [17:28:01.786] receiveMessageFromWorker() for ClusterFuture ... [17:28:01.786] - Validating connection of MultisessionFuture [17:28:01.786] - received message: FutureResult [17:28:01.786] - Received FutureResult [17:28:01.787] - Erased future from FutureRegistry [17:28:01.787] result() for ClusterFuture ... [17:28:01.787] - result already collected: FutureResult [17:28:01.787] result() for ClusterFuture ... done [17:28:01.787] receiveMessageFromWorker() for ClusterFuture ... done [17:28:01.787] resolve() on list ... [17:28:01.788] recursive: Inf [17:28:01.788] length: 2 [17:28:01.788] elements: 'a', 'b' [17:28:01.788] length: 1 (resolved future 1) [17:28:01.788] length: 0 (resolved future 2) [17:28:01.788] resolve() on list ... DONE [17:28:01.789] A MultisessionFuture was resolved (and resolved itself) [17:28:01.789] getGlobalsAndPackages() ... [17:28:01.789] Searching for globals... [17:28:01.790] - globals found: [3] '{', 'Sys.sleep', 'list' [17:28:01.791] Searching for globals ... DONE [17:28:01.791] Resolving globals: FALSE [17:28:01.791] [17:28:01.791] [17:28:01.791] getGlobalsAndPackages() ... DONE [17:28:01.792] run() for 'Future' ... [17:28:01.792] - state: 'created' [17:28:01.792] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:01.806] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:01.806] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:01.806] - Field: 'node' [17:28:01.806] - Field: 'label' [17:28:01.807] - Field: 'local' [17:28:01.807] - Field: 'owner' [17:28:01.807] - Field: 'envir' [17:28:01.807] - Field: 'workers' [17:28:01.807] - Field: 'packages' [17:28:01.807] - Field: 'gc' [17:28:01.808] - Field: 'conditions' [17:28:01.808] - Field: 'persistent' [17:28:01.808] - Field: 'expr' [17:28:01.808] - Field: 'uuid' [17:28:01.808] - Field: 'seed' [17:28:01.808] - Field: 'version' [17:28:01.809] - Field: 'result' [17:28:01.809] - Field: 'asynchronous' [17:28:01.809] - Field: 'calls' [17:28:01.809] - Field: 'globals' [17:28:01.809] - Field: 'stdout' [17:28:01.810] - Field: 'earlySignal' [17:28:01.810] - Field: 'lazy' [17:28:01.810] - Field: 'state' [17:28:01.810] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:01.810] - Launch lazy future ... [17:28:01.811] Packages needed by the future expression (n = 0): [17:28:01.811] Packages needed by future strategies (n = 0): [17:28:01.811] { [17:28:01.811] { [17:28:01.811] { [17:28:01.811] ...future.startTime <- base::Sys.time() [17:28:01.811] { [17:28:01.811] { [17:28:01.811] { [17:28:01.811] { [17:28:01.811] base::local({ [17:28:01.811] has_future <- base::requireNamespace("future", [17:28:01.811] quietly = TRUE) [17:28:01.811] if (has_future) { [17:28:01.811] ns <- base::getNamespace("future") [17:28:01.811] version <- ns[[".package"]][["version"]] [17:28:01.811] if (is.null(version)) [17:28:01.811] version <- utils::packageVersion("future") [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] version <- NULL [17:28:01.811] } [17:28:01.811] if (!has_future || version < "1.8.0") { [17:28:01.811] info <- base::c(r_version = base::gsub("R version ", [17:28:01.811] "", base::R.version$version.string), [17:28:01.811] platform = base::sprintf("%s (%s-bit)", [17:28:01.811] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:01.811] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:01.811] "release", "version")], collapse = " "), [17:28:01.811] hostname = base::Sys.info()[["nodename"]]) [17:28:01.811] info <- base::sprintf("%s: %s", base::names(info), [17:28:01.811] info) [17:28:01.811] info <- base::paste(info, collapse = "; ") [17:28:01.811] if (!has_future) { [17:28:01.811] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:01.811] info) [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:01.811] info, version) [17:28:01.811] } [17:28:01.811] base::stop(msg) [17:28:01.811] } [17:28:01.811] }) [17:28:01.811] } [17:28:01.811] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:01.811] base::options(mc.cores = 1L) [17:28:01.811] } [17:28:01.811] ...future.strategy.old <- future::plan("list") [17:28:01.811] options(future.plan = NULL) [17:28:01.811] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.811] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:01.811] } [17:28:01.811] ...future.workdir <- getwd() [17:28:01.811] } [17:28:01.811] ...future.oldOptions <- base::as.list(base::.Options) [17:28:01.811] ...future.oldEnvVars <- base::Sys.getenv() [17:28:01.811] } [17:28:01.811] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:01.811] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:01.811] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:01.811] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:01.811] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:01.811] future.stdout.windows.reencode = NULL, width = 80L) [17:28:01.811] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:01.811] base::names(...future.oldOptions)) [17:28:01.811] } [17:28:01.811] if (FALSE) { [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] if (TRUE) { [17:28:01.811] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:01.811] open = "w") [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:01.811] windows = "NUL", "/dev/null"), open = "w") [17:28:01.811] } [17:28:01.811] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:01.811] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:01.811] base::sink(type = "output", split = FALSE) [17:28:01.811] base::close(...future.stdout) [17:28:01.811] }, add = TRUE) [17:28:01.811] } [17:28:01.811] ...future.frame <- base::sys.nframe() [17:28:01.811] ...future.conditions <- base::list() [17:28:01.811] ...future.rng <- base::globalenv()$.Random.seed [17:28:01.811] if (FALSE) { [17:28:01.811] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:01.811] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:01.811] } [17:28:01.811] ...future.result <- base::tryCatch({ [17:28:01.811] base::withCallingHandlers({ [17:28:01.811] ...future.value <- base::withVisible(base::local({ [17:28:01.811] ...future.makeSendCondition <- base::local({ [17:28:01.811] sendCondition <- NULL [17:28:01.811] function(frame = 1L) { [17:28:01.811] if (is.function(sendCondition)) [17:28:01.811] return(sendCondition) [17:28:01.811] ns <- getNamespace("parallel") [17:28:01.811] if (exists("sendData", mode = "function", [17:28:01.811] envir = ns)) { [17:28:01.811] parallel_sendData <- get("sendData", mode = "function", [17:28:01.811] envir = ns) [17:28:01.811] envir <- sys.frame(frame) [17:28:01.811] master <- NULL [17:28:01.811] while (!identical(envir, .GlobalEnv) && [17:28:01.811] !identical(envir, emptyenv())) { [17:28:01.811] if (exists("master", mode = "list", envir = envir, [17:28:01.811] inherits = FALSE)) { [17:28:01.811] master <- get("master", mode = "list", [17:28:01.811] envir = envir, inherits = FALSE) [17:28:01.811] if (inherits(master, c("SOCKnode", [17:28:01.811] "SOCK0node"))) { [17:28:01.811] sendCondition <<- function(cond) { [17:28:01.811] data <- list(type = "VALUE", value = cond, [17:28:01.811] success = TRUE) [17:28:01.811] parallel_sendData(master, data) [17:28:01.811] } [17:28:01.811] return(sendCondition) [17:28:01.811] } [17:28:01.811] } [17:28:01.811] frame <- frame + 1L [17:28:01.811] envir <- sys.frame(frame) [17:28:01.811] } [17:28:01.811] } [17:28:01.811] sendCondition <<- function(cond) NULL [17:28:01.811] } [17:28:01.811] }) [17:28:01.811] withCallingHandlers({ [17:28:01.811] { [17:28:01.811] Sys.sleep(0.5) [17:28:01.811] list(a = 1, b = 42L) [17:28:01.811] } [17:28:01.811] }, immediateCondition = function(cond) { [17:28:01.811] sendCondition <- ...future.makeSendCondition() [17:28:01.811] sendCondition(cond) [17:28:01.811] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.811] { [17:28:01.811] inherits <- base::inherits [17:28:01.811] invokeRestart <- base::invokeRestart [17:28:01.811] is.null <- base::is.null [17:28:01.811] muffled <- FALSE [17:28:01.811] if (inherits(cond, "message")) { [17:28:01.811] muffled <- grepl(pattern, "muffleMessage") [17:28:01.811] if (muffled) [17:28:01.811] invokeRestart("muffleMessage") [17:28:01.811] } [17:28:01.811] else if (inherits(cond, "warning")) { [17:28:01.811] muffled <- grepl(pattern, "muffleWarning") [17:28:01.811] if (muffled) [17:28:01.811] invokeRestart("muffleWarning") [17:28:01.811] } [17:28:01.811] else if (inherits(cond, "condition")) { [17:28:01.811] if (!is.null(pattern)) { [17:28:01.811] computeRestarts <- base::computeRestarts [17:28:01.811] grepl <- base::grepl [17:28:01.811] restarts <- computeRestarts(cond) [17:28:01.811] for (restart in restarts) { [17:28:01.811] name <- restart$name [17:28:01.811] if (is.null(name)) [17:28:01.811] next [17:28:01.811] if (!grepl(pattern, name)) [17:28:01.811] next [17:28:01.811] invokeRestart(restart) [17:28:01.811] muffled <- TRUE [17:28:01.811] break [17:28:01.811] } [17:28:01.811] } [17:28:01.811] } [17:28:01.811] invisible(muffled) [17:28:01.811] } [17:28:01.811] muffleCondition(cond) [17:28:01.811] }) [17:28:01.811] })) [17:28:01.811] future::FutureResult(value = ...future.value$value, [17:28:01.811] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.811] ...future.rng), globalenv = if (FALSE) [17:28:01.811] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:01.811] ...future.globalenv.names)) [17:28:01.811] else NULL, started = ...future.startTime, version = "1.8") [17:28:01.811] }, condition = base::local({ [17:28:01.811] c <- base::c [17:28:01.811] inherits <- base::inherits [17:28:01.811] invokeRestart <- base::invokeRestart [17:28:01.811] length <- base::length [17:28:01.811] list <- base::list [17:28:01.811] seq.int <- base::seq.int [17:28:01.811] signalCondition <- base::signalCondition [17:28:01.811] sys.calls <- base::sys.calls [17:28:01.811] `[[` <- base::`[[` [17:28:01.811] `+` <- base::`+` [17:28:01.811] `<<-` <- base::`<<-` [17:28:01.811] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:01.811] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:01.811] 3L)] [17:28:01.811] } [17:28:01.811] function(cond) { [17:28:01.811] is_error <- inherits(cond, "error") [17:28:01.811] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:01.811] NULL) [17:28:01.811] if (is_error) { [17:28:01.811] sessionInformation <- function() { [17:28:01.811] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:01.811] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:01.811] search = base::search(), system = base::Sys.info()) [17:28:01.811] } [17:28:01.811] ...future.conditions[[length(...future.conditions) + [17:28:01.811] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:01.811] cond$call), session = sessionInformation(), [17:28:01.811] timestamp = base::Sys.time(), signaled = 0L) [17:28:01.811] signalCondition(cond) [17:28:01.811] } [17:28:01.811] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:01.811] "immediateCondition"))) { [17:28:01.811] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:01.811] ...future.conditions[[length(...future.conditions) + [17:28:01.811] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:01.811] if (TRUE && !signal) { [17:28:01.811] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.811] { [17:28:01.811] inherits <- base::inherits [17:28:01.811] invokeRestart <- base::invokeRestart [17:28:01.811] is.null <- base::is.null [17:28:01.811] muffled <- FALSE [17:28:01.811] if (inherits(cond, "message")) { [17:28:01.811] muffled <- grepl(pattern, "muffleMessage") [17:28:01.811] if (muffled) [17:28:01.811] invokeRestart("muffleMessage") [17:28:01.811] } [17:28:01.811] else if (inherits(cond, "warning")) { [17:28:01.811] muffled <- grepl(pattern, "muffleWarning") [17:28:01.811] if (muffled) [17:28:01.811] invokeRestart("muffleWarning") [17:28:01.811] } [17:28:01.811] else if (inherits(cond, "condition")) { [17:28:01.811] if (!is.null(pattern)) { [17:28:01.811] computeRestarts <- base::computeRestarts [17:28:01.811] grepl <- base::grepl [17:28:01.811] restarts <- computeRestarts(cond) [17:28:01.811] for (restart in restarts) { [17:28:01.811] name <- restart$name [17:28:01.811] if (is.null(name)) [17:28:01.811] next [17:28:01.811] if (!grepl(pattern, name)) [17:28:01.811] next [17:28:01.811] invokeRestart(restart) [17:28:01.811] muffled <- TRUE [17:28:01.811] break [17:28:01.811] } [17:28:01.811] } [17:28:01.811] } [17:28:01.811] invisible(muffled) [17:28:01.811] } [17:28:01.811] muffleCondition(cond, pattern = "^muffle") [17:28:01.811] } [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] if (TRUE) { [17:28:01.811] muffleCondition <- function (cond, pattern = "^muffle") [17:28:01.811] { [17:28:01.811] inherits <- base::inherits [17:28:01.811] invokeRestart <- base::invokeRestart [17:28:01.811] is.null <- base::is.null [17:28:01.811] muffled <- FALSE [17:28:01.811] if (inherits(cond, "message")) { [17:28:01.811] muffled <- grepl(pattern, "muffleMessage") [17:28:01.811] if (muffled) [17:28:01.811] invokeRestart("muffleMessage") [17:28:01.811] } [17:28:01.811] else if (inherits(cond, "warning")) { [17:28:01.811] muffled <- grepl(pattern, "muffleWarning") [17:28:01.811] if (muffled) [17:28:01.811] invokeRestart("muffleWarning") [17:28:01.811] } [17:28:01.811] else if (inherits(cond, "condition")) { [17:28:01.811] if (!is.null(pattern)) { [17:28:01.811] computeRestarts <- base::computeRestarts [17:28:01.811] grepl <- base::grepl [17:28:01.811] restarts <- computeRestarts(cond) [17:28:01.811] for (restart in restarts) { [17:28:01.811] name <- restart$name [17:28:01.811] if (is.null(name)) [17:28:01.811] next [17:28:01.811] if (!grepl(pattern, name)) [17:28:01.811] next [17:28:01.811] invokeRestart(restart) [17:28:01.811] muffled <- TRUE [17:28:01.811] break [17:28:01.811] } [17:28:01.811] } [17:28:01.811] } [17:28:01.811] invisible(muffled) [17:28:01.811] } [17:28:01.811] muffleCondition(cond, pattern = "^muffle") [17:28:01.811] } [17:28:01.811] } [17:28:01.811] } [17:28:01.811] })) [17:28:01.811] }, error = function(ex) { [17:28:01.811] base::structure(base::list(value = NULL, visible = NULL, [17:28:01.811] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:01.811] ...future.rng), started = ...future.startTime, [17:28:01.811] finished = Sys.time(), session_uuid = NA_character_, [17:28:01.811] version = "1.8"), class = "FutureResult") [17:28:01.811] }, finally = { [17:28:01.811] if (!identical(...future.workdir, getwd())) [17:28:01.811] setwd(...future.workdir) [17:28:01.811] { [17:28:01.811] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:01.811] ...future.oldOptions$nwarnings <- NULL [17:28:01.811] } [17:28:01.811] base::options(...future.oldOptions) [17:28:01.811] if (.Platform$OS.type == "windows") { [17:28:01.811] old_names <- names(...future.oldEnvVars) [17:28:01.811] envs <- base::Sys.getenv() [17:28:01.811] names <- names(envs) [17:28:01.811] common <- intersect(names, old_names) [17:28:01.811] added <- setdiff(names, old_names) [17:28:01.811] removed <- setdiff(old_names, names) [17:28:01.811] changed <- common[...future.oldEnvVars[common] != [17:28:01.811] envs[common]] [17:28:01.811] NAMES <- toupper(changed) [17:28:01.811] args <- list() [17:28:01.811] for (kk in seq_along(NAMES)) { [17:28:01.811] name <- changed[[kk]] [17:28:01.811] NAME <- NAMES[[kk]] [17:28:01.811] if (name != NAME && is.element(NAME, old_names)) [17:28:01.811] next [17:28:01.811] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.811] } [17:28:01.811] NAMES <- toupper(added) [17:28:01.811] for (kk in seq_along(NAMES)) { [17:28:01.811] name <- added[[kk]] [17:28:01.811] NAME <- NAMES[[kk]] [17:28:01.811] if (name != NAME && is.element(NAME, old_names)) [17:28:01.811] next [17:28:01.811] args[[name]] <- "" [17:28:01.811] } [17:28:01.811] NAMES <- toupper(removed) [17:28:01.811] for (kk in seq_along(NAMES)) { [17:28:01.811] name <- removed[[kk]] [17:28:01.811] NAME <- NAMES[[kk]] [17:28:01.811] if (name != NAME && is.element(NAME, old_names)) [17:28:01.811] next [17:28:01.811] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:01.811] } [17:28:01.811] if (length(args) > 0) [17:28:01.811] base::do.call(base::Sys.setenv, args = args) [17:28:01.811] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:01.811] } [17:28:01.811] { [17:28:01.811] if (base::length(...future.futureOptionsAdded) > [17:28:01.811] 0L) { [17:28:01.811] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:01.811] base::names(opts) <- ...future.futureOptionsAdded [17:28:01.811] base::options(opts) [17:28:01.811] } [17:28:01.811] { [17:28:01.811] { [17:28:01.811] base::options(mc.cores = ...future.mc.cores.old) [17:28:01.811] NULL [17:28:01.811] } [17:28:01.811] options(future.plan = NULL) [17:28:01.811] if (is.na(NA_character_)) [17:28:01.811] Sys.unsetenv("R_FUTURE_PLAN") [17:28:01.811] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:01.811] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:01.811] .init = FALSE) [17:28:01.811] } [17:28:01.811] } [17:28:01.811] } [17:28:01.811] }) [17:28:01.811] if (TRUE) { [17:28:01.811] base::sink(type = "output", split = FALSE) [17:28:01.811] if (TRUE) { [17:28:01.811] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:01.811] } [17:28:01.811] else { [17:28:01.811] ...future.result["stdout"] <- base::list(NULL) [17:28:01.811] } [17:28:01.811] base::close(...future.stdout) [17:28:01.811] ...future.stdout <- NULL [17:28:01.811] } [17:28:01.811] ...future.result$conditions <- ...future.conditions [17:28:01.811] ...future.result$finished <- base::Sys.time() [17:28:01.811] ...future.result [17:28:01.811] } [17:28:01.817] MultisessionFuture started [17:28:01.817] - Launch lazy future ... done [17:28:01.817] run() for 'MultisessionFuture' ... done [17:28:02.333] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.333] - Validating connection of MultisessionFuture [17:28:02.333] - received message: FutureResult [17:28:02.333] - Received FutureResult [17:28:02.334] - Erased future from FutureRegistry [17:28:02.334] result() for ClusterFuture ... [17:28:02.334] - result already collected: FutureResult [17:28:02.334] result() for ClusterFuture ... done [17:28:02.334] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.334] resolve() on list ... [17:28:02.335] recursive: Inf [17:28:02.335] length: 2 [17:28:02.335] elements: 'a', 'b' [17:28:02.335] length: 1 (resolved future 1) [17:28:02.335] length: 0 (resolved future 2) [17:28:02.335] resolve() on list ... DONE [17:28:02.336] A MultisessionFuture was resolved (and resolved itself) - w/ exception ... [17:28:02.336] getGlobalsAndPackages() ... [17:28:02.336] Searching for globals... [17:28:02.337] - globals found: [2] 'list', 'stop' [17:28:02.337] Searching for globals ... DONE [17:28:02.337] Resolving globals: FALSE [17:28:02.338] [17:28:02.338] [17:28:02.338] getGlobalsAndPackages() ... DONE [17:28:02.338] run() for 'Future' ... [17:28:02.338] - state: 'created' [17:28:02.339] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.352] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.353] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.353] - Field: 'node' [17:28:02.353] - Field: 'label' [17:28:02.353] - Field: 'local' [17:28:02.353] - Field: 'owner' [17:28:02.354] - Field: 'envir' [17:28:02.354] - Field: 'workers' [17:28:02.354] - Field: 'packages' [17:28:02.354] - Field: 'gc' [17:28:02.354] - Field: 'conditions' [17:28:02.354] - Field: 'persistent' [17:28:02.355] - Field: 'expr' [17:28:02.355] - Field: 'uuid' [17:28:02.355] - Field: 'seed' [17:28:02.355] - Field: 'version' [17:28:02.355] - Field: 'result' [17:28:02.356] - Field: 'asynchronous' [17:28:02.356] - Field: 'calls' [17:28:02.356] - Field: 'globals' [17:28:02.356] - Field: 'stdout' [17:28:02.356] - Field: 'earlySignal' [17:28:02.356] - Field: 'lazy' [17:28:02.357] - Field: 'state' [17:28:02.357] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.357] - Launch lazy future ... [17:28:02.357] Packages needed by the future expression (n = 0): [17:28:02.357] Packages needed by future strategies (n = 0): [17:28:02.358] { [17:28:02.358] { [17:28:02.358] { [17:28:02.358] ...future.startTime <- base::Sys.time() [17:28:02.358] { [17:28:02.358] { [17:28:02.358] { [17:28:02.358] { [17:28:02.358] base::local({ [17:28:02.358] has_future <- base::requireNamespace("future", [17:28:02.358] quietly = TRUE) [17:28:02.358] if (has_future) { [17:28:02.358] ns <- base::getNamespace("future") [17:28:02.358] version <- ns[[".package"]][["version"]] [17:28:02.358] if (is.null(version)) [17:28:02.358] version <- utils::packageVersion("future") [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] version <- NULL [17:28:02.358] } [17:28:02.358] if (!has_future || version < "1.8.0") { [17:28:02.358] info <- base::c(r_version = base::gsub("R version ", [17:28:02.358] "", base::R.version$version.string), [17:28:02.358] platform = base::sprintf("%s (%s-bit)", [17:28:02.358] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.358] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.358] "release", "version")], collapse = " "), [17:28:02.358] hostname = base::Sys.info()[["nodename"]]) [17:28:02.358] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.358] info) [17:28:02.358] info <- base::paste(info, collapse = "; ") [17:28:02.358] if (!has_future) { [17:28:02.358] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.358] info) [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.358] info, version) [17:28:02.358] } [17:28:02.358] base::stop(msg) [17:28:02.358] } [17:28:02.358] }) [17:28:02.358] } [17:28:02.358] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.358] base::options(mc.cores = 1L) [17:28:02.358] } [17:28:02.358] ...future.strategy.old <- future::plan("list") [17:28:02.358] options(future.plan = NULL) [17:28:02.358] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.358] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.358] } [17:28:02.358] ...future.workdir <- getwd() [17:28:02.358] } [17:28:02.358] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.358] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.358] } [17:28:02.358] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.358] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.358] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.358] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.358] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.358] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.358] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.358] base::names(...future.oldOptions)) [17:28:02.358] } [17:28:02.358] if (FALSE) { [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] if (TRUE) { [17:28:02.358] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.358] open = "w") [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.358] windows = "NUL", "/dev/null"), open = "w") [17:28:02.358] } [17:28:02.358] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.358] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.358] base::sink(type = "output", split = FALSE) [17:28:02.358] base::close(...future.stdout) [17:28:02.358] }, add = TRUE) [17:28:02.358] } [17:28:02.358] ...future.frame <- base::sys.nframe() [17:28:02.358] ...future.conditions <- base::list() [17:28:02.358] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.358] if (FALSE) { [17:28:02.358] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.358] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.358] } [17:28:02.358] ...future.result <- base::tryCatch({ [17:28:02.358] base::withCallingHandlers({ [17:28:02.358] ...future.value <- base::withVisible(base::local({ [17:28:02.358] ...future.makeSendCondition <- base::local({ [17:28:02.358] sendCondition <- NULL [17:28:02.358] function(frame = 1L) { [17:28:02.358] if (is.function(sendCondition)) [17:28:02.358] return(sendCondition) [17:28:02.358] ns <- getNamespace("parallel") [17:28:02.358] if (exists("sendData", mode = "function", [17:28:02.358] envir = ns)) { [17:28:02.358] parallel_sendData <- get("sendData", mode = "function", [17:28:02.358] envir = ns) [17:28:02.358] envir <- sys.frame(frame) [17:28:02.358] master <- NULL [17:28:02.358] while (!identical(envir, .GlobalEnv) && [17:28:02.358] !identical(envir, emptyenv())) { [17:28:02.358] if (exists("master", mode = "list", envir = envir, [17:28:02.358] inherits = FALSE)) { [17:28:02.358] master <- get("master", mode = "list", [17:28:02.358] envir = envir, inherits = FALSE) [17:28:02.358] if (inherits(master, c("SOCKnode", [17:28:02.358] "SOCK0node"))) { [17:28:02.358] sendCondition <<- function(cond) { [17:28:02.358] data <- list(type = "VALUE", value = cond, [17:28:02.358] success = TRUE) [17:28:02.358] parallel_sendData(master, data) [17:28:02.358] } [17:28:02.358] return(sendCondition) [17:28:02.358] } [17:28:02.358] } [17:28:02.358] frame <- frame + 1L [17:28:02.358] envir <- sys.frame(frame) [17:28:02.358] } [17:28:02.358] } [17:28:02.358] sendCondition <<- function(cond) NULL [17:28:02.358] } [17:28:02.358] }) [17:28:02.358] withCallingHandlers({ [17:28:02.358] list(a = 1, b = 42L, c = stop("Nah!")) [17:28:02.358] }, immediateCondition = function(cond) { [17:28:02.358] sendCondition <- ...future.makeSendCondition() [17:28:02.358] sendCondition(cond) [17:28:02.358] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.358] { [17:28:02.358] inherits <- base::inherits [17:28:02.358] invokeRestart <- base::invokeRestart [17:28:02.358] is.null <- base::is.null [17:28:02.358] muffled <- FALSE [17:28:02.358] if (inherits(cond, "message")) { [17:28:02.358] muffled <- grepl(pattern, "muffleMessage") [17:28:02.358] if (muffled) [17:28:02.358] invokeRestart("muffleMessage") [17:28:02.358] } [17:28:02.358] else if (inherits(cond, "warning")) { [17:28:02.358] muffled <- grepl(pattern, "muffleWarning") [17:28:02.358] if (muffled) [17:28:02.358] invokeRestart("muffleWarning") [17:28:02.358] } [17:28:02.358] else if (inherits(cond, "condition")) { [17:28:02.358] if (!is.null(pattern)) { [17:28:02.358] computeRestarts <- base::computeRestarts [17:28:02.358] grepl <- base::grepl [17:28:02.358] restarts <- computeRestarts(cond) [17:28:02.358] for (restart in restarts) { [17:28:02.358] name <- restart$name [17:28:02.358] if (is.null(name)) [17:28:02.358] next [17:28:02.358] if (!grepl(pattern, name)) [17:28:02.358] next [17:28:02.358] invokeRestart(restart) [17:28:02.358] muffled <- TRUE [17:28:02.358] break [17:28:02.358] } [17:28:02.358] } [17:28:02.358] } [17:28:02.358] invisible(muffled) [17:28:02.358] } [17:28:02.358] muffleCondition(cond) [17:28:02.358] }) [17:28:02.358] })) [17:28:02.358] future::FutureResult(value = ...future.value$value, [17:28:02.358] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.358] ...future.rng), globalenv = if (FALSE) [17:28:02.358] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.358] ...future.globalenv.names)) [17:28:02.358] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.358] }, condition = base::local({ [17:28:02.358] c <- base::c [17:28:02.358] inherits <- base::inherits [17:28:02.358] invokeRestart <- base::invokeRestart [17:28:02.358] length <- base::length [17:28:02.358] list <- base::list [17:28:02.358] seq.int <- base::seq.int [17:28:02.358] signalCondition <- base::signalCondition [17:28:02.358] sys.calls <- base::sys.calls [17:28:02.358] `[[` <- base::`[[` [17:28:02.358] `+` <- base::`+` [17:28:02.358] `<<-` <- base::`<<-` [17:28:02.358] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.358] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.358] 3L)] [17:28:02.358] } [17:28:02.358] function(cond) { [17:28:02.358] is_error <- inherits(cond, "error") [17:28:02.358] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.358] NULL) [17:28:02.358] if (is_error) { [17:28:02.358] sessionInformation <- function() { [17:28:02.358] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.358] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.358] search = base::search(), system = base::Sys.info()) [17:28:02.358] } [17:28:02.358] ...future.conditions[[length(...future.conditions) + [17:28:02.358] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.358] cond$call), session = sessionInformation(), [17:28:02.358] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.358] signalCondition(cond) [17:28:02.358] } [17:28:02.358] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.358] "immediateCondition"))) { [17:28:02.358] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.358] ...future.conditions[[length(...future.conditions) + [17:28:02.358] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.358] if (TRUE && !signal) { [17:28:02.358] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.358] { [17:28:02.358] inherits <- base::inherits [17:28:02.358] invokeRestart <- base::invokeRestart [17:28:02.358] is.null <- base::is.null [17:28:02.358] muffled <- FALSE [17:28:02.358] if (inherits(cond, "message")) { [17:28:02.358] muffled <- grepl(pattern, "muffleMessage") [17:28:02.358] if (muffled) [17:28:02.358] invokeRestart("muffleMessage") [17:28:02.358] } [17:28:02.358] else if (inherits(cond, "warning")) { [17:28:02.358] muffled <- grepl(pattern, "muffleWarning") [17:28:02.358] if (muffled) [17:28:02.358] invokeRestart("muffleWarning") [17:28:02.358] } [17:28:02.358] else if (inherits(cond, "condition")) { [17:28:02.358] if (!is.null(pattern)) { [17:28:02.358] computeRestarts <- base::computeRestarts [17:28:02.358] grepl <- base::grepl [17:28:02.358] restarts <- computeRestarts(cond) [17:28:02.358] for (restart in restarts) { [17:28:02.358] name <- restart$name [17:28:02.358] if (is.null(name)) [17:28:02.358] next [17:28:02.358] if (!grepl(pattern, name)) [17:28:02.358] next [17:28:02.358] invokeRestart(restart) [17:28:02.358] muffled <- TRUE [17:28:02.358] break [17:28:02.358] } [17:28:02.358] } [17:28:02.358] } [17:28:02.358] invisible(muffled) [17:28:02.358] } [17:28:02.358] muffleCondition(cond, pattern = "^muffle") [17:28:02.358] } [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] if (TRUE) { [17:28:02.358] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.358] { [17:28:02.358] inherits <- base::inherits [17:28:02.358] invokeRestart <- base::invokeRestart [17:28:02.358] is.null <- base::is.null [17:28:02.358] muffled <- FALSE [17:28:02.358] if (inherits(cond, "message")) { [17:28:02.358] muffled <- grepl(pattern, "muffleMessage") [17:28:02.358] if (muffled) [17:28:02.358] invokeRestart("muffleMessage") [17:28:02.358] } [17:28:02.358] else if (inherits(cond, "warning")) { [17:28:02.358] muffled <- grepl(pattern, "muffleWarning") [17:28:02.358] if (muffled) [17:28:02.358] invokeRestart("muffleWarning") [17:28:02.358] } [17:28:02.358] else if (inherits(cond, "condition")) { [17:28:02.358] if (!is.null(pattern)) { [17:28:02.358] computeRestarts <- base::computeRestarts [17:28:02.358] grepl <- base::grepl [17:28:02.358] restarts <- computeRestarts(cond) [17:28:02.358] for (restart in restarts) { [17:28:02.358] name <- restart$name [17:28:02.358] if (is.null(name)) [17:28:02.358] next [17:28:02.358] if (!grepl(pattern, name)) [17:28:02.358] next [17:28:02.358] invokeRestart(restart) [17:28:02.358] muffled <- TRUE [17:28:02.358] break [17:28:02.358] } [17:28:02.358] } [17:28:02.358] } [17:28:02.358] invisible(muffled) [17:28:02.358] } [17:28:02.358] muffleCondition(cond, pattern = "^muffle") [17:28:02.358] } [17:28:02.358] } [17:28:02.358] } [17:28:02.358] })) [17:28:02.358] }, error = function(ex) { [17:28:02.358] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.358] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.358] ...future.rng), started = ...future.startTime, [17:28:02.358] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.358] version = "1.8"), class = "FutureResult") [17:28:02.358] }, finally = { [17:28:02.358] if (!identical(...future.workdir, getwd())) [17:28:02.358] setwd(...future.workdir) [17:28:02.358] { [17:28:02.358] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.358] ...future.oldOptions$nwarnings <- NULL [17:28:02.358] } [17:28:02.358] base::options(...future.oldOptions) [17:28:02.358] if (.Platform$OS.type == "windows") { [17:28:02.358] old_names <- names(...future.oldEnvVars) [17:28:02.358] envs <- base::Sys.getenv() [17:28:02.358] names <- names(envs) [17:28:02.358] common <- intersect(names, old_names) [17:28:02.358] added <- setdiff(names, old_names) [17:28:02.358] removed <- setdiff(old_names, names) [17:28:02.358] changed <- common[...future.oldEnvVars[common] != [17:28:02.358] envs[common]] [17:28:02.358] NAMES <- toupper(changed) [17:28:02.358] args <- list() [17:28:02.358] for (kk in seq_along(NAMES)) { [17:28:02.358] name <- changed[[kk]] [17:28:02.358] NAME <- NAMES[[kk]] [17:28:02.358] if (name != NAME && is.element(NAME, old_names)) [17:28:02.358] next [17:28:02.358] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.358] } [17:28:02.358] NAMES <- toupper(added) [17:28:02.358] for (kk in seq_along(NAMES)) { [17:28:02.358] name <- added[[kk]] [17:28:02.358] NAME <- NAMES[[kk]] [17:28:02.358] if (name != NAME && is.element(NAME, old_names)) [17:28:02.358] next [17:28:02.358] args[[name]] <- "" [17:28:02.358] } [17:28:02.358] NAMES <- toupper(removed) [17:28:02.358] for (kk in seq_along(NAMES)) { [17:28:02.358] name <- removed[[kk]] [17:28:02.358] NAME <- NAMES[[kk]] [17:28:02.358] if (name != NAME && is.element(NAME, old_names)) [17:28:02.358] next [17:28:02.358] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.358] } [17:28:02.358] if (length(args) > 0) [17:28:02.358] base::do.call(base::Sys.setenv, args = args) [17:28:02.358] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.358] } [17:28:02.358] { [17:28:02.358] if (base::length(...future.futureOptionsAdded) > [17:28:02.358] 0L) { [17:28:02.358] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.358] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.358] base::options(opts) [17:28:02.358] } [17:28:02.358] { [17:28:02.358] { [17:28:02.358] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.358] NULL [17:28:02.358] } [17:28:02.358] options(future.plan = NULL) [17:28:02.358] if (is.na(NA_character_)) [17:28:02.358] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.358] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.358] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.358] .init = FALSE) [17:28:02.358] } [17:28:02.358] } [17:28:02.358] } [17:28:02.358] }) [17:28:02.358] if (TRUE) { [17:28:02.358] base::sink(type = "output", split = FALSE) [17:28:02.358] if (TRUE) { [17:28:02.358] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.358] } [17:28:02.358] else { [17:28:02.358] ...future.result["stdout"] <- base::list(NULL) [17:28:02.358] } [17:28:02.358] base::close(...future.stdout) [17:28:02.358] ...future.stdout <- NULL [17:28:02.358] } [17:28:02.358] ...future.result$conditions <- ...future.conditions [17:28:02.358] ...future.result$finished <- base::Sys.time() [17:28:02.358] ...future.result [17:28:02.358] } [17:28:02.364] MultisessionFuture started [17:28:02.364] - Launch lazy future ... done [17:28:02.364] run() for 'MultisessionFuture' ... done [17:28:02.378] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.378] - Validating connection of MultisessionFuture [17:28:02.378] - received message: FutureResult [17:28:02.379] - Received FutureResult [17:28:02.379] - Erased future from FutureRegistry [17:28:02.379] result() for ClusterFuture ... [17:28:02.379] - result already collected: FutureResult [17:28:02.379] result() for ClusterFuture ... done [17:28:02.379] signalConditions() ... [17:28:02.380] - include = 'immediateCondition' [17:28:02.380] - exclude = [17:28:02.380] - resignal = FALSE [17:28:02.380] - Number of conditions: 1 [17:28:02.380] signalConditions() ... done [17:28:02.380] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.381] A MultisessionFuture was resolved (and resolved itself) [17:28:02.381] getGlobalsAndPackages() ... [17:28:02.381] Searching for globals... [17:28:02.382] - globals found: [2] 'list', 'stop' [17:28:02.382] Searching for globals ... DONE [17:28:02.382] Resolving globals: FALSE [17:28:02.383] [17:28:02.383] [17:28:02.383] getGlobalsAndPackages() ... DONE [17:28:02.383] run() for 'Future' ... [17:28:02.383] - state: 'created' [17:28:02.384] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.397] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.397] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.398] - Field: 'node' [17:28:02.398] - Field: 'label' [17:28:02.398] - Field: 'local' [17:28:02.398] - Field: 'owner' [17:28:02.398] - Field: 'envir' [17:28:02.398] - Field: 'workers' [17:28:02.399] - Field: 'packages' [17:28:02.399] - Field: 'gc' [17:28:02.399] - Field: 'conditions' [17:28:02.399] - Field: 'persistent' [17:28:02.399] - Field: 'expr' [17:28:02.400] - Field: 'uuid' [17:28:02.400] - Field: 'seed' [17:28:02.400] - Field: 'version' [17:28:02.400] - Field: 'result' [17:28:02.400] - Field: 'asynchronous' [17:28:02.400] - Field: 'calls' [17:28:02.401] - Field: 'globals' [17:28:02.401] - Field: 'stdout' [17:28:02.401] - Field: 'earlySignal' [17:28:02.401] - Field: 'lazy' [17:28:02.401] - Field: 'state' [17:28:02.401] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.402] - Launch lazy future ... [17:28:02.402] Packages needed by the future expression (n = 0): [17:28:02.402] Packages needed by future strategies (n = 0): [17:28:02.403] { [17:28:02.403] { [17:28:02.403] { [17:28:02.403] ...future.startTime <- base::Sys.time() [17:28:02.403] { [17:28:02.403] { [17:28:02.403] { [17:28:02.403] { [17:28:02.403] base::local({ [17:28:02.403] has_future <- base::requireNamespace("future", [17:28:02.403] quietly = TRUE) [17:28:02.403] if (has_future) { [17:28:02.403] ns <- base::getNamespace("future") [17:28:02.403] version <- ns[[".package"]][["version"]] [17:28:02.403] if (is.null(version)) [17:28:02.403] version <- utils::packageVersion("future") [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] version <- NULL [17:28:02.403] } [17:28:02.403] if (!has_future || version < "1.8.0") { [17:28:02.403] info <- base::c(r_version = base::gsub("R version ", [17:28:02.403] "", base::R.version$version.string), [17:28:02.403] platform = base::sprintf("%s (%s-bit)", [17:28:02.403] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.403] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.403] "release", "version")], collapse = " "), [17:28:02.403] hostname = base::Sys.info()[["nodename"]]) [17:28:02.403] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.403] info) [17:28:02.403] info <- base::paste(info, collapse = "; ") [17:28:02.403] if (!has_future) { [17:28:02.403] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.403] info) [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.403] info, version) [17:28:02.403] } [17:28:02.403] base::stop(msg) [17:28:02.403] } [17:28:02.403] }) [17:28:02.403] } [17:28:02.403] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.403] base::options(mc.cores = 1L) [17:28:02.403] } [17:28:02.403] ...future.strategy.old <- future::plan("list") [17:28:02.403] options(future.plan = NULL) [17:28:02.403] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.403] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.403] } [17:28:02.403] ...future.workdir <- getwd() [17:28:02.403] } [17:28:02.403] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.403] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.403] } [17:28:02.403] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.403] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.403] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.403] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.403] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.403] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.403] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.403] base::names(...future.oldOptions)) [17:28:02.403] } [17:28:02.403] if (FALSE) { [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] if (TRUE) { [17:28:02.403] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.403] open = "w") [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.403] windows = "NUL", "/dev/null"), open = "w") [17:28:02.403] } [17:28:02.403] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.403] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.403] base::sink(type = "output", split = FALSE) [17:28:02.403] base::close(...future.stdout) [17:28:02.403] }, add = TRUE) [17:28:02.403] } [17:28:02.403] ...future.frame <- base::sys.nframe() [17:28:02.403] ...future.conditions <- base::list() [17:28:02.403] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.403] if (FALSE) { [17:28:02.403] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.403] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.403] } [17:28:02.403] ...future.result <- base::tryCatch({ [17:28:02.403] base::withCallingHandlers({ [17:28:02.403] ...future.value <- base::withVisible(base::local({ [17:28:02.403] ...future.makeSendCondition <- base::local({ [17:28:02.403] sendCondition <- NULL [17:28:02.403] function(frame = 1L) { [17:28:02.403] if (is.function(sendCondition)) [17:28:02.403] return(sendCondition) [17:28:02.403] ns <- getNamespace("parallel") [17:28:02.403] if (exists("sendData", mode = "function", [17:28:02.403] envir = ns)) { [17:28:02.403] parallel_sendData <- get("sendData", mode = "function", [17:28:02.403] envir = ns) [17:28:02.403] envir <- sys.frame(frame) [17:28:02.403] master <- NULL [17:28:02.403] while (!identical(envir, .GlobalEnv) && [17:28:02.403] !identical(envir, emptyenv())) { [17:28:02.403] if (exists("master", mode = "list", envir = envir, [17:28:02.403] inherits = FALSE)) { [17:28:02.403] master <- get("master", mode = "list", [17:28:02.403] envir = envir, inherits = FALSE) [17:28:02.403] if (inherits(master, c("SOCKnode", [17:28:02.403] "SOCK0node"))) { [17:28:02.403] sendCondition <<- function(cond) { [17:28:02.403] data <- list(type = "VALUE", value = cond, [17:28:02.403] success = TRUE) [17:28:02.403] parallel_sendData(master, data) [17:28:02.403] } [17:28:02.403] return(sendCondition) [17:28:02.403] } [17:28:02.403] } [17:28:02.403] frame <- frame + 1L [17:28:02.403] envir <- sys.frame(frame) [17:28:02.403] } [17:28:02.403] } [17:28:02.403] sendCondition <<- function(cond) NULL [17:28:02.403] } [17:28:02.403] }) [17:28:02.403] withCallingHandlers({ [17:28:02.403] list(a = 1, b = 42L, c = stop("Nah!")) [17:28:02.403] }, immediateCondition = function(cond) { [17:28:02.403] sendCondition <- ...future.makeSendCondition() [17:28:02.403] sendCondition(cond) [17:28:02.403] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.403] { [17:28:02.403] inherits <- base::inherits [17:28:02.403] invokeRestart <- base::invokeRestart [17:28:02.403] is.null <- base::is.null [17:28:02.403] muffled <- FALSE [17:28:02.403] if (inherits(cond, "message")) { [17:28:02.403] muffled <- grepl(pattern, "muffleMessage") [17:28:02.403] if (muffled) [17:28:02.403] invokeRestart("muffleMessage") [17:28:02.403] } [17:28:02.403] else if (inherits(cond, "warning")) { [17:28:02.403] muffled <- grepl(pattern, "muffleWarning") [17:28:02.403] if (muffled) [17:28:02.403] invokeRestart("muffleWarning") [17:28:02.403] } [17:28:02.403] else if (inherits(cond, "condition")) { [17:28:02.403] if (!is.null(pattern)) { [17:28:02.403] computeRestarts <- base::computeRestarts [17:28:02.403] grepl <- base::grepl [17:28:02.403] restarts <- computeRestarts(cond) [17:28:02.403] for (restart in restarts) { [17:28:02.403] name <- restart$name [17:28:02.403] if (is.null(name)) [17:28:02.403] next [17:28:02.403] if (!grepl(pattern, name)) [17:28:02.403] next [17:28:02.403] invokeRestart(restart) [17:28:02.403] muffled <- TRUE [17:28:02.403] break [17:28:02.403] } [17:28:02.403] } [17:28:02.403] } [17:28:02.403] invisible(muffled) [17:28:02.403] } [17:28:02.403] muffleCondition(cond) [17:28:02.403] }) [17:28:02.403] })) [17:28:02.403] future::FutureResult(value = ...future.value$value, [17:28:02.403] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.403] ...future.rng), globalenv = if (FALSE) [17:28:02.403] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.403] ...future.globalenv.names)) [17:28:02.403] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.403] }, condition = base::local({ [17:28:02.403] c <- base::c [17:28:02.403] inherits <- base::inherits [17:28:02.403] invokeRestart <- base::invokeRestart [17:28:02.403] length <- base::length [17:28:02.403] list <- base::list [17:28:02.403] seq.int <- base::seq.int [17:28:02.403] signalCondition <- base::signalCondition [17:28:02.403] sys.calls <- base::sys.calls [17:28:02.403] `[[` <- base::`[[` [17:28:02.403] `+` <- base::`+` [17:28:02.403] `<<-` <- base::`<<-` [17:28:02.403] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.403] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.403] 3L)] [17:28:02.403] } [17:28:02.403] function(cond) { [17:28:02.403] is_error <- inherits(cond, "error") [17:28:02.403] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.403] NULL) [17:28:02.403] if (is_error) { [17:28:02.403] sessionInformation <- function() { [17:28:02.403] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.403] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.403] search = base::search(), system = base::Sys.info()) [17:28:02.403] } [17:28:02.403] ...future.conditions[[length(...future.conditions) + [17:28:02.403] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.403] cond$call), session = sessionInformation(), [17:28:02.403] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.403] signalCondition(cond) [17:28:02.403] } [17:28:02.403] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.403] "immediateCondition"))) { [17:28:02.403] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.403] ...future.conditions[[length(...future.conditions) + [17:28:02.403] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.403] if (TRUE && !signal) { [17:28:02.403] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.403] { [17:28:02.403] inherits <- base::inherits [17:28:02.403] invokeRestart <- base::invokeRestart [17:28:02.403] is.null <- base::is.null [17:28:02.403] muffled <- FALSE [17:28:02.403] if (inherits(cond, "message")) { [17:28:02.403] muffled <- grepl(pattern, "muffleMessage") [17:28:02.403] if (muffled) [17:28:02.403] invokeRestart("muffleMessage") [17:28:02.403] } [17:28:02.403] else if (inherits(cond, "warning")) { [17:28:02.403] muffled <- grepl(pattern, "muffleWarning") [17:28:02.403] if (muffled) [17:28:02.403] invokeRestart("muffleWarning") [17:28:02.403] } [17:28:02.403] else if (inherits(cond, "condition")) { [17:28:02.403] if (!is.null(pattern)) { [17:28:02.403] computeRestarts <- base::computeRestarts [17:28:02.403] grepl <- base::grepl [17:28:02.403] restarts <- computeRestarts(cond) [17:28:02.403] for (restart in restarts) { [17:28:02.403] name <- restart$name [17:28:02.403] if (is.null(name)) [17:28:02.403] next [17:28:02.403] if (!grepl(pattern, name)) [17:28:02.403] next [17:28:02.403] invokeRestart(restart) [17:28:02.403] muffled <- TRUE [17:28:02.403] break [17:28:02.403] } [17:28:02.403] } [17:28:02.403] } [17:28:02.403] invisible(muffled) [17:28:02.403] } [17:28:02.403] muffleCondition(cond, pattern = "^muffle") [17:28:02.403] } [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] if (TRUE) { [17:28:02.403] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.403] { [17:28:02.403] inherits <- base::inherits [17:28:02.403] invokeRestart <- base::invokeRestart [17:28:02.403] is.null <- base::is.null [17:28:02.403] muffled <- FALSE [17:28:02.403] if (inherits(cond, "message")) { [17:28:02.403] muffled <- grepl(pattern, "muffleMessage") [17:28:02.403] if (muffled) [17:28:02.403] invokeRestart("muffleMessage") [17:28:02.403] } [17:28:02.403] else if (inherits(cond, "warning")) { [17:28:02.403] muffled <- grepl(pattern, "muffleWarning") [17:28:02.403] if (muffled) [17:28:02.403] invokeRestart("muffleWarning") [17:28:02.403] } [17:28:02.403] else if (inherits(cond, "condition")) { [17:28:02.403] if (!is.null(pattern)) { [17:28:02.403] computeRestarts <- base::computeRestarts [17:28:02.403] grepl <- base::grepl [17:28:02.403] restarts <- computeRestarts(cond) [17:28:02.403] for (restart in restarts) { [17:28:02.403] name <- restart$name [17:28:02.403] if (is.null(name)) [17:28:02.403] next [17:28:02.403] if (!grepl(pattern, name)) [17:28:02.403] next [17:28:02.403] invokeRestart(restart) [17:28:02.403] muffled <- TRUE [17:28:02.403] break [17:28:02.403] } [17:28:02.403] } [17:28:02.403] } [17:28:02.403] invisible(muffled) [17:28:02.403] } [17:28:02.403] muffleCondition(cond, pattern = "^muffle") [17:28:02.403] } [17:28:02.403] } [17:28:02.403] } [17:28:02.403] })) [17:28:02.403] }, error = function(ex) { [17:28:02.403] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.403] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.403] ...future.rng), started = ...future.startTime, [17:28:02.403] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.403] version = "1.8"), class = "FutureResult") [17:28:02.403] }, finally = { [17:28:02.403] if (!identical(...future.workdir, getwd())) [17:28:02.403] setwd(...future.workdir) [17:28:02.403] { [17:28:02.403] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.403] ...future.oldOptions$nwarnings <- NULL [17:28:02.403] } [17:28:02.403] base::options(...future.oldOptions) [17:28:02.403] if (.Platform$OS.type == "windows") { [17:28:02.403] old_names <- names(...future.oldEnvVars) [17:28:02.403] envs <- base::Sys.getenv() [17:28:02.403] names <- names(envs) [17:28:02.403] common <- intersect(names, old_names) [17:28:02.403] added <- setdiff(names, old_names) [17:28:02.403] removed <- setdiff(old_names, names) [17:28:02.403] changed <- common[...future.oldEnvVars[common] != [17:28:02.403] envs[common]] [17:28:02.403] NAMES <- toupper(changed) [17:28:02.403] args <- list() [17:28:02.403] for (kk in seq_along(NAMES)) { [17:28:02.403] name <- changed[[kk]] [17:28:02.403] NAME <- NAMES[[kk]] [17:28:02.403] if (name != NAME && is.element(NAME, old_names)) [17:28:02.403] next [17:28:02.403] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.403] } [17:28:02.403] NAMES <- toupper(added) [17:28:02.403] for (kk in seq_along(NAMES)) { [17:28:02.403] name <- added[[kk]] [17:28:02.403] NAME <- NAMES[[kk]] [17:28:02.403] if (name != NAME && is.element(NAME, old_names)) [17:28:02.403] next [17:28:02.403] args[[name]] <- "" [17:28:02.403] } [17:28:02.403] NAMES <- toupper(removed) [17:28:02.403] for (kk in seq_along(NAMES)) { [17:28:02.403] name <- removed[[kk]] [17:28:02.403] NAME <- NAMES[[kk]] [17:28:02.403] if (name != NAME && is.element(NAME, old_names)) [17:28:02.403] next [17:28:02.403] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.403] } [17:28:02.403] if (length(args) > 0) [17:28:02.403] base::do.call(base::Sys.setenv, args = args) [17:28:02.403] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.403] } [17:28:02.403] { [17:28:02.403] if (base::length(...future.futureOptionsAdded) > [17:28:02.403] 0L) { [17:28:02.403] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.403] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.403] base::options(opts) [17:28:02.403] } [17:28:02.403] { [17:28:02.403] { [17:28:02.403] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.403] NULL [17:28:02.403] } [17:28:02.403] options(future.plan = NULL) [17:28:02.403] if (is.na(NA_character_)) [17:28:02.403] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.403] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.403] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.403] .init = FALSE) [17:28:02.403] } [17:28:02.403] } [17:28:02.403] } [17:28:02.403] }) [17:28:02.403] if (TRUE) { [17:28:02.403] base::sink(type = "output", split = FALSE) [17:28:02.403] if (TRUE) { [17:28:02.403] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.403] } [17:28:02.403] else { [17:28:02.403] ...future.result["stdout"] <- base::list(NULL) [17:28:02.403] } [17:28:02.403] base::close(...future.stdout) [17:28:02.403] ...future.stdout <- NULL [17:28:02.403] } [17:28:02.403] ...future.result$conditions <- ...future.conditions [17:28:02.403] ...future.result$finished <- base::Sys.time() [17:28:02.403] ...future.result [17:28:02.403] } [17:28:02.408] MultisessionFuture started [17:28:02.408] - Launch lazy future ... done [17:28:02.409] run() for 'MultisessionFuture' ... done [17:28:02.423] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.424] - Validating connection of MultisessionFuture [17:28:02.424] - received message: FutureResult [17:28:02.424] - Received FutureResult [17:28:02.425] - Erased future from FutureRegistry [17:28:02.425] result() for ClusterFuture ... [17:28:02.425] - result already collected: FutureResult [17:28:02.425] result() for ClusterFuture ... done [17:28:02.425] signalConditions() ... [17:28:02.425] - include = 'immediateCondition' [17:28:02.426] - exclude = [17:28:02.426] - resignal = FALSE [17:28:02.426] - Number of conditions: 1 [17:28:02.426] signalConditions() ... done [17:28:02.426] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.426] A MultisessionFuture was resolved (and resolved itself) - result = TRUE, recursive = Inf ... DONE *** resolve() for Future objects ... DONE *** resolve() for lists ... [17:28:02.430] resolve() on list ... [17:28:02.430] recursive: 0 [17:28:02.430] length: 2 [17:28:02.430] elements: 'a', 'b' [17:28:02.430] length: 1 (resolved future 1) [17:28:02.431] length: 0 (resolved future 2) [17:28:02.431] resolve() on list ... DONE [17:28:02.431] getGlobalsAndPackages() ... [17:28:02.431] Searching for globals... [17:28:02.431] [17:28:02.432] Searching for globals ... DONE [17:28:02.432] - globals: [0] [17:28:02.432] getGlobalsAndPackages() ... DONE [17:28:02.432] run() for 'Future' ... [17:28:02.432] - state: 'created' [17:28:02.433] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.447] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.447] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.447] - Field: 'node' [17:28:02.448] - Field: 'label' [17:28:02.448] - Field: 'local' [17:28:02.448] - Field: 'owner' [17:28:02.448] - Field: 'envir' [17:28:02.448] - Field: 'workers' [17:28:02.449] - Field: 'packages' [17:28:02.449] - Field: 'gc' [17:28:02.449] - Field: 'conditions' [17:28:02.449] - Field: 'persistent' [17:28:02.449] - Field: 'expr' [17:28:02.449] - Field: 'uuid' [17:28:02.450] - Field: 'seed' [17:28:02.450] - Field: 'version' [17:28:02.450] - Field: 'result' [17:28:02.450] - Field: 'asynchronous' [17:28:02.450] - Field: 'calls' [17:28:02.450] - Field: 'globals' [17:28:02.451] - Field: 'stdout' [17:28:02.451] - Field: 'earlySignal' [17:28:02.451] - Field: 'lazy' [17:28:02.451] - Field: 'state' [17:28:02.451] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.451] - Launch lazy future ... [17:28:02.452] Packages needed by the future expression (n = 0): [17:28:02.452] Packages needed by future strategies (n = 0): [17:28:02.453] { [17:28:02.453] { [17:28:02.453] { [17:28:02.453] ...future.startTime <- base::Sys.time() [17:28:02.453] { [17:28:02.453] { [17:28:02.453] { [17:28:02.453] { [17:28:02.453] base::local({ [17:28:02.453] has_future <- base::requireNamespace("future", [17:28:02.453] quietly = TRUE) [17:28:02.453] if (has_future) { [17:28:02.453] ns <- base::getNamespace("future") [17:28:02.453] version <- ns[[".package"]][["version"]] [17:28:02.453] if (is.null(version)) [17:28:02.453] version <- utils::packageVersion("future") [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] version <- NULL [17:28:02.453] } [17:28:02.453] if (!has_future || version < "1.8.0") { [17:28:02.453] info <- base::c(r_version = base::gsub("R version ", [17:28:02.453] "", base::R.version$version.string), [17:28:02.453] platform = base::sprintf("%s (%s-bit)", [17:28:02.453] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.453] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.453] "release", "version")], collapse = " "), [17:28:02.453] hostname = base::Sys.info()[["nodename"]]) [17:28:02.453] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.453] info) [17:28:02.453] info <- base::paste(info, collapse = "; ") [17:28:02.453] if (!has_future) { [17:28:02.453] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.453] info) [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.453] info, version) [17:28:02.453] } [17:28:02.453] base::stop(msg) [17:28:02.453] } [17:28:02.453] }) [17:28:02.453] } [17:28:02.453] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.453] base::options(mc.cores = 1L) [17:28:02.453] } [17:28:02.453] ...future.strategy.old <- future::plan("list") [17:28:02.453] options(future.plan = NULL) [17:28:02.453] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.453] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.453] } [17:28:02.453] ...future.workdir <- getwd() [17:28:02.453] } [17:28:02.453] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.453] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.453] } [17:28:02.453] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.453] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.453] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.453] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.453] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.453] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.453] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.453] base::names(...future.oldOptions)) [17:28:02.453] } [17:28:02.453] if (FALSE) { [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] if (TRUE) { [17:28:02.453] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.453] open = "w") [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.453] windows = "NUL", "/dev/null"), open = "w") [17:28:02.453] } [17:28:02.453] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.453] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.453] base::sink(type = "output", split = FALSE) [17:28:02.453] base::close(...future.stdout) [17:28:02.453] }, add = TRUE) [17:28:02.453] } [17:28:02.453] ...future.frame <- base::sys.nframe() [17:28:02.453] ...future.conditions <- base::list() [17:28:02.453] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.453] if (FALSE) { [17:28:02.453] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.453] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.453] } [17:28:02.453] ...future.result <- base::tryCatch({ [17:28:02.453] base::withCallingHandlers({ [17:28:02.453] ...future.value <- base::withVisible(base::local({ [17:28:02.453] ...future.makeSendCondition <- base::local({ [17:28:02.453] sendCondition <- NULL [17:28:02.453] function(frame = 1L) { [17:28:02.453] if (is.function(sendCondition)) [17:28:02.453] return(sendCondition) [17:28:02.453] ns <- getNamespace("parallel") [17:28:02.453] if (exists("sendData", mode = "function", [17:28:02.453] envir = ns)) { [17:28:02.453] parallel_sendData <- get("sendData", mode = "function", [17:28:02.453] envir = ns) [17:28:02.453] envir <- sys.frame(frame) [17:28:02.453] master <- NULL [17:28:02.453] while (!identical(envir, .GlobalEnv) && [17:28:02.453] !identical(envir, emptyenv())) { [17:28:02.453] if (exists("master", mode = "list", envir = envir, [17:28:02.453] inherits = FALSE)) { [17:28:02.453] master <- get("master", mode = "list", [17:28:02.453] envir = envir, inherits = FALSE) [17:28:02.453] if (inherits(master, c("SOCKnode", [17:28:02.453] "SOCK0node"))) { [17:28:02.453] sendCondition <<- function(cond) { [17:28:02.453] data <- list(type = "VALUE", value = cond, [17:28:02.453] success = TRUE) [17:28:02.453] parallel_sendData(master, data) [17:28:02.453] } [17:28:02.453] return(sendCondition) [17:28:02.453] } [17:28:02.453] } [17:28:02.453] frame <- frame + 1L [17:28:02.453] envir <- sys.frame(frame) [17:28:02.453] } [17:28:02.453] } [17:28:02.453] sendCondition <<- function(cond) NULL [17:28:02.453] } [17:28:02.453] }) [17:28:02.453] withCallingHandlers({ [17:28:02.453] 1 [17:28:02.453] }, immediateCondition = function(cond) { [17:28:02.453] sendCondition <- ...future.makeSendCondition() [17:28:02.453] sendCondition(cond) [17:28:02.453] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.453] { [17:28:02.453] inherits <- base::inherits [17:28:02.453] invokeRestart <- base::invokeRestart [17:28:02.453] is.null <- base::is.null [17:28:02.453] muffled <- FALSE [17:28:02.453] if (inherits(cond, "message")) { [17:28:02.453] muffled <- grepl(pattern, "muffleMessage") [17:28:02.453] if (muffled) [17:28:02.453] invokeRestart("muffleMessage") [17:28:02.453] } [17:28:02.453] else if (inherits(cond, "warning")) { [17:28:02.453] muffled <- grepl(pattern, "muffleWarning") [17:28:02.453] if (muffled) [17:28:02.453] invokeRestart("muffleWarning") [17:28:02.453] } [17:28:02.453] else if (inherits(cond, "condition")) { [17:28:02.453] if (!is.null(pattern)) { [17:28:02.453] computeRestarts <- base::computeRestarts [17:28:02.453] grepl <- base::grepl [17:28:02.453] restarts <- computeRestarts(cond) [17:28:02.453] for (restart in restarts) { [17:28:02.453] name <- restart$name [17:28:02.453] if (is.null(name)) [17:28:02.453] next [17:28:02.453] if (!grepl(pattern, name)) [17:28:02.453] next [17:28:02.453] invokeRestart(restart) [17:28:02.453] muffled <- TRUE [17:28:02.453] break [17:28:02.453] } [17:28:02.453] } [17:28:02.453] } [17:28:02.453] invisible(muffled) [17:28:02.453] } [17:28:02.453] muffleCondition(cond) [17:28:02.453] }) [17:28:02.453] })) [17:28:02.453] future::FutureResult(value = ...future.value$value, [17:28:02.453] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.453] ...future.rng), globalenv = if (FALSE) [17:28:02.453] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.453] ...future.globalenv.names)) [17:28:02.453] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.453] }, condition = base::local({ [17:28:02.453] c <- base::c [17:28:02.453] inherits <- base::inherits [17:28:02.453] invokeRestart <- base::invokeRestart [17:28:02.453] length <- base::length [17:28:02.453] list <- base::list [17:28:02.453] seq.int <- base::seq.int [17:28:02.453] signalCondition <- base::signalCondition [17:28:02.453] sys.calls <- base::sys.calls [17:28:02.453] `[[` <- base::`[[` [17:28:02.453] `+` <- base::`+` [17:28:02.453] `<<-` <- base::`<<-` [17:28:02.453] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.453] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.453] 3L)] [17:28:02.453] } [17:28:02.453] function(cond) { [17:28:02.453] is_error <- inherits(cond, "error") [17:28:02.453] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.453] NULL) [17:28:02.453] if (is_error) { [17:28:02.453] sessionInformation <- function() { [17:28:02.453] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.453] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.453] search = base::search(), system = base::Sys.info()) [17:28:02.453] } [17:28:02.453] ...future.conditions[[length(...future.conditions) + [17:28:02.453] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.453] cond$call), session = sessionInformation(), [17:28:02.453] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.453] signalCondition(cond) [17:28:02.453] } [17:28:02.453] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.453] "immediateCondition"))) { [17:28:02.453] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.453] ...future.conditions[[length(...future.conditions) + [17:28:02.453] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.453] if (TRUE && !signal) { [17:28:02.453] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.453] { [17:28:02.453] inherits <- base::inherits [17:28:02.453] invokeRestart <- base::invokeRestart [17:28:02.453] is.null <- base::is.null [17:28:02.453] muffled <- FALSE [17:28:02.453] if (inherits(cond, "message")) { [17:28:02.453] muffled <- grepl(pattern, "muffleMessage") [17:28:02.453] if (muffled) [17:28:02.453] invokeRestart("muffleMessage") [17:28:02.453] } [17:28:02.453] else if (inherits(cond, "warning")) { [17:28:02.453] muffled <- grepl(pattern, "muffleWarning") [17:28:02.453] if (muffled) [17:28:02.453] invokeRestart("muffleWarning") [17:28:02.453] } [17:28:02.453] else if (inherits(cond, "condition")) { [17:28:02.453] if (!is.null(pattern)) { [17:28:02.453] computeRestarts <- base::computeRestarts [17:28:02.453] grepl <- base::grepl [17:28:02.453] restarts <- computeRestarts(cond) [17:28:02.453] for (restart in restarts) { [17:28:02.453] name <- restart$name [17:28:02.453] if (is.null(name)) [17:28:02.453] next [17:28:02.453] if (!grepl(pattern, name)) [17:28:02.453] next [17:28:02.453] invokeRestart(restart) [17:28:02.453] muffled <- TRUE [17:28:02.453] break [17:28:02.453] } [17:28:02.453] } [17:28:02.453] } [17:28:02.453] invisible(muffled) [17:28:02.453] } [17:28:02.453] muffleCondition(cond, pattern = "^muffle") [17:28:02.453] } [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] if (TRUE) { [17:28:02.453] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.453] { [17:28:02.453] inherits <- base::inherits [17:28:02.453] invokeRestart <- base::invokeRestart [17:28:02.453] is.null <- base::is.null [17:28:02.453] muffled <- FALSE [17:28:02.453] if (inherits(cond, "message")) { [17:28:02.453] muffled <- grepl(pattern, "muffleMessage") [17:28:02.453] if (muffled) [17:28:02.453] invokeRestart("muffleMessage") [17:28:02.453] } [17:28:02.453] else if (inherits(cond, "warning")) { [17:28:02.453] muffled <- grepl(pattern, "muffleWarning") [17:28:02.453] if (muffled) [17:28:02.453] invokeRestart("muffleWarning") [17:28:02.453] } [17:28:02.453] else if (inherits(cond, "condition")) { [17:28:02.453] if (!is.null(pattern)) { [17:28:02.453] computeRestarts <- base::computeRestarts [17:28:02.453] grepl <- base::grepl [17:28:02.453] restarts <- computeRestarts(cond) [17:28:02.453] for (restart in restarts) { [17:28:02.453] name <- restart$name [17:28:02.453] if (is.null(name)) [17:28:02.453] next [17:28:02.453] if (!grepl(pattern, name)) [17:28:02.453] next [17:28:02.453] invokeRestart(restart) [17:28:02.453] muffled <- TRUE [17:28:02.453] break [17:28:02.453] } [17:28:02.453] } [17:28:02.453] } [17:28:02.453] invisible(muffled) [17:28:02.453] } [17:28:02.453] muffleCondition(cond, pattern = "^muffle") [17:28:02.453] } [17:28:02.453] } [17:28:02.453] } [17:28:02.453] })) [17:28:02.453] }, error = function(ex) { [17:28:02.453] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.453] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.453] ...future.rng), started = ...future.startTime, [17:28:02.453] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.453] version = "1.8"), class = "FutureResult") [17:28:02.453] }, finally = { [17:28:02.453] if (!identical(...future.workdir, getwd())) [17:28:02.453] setwd(...future.workdir) [17:28:02.453] { [17:28:02.453] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.453] ...future.oldOptions$nwarnings <- NULL [17:28:02.453] } [17:28:02.453] base::options(...future.oldOptions) [17:28:02.453] if (.Platform$OS.type == "windows") { [17:28:02.453] old_names <- names(...future.oldEnvVars) [17:28:02.453] envs <- base::Sys.getenv() [17:28:02.453] names <- names(envs) [17:28:02.453] common <- intersect(names, old_names) [17:28:02.453] added <- setdiff(names, old_names) [17:28:02.453] removed <- setdiff(old_names, names) [17:28:02.453] changed <- common[...future.oldEnvVars[common] != [17:28:02.453] envs[common]] [17:28:02.453] NAMES <- toupper(changed) [17:28:02.453] args <- list() [17:28:02.453] for (kk in seq_along(NAMES)) { [17:28:02.453] name <- changed[[kk]] [17:28:02.453] NAME <- NAMES[[kk]] [17:28:02.453] if (name != NAME && is.element(NAME, old_names)) [17:28:02.453] next [17:28:02.453] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.453] } [17:28:02.453] NAMES <- toupper(added) [17:28:02.453] for (kk in seq_along(NAMES)) { [17:28:02.453] name <- added[[kk]] [17:28:02.453] NAME <- NAMES[[kk]] [17:28:02.453] if (name != NAME && is.element(NAME, old_names)) [17:28:02.453] next [17:28:02.453] args[[name]] <- "" [17:28:02.453] } [17:28:02.453] NAMES <- toupper(removed) [17:28:02.453] for (kk in seq_along(NAMES)) { [17:28:02.453] name <- removed[[kk]] [17:28:02.453] NAME <- NAMES[[kk]] [17:28:02.453] if (name != NAME && is.element(NAME, old_names)) [17:28:02.453] next [17:28:02.453] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.453] } [17:28:02.453] if (length(args) > 0) [17:28:02.453] base::do.call(base::Sys.setenv, args = args) [17:28:02.453] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.453] } [17:28:02.453] { [17:28:02.453] if (base::length(...future.futureOptionsAdded) > [17:28:02.453] 0L) { [17:28:02.453] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.453] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.453] base::options(opts) [17:28:02.453] } [17:28:02.453] { [17:28:02.453] { [17:28:02.453] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.453] NULL [17:28:02.453] } [17:28:02.453] options(future.plan = NULL) [17:28:02.453] if (is.na(NA_character_)) [17:28:02.453] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.453] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.453] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.453] .init = FALSE) [17:28:02.453] } [17:28:02.453] } [17:28:02.453] } [17:28:02.453] }) [17:28:02.453] if (TRUE) { [17:28:02.453] base::sink(type = "output", split = FALSE) [17:28:02.453] if (TRUE) { [17:28:02.453] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.453] } [17:28:02.453] else { [17:28:02.453] ...future.result["stdout"] <- base::list(NULL) [17:28:02.453] } [17:28:02.453] base::close(...future.stdout) [17:28:02.453] ...future.stdout <- NULL [17:28:02.453] } [17:28:02.453] ...future.result$conditions <- ...future.conditions [17:28:02.453] ...future.result$finished <- base::Sys.time() [17:28:02.453] ...future.result [17:28:02.453] } [17:28:02.458] MultisessionFuture started [17:28:02.458] - Launch lazy future ... done [17:28:02.458] run() for 'MultisessionFuture' ... done [17:28:02.459] getGlobalsAndPackages() ... [17:28:02.459] Searching for globals... [17:28:02.459] [17:28:02.459] Searching for globals ... DONE [17:28:02.460] - globals: [0] [17:28:02.460] getGlobalsAndPackages() ... DONE [17:28:02.460] run() for 'Future' ... [17:28:02.460] - state: 'created' [17:28:02.460] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.475] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.475] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.475] - Field: 'node' [17:28:02.475] - Field: 'label' [17:28:02.475] - Field: 'local' [17:28:02.476] - Field: 'owner' [17:28:02.476] - Field: 'envir' [17:28:02.476] - Field: 'workers' [17:28:02.476] - Field: 'packages' [17:28:02.476] - Field: 'gc' [17:28:02.477] - Field: 'conditions' [17:28:02.477] - Field: 'persistent' [17:28:02.477] - Field: 'expr' [17:28:02.477] - Field: 'uuid' [17:28:02.477] - Field: 'seed' [17:28:02.477] - Field: 'version' [17:28:02.478] - Field: 'result' [17:28:02.478] - Field: 'asynchronous' [17:28:02.478] - Field: 'calls' [17:28:02.478] - Field: 'globals' [17:28:02.478] - Field: 'stdout' [17:28:02.479] - Field: 'earlySignal' [17:28:02.479] - Field: 'lazy' [17:28:02.479] - Field: 'state' [17:28:02.479] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.479] - Launch lazy future ... [17:28:02.480] Packages needed by the future expression (n = 0): [17:28:02.480] Packages needed by future strategies (n = 0): [17:28:02.480] { [17:28:02.480] { [17:28:02.480] { [17:28:02.480] ...future.startTime <- base::Sys.time() [17:28:02.480] { [17:28:02.480] { [17:28:02.480] { [17:28:02.480] { [17:28:02.480] base::local({ [17:28:02.480] has_future <- base::requireNamespace("future", [17:28:02.480] quietly = TRUE) [17:28:02.480] if (has_future) { [17:28:02.480] ns <- base::getNamespace("future") [17:28:02.480] version <- ns[[".package"]][["version"]] [17:28:02.480] if (is.null(version)) [17:28:02.480] version <- utils::packageVersion("future") [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] version <- NULL [17:28:02.480] } [17:28:02.480] if (!has_future || version < "1.8.0") { [17:28:02.480] info <- base::c(r_version = base::gsub("R version ", [17:28:02.480] "", base::R.version$version.string), [17:28:02.480] platform = base::sprintf("%s (%s-bit)", [17:28:02.480] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.480] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.480] "release", "version")], collapse = " "), [17:28:02.480] hostname = base::Sys.info()[["nodename"]]) [17:28:02.480] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.480] info) [17:28:02.480] info <- base::paste(info, collapse = "; ") [17:28:02.480] if (!has_future) { [17:28:02.480] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.480] info) [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.480] info, version) [17:28:02.480] } [17:28:02.480] base::stop(msg) [17:28:02.480] } [17:28:02.480] }) [17:28:02.480] } [17:28:02.480] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.480] base::options(mc.cores = 1L) [17:28:02.480] } [17:28:02.480] ...future.strategy.old <- future::plan("list") [17:28:02.480] options(future.plan = NULL) [17:28:02.480] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.480] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.480] } [17:28:02.480] ...future.workdir <- getwd() [17:28:02.480] } [17:28:02.480] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.480] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.480] } [17:28:02.480] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.480] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.480] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.480] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.480] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.480] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.480] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.480] base::names(...future.oldOptions)) [17:28:02.480] } [17:28:02.480] if (FALSE) { [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] if (TRUE) { [17:28:02.480] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.480] open = "w") [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.480] windows = "NUL", "/dev/null"), open = "w") [17:28:02.480] } [17:28:02.480] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.480] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.480] base::sink(type = "output", split = FALSE) [17:28:02.480] base::close(...future.stdout) [17:28:02.480] }, add = TRUE) [17:28:02.480] } [17:28:02.480] ...future.frame <- base::sys.nframe() [17:28:02.480] ...future.conditions <- base::list() [17:28:02.480] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.480] if (FALSE) { [17:28:02.480] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.480] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.480] } [17:28:02.480] ...future.result <- base::tryCatch({ [17:28:02.480] base::withCallingHandlers({ [17:28:02.480] ...future.value <- base::withVisible(base::local({ [17:28:02.480] ...future.makeSendCondition <- base::local({ [17:28:02.480] sendCondition <- NULL [17:28:02.480] function(frame = 1L) { [17:28:02.480] if (is.function(sendCondition)) [17:28:02.480] return(sendCondition) [17:28:02.480] ns <- getNamespace("parallel") [17:28:02.480] if (exists("sendData", mode = "function", [17:28:02.480] envir = ns)) { [17:28:02.480] parallel_sendData <- get("sendData", mode = "function", [17:28:02.480] envir = ns) [17:28:02.480] envir <- sys.frame(frame) [17:28:02.480] master <- NULL [17:28:02.480] while (!identical(envir, .GlobalEnv) && [17:28:02.480] !identical(envir, emptyenv())) { [17:28:02.480] if (exists("master", mode = "list", envir = envir, [17:28:02.480] inherits = FALSE)) { [17:28:02.480] master <- get("master", mode = "list", [17:28:02.480] envir = envir, inherits = FALSE) [17:28:02.480] if (inherits(master, c("SOCKnode", [17:28:02.480] "SOCK0node"))) { [17:28:02.480] sendCondition <<- function(cond) { [17:28:02.480] data <- list(type = "VALUE", value = cond, [17:28:02.480] success = TRUE) [17:28:02.480] parallel_sendData(master, data) [17:28:02.480] } [17:28:02.480] return(sendCondition) [17:28:02.480] } [17:28:02.480] } [17:28:02.480] frame <- frame + 1L [17:28:02.480] envir <- sys.frame(frame) [17:28:02.480] } [17:28:02.480] } [17:28:02.480] sendCondition <<- function(cond) NULL [17:28:02.480] } [17:28:02.480] }) [17:28:02.480] withCallingHandlers({ [17:28:02.480] 2 [17:28:02.480] }, immediateCondition = function(cond) { [17:28:02.480] sendCondition <- ...future.makeSendCondition() [17:28:02.480] sendCondition(cond) [17:28:02.480] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.480] { [17:28:02.480] inherits <- base::inherits [17:28:02.480] invokeRestart <- base::invokeRestart [17:28:02.480] is.null <- base::is.null [17:28:02.480] muffled <- FALSE [17:28:02.480] if (inherits(cond, "message")) { [17:28:02.480] muffled <- grepl(pattern, "muffleMessage") [17:28:02.480] if (muffled) [17:28:02.480] invokeRestart("muffleMessage") [17:28:02.480] } [17:28:02.480] else if (inherits(cond, "warning")) { [17:28:02.480] muffled <- grepl(pattern, "muffleWarning") [17:28:02.480] if (muffled) [17:28:02.480] invokeRestart("muffleWarning") [17:28:02.480] } [17:28:02.480] else if (inherits(cond, "condition")) { [17:28:02.480] if (!is.null(pattern)) { [17:28:02.480] computeRestarts <- base::computeRestarts [17:28:02.480] grepl <- base::grepl [17:28:02.480] restarts <- computeRestarts(cond) [17:28:02.480] for (restart in restarts) { [17:28:02.480] name <- restart$name [17:28:02.480] if (is.null(name)) [17:28:02.480] next [17:28:02.480] if (!grepl(pattern, name)) [17:28:02.480] next [17:28:02.480] invokeRestart(restart) [17:28:02.480] muffled <- TRUE [17:28:02.480] break [17:28:02.480] } [17:28:02.480] } [17:28:02.480] } [17:28:02.480] invisible(muffled) [17:28:02.480] } [17:28:02.480] muffleCondition(cond) [17:28:02.480] }) [17:28:02.480] })) [17:28:02.480] future::FutureResult(value = ...future.value$value, [17:28:02.480] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.480] ...future.rng), globalenv = if (FALSE) [17:28:02.480] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.480] ...future.globalenv.names)) [17:28:02.480] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.480] }, condition = base::local({ [17:28:02.480] c <- base::c [17:28:02.480] inherits <- base::inherits [17:28:02.480] invokeRestart <- base::invokeRestart [17:28:02.480] length <- base::length [17:28:02.480] list <- base::list [17:28:02.480] seq.int <- base::seq.int [17:28:02.480] signalCondition <- base::signalCondition [17:28:02.480] sys.calls <- base::sys.calls [17:28:02.480] `[[` <- base::`[[` [17:28:02.480] `+` <- base::`+` [17:28:02.480] `<<-` <- base::`<<-` [17:28:02.480] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.480] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.480] 3L)] [17:28:02.480] } [17:28:02.480] function(cond) { [17:28:02.480] is_error <- inherits(cond, "error") [17:28:02.480] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.480] NULL) [17:28:02.480] if (is_error) { [17:28:02.480] sessionInformation <- function() { [17:28:02.480] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.480] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.480] search = base::search(), system = base::Sys.info()) [17:28:02.480] } [17:28:02.480] ...future.conditions[[length(...future.conditions) + [17:28:02.480] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.480] cond$call), session = sessionInformation(), [17:28:02.480] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.480] signalCondition(cond) [17:28:02.480] } [17:28:02.480] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.480] "immediateCondition"))) { [17:28:02.480] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.480] ...future.conditions[[length(...future.conditions) + [17:28:02.480] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.480] if (TRUE && !signal) { [17:28:02.480] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.480] { [17:28:02.480] inherits <- base::inherits [17:28:02.480] invokeRestart <- base::invokeRestart [17:28:02.480] is.null <- base::is.null [17:28:02.480] muffled <- FALSE [17:28:02.480] if (inherits(cond, "message")) { [17:28:02.480] muffled <- grepl(pattern, "muffleMessage") [17:28:02.480] if (muffled) [17:28:02.480] invokeRestart("muffleMessage") [17:28:02.480] } [17:28:02.480] else if (inherits(cond, "warning")) { [17:28:02.480] muffled <- grepl(pattern, "muffleWarning") [17:28:02.480] if (muffled) [17:28:02.480] invokeRestart("muffleWarning") [17:28:02.480] } [17:28:02.480] else if (inherits(cond, "condition")) { [17:28:02.480] if (!is.null(pattern)) { [17:28:02.480] computeRestarts <- base::computeRestarts [17:28:02.480] grepl <- base::grepl [17:28:02.480] restarts <- computeRestarts(cond) [17:28:02.480] for (restart in restarts) { [17:28:02.480] name <- restart$name [17:28:02.480] if (is.null(name)) [17:28:02.480] next [17:28:02.480] if (!grepl(pattern, name)) [17:28:02.480] next [17:28:02.480] invokeRestart(restart) [17:28:02.480] muffled <- TRUE [17:28:02.480] break [17:28:02.480] } [17:28:02.480] } [17:28:02.480] } [17:28:02.480] invisible(muffled) [17:28:02.480] } [17:28:02.480] muffleCondition(cond, pattern = "^muffle") [17:28:02.480] } [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] if (TRUE) { [17:28:02.480] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.480] { [17:28:02.480] inherits <- base::inherits [17:28:02.480] invokeRestart <- base::invokeRestart [17:28:02.480] is.null <- base::is.null [17:28:02.480] muffled <- FALSE [17:28:02.480] if (inherits(cond, "message")) { [17:28:02.480] muffled <- grepl(pattern, "muffleMessage") [17:28:02.480] if (muffled) [17:28:02.480] invokeRestart("muffleMessage") [17:28:02.480] } [17:28:02.480] else if (inherits(cond, "warning")) { [17:28:02.480] muffled <- grepl(pattern, "muffleWarning") [17:28:02.480] if (muffled) [17:28:02.480] invokeRestart("muffleWarning") [17:28:02.480] } [17:28:02.480] else if (inherits(cond, "condition")) { [17:28:02.480] if (!is.null(pattern)) { [17:28:02.480] computeRestarts <- base::computeRestarts [17:28:02.480] grepl <- base::grepl [17:28:02.480] restarts <- computeRestarts(cond) [17:28:02.480] for (restart in restarts) { [17:28:02.480] name <- restart$name [17:28:02.480] if (is.null(name)) [17:28:02.480] next [17:28:02.480] if (!grepl(pattern, name)) [17:28:02.480] next [17:28:02.480] invokeRestart(restart) [17:28:02.480] muffled <- TRUE [17:28:02.480] break [17:28:02.480] } [17:28:02.480] } [17:28:02.480] } [17:28:02.480] invisible(muffled) [17:28:02.480] } [17:28:02.480] muffleCondition(cond, pattern = "^muffle") [17:28:02.480] } [17:28:02.480] } [17:28:02.480] } [17:28:02.480] })) [17:28:02.480] }, error = function(ex) { [17:28:02.480] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.480] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.480] ...future.rng), started = ...future.startTime, [17:28:02.480] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.480] version = "1.8"), class = "FutureResult") [17:28:02.480] }, finally = { [17:28:02.480] if (!identical(...future.workdir, getwd())) [17:28:02.480] setwd(...future.workdir) [17:28:02.480] { [17:28:02.480] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.480] ...future.oldOptions$nwarnings <- NULL [17:28:02.480] } [17:28:02.480] base::options(...future.oldOptions) [17:28:02.480] if (.Platform$OS.type == "windows") { [17:28:02.480] old_names <- names(...future.oldEnvVars) [17:28:02.480] envs <- base::Sys.getenv() [17:28:02.480] names <- names(envs) [17:28:02.480] common <- intersect(names, old_names) [17:28:02.480] added <- setdiff(names, old_names) [17:28:02.480] removed <- setdiff(old_names, names) [17:28:02.480] changed <- common[...future.oldEnvVars[common] != [17:28:02.480] envs[common]] [17:28:02.480] NAMES <- toupper(changed) [17:28:02.480] args <- list() [17:28:02.480] for (kk in seq_along(NAMES)) { [17:28:02.480] name <- changed[[kk]] [17:28:02.480] NAME <- NAMES[[kk]] [17:28:02.480] if (name != NAME && is.element(NAME, old_names)) [17:28:02.480] next [17:28:02.480] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.480] } [17:28:02.480] NAMES <- toupper(added) [17:28:02.480] for (kk in seq_along(NAMES)) { [17:28:02.480] name <- added[[kk]] [17:28:02.480] NAME <- NAMES[[kk]] [17:28:02.480] if (name != NAME && is.element(NAME, old_names)) [17:28:02.480] next [17:28:02.480] args[[name]] <- "" [17:28:02.480] } [17:28:02.480] NAMES <- toupper(removed) [17:28:02.480] for (kk in seq_along(NAMES)) { [17:28:02.480] name <- removed[[kk]] [17:28:02.480] NAME <- NAMES[[kk]] [17:28:02.480] if (name != NAME && is.element(NAME, old_names)) [17:28:02.480] next [17:28:02.480] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.480] } [17:28:02.480] if (length(args) > 0) [17:28:02.480] base::do.call(base::Sys.setenv, args = args) [17:28:02.480] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.480] } [17:28:02.480] { [17:28:02.480] if (base::length(...future.futureOptionsAdded) > [17:28:02.480] 0L) { [17:28:02.480] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.480] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.480] base::options(opts) [17:28:02.480] } [17:28:02.480] { [17:28:02.480] { [17:28:02.480] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.480] NULL [17:28:02.480] } [17:28:02.480] options(future.plan = NULL) [17:28:02.480] if (is.na(NA_character_)) [17:28:02.480] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.480] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.480] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.480] .init = FALSE) [17:28:02.480] } [17:28:02.480] } [17:28:02.480] } [17:28:02.480] }) [17:28:02.480] if (TRUE) { [17:28:02.480] base::sink(type = "output", split = FALSE) [17:28:02.480] if (TRUE) { [17:28:02.480] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.480] } [17:28:02.480] else { [17:28:02.480] ...future.result["stdout"] <- base::list(NULL) [17:28:02.480] } [17:28:02.480] base::close(...future.stdout) [17:28:02.480] ...future.stdout <- NULL [17:28:02.480] } [17:28:02.480] ...future.result$conditions <- ...future.conditions [17:28:02.480] ...future.result$finished <- base::Sys.time() [17:28:02.480] ...future.result [17:28:02.480] } [17:28:02.485] Poll #1 (0): usedNodes() = 2, workers = 2 [17:28:02.506] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.506] - Validating connection of MultisessionFuture [17:28:02.506] - received message: FutureResult [17:28:02.506] - Received FutureResult [17:28:02.507] - Erased future from FutureRegistry [17:28:02.507] result() for ClusterFuture ... [17:28:02.507] - result already collected: FutureResult [17:28:02.507] result() for ClusterFuture ... done [17:28:02.507] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.507] result() for ClusterFuture ... [17:28:02.508] - result already collected: FutureResult [17:28:02.508] result() for ClusterFuture ... done [17:28:02.508] result() for ClusterFuture ... [17:28:02.508] - result already collected: FutureResult [17:28:02.508] result() for ClusterFuture ... done [17:28:02.510] MultisessionFuture started [17:28:02.510] - Launch lazy future ... done [17:28:02.510] run() for 'MultisessionFuture' ... done [17:28:02.510] resolve() on list ... [17:28:02.510] recursive: 0 [17:28:02.511] length: 3 [17:28:02.511] elements: 'a', 'b', '' [17:28:02.511] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.511] - Validating connection of MultisessionFuture [17:28:02.512] - received message: FutureResult [17:28:02.512] - Received FutureResult [17:28:02.512] - Erased future from FutureRegistry [17:28:02.512] result() for ClusterFuture ... [17:28:02.512] - result already collected: FutureResult [17:28:02.512] result() for ClusterFuture ... done [17:28:02.513] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.513] Future #1 [17:28:02.513] length: 2 (resolved future 1) [17:28:02.526] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.526] - Validating connection of MultisessionFuture [17:28:02.526] - received message: FutureResult [17:28:02.527] - Received FutureResult [17:28:02.527] - Erased future from FutureRegistry [17:28:02.527] result() for ClusterFuture ... [17:28:02.527] - result already collected: FutureResult [17:28:02.527] result() for ClusterFuture ... done [17:28:02.527] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.528] Future #2 [17:28:02.528] length: 1 (resolved future 2) [17:28:02.528] length: 0 (resolved future 3) [17:28:02.528] resolve() on list ... DONE [17:28:02.528] getGlobalsAndPackages() ... [17:28:02.528] Searching for globals... [17:28:02.529] [17:28:02.529] Searching for globals ... DONE [17:28:02.529] - globals: [0] [17:28:02.529] getGlobalsAndPackages() ... DONE [17:28:02.530] getGlobalsAndPackages() ... [17:28:02.530] Searching for globals... [17:28:02.530] [17:28:02.530] Searching for globals ... DONE [17:28:02.531] - globals: [0] [17:28:02.531] getGlobalsAndPackages() ... DONE [17:28:02.531] run() for 'Future' ... [17:28:02.531] - state: 'created' [17:28:02.531] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.545] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.545] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.545] - Field: 'node' [17:28:02.545] - Field: 'label' [17:28:02.545] - Field: 'local' [17:28:02.546] - Field: 'owner' [17:28:02.546] - Field: 'envir' [17:28:02.546] - Field: 'workers' [17:28:02.546] - Field: 'packages' [17:28:02.546] - Field: 'gc' [17:28:02.546] - Field: 'conditions' [17:28:02.547] - Field: 'persistent' [17:28:02.547] - Field: 'expr' [17:28:02.547] - Field: 'uuid' [17:28:02.547] - Field: 'seed' [17:28:02.547] - Field: 'version' [17:28:02.548] - Field: 'result' [17:28:02.548] - Field: 'asynchronous' [17:28:02.548] - Field: 'calls' [17:28:02.548] - Field: 'globals' [17:28:02.548] - Field: 'stdout' [17:28:02.548] - Field: 'earlySignal' [17:28:02.549] - Field: 'lazy' [17:28:02.549] - Field: 'state' [17:28:02.549] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.549] - Launch lazy future ... [17:28:02.549] Packages needed by the future expression (n = 0): [17:28:02.550] Packages needed by future strategies (n = 0): [17:28:02.550] { [17:28:02.550] { [17:28:02.550] { [17:28:02.550] ...future.startTime <- base::Sys.time() [17:28:02.550] { [17:28:02.550] { [17:28:02.550] { [17:28:02.550] { [17:28:02.550] base::local({ [17:28:02.550] has_future <- base::requireNamespace("future", [17:28:02.550] quietly = TRUE) [17:28:02.550] if (has_future) { [17:28:02.550] ns <- base::getNamespace("future") [17:28:02.550] version <- ns[[".package"]][["version"]] [17:28:02.550] if (is.null(version)) [17:28:02.550] version <- utils::packageVersion("future") [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] version <- NULL [17:28:02.550] } [17:28:02.550] if (!has_future || version < "1.8.0") { [17:28:02.550] info <- base::c(r_version = base::gsub("R version ", [17:28:02.550] "", base::R.version$version.string), [17:28:02.550] platform = base::sprintf("%s (%s-bit)", [17:28:02.550] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.550] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.550] "release", "version")], collapse = " "), [17:28:02.550] hostname = base::Sys.info()[["nodename"]]) [17:28:02.550] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.550] info) [17:28:02.550] info <- base::paste(info, collapse = "; ") [17:28:02.550] if (!has_future) { [17:28:02.550] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.550] info) [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.550] info, version) [17:28:02.550] } [17:28:02.550] base::stop(msg) [17:28:02.550] } [17:28:02.550] }) [17:28:02.550] } [17:28:02.550] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.550] base::options(mc.cores = 1L) [17:28:02.550] } [17:28:02.550] ...future.strategy.old <- future::plan("list") [17:28:02.550] options(future.plan = NULL) [17:28:02.550] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.550] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.550] } [17:28:02.550] ...future.workdir <- getwd() [17:28:02.550] } [17:28:02.550] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.550] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.550] } [17:28:02.550] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.550] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.550] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.550] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.550] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.550] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.550] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.550] base::names(...future.oldOptions)) [17:28:02.550] } [17:28:02.550] if (FALSE) { [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] if (TRUE) { [17:28:02.550] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.550] open = "w") [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.550] windows = "NUL", "/dev/null"), open = "w") [17:28:02.550] } [17:28:02.550] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.550] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.550] base::sink(type = "output", split = FALSE) [17:28:02.550] base::close(...future.stdout) [17:28:02.550] }, add = TRUE) [17:28:02.550] } [17:28:02.550] ...future.frame <- base::sys.nframe() [17:28:02.550] ...future.conditions <- base::list() [17:28:02.550] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.550] if (FALSE) { [17:28:02.550] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.550] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.550] } [17:28:02.550] ...future.result <- base::tryCatch({ [17:28:02.550] base::withCallingHandlers({ [17:28:02.550] ...future.value <- base::withVisible(base::local({ [17:28:02.550] ...future.makeSendCondition <- base::local({ [17:28:02.550] sendCondition <- NULL [17:28:02.550] function(frame = 1L) { [17:28:02.550] if (is.function(sendCondition)) [17:28:02.550] return(sendCondition) [17:28:02.550] ns <- getNamespace("parallel") [17:28:02.550] if (exists("sendData", mode = "function", [17:28:02.550] envir = ns)) { [17:28:02.550] parallel_sendData <- get("sendData", mode = "function", [17:28:02.550] envir = ns) [17:28:02.550] envir <- sys.frame(frame) [17:28:02.550] master <- NULL [17:28:02.550] while (!identical(envir, .GlobalEnv) && [17:28:02.550] !identical(envir, emptyenv())) { [17:28:02.550] if (exists("master", mode = "list", envir = envir, [17:28:02.550] inherits = FALSE)) { [17:28:02.550] master <- get("master", mode = "list", [17:28:02.550] envir = envir, inherits = FALSE) [17:28:02.550] if (inherits(master, c("SOCKnode", [17:28:02.550] "SOCK0node"))) { [17:28:02.550] sendCondition <<- function(cond) { [17:28:02.550] data <- list(type = "VALUE", value = cond, [17:28:02.550] success = TRUE) [17:28:02.550] parallel_sendData(master, data) [17:28:02.550] } [17:28:02.550] return(sendCondition) [17:28:02.550] } [17:28:02.550] } [17:28:02.550] frame <- frame + 1L [17:28:02.550] envir <- sys.frame(frame) [17:28:02.550] } [17:28:02.550] } [17:28:02.550] sendCondition <<- function(cond) NULL [17:28:02.550] } [17:28:02.550] }) [17:28:02.550] withCallingHandlers({ [17:28:02.550] 2 [17:28:02.550] }, immediateCondition = function(cond) { [17:28:02.550] sendCondition <- ...future.makeSendCondition() [17:28:02.550] sendCondition(cond) [17:28:02.550] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.550] { [17:28:02.550] inherits <- base::inherits [17:28:02.550] invokeRestart <- base::invokeRestart [17:28:02.550] is.null <- base::is.null [17:28:02.550] muffled <- FALSE [17:28:02.550] if (inherits(cond, "message")) { [17:28:02.550] muffled <- grepl(pattern, "muffleMessage") [17:28:02.550] if (muffled) [17:28:02.550] invokeRestart("muffleMessage") [17:28:02.550] } [17:28:02.550] else if (inherits(cond, "warning")) { [17:28:02.550] muffled <- grepl(pattern, "muffleWarning") [17:28:02.550] if (muffled) [17:28:02.550] invokeRestart("muffleWarning") [17:28:02.550] } [17:28:02.550] else if (inherits(cond, "condition")) { [17:28:02.550] if (!is.null(pattern)) { [17:28:02.550] computeRestarts <- base::computeRestarts [17:28:02.550] grepl <- base::grepl [17:28:02.550] restarts <- computeRestarts(cond) [17:28:02.550] for (restart in restarts) { [17:28:02.550] name <- restart$name [17:28:02.550] if (is.null(name)) [17:28:02.550] next [17:28:02.550] if (!grepl(pattern, name)) [17:28:02.550] next [17:28:02.550] invokeRestart(restart) [17:28:02.550] muffled <- TRUE [17:28:02.550] break [17:28:02.550] } [17:28:02.550] } [17:28:02.550] } [17:28:02.550] invisible(muffled) [17:28:02.550] } [17:28:02.550] muffleCondition(cond) [17:28:02.550] }) [17:28:02.550] })) [17:28:02.550] future::FutureResult(value = ...future.value$value, [17:28:02.550] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.550] ...future.rng), globalenv = if (FALSE) [17:28:02.550] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.550] ...future.globalenv.names)) [17:28:02.550] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.550] }, condition = base::local({ [17:28:02.550] c <- base::c [17:28:02.550] inherits <- base::inherits [17:28:02.550] invokeRestart <- base::invokeRestart [17:28:02.550] length <- base::length [17:28:02.550] list <- base::list [17:28:02.550] seq.int <- base::seq.int [17:28:02.550] signalCondition <- base::signalCondition [17:28:02.550] sys.calls <- base::sys.calls [17:28:02.550] `[[` <- base::`[[` [17:28:02.550] `+` <- base::`+` [17:28:02.550] `<<-` <- base::`<<-` [17:28:02.550] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.550] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.550] 3L)] [17:28:02.550] } [17:28:02.550] function(cond) { [17:28:02.550] is_error <- inherits(cond, "error") [17:28:02.550] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.550] NULL) [17:28:02.550] if (is_error) { [17:28:02.550] sessionInformation <- function() { [17:28:02.550] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.550] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.550] search = base::search(), system = base::Sys.info()) [17:28:02.550] } [17:28:02.550] ...future.conditions[[length(...future.conditions) + [17:28:02.550] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.550] cond$call), session = sessionInformation(), [17:28:02.550] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.550] signalCondition(cond) [17:28:02.550] } [17:28:02.550] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.550] "immediateCondition"))) { [17:28:02.550] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.550] ...future.conditions[[length(...future.conditions) + [17:28:02.550] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.550] if (TRUE && !signal) { [17:28:02.550] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.550] { [17:28:02.550] inherits <- base::inherits [17:28:02.550] invokeRestart <- base::invokeRestart [17:28:02.550] is.null <- base::is.null [17:28:02.550] muffled <- FALSE [17:28:02.550] if (inherits(cond, "message")) { [17:28:02.550] muffled <- grepl(pattern, "muffleMessage") [17:28:02.550] if (muffled) [17:28:02.550] invokeRestart("muffleMessage") [17:28:02.550] } [17:28:02.550] else if (inherits(cond, "warning")) { [17:28:02.550] muffled <- grepl(pattern, "muffleWarning") [17:28:02.550] if (muffled) [17:28:02.550] invokeRestart("muffleWarning") [17:28:02.550] } [17:28:02.550] else if (inherits(cond, "condition")) { [17:28:02.550] if (!is.null(pattern)) { [17:28:02.550] computeRestarts <- base::computeRestarts [17:28:02.550] grepl <- base::grepl [17:28:02.550] restarts <- computeRestarts(cond) [17:28:02.550] for (restart in restarts) { [17:28:02.550] name <- restart$name [17:28:02.550] if (is.null(name)) [17:28:02.550] next [17:28:02.550] if (!grepl(pattern, name)) [17:28:02.550] next [17:28:02.550] invokeRestart(restart) [17:28:02.550] muffled <- TRUE [17:28:02.550] break [17:28:02.550] } [17:28:02.550] } [17:28:02.550] } [17:28:02.550] invisible(muffled) [17:28:02.550] } [17:28:02.550] muffleCondition(cond, pattern = "^muffle") [17:28:02.550] } [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] if (TRUE) { [17:28:02.550] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.550] { [17:28:02.550] inherits <- base::inherits [17:28:02.550] invokeRestart <- base::invokeRestart [17:28:02.550] is.null <- base::is.null [17:28:02.550] muffled <- FALSE [17:28:02.550] if (inherits(cond, "message")) { [17:28:02.550] muffled <- grepl(pattern, "muffleMessage") [17:28:02.550] if (muffled) [17:28:02.550] invokeRestart("muffleMessage") [17:28:02.550] } [17:28:02.550] else if (inherits(cond, "warning")) { [17:28:02.550] muffled <- grepl(pattern, "muffleWarning") [17:28:02.550] if (muffled) [17:28:02.550] invokeRestart("muffleWarning") [17:28:02.550] } [17:28:02.550] else if (inherits(cond, "condition")) { [17:28:02.550] if (!is.null(pattern)) { [17:28:02.550] computeRestarts <- base::computeRestarts [17:28:02.550] grepl <- base::grepl [17:28:02.550] restarts <- computeRestarts(cond) [17:28:02.550] for (restart in restarts) { [17:28:02.550] name <- restart$name [17:28:02.550] if (is.null(name)) [17:28:02.550] next [17:28:02.550] if (!grepl(pattern, name)) [17:28:02.550] next [17:28:02.550] invokeRestart(restart) [17:28:02.550] muffled <- TRUE [17:28:02.550] break [17:28:02.550] } [17:28:02.550] } [17:28:02.550] } [17:28:02.550] invisible(muffled) [17:28:02.550] } [17:28:02.550] muffleCondition(cond, pattern = "^muffle") [17:28:02.550] } [17:28:02.550] } [17:28:02.550] } [17:28:02.550] })) [17:28:02.550] }, error = function(ex) { [17:28:02.550] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.550] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.550] ...future.rng), started = ...future.startTime, [17:28:02.550] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.550] version = "1.8"), class = "FutureResult") [17:28:02.550] }, finally = { [17:28:02.550] if (!identical(...future.workdir, getwd())) [17:28:02.550] setwd(...future.workdir) [17:28:02.550] { [17:28:02.550] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.550] ...future.oldOptions$nwarnings <- NULL [17:28:02.550] } [17:28:02.550] base::options(...future.oldOptions) [17:28:02.550] if (.Platform$OS.type == "windows") { [17:28:02.550] old_names <- names(...future.oldEnvVars) [17:28:02.550] envs <- base::Sys.getenv() [17:28:02.550] names <- names(envs) [17:28:02.550] common <- intersect(names, old_names) [17:28:02.550] added <- setdiff(names, old_names) [17:28:02.550] removed <- setdiff(old_names, names) [17:28:02.550] changed <- common[...future.oldEnvVars[common] != [17:28:02.550] envs[common]] [17:28:02.550] NAMES <- toupper(changed) [17:28:02.550] args <- list() [17:28:02.550] for (kk in seq_along(NAMES)) { [17:28:02.550] name <- changed[[kk]] [17:28:02.550] NAME <- NAMES[[kk]] [17:28:02.550] if (name != NAME && is.element(NAME, old_names)) [17:28:02.550] next [17:28:02.550] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.550] } [17:28:02.550] NAMES <- toupper(added) [17:28:02.550] for (kk in seq_along(NAMES)) { [17:28:02.550] name <- added[[kk]] [17:28:02.550] NAME <- NAMES[[kk]] [17:28:02.550] if (name != NAME && is.element(NAME, old_names)) [17:28:02.550] next [17:28:02.550] args[[name]] <- "" [17:28:02.550] } [17:28:02.550] NAMES <- toupper(removed) [17:28:02.550] for (kk in seq_along(NAMES)) { [17:28:02.550] name <- removed[[kk]] [17:28:02.550] NAME <- NAMES[[kk]] [17:28:02.550] if (name != NAME && is.element(NAME, old_names)) [17:28:02.550] next [17:28:02.550] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.550] } [17:28:02.550] if (length(args) > 0) [17:28:02.550] base::do.call(base::Sys.setenv, args = args) [17:28:02.550] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.550] } [17:28:02.550] { [17:28:02.550] if (base::length(...future.futureOptionsAdded) > [17:28:02.550] 0L) { [17:28:02.550] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.550] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.550] base::options(opts) [17:28:02.550] } [17:28:02.550] { [17:28:02.550] { [17:28:02.550] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.550] NULL [17:28:02.550] } [17:28:02.550] options(future.plan = NULL) [17:28:02.550] if (is.na(NA_character_)) [17:28:02.550] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.550] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.550] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.550] .init = FALSE) [17:28:02.550] } [17:28:02.550] } [17:28:02.550] } [17:28:02.550] }) [17:28:02.550] if (TRUE) { [17:28:02.550] base::sink(type = "output", split = FALSE) [17:28:02.550] if (TRUE) { [17:28:02.550] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.550] } [17:28:02.550] else { [17:28:02.550] ...future.result["stdout"] <- base::list(NULL) [17:28:02.550] } [17:28:02.550] base::close(...future.stdout) [17:28:02.550] ...future.stdout <- NULL [17:28:02.550] } [17:28:02.550] ...future.result$conditions <- ...future.conditions [17:28:02.550] ...future.result$finished <- base::Sys.time() [17:28:02.550] ...future.result [17:28:02.550] } [17:28:02.556] MultisessionFuture started [17:28:02.556] - Launch lazy future ... done [17:28:02.556] run() for 'MultisessionFuture' ... done [17:28:02.556] resolve() on list ... [17:28:02.556] recursive: 0 [17:28:02.557] length: 3 [17:28:02.557] elements: 'a', 'b', '' [17:28:02.557] run() for 'Future' ... [17:28:02.557] - state: 'created' [17:28:02.557] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.571] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.571] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.571] - Field: 'node' [17:28:02.572] - Field: 'label' [17:28:02.572] - Field: 'local' [17:28:02.572] - Field: 'owner' [17:28:02.572] - Field: 'envir' [17:28:02.572] - Field: 'workers' [17:28:02.573] - Field: 'packages' [17:28:02.573] - Field: 'gc' [17:28:02.573] - Field: 'conditions' [17:28:02.573] - Field: 'persistent' [17:28:02.573] - Field: 'expr' [17:28:02.573] - Field: 'uuid' [17:28:02.574] - Field: 'seed' [17:28:02.574] - Field: 'version' [17:28:02.574] - Field: 'result' [17:28:02.574] - Field: 'asynchronous' [17:28:02.574] - Field: 'calls' [17:28:02.575] - Field: 'globals' [17:28:02.575] - Field: 'stdout' [17:28:02.575] - Field: 'earlySignal' [17:28:02.575] - Field: 'lazy' [17:28:02.575] - Field: 'state' [17:28:02.575] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.576] - Launch lazy future ... [17:28:02.576] Packages needed by the future expression (n = 0): [17:28:02.576] Packages needed by future strategies (n = 0): [17:28:02.577] { [17:28:02.577] { [17:28:02.577] { [17:28:02.577] ...future.startTime <- base::Sys.time() [17:28:02.577] { [17:28:02.577] { [17:28:02.577] { [17:28:02.577] { [17:28:02.577] base::local({ [17:28:02.577] has_future <- base::requireNamespace("future", [17:28:02.577] quietly = TRUE) [17:28:02.577] if (has_future) { [17:28:02.577] ns <- base::getNamespace("future") [17:28:02.577] version <- ns[[".package"]][["version"]] [17:28:02.577] if (is.null(version)) [17:28:02.577] version <- utils::packageVersion("future") [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] version <- NULL [17:28:02.577] } [17:28:02.577] if (!has_future || version < "1.8.0") { [17:28:02.577] info <- base::c(r_version = base::gsub("R version ", [17:28:02.577] "", base::R.version$version.string), [17:28:02.577] platform = base::sprintf("%s (%s-bit)", [17:28:02.577] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.577] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.577] "release", "version")], collapse = " "), [17:28:02.577] hostname = base::Sys.info()[["nodename"]]) [17:28:02.577] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.577] info) [17:28:02.577] info <- base::paste(info, collapse = "; ") [17:28:02.577] if (!has_future) { [17:28:02.577] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.577] info) [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.577] info, version) [17:28:02.577] } [17:28:02.577] base::stop(msg) [17:28:02.577] } [17:28:02.577] }) [17:28:02.577] } [17:28:02.577] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.577] base::options(mc.cores = 1L) [17:28:02.577] } [17:28:02.577] ...future.strategy.old <- future::plan("list") [17:28:02.577] options(future.plan = NULL) [17:28:02.577] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.577] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.577] } [17:28:02.577] ...future.workdir <- getwd() [17:28:02.577] } [17:28:02.577] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.577] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.577] } [17:28:02.577] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.577] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.577] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.577] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.577] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.577] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.577] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.577] base::names(...future.oldOptions)) [17:28:02.577] } [17:28:02.577] if (FALSE) { [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] if (TRUE) { [17:28:02.577] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.577] open = "w") [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.577] windows = "NUL", "/dev/null"), open = "w") [17:28:02.577] } [17:28:02.577] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.577] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.577] base::sink(type = "output", split = FALSE) [17:28:02.577] base::close(...future.stdout) [17:28:02.577] }, add = TRUE) [17:28:02.577] } [17:28:02.577] ...future.frame <- base::sys.nframe() [17:28:02.577] ...future.conditions <- base::list() [17:28:02.577] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.577] if (FALSE) { [17:28:02.577] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.577] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.577] } [17:28:02.577] ...future.result <- base::tryCatch({ [17:28:02.577] base::withCallingHandlers({ [17:28:02.577] ...future.value <- base::withVisible(base::local({ [17:28:02.577] ...future.makeSendCondition <- base::local({ [17:28:02.577] sendCondition <- NULL [17:28:02.577] function(frame = 1L) { [17:28:02.577] if (is.function(sendCondition)) [17:28:02.577] return(sendCondition) [17:28:02.577] ns <- getNamespace("parallel") [17:28:02.577] if (exists("sendData", mode = "function", [17:28:02.577] envir = ns)) { [17:28:02.577] parallel_sendData <- get("sendData", mode = "function", [17:28:02.577] envir = ns) [17:28:02.577] envir <- sys.frame(frame) [17:28:02.577] master <- NULL [17:28:02.577] while (!identical(envir, .GlobalEnv) && [17:28:02.577] !identical(envir, emptyenv())) { [17:28:02.577] if (exists("master", mode = "list", envir = envir, [17:28:02.577] inherits = FALSE)) { [17:28:02.577] master <- get("master", mode = "list", [17:28:02.577] envir = envir, inherits = FALSE) [17:28:02.577] if (inherits(master, c("SOCKnode", [17:28:02.577] "SOCK0node"))) { [17:28:02.577] sendCondition <<- function(cond) { [17:28:02.577] data <- list(type = "VALUE", value = cond, [17:28:02.577] success = TRUE) [17:28:02.577] parallel_sendData(master, data) [17:28:02.577] } [17:28:02.577] return(sendCondition) [17:28:02.577] } [17:28:02.577] } [17:28:02.577] frame <- frame + 1L [17:28:02.577] envir <- sys.frame(frame) [17:28:02.577] } [17:28:02.577] } [17:28:02.577] sendCondition <<- function(cond) NULL [17:28:02.577] } [17:28:02.577] }) [17:28:02.577] withCallingHandlers({ [17:28:02.577] 1 [17:28:02.577] }, immediateCondition = function(cond) { [17:28:02.577] sendCondition <- ...future.makeSendCondition() [17:28:02.577] sendCondition(cond) [17:28:02.577] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.577] { [17:28:02.577] inherits <- base::inherits [17:28:02.577] invokeRestart <- base::invokeRestart [17:28:02.577] is.null <- base::is.null [17:28:02.577] muffled <- FALSE [17:28:02.577] if (inherits(cond, "message")) { [17:28:02.577] muffled <- grepl(pattern, "muffleMessage") [17:28:02.577] if (muffled) [17:28:02.577] invokeRestart("muffleMessage") [17:28:02.577] } [17:28:02.577] else if (inherits(cond, "warning")) { [17:28:02.577] muffled <- grepl(pattern, "muffleWarning") [17:28:02.577] if (muffled) [17:28:02.577] invokeRestart("muffleWarning") [17:28:02.577] } [17:28:02.577] else if (inherits(cond, "condition")) { [17:28:02.577] if (!is.null(pattern)) { [17:28:02.577] computeRestarts <- base::computeRestarts [17:28:02.577] grepl <- base::grepl [17:28:02.577] restarts <- computeRestarts(cond) [17:28:02.577] for (restart in restarts) { [17:28:02.577] name <- restart$name [17:28:02.577] if (is.null(name)) [17:28:02.577] next [17:28:02.577] if (!grepl(pattern, name)) [17:28:02.577] next [17:28:02.577] invokeRestart(restart) [17:28:02.577] muffled <- TRUE [17:28:02.577] break [17:28:02.577] } [17:28:02.577] } [17:28:02.577] } [17:28:02.577] invisible(muffled) [17:28:02.577] } [17:28:02.577] muffleCondition(cond) [17:28:02.577] }) [17:28:02.577] })) [17:28:02.577] future::FutureResult(value = ...future.value$value, [17:28:02.577] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.577] ...future.rng), globalenv = if (FALSE) [17:28:02.577] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.577] ...future.globalenv.names)) [17:28:02.577] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.577] }, condition = base::local({ [17:28:02.577] c <- base::c [17:28:02.577] inherits <- base::inherits [17:28:02.577] invokeRestart <- base::invokeRestart [17:28:02.577] length <- base::length [17:28:02.577] list <- base::list [17:28:02.577] seq.int <- base::seq.int [17:28:02.577] signalCondition <- base::signalCondition [17:28:02.577] sys.calls <- base::sys.calls [17:28:02.577] `[[` <- base::`[[` [17:28:02.577] `+` <- base::`+` [17:28:02.577] `<<-` <- base::`<<-` [17:28:02.577] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.577] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.577] 3L)] [17:28:02.577] } [17:28:02.577] function(cond) { [17:28:02.577] is_error <- inherits(cond, "error") [17:28:02.577] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.577] NULL) [17:28:02.577] if (is_error) { [17:28:02.577] sessionInformation <- function() { [17:28:02.577] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.577] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.577] search = base::search(), system = base::Sys.info()) [17:28:02.577] } [17:28:02.577] ...future.conditions[[length(...future.conditions) + [17:28:02.577] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.577] cond$call), session = sessionInformation(), [17:28:02.577] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.577] signalCondition(cond) [17:28:02.577] } [17:28:02.577] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.577] "immediateCondition"))) { [17:28:02.577] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.577] ...future.conditions[[length(...future.conditions) + [17:28:02.577] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.577] if (TRUE && !signal) { [17:28:02.577] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.577] { [17:28:02.577] inherits <- base::inherits [17:28:02.577] invokeRestart <- base::invokeRestart [17:28:02.577] is.null <- base::is.null [17:28:02.577] muffled <- FALSE [17:28:02.577] if (inherits(cond, "message")) { [17:28:02.577] muffled <- grepl(pattern, "muffleMessage") [17:28:02.577] if (muffled) [17:28:02.577] invokeRestart("muffleMessage") [17:28:02.577] } [17:28:02.577] else if (inherits(cond, "warning")) { [17:28:02.577] muffled <- grepl(pattern, "muffleWarning") [17:28:02.577] if (muffled) [17:28:02.577] invokeRestart("muffleWarning") [17:28:02.577] } [17:28:02.577] else if (inherits(cond, "condition")) { [17:28:02.577] if (!is.null(pattern)) { [17:28:02.577] computeRestarts <- base::computeRestarts [17:28:02.577] grepl <- base::grepl [17:28:02.577] restarts <- computeRestarts(cond) [17:28:02.577] for (restart in restarts) { [17:28:02.577] name <- restart$name [17:28:02.577] if (is.null(name)) [17:28:02.577] next [17:28:02.577] if (!grepl(pattern, name)) [17:28:02.577] next [17:28:02.577] invokeRestart(restart) [17:28:02.577] muffled <- TRUE [17:28:02.577] break [17:28:02.577] } [17:28:02.577] } [17:28:02.577] } [17:28:02.577] invisible(muffled) [17:28:02.577] } [17:28:02.577] muffleCondition(cond, pattern = "^muffle") [17:28:02.577] } [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] if (TRUE) { [17:28:02.577] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.577] { [17:28:02.577] inherits <- base::inherits [17:28:02.577] invokeRestart <- base::invokeRestart [17:28:02.577] is.null <- base::is.null [17:28:02.577] muffled <- FALSE [17:28:02.577] if (inherits(cond, "message")) { [17:28:02.577] muffled <- grepl(pattern, "muffleMessage") [17:28:02.577] if (muffled) [17:28:02.577] invokeRestart("muffleMessage") [17:28:02.577] } [17:28:02.577] else if (inherits(cond, "warning")) { [17:28:02.577] muffled <- grepl(pattern, "muffleWarning") [17:28:02.577] if (muffled) [17:28:02.577] invokeRestart("muffleWarning") [17:28:02.577] } [17:28:02.577] else if (inherits(cond, "condition")) { [17:28:02.577] if (!is.null(pattern)) { [17:28:02.577] computeRestarts <- base::computeRestarts [17:28:02.577] grepl <- base::grepl [17:28:02.577] restarts <- computeRestarts(cond) [17:28:02.577] for (restart in restarts) { [17:28:02.577] name <- restart$name [17:28:02.577] if (is.null(name)) [17:28:02.577] next [17:28:02.577] if (!grepl(pattern, name)) [17:28:02.577] next [17:28:02.577] invokeRestart(restart) [17:28:02.577] muffled <- TRUE [17:28:02.577] break [17:28:02.577] } [17:28:02.577] } [17:28:02.577] } [17:28:02.577] invisible(muffled) [17:28:02.577] } [17:28:02.577] muffleCondition(cond, pattern = "^muffle") [17:28:02.577] } [17:28:02.577] } [17:28:02.577] } [17:28:02.577] })) [17:28:02.577] }, error = function(ex) { [17:28:02.577] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.577] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.577] ...future.rng), started = ...future.startTime, [17:28:02.577] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.577] version = "1.8"), class = "FutureResult") [17:28:02.577] }, finally = { [17:28:02.577] if (!identical(...future.workdir, getwd())) [17:28:02.577] setwd(...future.workdir) [17:28:02.577] { [17:28:02.577] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.577] ...future.oldOptions$nwarnings <- NULL [17:28:02.577] } [17:28:02.577] base::options(...future.oldOptions) [17:28:02.577] if (.Platform$OS.type == "windows") { [17:28:02.577] old_names <- names(...future.oldEnvVars) [17:28:02.577] envs <- base::Sys.getenv() [17:28:02.577] names <- names(envs) [17:28:02.577] common <- intersect(names, old_names) [17:28:02.577] added <- setdiff(names, old_names) [17:28:02.577] removed <- setdiff(old_names, names) [17:28:02.577] changed <- common[...future.oldEnvVars[common] != [17:28:02.577] envs[common]] [17:28:02.577] NAMES <- toupper(changed) [17:28:02.577] args <- list() [17:28:02.577] for (kk in seq_along(NAMES)) { [17:28:02.577] name <- changed[[kk]] [17:28:02.577] NAME <- NAMES[[kk]] [17:28:02.577] if (name != NAME && is.element(NAME, old_names)) [17:28:02.577] next [17:28:02.577] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.577] } [17:28:02.577] NAMES <- toupper(added) [17:28:02.577] for (kk in seq_along(NAMES)) { [17:28:02.577] name <- added[[kk]] [17:28:02.577] NAME <- NAMES[[kk]] [17:28:02.577] if (name != NAME && is.element(NAME, old_names)) [17:28:02.577] next [17:28:02.577] args[[name]] <- "" [17:28:02.577] } [17:28:02.577] NAMES <- toupper(removed) [17:28:02.577] for (kk in seq_along(NAMES)) { [17:28:02.577] name <- removed[[kk]] [17:28:02.577] NAME <- NAMES[[kk]] [17:28:02.577] if (name != NAME && is.element(NAME, old_names)) [17:28:02.577] next [17:28:02.577] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.577] } [17:28:02.577] if (length(args) > 0) [17:28:02.577] base::do.call(base::Sys.setenv, args = args) [17:28:02.577] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.577] } [17:28:02.577] { [17:28:02.577] if (base::length(...future.futureOptionsAdded) > [17:28:02.577] 0L) { [17:28:02.577] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.577] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.577] base::options(opts) [17:28:02.577] } [17:28:02.577] { [17:28:02.577] { [17:28:02.577] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.577] NULL [17:28:02.577] } [17:28:02.577] options(future.plan = NULL) [17:28:02.577] if (is.na(NA_character_)) [17:28:02.577] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.577] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.577] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.577] .init = FALSE) [17:28:02.577] } [17:28:02.577] } [17:28:02.577] } [17:28:02.577] }) [17:28:02.577] if (TRUE) { [17:28:02.577] base::sink(type = "output", split = FALSE) [17:28:02.577] if (TRUE) { [17:28:02.577] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.577] } [17:28:02.577] else { [17:28:02.577] ...future.result["stdout"] <- base::list(NULL) [17:28:02.577] } [17:28:02.577] base::close(...future.stdout) [17:28:02.577] ...future.stdout <- NULL [17:28:02.577] } [17:28:02.577] ...future.result$conditions <- ...future.conditions [17:28:02.577] ...future.result$finished <- base::Sys.time() [17:28:02.577] ...future.result [17:28:02.577] } [17:28:02.582] MultisessionFuture started [17:28:02.582] - Launch lazy future ... done [17:28:02.583] run() for 'MultisessionFuture' ... done [17:28:02.597] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.597] - Validating connection of MultisessionFuture [17:28:02.597] - received message: FutureResult [17:28:02.598] - Received FutureResult [17:28:02.598] - Erased future from FutureRegistry [17:28:02.598] result() for ClusterFuture ... [17:28:02.598] - result already collected: FutureResult [17:28:02.598] result() for ClusterFuture ... done [17:28:02.598] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.599] Future #1 [17:28:02.599] length: 2 (resolved future 1) [17:28:02.599] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.599] - Validating connection of MultisessionFuture [17:28:02.600] - received message: FutureResult [17:28:02.600] - Received FutureResult [17:28:02.600] - Erased future from FutureRegistry [17:28:02.600] result() for ClusterFuture ... [17:28:02.600] - result already collected: FutureResult [17:28:02.601] result() for ClusterFuture ... done [17:28:02.601] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.601] Future #2 [17:28:02.601] length: 1 (resolved future 2) [17:28:02.601] length: 0 (resolved future 3) [17:28:02.601] resolve() on list ... DONE [17:28:02.602] getGlobalsAndPackages() ... [17:28:02.602] Searching for globals... [17:28:02.602] [17:28:02.602] Searching for globals ... DONE [17:28:02.603] - globals: [0] [17:28:02.603] getGlobalsAndPackages() ... DONE [17:28:02.603] getGlobalsAndPackages() ... [17:28:02.603] Searching for globals... [17:28:02.604] [17:28:02.604] Searching for globals ... DONE [17:28:02.604] - globals: [0] [17:28:02.604] getGlobalsAndPackages() ... DONE [17:28:02.604] resolve() on list ... [17:28:02.605] recursive: 0 [17:28:02.605] length: 3 [17:28:02.605] elements: 'a', 'b', '' [17:28:02.605] run() for 'Future' ... [17:28:02.605] - state: 'created' [17:28:02.605] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.619] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.620] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.620] - Field: 'node' [17:28:02.620] - Field: 'label' [17:28:02.620] - Field: 'local' [17:28:02.620] - Field: 'owner' [17:28:02.621] - Field: 'envir' [17:28:02.621] - Field: 'workers' [17:28:02.621] - Field: 'packages' [17:28:02.621] - Field: 'gc' [17:28:02.621] - Field: 'conditions' [17:28:02.621] - Field: 'persistent' [17:28:02.622] - Field: 'expr' [17:28:02.622] - Field: 'uuid' [17:28:02.622] - Field: 'seed' [17:28:02.622] - Field: 'version' [17:28:02.622] - Field: 'result' [17:28:02.623] - Field: 'asynchronous' [17:28:02.623] - Field: 'calls' [17:28:02.623] - Field: 'globals' [17:28:02.623] - Field: 'stdout' [17:28:02.623] - Field: 'earlySignal' [17:28:02.623] - Field: 'lazy' [17:28:02.624] - Field: 'state' [17:28:02.624] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.624] - Launch lazy future ... [17:28:02.624] Packages needed by the future expression (n = 0): [17:28:02.624] Packages needed by future strategies (n = 0): [17:28:02.625] { [17:28:02.625] { [17:28:02.625] { [17:28:02.625] ...future.startTime <- base::Sys.time() [17:28:02.625] { [17:28:02.625] { [17:28:02.625] { [17:28:02.625] { [17:28:02.625] base::local({ [17:28:02.625] has_future <- base::requireNamespace("future", [17:28:02.625] quietly = TRUE) [17:28:02.625] if (has_future) { [17:28:02.625] ns <- base::getNamespace("future") [17:28:02.625] version <- ns[[".package"]][["version"]] [17:28:02.625] if (is.null(version)) [17:28:02.625] version <- utils::packageVersion("future") [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] version <- NULL [17:28:02.625] } [17:28:02.625] if (!has_future || version < "1.8.0") { [17:28:02.625] info <- base::c(r_version = base::gsub("R version ", [17:28:02.625] "", base::R.version$version.string), [17:28:02.625] platform = base::sprintf("%s (%s-bit)", [17:28:02.625] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.625] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.625] "release", "version")], collapse = " "), [17:28:02.625] hostname = base::Sys.info()[["nodename"]]) [17:28:02.625] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.625] info) [17:28:02.625] info <- base::paste(info, collapse = "; ") [17:28:02.625] if (!has_future) { [17:28:02.625] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.625] info) [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.625] info, version) [17:28:02.625] } [17:28:02.625] base::stop(msg) [17:28:02.625] } [17:28:02.625] }) [17:28:02.625] } [17:28:02.625] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.625] base::options(mc.cores = 1L) [17:28:02.625] } [17:28:02.625] ...future.strategy.old <- future::plan("list") [17:28:02.625] options(future.plan = NULL) [17:28:02.625] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.625] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.625] } [17:28:02.625] ...future.workdir <- getwd() [17:28:02.625] } [17:28:02.625] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.625] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.625] } [17:28:02.625] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.625] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.625] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.625] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.625] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.625] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.625] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.625] base::names(...future.oldOptions)) [17:28:02.625] } [17:28:02.625] if (FALSE) { [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] if (TRUE) { [17:28:02.625] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.625] open = "w") [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.625] windows = "NUL", "/dev/null"), open = "w") [17:28:02.625] } [17:28:02.625] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.625] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.625] base::sink(type = "output", split = FALSE) [17:28:02.625] base::close(...future.stdout) [17:28:02.625] }, add = TRUE) [17:28:02.625] } [17:28:02.625] ...future.frame <- base::sys.nframe() [17:28:02.625] ...future.conditions <- base::list() [17:28:02.625] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.625] if (FALSE) { [17:28:02.625] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.625] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.625] } [17:28:02.625] ...future.result <- base::tryCatch({ [17:28:02.625] base::withCallingHandlers({ [17:28:02.625] ...future.value <- base::withVisible(base::local({ [17:28:02.625] ...future.makeSendCondition <- base::local({ [17:28:02.625] sendCondition <- NULL [17:28:02.625] function(frame = 1L) { [17:28:02.625] if (is.function(sendCondition)) [17:28:02.625] return(sendCondition) [17:28:02.625] ns <- getNamespace("parallel") [17:28:02.625] if (exists("sendData", mode = "function", [17:28:02.625] envir = ns)) { [17:28:02.625] parallel_sendData <- get("sendData", mode = "function", [17:28:02.625] envir = ns) [17:28:02.625] envir <- sys.frame(frame) [17:28:02.625] master <- NULL [17:28:02.625] while (!identical(envir, .GlobalEnv) && [17:28:02.625] !identical(envir, emptyenv())) { [17:28:02.625] if (exists("master", mode = "list", envir = envir, [17:28:02.625] inherits = FALSE)) { [17:28:02.625] master <- get("master", mode = "list", [17:28:02.625] envir = envir, inherits = FALSE) [17:28:02.625] if (inherits(master, c("SOCKnode", [17:28:02.625] "SOCK0node"))) { [17:28:02.625] sendCondition <<- function(cond) { [17:28:02.625] data <- list(type = "VALUE", value = cond, [17:28:02.625] success = TRUE) [17:28:02.625] parallel_sendData(master, data) [17:28:02.625] } [17:28:02.625] return(sendCondition) [17:28:02.625] } [17:28:02.625] } [17:28:02.625] frame <- frame + 1L [17:28:02.625] envir <- sys.frame(frame) [17:28:02.625] } [17:28:02.625] } [17:28:02.625] sendCondition <<- function(cond) NULL [17:28:02.625] } [17:28:02.625] }) [17:28:02.625] withCallingHandlers({ [17:28:02.625] 1 [17:28:02.625] }, immediateCondition = function(cond) { [17:28:02.625] sendCondition <- ...future.makeSendCondition() [17:28:02.625] sendCondition(cond) [17:28:02.625] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.625] { [17:28:02.625] inherits <- base::inherits [17:28:02.625] invokeRestart <- base::invokeRestart [17:28:02.625] is.null <- base::is.null [17:28:02.625] muffled <- FALSE [17:28:02.625] if (inherits(cond, "message")) { [17:28:02.625] muffled <- grepl(pattern, "muffleMessage") [17:28:02.625] if (muffled) [17:28:02.625] invokeRestart("muffleMessage") [17:28:02.625] } [17:28:02.625] else if (inherits(cond, "warning")) { [17:28:02.625] muffled <- grepl(pattern, "muffleWarning") [17:28:02.625] if (muffled) [17:28:02.625] invokeRestart("muffleWarning") [17:28:02.625] } [17:28:02.625] else if (inherits(cond, "condition")) { [17:28:02.625] if (!is.null(pattern)) { [17:28:02.625] computeRestarts <- base::computeRestarts [17:28:02.625] grepl <- base::grepl [17:28:02.625] restarts <- computeRestarts(cond) [17:28:02.625] for (restart in restarts) { [17:28:02.625] name <- restart$name [17:28:02.625] if (is.null(name)) [17:28:02.625] next [17:28:02.625] if (!grepl(pattern, name)) [17:28:02.625] next [17:28:02.625] invokeRestart(restart) [17:28:02.625] muffled <- TRUE [17:28:02.625] break [17:28:02.625] } [17:28:02.625] } [17:28:02.625] } [17:28:02.625] invisible(muffled) [17:28:02.625] } [17:28:02.625] muffleCondition(cond) [17:28:02.625] }) [17:28:02.625] })) [17:28:02.625] future::FutureResult(value = ...future.value$value, [17:28:02.625] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.625] ...future.rng), globalenv = if (FALSE) [17:28:02.625] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.625] ...future.globalenv.names)) [17:28:02.625] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.625] }, condition = base::local({ [17:28:02.625] c <- base::c [17:28:02.625] inherits <- base::inherits [17:28:02.625] invokeRestart <- base::invokeRestart [17:28:02.625] length <- base::length [17:28:02.625] list <- base::list [17:28:02.625] seq.int <- base::seq.int [17:28:02.625] signalCondition <- base::signalCondition [17:28:02.625] sys.calls <- base::sys.calls [17:28:02.625] `[[` <- base::`[[` [17:28:02.625] `+` <- base::`+` [17:28:02.625] `<<-` <- base::`<<-` [17:28:02.625] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.625] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.625] 3L)] [17:28:02.625] } [17:28:02.625] function(cond) { [17:28:02.625] is_error <- inherits(cond, "error") [17:28:02.625] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.625] NULL) [17:28:02.625] if (is_error) { [17:28:02.625] sessionInformation <- function() { [17:28:02.625] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.625] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.625] search = base::search(), system = base::Sys.info()) [17:28:02.625] } [17:28:02.625] ...future.conditions[[length(...future.conditions) + [17:28:02.625] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.625] cond$call), session = sessionInformation(), [17:28:02.625] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.625] signalCondition(cond) [17:28:02.625] } [17:28:02.625] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.625] "immediateCondition"))) { [17:28:02.625] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.625] ...future.conditions[[length(...future.conditions) + [17:28:02.625] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.625] if (TRUE && !signal) { [17:28:02.625] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.625] { [17:28:02.625] inherits <- base::inherits [17:28:02.625] invokeRestart <- base::invokeRestart [17:28:02.625] is.null <- base::is.null [17:28:02.625] muffled <- FALSE [17:28:02.625] if (inherits(cond, "message")) { [17:28:02.625] muffled <- grepl(pattern, "muffleMessage") [17:28:02.625] if (muffled) [17:28:02.625] invokeRestart("muffleMessage") [17:28:02.625] } [17:28:02.625] else if (inherits(cond, "warning")) { [17:28:02.625] muffled <- grepl(pattern, "muffleWarning") [17:28:02.625] if (muffled) [17:28:02.625] invokeRestart("muffleWarning") [17:28:02.625] } [17:28:02.625] else if (inherits(cond, "condition")) { [17:28:02.625] if (!is.null(pattern)) { [17:28:02.625] computeRestarts <- base::computeRestarts [17:28:02.625] grepl <- base::grepl [17:28:02.625] restarts <- computeRestarts(cond) [17:28:02.625] for (restart in restarts) { [17:28:02.625] name <- restart$name [17:28:02.625] if (is.null(name)) [17:28:02.625] next [17:28:02.625] if (!grepl(pattern, name)) [17:28:02.625] next [17:28:02.625] invokeRestart(restart) [17:28:02.625] muffled <- TRUE [17:28:02.625] break [17:28:02.625] } [17:28:02.625] } [17:28:02.625] } [17:28:02.625] invisible(muffled) [17:28:02.625] } [17:28:02.625] muffleCondition(cond, pattern = "^muffle") [17:28:02.625] } [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] if (TRUE) { [17:28:02.625] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.625] { [17:28:02.625] inherits <- base::inherits [17:28:02.625] invokeRestart <- base::invokeRestart [17:28:02.625] is.null <- base::is.null [17:28:02.625] muffled <- FALSE [17:28:02.625] if (inherits(cond, "message")) { [17:28:02.625] muffled <- grepl(pattern, "muffleMessage") [17:28:02.625] if (muffled) [17:28:02.625] invokeRestart("muffleMessage") [17:28:02.625] } [17:28:02.625] else if (inherits(cond, "warning")) { [17:28:02.625] muffled <- grepl(pattern, "muffleWarning") [17:28:02.625] if (muffled) [17:28:02.625] invokeRestart("muffleWarning") [17:28:02.625] } [17:28:02.625] else if (inherits(cond, "condition")) { [17:28:02.625] if (!is.null(pattern)) { [17:28:02.625] computeRestarts <- base::computeRestarts [17:28:02.625] grepl <- base::grepl [17:28:02.625] restarts <- computeRestarts(cond) [17:28:02.625] for (restart in restarts) { [17:28:02.625] name <- restart$name [17:28:02.625] if (is.null(name)) [17:28:02.625] next [17:28:02.625] if (!grepl(pattern, name)) [17:28:02.625] next [17:28:02.625] invokeRestart(restart) [17:28:02.625] muffled <- TRUE [17:28:02.625] break [17:28:02.625] } [17:28:02.625] } [17:28:02.625] } [17:28:02.625] invisible(muffled) [17:28:02.625] } [17:28:02.625] muffleCondition(cond, pattern = "^muffle") [17:28:02.625] } [17:28:02.625] } [17:28:02.625] } [17:28:02.625] })) [17:28:02.625] }, error = function(ex) { [17:28:02.625] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.625] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.625] ...future.rng), started = ...future.startTime, [17:28:02.625] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.625] version = "1.8"), class = "FutureResult") [17:28:02.625] }, finally = { [17:28:02.625] if (!identical(...future.workdir, getwd())) [17:28:02.625] setwd(...future.workdir) [17:28:02.625] { [17:28:02.625] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.625] ...future.oldOptions$nwarnings <- NULL [17:28:02.625] } [17:28:02.625] base::options(...future.oldOptions) [17:28:02.625] if (.Platform$OS.type == "windows") { [17:28:02.625] old_names <- names(...future.oldEnvVars) [17:28:02.625] envs <- base::Sys.getenv() [17:28:02.625] names <- names(envs) [17:28:02.625] common <- intersect(names, old_names) [17:28:02.625] added <- setdiff(names, old_names) [17:28:02.625] removed <- setdiff(old_names, names) [17:28:02.625] changed <- common[...future.oldEnvVars[common] != [17:28:02.625] envs[common]] [17:28:02.625] NAMES <- toupper(changed) [17:28:02.625] args <- list() [17:28:02.625] for (kk in seq_along(NAMES)) { [17:28:02.625] name <- changed[[kk]] [17:28:02.625] NAME <- NAMES[[kk]] [17:28:02.625] if (name != NAME && is.element(NAME, old_names)) [17:28:02.625] next [17:28:02.625] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.625] } [17:28:02.625] NAMES <- toupper(added) [17:28:02.625] for (kk in seq_along(NAMES)) { [17:28:02.625] name <- added[[kk]] [17:28:02.625] NAME <- NAMES[[kk]] [17:28:02.625] if (name != NAME && is.element(NAME, old_names)) [17:28:02.625] next [17:28:02.625] args[[name]] <- "" [17:28:02.625] } [17:28:02.625] NAMES <- toupper(removed) [17:28:02.625] for (kk in seq_along(NAMES)) { [17:28:02.625] name <- removed[[kk]] [17:28:02.625] NAME <- NAMES[[kk]] [17:28:02.625] if (name != NAME && is.element(NAME, old_names)) [17:28:02.625] next [17:28:02.625] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.625] } [17:28:02.625] if (length(args) > 0) [17:28:02.625] base::do.call(base::Sys.setenv, args = args) [17:28:02.625] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.625] } [17:28:02.625] { [17:28:02.625] if (base::length(...future.futureOptionsAdded) > [17:28:02.625] 0L) { [17:28:02.625] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.625] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.625] base::options(opts) [17:28:02.625] } [17:28:02.625] { [17:28:02.625] { [17:28:02.625] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.625] NULL [17:28:02.625] } [17:28:02.625] options(future.plan = NULL) [17:28:02.625] if (is.na(NA_character_)) [17:28:02.625] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.625] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.625] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.625] .init = FALSE) [17:28:02.625] } [17:28:02.625] } [17:28:02.625] } [17:28:02.625] }) [17:28:02.625] if (TRUE) { [17:28:02.625] base::sink(type = "output", split = FALSE) [17:28:02.625] if (TRUE) { [17:28:02.625] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.625] } [17:28:02.625] else { [17:28:02.625] ...future.result["stdout"] <- base::list(NULL) [17:28:02.625] } [17:28:02.625] base::close(...future.stdout) [17:28:02.625] ...future.stdout <- NULL [17:28:02.625] } [17:28:02.625] ...future.result$conditions <- ...future.conditions [17:28:02.625] ...future.result$finished <- base::Sys.time() [17:28:02.625] ...future.result [17:28:02.625] } [17:28:02.630] MultisessionFuture started [17:28:02.631] - Launch lazy future ... done [17:28:02.631] run() for 'MultisessionFuture' ... done [17:28:02.644] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.645] - Validating connection of MultisessionFuture [17:28:02.645] - received message: FutureResult [17:28:02.645] - Received FutureResult [17:28:02.645] - Erased future from FutureRegistry [17:28:02.645] result() for ClusterFuture ... [17:28:02.646] - result already collected: FutureResult [17:28:02.646] result() for ClusterFuture ... done [17:28:02.646] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.646] Future #1 [17:28:02.646] length: 2 (resolved future 1) [17:28:02.646] run() for 'Future' ... [17:28:02.647] - state: 'created' [17:28:02.647] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.660] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.661] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.661] - Field: 'node' [17:28:02.661] - Field: 'label' [17:28:02.661] - Field: 'local' [17:28:02.661] - Field: 'owner' [17:28:02.662] - Field: 'envir' [17:28:02.662] - Field: 'workers' [17:28:02.662] - Field: 'packages' [17:28:02.662] - Field: 'gc' [17:28:02.662] - Field: 'conditions' [17:28:02.663] - Field: 'persistent' [17:28:02.663] - Field: 'expr' [17:28:02.663] - Field: 'uuid' [17:28:02.663] - Field: 'seed' [17:28:02.663] - Field: 'version' [17:28:02.664] - Field: 'result' [17:28:02.664] - Field: 'asynchronous' [17:28:02.664] - Field: 'calls' [17:28:02.664] - Field: 'globals' [17:28:02.664] - Field: 'stdout' [17:28:02.664] - Field: 'earlySignal' [17:28:02.665] - Field: 'lazy' [17:28:02.665] - Field: 'state' [17:28:02.665] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.665] - Launch lazy future ... [17:28:02.665] Packages needed by the future expression (n = 0): [17:28:02.666] Packages needed by future strategies (n = 0): [17:28:02.666] { [17:28:02.666] { [17:28:02.666] { [17:28:02.666] ...future.startTime <- base::Sys.time() [17:28:02.666] { [17:28:02.666] { [17:28:02.666] { [17:28:02.666] { [17:28:02.666] base::local({ [17:28:02.666] has_future <- base::requireNamespace("future", [17:28:02.666] quietly = TRUE) [17:28:02.666] if (has_future) { [17:28:02.666] ns <- base::getNamespace("future") [17:28:02.666] version <- ns[[".package"]][["version"]] [17:28:02.666] if (is.null(version)) [17:28:02.666] version <- utils::packageVersion("future") [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] version <- NULL [17:28:02.666] } [17:28:02.666] if (!has_future || version < "1.8.0") { [17:28:02.666] info <- base::c(r_version = base::gsub("R version ", [17:28:02.666] "", base::R.version$version.string), [17:28:02.666] platform = base::sprintf("%s (%s-bit)", [17:28:02.666] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.666] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.666] "release", "version")], collapse = " "), [17:28:02.666] hostname = base::Sys.info()[["nodename"]]) [17:28:02.666] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.666] info) [17:28:02.666] info <- base::paste(info, collapse = "; ") [17:28:02.666] if (!has_future) { [17:28:02.666] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.666] info) [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.666] info, version) [17:28:02.666] } [17:28:02.666] base::stop(msg) [17:28:02.666] } [17:28:02.666] }) [17:28:02.666] } [17:28:02.666] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.666] base::options(mc.cores = 1L) [17:28:02.666] } [17:28:02.666] ...future.strategy.old <- future::plan("list") [17:28:02.666] options(future.plan = NULL) [17:28:02.666] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.666] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.666] } [17:28:02.666] ...future.workdir <- getwd() [17:28:02.666] } [17:28:02.666] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.666] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.666] } [17:28:02.666] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.666] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.666] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.666] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.666] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.666] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.666] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.666] base::names(...future.oldOptions)) [17:28:02.666] } [17:28:02.666] if (FALSE) { [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] if (TRUE) { [17:28:02.666] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.666] open = "w") [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.666] windows = "NUL", "/dev/null"), open = "w") [17:28:02.666] } [17:28:02.666] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.666] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.666] base::sink(type = "output", split = FALSE) [17:28:02.666] base::close(...future.stdout) [17:28:02.666] }, add = TRUE) [17:28:02.666] } [17:28:02.666] ...future.frame <- base::sys.nframe() [17:28:02.666] ...future.conditions <- base::list() [17:28:02.666] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.666] if (FALSE) { [17:28:02.666] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.666] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.666] } [17:28:02.666] ...future.result <- base::tryCatch({ [17:28:02.666] base::withCallingHandlers({ [17:28:02.666] ...future.value <- base::withVisible(base::local({ [17:28:02.666] ...future.makeSendCondition <- base::local({ [17:28:02.666] sendCondition <- NULL [17:28:02.666] function(frame = 1L) { [17:28:02.666] if (is.function(sendCondition)) [17:28:02.666] return(sendCondition) [17:28:02.666] ns <- getNamespace("parallel") [17:28:02.666] if (exists("sendData", mode = "function", [17:28:02.666] envir = ns)) { [17:28:02.666] parallel_sendData <- get("sendData", mode = "function", [17:28:02.666] envir = ns) [17:28:02.666] envir <- sys.frame(frame) [17:28:02.666] master <- NULL [17:28:02.666] while (!identical(envir, .GlobalEnv) && [17:28:02.666] !identical(envir, emptyenv())) { [17:28:02.666] if (exists("master", mode = "list", envir = envir, [17:28:02.666] inherits = FALSE)) { [17:28:02.666] master <- get("master", mode = "list", [17:28:02.666] envir = envir, inherits = FALSE) [17:28:02.666] if (inherits(master, c("SOCKnode", [17:28:02.666] "SOCK0node"))) { [17:28:02.666] sendCondition <<- function(cond) { [17:28:02.666] data <- list(type = "VALUE", value = cond, [17:28:02.666] success = TRUE) [17:28:02.666] parallel_sendData(master, data) [17:28:02.666] } [17:28:02.666] return(sendCondition) [17:28:02.666] } [17:28:02.666] } [17:28:02.666] frame <- frame + 1L [17:28:02.666] envir <- sys.frame(frame) [17:28:02.666] } [17:28:02.666] } [17:28:02.666] sendCondition <<- function(cond) NULL [17:28:02.666] } [17:28:02.666] }) [17:28:02.666] withCallingHandlers({ [17:28:02.666] 2 [17:28:02.666] }, immediateCondition = function(cond) { [17:28:02.666] sendCondition <- ...future.makeSendCondition() [17:28:02.666] sendCondition(cond) [17:28:02.666] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.666] { [17:28:02.666] inherits <- base::inherits [17:28:02.666] invokeRestart <- base::invokeRestart [17:28:02.666] is.null <- base::is.null [17:28:02.666] muffled <- FALSE [17:28:02.666] if (inherits(cond, "message")) { [17:28:02.666] muffled <- grepl(pattern, "muffleMessage") [17:28:02.666] if (muffled) [17:28:02.666] invokeRestart("muffleMessage") [17:28:02.666] } [17:28:02.666] else if (inherits(cond, "warning")) { [17:28:02.666] muffled <- grepl(pattern, "muffleWarning") [17:28:02.666] if (muffled) [17:28:02.666] invokeRestart("muffleWarning") [17:28:02.666] } [17:28:02.666] else if (inherits(cond, "condition")) { [17:28:02.666] if (!is.null(pattern)) { [17:28:02.666] computeRestarts <- base::computeRestarts [17:28:02.666] grepl <- base::grepl [17:28:02.666] restarts <- computeRestarts(cond) [17:28:02.666] for (restart in restarts) { [17:28:02.666] name <- restart$name [17:28:02.666] if (is.null(name)) [17:28:02.666] next [17:28:02.666] if (!grepl(pattern, name)) [17:28:02.666] next [17:28:02.666] invokeRestart(restart) [17:28:02.666] muffled <- TRUE [17:28:02.666] break [17:28:02.666] } [17:28:02.666] } [17:28:02.666] } [17:28:02.666] invisible(muffled) [17:28:02.666] } [17:28:02.666] muffleCondition(cond) [17:28:02.666] }) [17:28:02.666] })) [17:28:02.666] future::FutureResult(value = ...future.value$value, [17:28:02.666] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.666] ...future.rng), globalenv = if (FALSE) [17:28:02.666] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.666] ...future.globalenv.names)) [17:28:02.666] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.666] }, condition = base::local({ [17:28:02.666] c <- base::c [17:28:02.666] inherits <- base::inherits [17:28:02.666] invokeRestart <- base::invokeRestart [17:28:02.666] length <- base::length [17:28:02.666] list <- base::list [17:28:02.666] seq.int <- base::seq.int [17:28:02.666] signalCondition <- base::signalCondition [17:28:02.666] sys.calls <- base::sys.calls [17:28:02.666] `[[` <- base::`[[` [17:28:02.666] `+` <- base::`+` [17:28:02.666] `<<-` <- base::`<<-` [17:28:02.666] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.666] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.666] 3L)] [17:28:02.666] } [17:28:02.666] function(cond) { [17:28:02.666] is_error <- inherits(cond, "error") [17:28:02.666] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.666] NULL) [17:28:02.666] if (is_error) { [17:28:02.666] sessionInformation <- function() { [17:28:02.666] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.666] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.666] search = base::search(), system = base::Sys.info()) [17:28:02.666] } [17:28:02.666] ...future.conditions[[length(...future.conditions) + [17:28:02.666] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.666] cond$call), session = sessionInformation(), [17:28:02.666] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.666] signalCondition(cond) [17:28:02.666] } [17:28:02.666] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.666] "immediateCondition"))) { [17:28:02.666] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.666] ...future.conditions[[length(...future.conditions) + [17:28:02.666] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.666] if (TRUE && !signal) { [17:28:02.666] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.666] { [17:28:02.666] inherits <- base::inherits [17:28:02.666] invokeRestart <- base::invokeRestart [17:28:02.666] is.null <- base::is.null [17:28:02.666] muffled <- FALSE [17:28:02.666] if (inherits(cond, "message")) { [17:28:02.666] muffled <- grepl(pattern, "muffleMessage") [17:28:02.666] if (muffled) [17:28:02.666] invokeRestart("muffleMessage") [17:28:02.666] } [17:28:02.666] else if (inherits(cond, "warning")) { [17:28:02.666] muffled <- grepl(pattern, "muffleWarning") [17:28:02.666] if (muffled) [17:28:02.666] invokeRestart("muffleWarning") [17:28:02.666] } [17:28:02.666] else if (inherits(cond, "condition")) { [17:28:02.666] if (!is.null(pattern)) { [17:28:02.666] computeRestarts <- base::computeRestarts [17:28:02.666] grepl <- base::grepl [17:28:02.666] restarts <- computeRestarts(cond) [17:28:02.666] for (restart in restarts) { [17:28:02.666] name <- restart$name [17:28:02.666] if (is.null(name)) [17:28:02.666] next [17:28:02.666] if (!grepl(pattern, name)) [17:28:02.666] next [17:28:02.666] invokeRestart(restart) [17:28:02.666] muffled <- TRUE [17:28:02.666] break [17:28:02.666] } [17:28:02.666] } [17:28:02.666] } [17:28:02.666] invisible(muffled) [17:28:02.666] } [17:28:02.666] muffleCondition(cond, pattern = "^muffle") [17:28:02.666] } [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] if (TRUE) { [17:28:02.666] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.666] { [17:28:02.666] inherits <- base::inherits [17:28:02.666] invokeRestart <- base::invokeRestart [17:28:02.666] is.null <- base::is.null [17:28:02.666] muffled <- FALSE [17:28:02.666] if (inherits(cond, "message")) { [17:28:02.666] muffled <- grepl(pattern, "muffleMessage") [17:28:02.666] if (muffled) [17:28:02.666] invokeRestart("muffleMessage") [17:28:02.666] } [17:28:02.666] else if (inherits(cond, "warning")) { [17:28:02.666] muffled <- grepl(pattern, "muffleWarning") [17:28:02.666] if (muffled) [17:28:02.666] invokeRestart("muffleWarning") [17:28:02.666] } [17:28:02.666] else if (inherits(cond, "condition")) { [17:28:02.666] if (!is.null(pattern)) { [17:28:02.666] computeRestarts <- base::computeRestarts [17:28:02.666] grepl <- base::grepl [17:28:02.666] restarts <- computeRestarts(cond) [17:28:02.666] for (restart in restarts) { [17:28:02.666] name <- restart$name [17:28:02.666] if (is.null(name)) [17:28:02.666] next [17:28:02.666] if (!grepl(pattern, name)) [17:28:02.666] next [17:28:02.666] invokeRestart(restart) [17:28:02.666] muffled <- TRUE [17:28:02.666] break [17:28:02.666] } [17:28:02.666] } [17:28:02.666] } [17:28:02.666] invisible(muffled) [17:28:02.666] } [17:28:02.666] muffleCondition(cond, pattern = "^muffle") [17:28:02.666] } [17:28:02.666] } [17:28:02.666] } [17:28:02.666] })) [17:28:02.666] }, error = function(ex) { [17:28:02.666] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.666] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.666] ...future.rng), started = ...future.startTime, [17:28:02.666] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.666] version = "1.8"), class = "FutureResult") [17:28:02.666] }, finally = { [17:28:02.666] if (!identical(...future.workdir, getwd())) [17:28:02.666] setwd(...future.workdir) [17:28:02.666] { [17:28:02.666] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.666] ...future.oldOptions$nwarnings <- NULL [17:28:02.666] } [17:28:02.666] base::options(...future.oldOptions) [17:28:02.666] if (.Platform$OS.type == "windows") { [17:28:02.666] old_names <- names(...future.oldEnvVars) [17:28:02.666] envs <- base::Sys.getenv() [17:28:02.666] names <- names(envs) [17:28:02.666] common <- intersect(names, old_names) [17:28:02.666] added <- setdiff(names, old_names) [17:28:02.666] removed <- setdiff(old_names, names) [17:28:02.666] changed <- common[...future.oldEnvVars[common] != [17:28:02.666] envs[common]] [17:28:02.666] NAMES <- toupper(changed) [17:28:02.666] args <- list() [17:28:02.666] for (kk in seq_along(NAMES)) { [17:28:02.666] name <- changed[[kk]] [17:28:02.666] NAME <- NAMES[[kk]] [17:28:02.666] if (name != NAME && is.element(NAME, old_names)) [17:28:02.666] next [17:28:02.666] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.666] } [17:28:02.666] NAMES <- toupper(added) [17:28:02.666] for (kk in seq_along(NAMES)) { [17:28:02.666] name <- added[[kk]] [17:28:02.666] NAME <- NAMES[[kk]] [17:28:02.666] if (name != NAME && is.element(NAME, old_names)) [17:28:02.666] next [17:28:02.666] args[[name]] <- "" [17:28:02.666] } [17:28:02.666] NAMES <- toupper(removed) [17:28:02.666] for (kk in seq_along(NAMES)) { [17:28:02.666] name <- removed[[kk]] [17:28:02.666] NAME <- NAMES[[kk]] [17:28:02.666] if (name != NAME && is.element(NAME, old_names)) [17:28:02.666] next [17:28:02.666] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.666] } [17:28:02.666] if (length(args) > 0) [17:28:02.666] base::do.call(base::Sys.setenv, args = args) [17:28:02.666] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.666] } [17:28:02.666] { [17:28:02.666] if (base::length(...future.futureOptionsAdded) > [17:28:02.666] 0L) { [17:28:02.666] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.666] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.666] base::options(opts) [17:28:02.666] } [17:28:02.666] { [17:28:02.666] { [17:28:02.666] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.666] NULL [17:28:02.666] } [17:28:02.666] options(future.plan = NULL) [17:28:02.666] if (is.na(NA_character_)) [17:28:02.666] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.666] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.666] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.666] .init = FALSE) [17:28:02.666] } [17:28:02.666] } [17:28:02.666] } [17:28:02.666] }) [17:28:02.666] if (TRUE) { [17:28:02.666] base::sink(type = "output", split = FALSE) [17:28:02.666] if (TRUE) { [17:28:02.666] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.666] } [17:28:02.666] else { [17:28:02.666] ...future.result["stdout"] <- base::list(NULL) [17:28:02.666] } [17:28:02.666] base::close(...future.stdout) [17:28:02.666] ...future.stdout <- NULL [17:28:02.666] } [17:28:02.666] ...future.result$conditions <- ...future.conditions [17:28:02.666] ...future.result$finished <- base::Sys.time() [17:28:02.666] ...future.result [17:28:02.666] } [17:28:02.672] MultisessionFuture started [17:28:02.672] - Launch lazy future ... done [17:28:02.672] run() for 'MultisessionFuture' ... done [17:28:02.687] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.687] - Validating connection of MultisessionFuture [17:28:02.688] - received message: FutureResult [17:28:02.688] - Received FutureResult [17:28:02.688] - Erased future from FutureRegistry [17:28:02.688] result() for ClusterFuture ... [17:28:02.688] - result already collected: FutureResult [17:28:02.688] result() for ClusterFuture ... done [17:28:02.689] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.689] Future #2 [17:28:02.689] length: 1 (resolved future 2) [17:28:02.689] length: 0 (resolved future 3) [17:28:02.689] resolve() on list ... DONE [17:28:02.690] getGlobalsAndPackages() ... [17:28:02.690] Searching for globals... [17:28:02.690] [17:28:02.690] Searching for globals ... DONE [17:28:02.690] - globals: [0] [17:28:02.691] getGlobalsAndPackages() ... DONE [17:28:02.691] run() for 'Future' ... [17:28:02.691] - state: 'created' [17:28:02.691] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.705] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.706] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.706] - Field: 'node' [17:28:02.706] - Field: 'label' [17:28:02.706] - Field: 'local' [17:28:02.706] - Field: 'owner' [17:28:02.707] - Field: 'envir' [17:28:02.707] - Field: 'workers' [17:28:02.707] - Field: 'packages' [17:28:02.707] - Field: 'gc' [17:28:02.707] - Field: 'conditions' [17:28:02.708] - Field: 'persistent' [17:28:02.708] - Field: 'expr' [17:28:02.708] - Field: 'uuid' [17:28:02.708] - Field: 'seed' [17:28:02.708] - Field: 'version' [17:28:02.708] - Field: 'result' [17:28:02.709] - Field: 'asynchronous' [17:28:02.709] - Field: 'calls' [17:28:02.709] - Field: 'globals' [17:28:02.709] - Field: 'stdout' [17:28:02.709] - Field: 'earlySignal' [17:28:02.710] - Field: 'lazy' [17:28:02.710] - Field: 'state' [17:28:02.710] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.710] - Launch lazy future ... [17:28:02.710] Packages needed by the future expression (n = 0): [17:28:02.714] Packages needed by future strategies (n = 0): [17:28:02.715] { [17:28:02.715] { [17:28:02.715] { [17:28:02.715] ...future.startTime <- base::Sys.time() [17:28:02.715] { [17:28:02.715] { [17:28:02.715] { [17:28:02.715] { [17:28:02.715] base::local({ [17:28:02.715] has_future <- base::requireNamespace("future", [17:28:02.715] quietly = TRUE) [17:28:02.715] if (has_future) { [17:28:02.715] ns <- base::getNamespace("future") [17:28:02.715] version <- ns[[".package"]][["version"]] [17:28:02.715] if (is.null(version)) [17:28:02.715] version <- utils::packageVersion("future") [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] version <- NULL [17:28:02.715] } [17:28:02.715] if (!has_future || version < "1.8.0") { [17:28:02.715] info <- base::c(r_version = base::gsub("R version ", [17:28:02.715] "", base::R.version$version.string), [17:28:02.715] platform = base::sprintf("%s (%s-bit)", [17:28:02.715] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.715] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.715] "release", "version")], collapse = " "), [17:28:02.715] hostname = base::Sys.info()[["nodename"]]) [17:28:02.715] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.715] info) [17:28:02.715] info <- base::paste(info, collapse = "; ") [17:28:02.715] if (!has_future) { [17:28:02.715] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.715] info) [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.715] info, version) [17:28:02.715] } [17:28:02.715] base::stop(msg) [17:28:02.715] } [17:28:02.715] }) [17:28:02.715] } [17:28:02.715] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.715] base::options(mc.cores = 1L) [17:28:02.715] } [17:28:02.715] ...future.strategy.old <- future::plan("list") [17:28:02.715] options(future.plan = NULL) [17:28:02.715] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.715] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.715] } [17:28:02.715] ...future.workdir <- getwd() [17:28:02.715] } [17:28:02.715] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.715] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.715] } [17:28:02.715] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.715] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.715] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.715] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.715] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.715] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.715] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.715] base::names(...future.oldOptions)) [17:28:02.715] } [17:28:02.715] if (FALSE) { [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] if (TRUE) { [17:28:02.715] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.715] open = "w") [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.715] windows = "NUL", "/dev/null"), open = "w") [17:28:02.715] } [17:28:02.715] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.715] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.715] base::sink(type = "output", split = FALSE) [17:28:02.715] base::close(...future.stdout) [17:28:02.715] }, add = TRUE) [17:28:02.715] } [17:28:02.715] ...future.frame <- base::sys.nframe() [17:28:02.715] ...future.conditions <- base::list() [17:28:02.715] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.715] if (FALSE) { [17:28:02.715] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.715] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.715] } [17:28:02.715] ...future.result <- base::tryCatch({ [17:28:02.715] base::withCallingHandlers({ [17:28:02.715] ...future.value <- base::withVisible(base::local({ [17:28:02.715] ...future.makeSendCondition <- base::local({ [17:28:02.715] sendCondition <- NULL [17:28:02.715] function(frame = 1L) { [17:28:02.715] if (is.function(sendCondition)) [17:28:02.715] return(sendCondition) [17:28:02.715] ns <- getNamespace("parallel") [17:28:02.715] if (exists("sendData", mode = "function", [17:28:02.715] envir = ns)) { [17:28:02.715] parallel_sendData <- get("sendData", mode = "function", [17:28:02.715] envir = ns) [17:28:02.715] envir <- sys.frame(frame) [17:28:02.715] master <- NULL [17:28:02.715] while (!identical(envir, .GlobalEnv) && [17:28:02.715] !identical(envir, emptyenv())) { [17:28:02.715] if (exists("master", mode = "list", envir = envir, [17:28:02.715] inherits = FALSE)) { [17:28:02.715] master <- get("master", mode = "list", [17:28:02.715] envir = envir, inherits = FALSE) [17:28:02.715] if (inherits(master, c("SOCKnode", [17:28:02.715] "SOCK0node"))) { [17:28:02.715] sendCondition <<- function(cond) { [17:28:02.715] data <- list(type = "VALUE", value = cond, [17:28:02.715] success = TRUE) [17:28:02.715] parallel_sendData(master, data) [17:28:02.715] } [17:28:02.715] return(sendCondition) [17:28:02.715] } [17:28:02.715] } [17:28:02.715] frame <- frame + 1L [17:28:02.715] envir <- sys.frame(frame) [17:28:02.715] } [17:28:02.715] } [17:28:02.715] sendCondition <<- function(cond) NULL [17:28:02.715] } [17:28:02.715] }) [17:28:02.715] withCallingHandlers({ [17:28:02.715] 1 [17:28:02.715] }, immediateCondition = function(cond) { [17:28:02.715] sendCondition <- ...future.makeSendCondition() [17:28:02.715] sendCondition(cond) [17:28:02.715] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.715] { [17:28:02.715] inherits <- base::inherits [17:28:02.715] invokeRestart <- base::invokeRestart [17:28:02.715] is.null <- base::is.null [17:28:02.715] muffled <- FALSE [17:28:02.715] if (inherits(cond, "message")) { [17:28:02.715] muffled <- grepl(pattern, "muffleMessage") [17:28:02.715] if (muffled) [17:28:02.715] invokeRestart("muffleMessage") [17:28:02.715] } [17:28:02.715] else if (inherits(cond, "warning")) { [17:28:02.715] muffled <- grepl(pattern, "muffleWarning") [17:28:02.715] if (muffled) [17:28:02.715] invokeRestart("muffleWarning") [17:28:02.715] } [17:28:02.715] else if (inherits(cond, "condition")) { [17:28:02.715] if (!is.null(pattern)) { [17:28:02.715] computeRestarts <- base::computeRestarts [17:28:02.715] grepl <- base::grepl [17:28:02.715] restarts <- computeRestarts(cond) [17:28:02.715] for (restart in restarts) { [17:28:02.715] name <- restart$name [17:28:02.715] if (is.null(name)) [17:28:02.715] next [17:28:02.715] if (!grepl(pattern, name)) [17:28:02.715] next [17:28:02.715] invokeRestart(restart) [17:28:02.715] muffled <- TRUE [17:28:02.715] break [17:28:02.715] } [17:28:02.715] } [17:28:02.715] } [17:28:02.715] invisible(muffled) [17:28:02.715] } [17:28:02.715] muffleCondition(cond) [17:28:02.715] }) [17:28:02.715] })) [17:28:02.715] future::FutureResult(value = ...future.value$value, [17:28:02.715] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.715] ...future.rng), globalenv = if (FALSE) [17:28:02.715] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.715] ...future.globalenv.names)) [17:28:02.715] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.715] }, condition = base::local({ [17:28:02.715] c <- base::c [17:28:02.715] inherits <- base::inherits [17:28:02.715] invokeRestart <- base::invokeRestart [17:28:02.715] length <- base::length [17:28:02.715] list <- base::list [17:28:02.715] seq.int <- base::seq.int [17:28:02.715] signalCondition <- base::signalCondition [17:28:02.715] sys.calls <- base::sys.calls [17:28:02.715] `[[` <- base::`[[` [17:28:02.715] `+` <- base::`+` [17:28:02.715] `<<-` <- base::`<<-` [17:28:02.715] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.715] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.715] 3L)] [17:28:02.715] } [17:28:02.715] function(cond) { [17:28:02.715] is_error <- inherits(cond, "error") [17:28:02.715] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.715] NULL) [17:28:02.715] if (is_error) { [17:28:02.715] sessionInformation <- function() { [17:28:02.715] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.715] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.715] search = base::search(), system = base::Sys.info()) [17:28:02.715] } [17:28:02.715] ...future.conditions[[length(...future.conditions) + [17:28:02.715] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.715] cond$call), session = sessionInformation(), [17:28:02.715] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.715] signalCondition(cond) [17:28:02.715] } [17:28:02.715] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.715] "immediateCondition"))) { [17:28:02.715] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.715] ...future.conditions[[length(...future.conditions) + [17:28:02.715] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.715] if (TRUE && !signal) { [17:28:02.715] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.715] { [17:28:02.715] inherits <- base::inherits [17:28:02.715] invokeRestart <- base::invokeRestart [17:28:02.715] is.null <- base::is.null [17:28:02.715] muffled <- FALSE [17:28:02.715] if (inherits(cond, "message")) { [17:28:02.715] muffled <- grepl(pattern, "muffleMessage") [17:28:02.715] if (muffled) [17:28:02.715] invokeRestart("muffleMessage") [17:28:02.715] } [17:28:02.715] else if (inherits(cond, "warning")) { [17:28:02.715] muffled <- grepl(pattern, "muffleWarning") [17:28:02.715] if (muffled) [17:28:02.715] invokeRestart("muffleWarning") [17:28:02.715] } [17:28:02.715] else if (inherits(cond, "condition")) { [17:28:02.715] if (!is.null(pattern)) { [17:28:02.715] computeRestarts <- base::computeRestarts [17:28:02.715] grepl <- base::grepl [17:28:02.715] restarts <- computeRestarts(cond) [17:28:02.715] for (restart in restarts) { [17:28:02.715] name <- restart$name [17:28:02.715] if (is.null(name)) [17:28:02.715] next [17:28:02.715] if (!grepl(pattern, name)) [17:28:02.715] next [17:28:02.715] invokeRestart(restart) [17:28:02.715] muffled <- TRUE [17:28:02.715] break [17:28:02.715] } [17:28:02.715] } [17:28:02.715] } [17:28:02.715] invisible(muffled) [17:28:02.715] } [17:28:02.715] muffleCondition(cond, pattern = "^muffle") [17:28:02.715] } [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] if (TRUE) { [17:28:02.715] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.715] { [17:28:02.715] inherits <- base::inherits [17:28:02.715] invokeRestart <- base::invokeRestart [17:28:02.715] is.null <- base::is.null [17:28:02.715] muffled <- FALSE [17:28:02.715] if (inherits(cond, "message")) { [17:28:02.715] muffled <- grepl(pattern, "muffleMessage") [17:28:02.715] if (muffled) [17:28:02.715] invokeRestart("muffleMessage") [17:28:02.715] } [17:28:02.715] else if (inherits(cond, "warning")) { [17:28:02.715] muffled <- grepl(pattern, "muffleWarning") [17:28:02.715] if (muffled) [17:28:02.715] invokeRestart("muffleWarning") [17:28:02.715] } [17:28:02.715] else if (inherits(cond, "condition")) { [17:28:02.715] if (!is.null(pattern)) { [17:28:02.715] computeRestarts <- base::computeRestarts [17:28:02.715] grepl <- base::grepl [17:28:02.715] restarts <- computeRestarts(cond) [17:28:02.715] for (restart in restarts) { [17:28:02.715] name <- restart$name [17:28:02.715] if (is.null(name)) [17:28:02.715] next [17:28:02.715] if (!grepl(pattern, name)) [17:28:02.715] next [17:28:02.715] invokeRestart(restart) [17:28:02.715] muffled <- TRUE [17:28:02.715] break [17:28:02.715] } [17:28:02.715] } [17:28:02.715] } [17:28:02.715] invisible(muffled) [17:28:02.715] } [17:28:02.715] muffleCondition(cond, pattern = "^muffle") [17:28:02.715] } [17:28:02.715] } [17:28:02.715] } [17:28:02.715] })) [17:28:02.715] }, error = function(ex) { [17:28:02.715] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.715] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.715] ...future.rng), started = ...future.startTime, [17:28:02.715] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.715] version = "1.8"), class = "FutureResult") [17:28:02.715] }, finally = { [17:28:02.715] if (!identical(...future.workdir, getwd())) [17:28:02.715] setwd(...future.workdir) [17:28:02.715] { [17:28:02.715] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.715] ...future.oldOptions$nwarnings <- NULL [17:28:02.715] } [17:28:02.715] base::options(...future.oldOptions) [17:28:02.715] if (.Platform$OS.type == "windows") { [17:28:02.715] old_names <- names(...future.oldEnvVars) [17:28:02.715] envs <- base::Sys.getenv() [17:28:02.715] names <- names(envs) [17:28:02.715] common <- intersect(names, old_names) [17:28:02.715] added <- setdiff(names, old_names) [17:28:02.715] removed <- setdiff(old_names, names) [17:28:02.715] changed <- common[...future.oldEnvVars[common] != [17:28:02.715] envs[common]] [17:28:02.715] NAMES <- toupper(changed) [17:28:02.715] args <- list() [17:28:02.715] for (kk in seq_along(NAMES)) { [17:28:02.715] name <- changed[[kk]] [17:28:02.715] NAME <- NAMES[[kk]] [17:28:02.715] if (name != NAME && is.element(NAME, old_names)) [17:28:02.715] next [17:28:02.715] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.715] } [17:28:02.715] NAMES <- toupper(added) [17:28:02.715] for (kk in seq_along(NAMES)) { [17:28:02.715] name <- added[[kk]] [17:28:02.715] NAME <- NAMES[[kk]] [17:28:02.715] if (name != NAME && is.element(NAME, old_names)) [17:28:02.715] next [17:28:02.715] args[[name]] <- "" [17:28:02.715] } [17:28:02.715] NAMES <- toupper(removed) [17:28:02.715] for (kk in seq_along(NAMES)) { [17:28:02.715] name <- removed[[kk]] [17:28:02.715] NAME <- NAMES[[kk]] [17:28:02.715] if (name != NAME && is.element(NAME, old_names)) [17:28:02.715] next [17:28:02.715] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.715] } [17:28:02.715] if (length(args) > 0) [17:28:02.715] base::do.call(base::Sys.setenv, args = args) [17:28:02.715] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.715] } [17:28:02.715] { [17:28:02.715] if (base::length(...future.futureOptionsAdded) > [17:28:02.715] 0L) { [17:28:02.715] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.715] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.715] base::options(opts) [17:28:02.715] } [17:28:02.715] { [17:28:02.715] { [17:28:02.715] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.715] NULL [17:28:02.715] } [17:28:02.715] options(future.plan = NULL) [17:28:02.715] if (is.na(NA_character_)) [17:28:02.715] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.715] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.715] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.715] .init = FALSE) [17:28:02.715] } [17:28:02.715] } [17:28:02.715] } [17:28:02.715] }) [17:28:02.715] if (TRUE) { [17:28:02.715] base::sink(type = "output", split = FALSE) [17:28:02.715] if (TRUE) { [17:28:02.715] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.715] } [17:28:02.715] else { [17:28:02.715] ...future.result["stdout"] <- base::list(NULL) [17:28:02.715] } [17:28:02.715] base::close(...future.stdout) [17:28:02.715] ...future.stdout <- NULL [17:28:02.715] } [17:28:02.715] ...future.result$conditions <- ...future.conditions [17:28:02.715] ...future.result$finished <- base::Sys.time() [17:28:02.715] ...future.result [17:28:02.715] } [17:28:02.720] MultisessionFuture started [17:28:02.720] - Launch lazy future ... done [17:28:02.720] run() for 'MultisessionFuture' ... done [17:28:02.721] getGlobalsAndPackages() ... [17:28:02.721] Searching for globals... [17:28:02.722] - globals found: [2] '{', 'Sys.sleep' [17:28:02.722] Searching for globals ... DONE [17:28:02.722] Resolving globals: FALSE [17:28:02.723] [17:28:02.723] [17:28:02.723] getGlobalsAndPackages() ... DONE [17:28:02.723] run() for 'Future' ... [17:28:02.724] - state: 'created' [17:28:02.724] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:02.738] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:02.739] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:02.739] - Field: 'node' [17:28:02.739] - Field: 'label' [17:28:02.739] - Field: 'local' [17:28:02.739] - Field: 'owner' [17:28:02.740] - Field: 'envir' [17:28:02.740] - Field: 'workers' [17:28:02.740] - Field: 'packages' [17:28:02.740] - Field: 'gc' [17:28:02.740] - Field: 'conditions' [17:28:02.740] - Field: 'persistent' [17:28:02.741] - Field: 'expr' [17:28:02.741] - Field: 'uuid' [17:28:02.741] - Field: 'seed' [17:28:02.741] - Field: 'version' [17:28:02.741] - Field: 'result' [17:28:02.742] - Field: 'asynchronous' [17:28:02.742] - Field: 'calls' [17:28:02.742] - Field: 'globals' [17:28:02.742] - Field: 'stdout' [17:28:02.742] - Field: 'earlySignal' [17:28:02.742] - Field: 'lazy' [17:28:02.743] - Field: 'state' [17:28:02.743] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:02.743] - Launch lazy future ... [17:28:02.743] Packages needed by the future expression (n = 0): [17:28:02.743] Packages needed by future strategies (n = 0): [17:28:02.744] { [17:28:02.744] { [17:28:02.744] { [17:28:02.744] ...future.startTime <- base::Sys.time() [17:28:02.744] { [17:28:02.744] { [17:28:02.744] { [17:28:02.744] { [17:28:02.744] base::local({ [17:28:02.744] has_future <- base::requireNamespace("future", [17:28:02.744] quietly = TRUE) [17:28:02.744] if (has_future) { [17:28:02.744] ns <- base::getNamespace("future") [17:28:02.744] version <- ns[[".package"]][["version"]] [17:28:02.744] if (is.null(version)) [17:28:02.744] version <- utils::packageVersion("future") [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] version <- NULL [17:28:02.744] } [17:28:02.744] if (!has_future || version < "1.8.0") { [17:28:02.744] info <- base::c(r_version = base::gsub("R version ", [17:28:02.744] "", base::R.version$version.string), [17:28:02.744] platform = base::sprintf("%s (%s-bit)", [17:28:02.744] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:02.744] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:02.744] "release", "version")], collapse = " "), [17:28:02.744] hostname = base::Sys.info()[["nodename"]]) [17:28:02.744] info <- base::sprintf("%s: %s", base::names(info), [17:28:02.744] info) [17:28:02.744] info <- base::paste(info, collapse = "; ") [17:28:02.744] if (!has_future) { [17:28:02.744] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:02.744] info) [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:02.744] info, version) [17:28:02.744] } [17:28:02.744] base::stop(msg) [17:28:02.744] } [17:28:02.744] }) [17:28:02.744] } [17:28:02.744] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:02.744] base::options(mc.cores = 1L) [17:28:02.744] } [17:28:02.744] ...future.strategy.old <- future::plan("list") [17:28:02.744] options(future.plan = NULL) [17:28:02.744] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.744] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:02.744] } [17:28:02.744] ...future.workdir <- getwd() [17:28:02.744] } [17:28:02.744] ...future.oldOptions <- base::as.list(base::.Options) [17:28:02.744] ...future.oldEnvVars <- base::Sys.getenv() [17:28:02.744] } [17:28:02.744] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:02.744] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:02.744] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:02.744] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:02.744] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:02.744] future.stdout.windows.reencode = NULL, width = 80L) [17:28:02.744] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:02.744] base::names(...future.oldOptions)) [17:28:02.744] } [17:28:02.744] if (FALSE) { [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] if (TRUE) { [17:28:02.744] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:02.744] open = "w") [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:02.744] windows = "NUL", "/dev/null"), open = "w") [17:28:02.744] } [17:28:02.744] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:02.744] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:02.744] base::sink(type = "output", split = FALSE) [17:28:02.744] base::close(...future.stdout) [17:28:02.744] }, add = TRUE) [17:28:02.744] } [17:28:02.744] ...future.frame <- base::sys.nframe() [17:28:02.744] ...future.conditions <- base::list() [17:28:02.744] ...future.rng <- base::globalenv()$.Random.seed [17:28:02.744] if (FALSE) { [17:28:02.744] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:02.744] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:02.744] } [17:28:02.744] ...future.result <- base::tryCatch({ [17:28:02.744] base::withCallingHandlers({ [17:28:02.744] ...future.value <- base::withVisible(base::local({ [17:28:02.744] ...future.makeSendCondition <- base::local({ [17:28:02.744] sendCondition <- NULL [17:28:02.744] function(frame = 1L) { [17:28:02.744] if (is.function(sendCondition)) [17:28:02.744] return(sendCondition) [17:28:02.744] ns <- getNamespace("parallel") [17:28:02.744] if (exists("sendData", mode = "function", [17:28:02.744] envir = ns)) { [17:28:02.744] parallel_sendData <- get("sendData", mode = "function", [17:28:02.744] envir = ns) [17:28:02.744] envir <- sys.frame(frame) [17:28:02.744] master <- NULL [17:28:02.744] while (!identical(envir, .GlobalEnv) && [17:28:02.744] !identical(envir, emptyenv())) { [17:28:02.744] if (exists("master", mode = "list", envir = envir, [17:28:02.744] inherits = FALSE)) { [17:28:02.744] master <- get("master", mode = "list", [17:28:02.744] envir = envir, inherits = FALSE) [17:28:02.744] if (inherits(master, c("SOCKnode", [17:28:02.744] "SOCK0node"))) { [17:28:02.744] sendCondition <<- function(cond) { [17:28:02.744] data <- list(type = "VALUE", value = cond, [17:28:02.744] success = TRUE) [17:28:02.744] parallel_sendData(master, data) [17:28:02.744] } [17:28:02.744] return(sendCondition) [17:28:02.744] } [17:28:02.744] } [17:28:02.744] frame <- frame + 1L [17:28:02.744] envir <- sys.frame(frame) [17:28:02.744] } [17:28:02.744] } [17:28:02.744] sendCondition <<- function(cond) NULL [17:28:02.744] } [17:28:02.744] }) [17:28:02.744] withCallingHandlers({ [17:28:02.744] { [17:28:02.744] Sys.sleep(0.5) [17:28:02.744] 2 [17:28:02.744] } [17:28:02.744] }, immediateCondition = function(cond) { [17:28:02.744] sendCondition <- ...future.makeSendCondition() [17:28:02.744] sendCondition(cond) [17:28:02.744] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.744] { [17:28:02.744] inherits <- base::inherits [17:28:02.744] invokeRestart <- base::invokeRestart [17:28:02.744] is.null <- base::is.null [17:28:02.744] muffled <- FALSE [17:28:02.744] if (inherits(cond, "message")) { [17:28:02.744] muffled <- grepl(pattern, "muffleMessage") [17:28:02.744] if (muffled) [17:28:02.744] invokeRestart("muffleMessage") [17:28:02.744] } [17:28:02.744] else if (inherits(cond, "warning")) { [17:28:02.744] muffled <- grepl(pattern, "muffleWarning") [17:28:02.744] if (muffled) [17:28:02.744] invokeRestart("muffleWarning") [17:28:02.744] } [17:28:02.744] else if (inherits(cond, "condition")) { [17:28:02.744] if (!is.null(pattern)) { [17:28:02.744] computeRestarts <- base::computeRestarts [17:28:02.744] grepl <- base::grepl [17:28:02.744] restarts <- computeRestarts(cond) [17:28:02.744] for (restart in restarts) { [17:28:02.744] name <- restart$name [17:28:02.744] if (is.null(name)) [17:28:02.744] next [17:28:02.744] if (!grepl(pattern, name)) [17:28:02.744] next [17:28:02.744] invokeRestart(restart) [17:28:02.744] muffled <- TRUE [17:28:02.744] break [17:28:02.744] } [17:28:02.744] } [17:28:02.744] } [17:28:02.744] invisible(muffled) [17:28:02.744] } [17:28:02.744] muffleCondition(cond) [17:28:02.744] }) [17:28:02.744] })) [17:28:02.744] future::FutureResult(value = ...future.value$value, [17:28:02.744] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.744] ...future.rng), globalenv = if (FALSE) [17:28:02.744] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:02.744] ...future.globalenv.names)) [17:28:02.744] else NULL, started = ...future.startTime, version = "1.8") [17:28:02.744] }, condition = base::local({ [17:28:02.744] c <- base::c [17:28:02.744] inherits <- base::inherits [17:28:02.744] invokeRestart <- base::invokeRestart [17:28:02.744] length <- base::length [17:28:02.744] list <- base::list [17:28:02.744] seq.int <- base::seq.int [17:28:02.744] signalCondition <- base::signalCondition [17:28:02.744] sys.calls <- base::sys.calls [17:28:02.744] `[[` <- base::`[[` [17:28:02.744] `+` <- base::`+` [17:28:02.744] `<<-` <- base::`<<-` [17:28:02.744] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:02.744] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:02.744] 3L)] [17:28:02.744] } [17:28:02.744] function(cond) { [17:28:02.744] is_error <- inherits(cond, "error") [17:28:02.744] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:02.744] NULL) [17:28:02.744] if (is_error) { [17:28:02.744] sessionInformation <- function() { [17:28:02.744] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:02.744] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:02.744] search = base::search(), system = base::Sys.info()) [17:28:02.744] } [17:28:02.744] ...future.conditions[[length(...future.conditions) + [17:28:02.744] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:02.744] cond$call), session = sessionInformation(), [17:28:02.744] timestamp = base::Sys.time(), signaled = 0L) [17:28:02.744] signalCondition(cond) [17:28:02.744] } [17:28:02.744] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:02.744] "immediateCondition"))) { [17:28:02.744] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:02.744] ...future.conditions[[length(...future.conditions) + [17:28:02.744] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:02.744] if (TRUE && !signal) { [17:28:02.744] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.744] { [17:28:02.744] inherits <- base::inherits [17:28:02.744] invokeRestart <- base::invokeRestart [17:28:02.744] is.null <- base::is.null [17:28:02.744] muffled <- FALSE [17:28:02.744] if (inherits(cond, "message")) { [17:28:02.744] muffled <- grepl(pattern, "muffleMessage") [17:28:02.744] if (muffled) [17:28:02.744] invokeRestart("muffleMessage") [17:28:02.744] } [17:28:02.744] else if (inherits(cond, "warning")) { [17:28:02.744] muffled <- grepl(pattern, "muffleWarning") [17:28:02.744] if (muffled) [17:28:02.744] invokeRestart("muffleWarning") [17:28:02.744] } [17:28:02.744] else if (inherits(cond, "condition")) { [17:28:02.744] if (!is.null(pattern)) { [17:28:02.744] computeRestarts <- base::computeRestarts [17:28:02.744] grepl <- base::grepl [17:28:02.744] restarts <- computeRestarts(cond) [17:28:02.744] for (restart in restarts) { [17:28:02.744] name <- restart$name [17:28:02.744] if (is.null(name)) [17:28:02.744] next [17:28:02.744] if (!grepl(pattern, name)) [17:28:02.744] next [17:28:02.744] invokeRestart(restart) [17:28:02.744] muffled <- TRUE [17:28:02.744] break [17:28:02.744] } [17:28:02.744] } [17:28:02.744] } [17:28:02.744] invisible(muffled) [17:28:02.744] } [17:28:02.744] muffleCondition(cond, pattern = "^muffle") [17:28:02.744] } [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] if (TRUE) { [17:28:02.744] muffleCondition <- function (cond, pattern = "^muffle") [17:28:02.744] { [17:28:02.744] inherits <- base::inherits [17:28:02.744] invokeRestart <- base::invokeRestart [17:28:02.744] is.null <- base::is.null [17:28:02.744] muffled <- FALSE [17:28:02.744] if (inherits(cond, "message")) { [17:28:02.744] muffled <- grepl(pattern, "muffleMessage") [17:28:02.744] if (muffled) [17:28:02.744] invokeRestart("muffleMessage") [17:28:02.744] } [17:28:02.744] else if (inherits(cond, "warning")) { [17:28:02.744] muffled <- grepl(pattern, "muffleWarning") [17:28:02.744] if (muffled) [17:28:02.744] invokeRestart("muffleWarning") [17:28:02.744] } [17:28:02.744] else if (inherits(cond, "condition")) { [17:28:02.744] if (!is.null(pattern)) { [17:28:02.744] computeRestarts <- base::computeRestarts [17:28:02.744] grepl <- base::grepl [17:28:02.744] restarts <- computeRestarts(cond) [17:28:02.744] for (restart in restarts) { [17:28:02.744] name <- restart$name [17:28:02.744] if (is.null(name)) [17:28:02.744] next [17:28:02.744] if (!grepl(pattern, name)) [17:28:02.744] next [17:28:02.744] invokeRestart(restart) [17:28:02.744] muffled <- TRUE [17:28:02.744] break [17:28:02.744] } [17:28:02.744] } [17:28:02.744] } [17:28:02.744] invisible(muffled) [17:28:02.744] } [17:28:02.744] muffleCondition(cond, pattern = "^muffle") [17:28:02.744] } [17:28:02.744] } [17:28:02.744] } [17:28:02.744] })) [17:28:02.744] }, error = function(ex) { [17:28:02.744] base::structure(base::list(value = NULL, visible = NULL, [17:28:02.744] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:02.744] ...future.rng), started = ...future.startTime, [17:28:02.744] finished = Sys.time(), session_uuid = NA_character_, [17:28:02.744] version = "1.8"), class = "FutureResult") [17:28:02.744] }, finally = { [17:28:02.744] if (!identical(...future.workdir, getwd())) [17:28:02.744] setwd(...future.workdir) [17:28:02.744] { [17:28:02.744] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:02.744] ...future.oldOptions$nwarnings <- NULL [17:28:02.744] } [17:28:02.744] base::options(...future.oldOptions) [17:28:02.744] if (.Platform$OS.type == "windows") { [17:28:02.744] old_names <- names(...future.oldEnvVars) [17:28:02.744] envs <- base::Sys.getenv() [17:28:02.744] names <- names(envs) [17:28:02.744] common <- intersect(names, old_names) [17:28:02.744] added <- setdiff(names, old_names) [17:28:02.744] removed <- setdiff(old_names, names) [17:28:02.744] changed <- common[...future.oldEnvVars[common] != [17:28:02.744] envs[common]] [17:28:02.744] NAMES <- toupper(changed) [17:28:02.744] args <- list() [17:28:02.744] for (kk in seq_along(NAMES)) { [17:28:02.744] name <- changed[[kk]] [17:28:02.744] NAME <- NAMES[[kk]] [17:28:02.744] if (name != NAME && is.element(NAME, old_names)) [17:28:02.744] next [17:28:02.744] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.744] } [17:28:02.744] NAMES <- toupper(added) [17:28:02.744] for (kk in seq_along(NAMES)) { [17:28:02.744] name <- added[[kk]] [17:28:02.744] NAME <- NAMES[[kk]] [17:28:02.744] if (name != NAME && is.element(NAME, old_names)) [17:28:02.744] next [17:28:02.744] args[[name]] <- "" [17:28:02.744] } [17:28:02.744] NAMES <- toupper(removed) [17:28:02.744] for (kk in seq_along(NAMES)) { [17:28:02.744] name <- removed[[kk]] [17:28:02.744] NAME <- NAMES[[kk]] [17:28:02.744] if (name != NAME && is.element(NAME, old_names)) [17:28:02.744] next [17:28:02.744] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:02.744] } [17:28:02.744] if (length(args) > 0) [17:28:02.744] base::do.call(base::Sys.setenv, args = args) [17:28:02.744] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:02.744] } [17:28:02.744] { [17:28:02.744] if (base::length(...future.futureOptionsAdded) > [17:28:02.744] 0L) { [17:28:02.744] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:02.744] base::names(opts) <- ...future.futureOptionsAdded [17:28:02.744] base::options(opts) [17:28:02.744] } [17:28:02.744] { [17:28:02.744] { [17:28:02.744] base::options(mc.cores = ...future.mc.cores.old) [17:28:02.744] NULL [17:28:02.744] } [17:28:02.744] options(future.plan = NULL) [17:28:02.744] if (is.na(NA_character_)) [17:28:02.744] Sys.unsetenv("R_FUTURE_PLAN") [17:28:02.744] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:02.744] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:02.744] .init = FALSE) [17:28:02.744] } [17:28:02.744] } [17:28:02.744] } [17:28:02.744] }) [17:28:02.744] if (TRUE) { [17:28:02.744] base::sink(type = "output", split = FALSE) [17:28:02.744] if (TRUE) { [17:28:02.744] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:02.744] } [17:28:02.744] else { [17:28:02.744] ...future.result["stdout"] <- base::list(NULL) [17:28:02.744] } [17:28:02.744] base::close(...future.stdout) [17:28:02.744] ...future.stdout <- NULL [17:28:02.744] } [17:28:02.744] ...future.result$conditions <- ...future.conditions [17:28:02.744] ...future.result$finished <- base::Sys.time() [17:28:02.744] ...future.result [17:28:02.744] } [17:28:02.750] MultisessionFuture started [17:28:02.750] - Launch lazy future ... done [17:28:02.750] run() for 'MultisessionFuture' ... done [17:28:02.750] resolve() on list ... [17:28:02.751] recursive: 0 [17:28:02.751] length: 1 [17:28:02.751] [17:28:02.751] receiveMessageFromWorker() for ClusterFuture ... [17:28:02.752] - Validating connection of MultisessionFuture [17:28:02.752] - received message: FutureResult [17:28:02.752] - Received FutureResult [17:28:02.752] - Erased future from FutureRegistry [17:28:02.752] result() for ClusterFuture ... [17:28:02.752] - result already collected: FutureResult [17:28:02.753] result() for ClusterFuture ... done [17:28:02.753] receiveMessageFromWorker() for ClusterFuture ... done [17:28:02.753] Future #1 [17:28:02.753] length: 0 (resolved future 1) [17:28:02.753] resolve() on list ... DONE [17:28:02.754] resolve() on list ... [17:28:02.754] recursive: 0 [17:28:02.754] length: 1 [17:28:02.754] [17:28:03.290] receiveMessageFromWorker() for ClusterFuture ... [17:28:03.291] - Validating connection of MultisessionFuture [17:28:03.291] - received message: FutureResult [17:28:03.291] - Received FutureResult [17:28:03.291] - Erased future from FutureRegistry [17:28:03.292] result() for ClusterFuture ... [17:28:03.292] - result already collected: FutureResult [17:28:03.292] result() for ClusterFuture ... done [17:28:03.292] receiveMessageFromWorker() for ClusterFuture ... done [17:28:03.292] Future #1 [17:28:03.292] length: 0 (resolved future 1) [17:28:03.293] resolve() on list ... DONE [17:28:03.293] resolve() on list ... [17:28:03.293] recursive: 0 [17:28:03.293] length: 1 [17:28:03.293] [17:28:03.293] length: 0 (resolved future 1) [17:28:03.294] resolve() on list ... DONE [17:28:03.294] resolve() on list ... [17:28:03.294] recursive: 0 [17:28:03.294] length: 4 [17:28:03.294] [17:28:03.295] Future #1 [17:28:03.295] length: 3 (resolved future 1) [17:28:03.295] Future #2 [17:28:03.295] length: 2 (resolved future 2) [17:28:03.295] length: 1 (resolved future 3) [17:28:03.295] length: 0 (resolved future 4) [17:28:03.296] resolve() on list ... DONE [17:28:03.296] resolve() on list ... [17:28:03.296] recursive: 0 [17:28:03.296] length: 4 [17:28:03.296] [17:28:03.297] Future #1 [17:28:03.297] length: 3 (resolved future 1) [17:28:03.297] Future #2 [17:28:03.297] length: 2 (resolved future 2) [17:28:03.297] length: 1 (resolved future 3) [17:28:03.297] length: 0 (resolved future 4) [17:28:03.298] resolve() on list ... DONE [17:28:03.298] resolve() on list ... [17:28:03.298] recursive: 0 [17:28:03.298] length: 1 [17:28:03.298] [17:28:03.299] length: 0 (resolved future 1) [17:28:03.299] resolve() on list ... DONE [17:28:03.299] getGlobalsAndPackages() ... [17:28:03.299] Searching for globals... [17:28:03.300] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:28:03.300] Searching for globals ... DONE [17:28:03.301] Resolving globals: FALSE [17:28:03.301] The total size of the 1 globals is 56 bytes (56 bytes) [17:28:03.302] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:28:03.302] - globals: [1] 'kk' [17:28:03.302] [17:28:03.302] getGlobalsAndPackages() ... DONE [17:28:03.303] run() for 'Future' ... [17:28:03.303] - state: 'created' [17:28:03.303] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:03.316] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:03.317] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:03.317] - Field: 'node' [17:28:03.317] - Field: 'label' [17:28:03.317] - Field: 'local' [17:28:03.317] - Field: 'owner' [17:28:03.317] - Field: 'envir' [17:28:03.318] - Field: 'workers' [17:28:03.318] - Field: 'packages' [17:28:03.318] - Field: 'gc' [17:28:03.318] - Field: 'conditions' [17:28:03.318] - Field: 'persistent' [17:28:03.319] - Field: 'expr' [17:28:03.319] - Field: 'uuid' [17:28:03.319] - Field: 'seed' [17:28:03.319] - Field: 'version' [17:28:03.319] - Field: 'result' [17:28:03.320] - Field: 'asynchronous' [17:28:03.320] - Field: 'calls' [17:28:03.320] - Field: 'globals' [17:28:03.320] - Field: 'stdout' [17:28:03.320] - Field: 'earlySignal' [17:28:03.320] - Field: 'lazy' [17:28:03.321] - Field: 'state' [17:28:03.321] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:03.321] - Launch lazy future ... [17:28:03.321] Packages needed by the future expression (n = 0): [17:28:03.321] Packages needed by future strategies (n = 0): [17:28:03.322] { [17:28:03.322] { [17:28:03.322] { [17:28:03.322] ...future.startTime <- base::Sys.time() [17:28:03.322] { [17:28:03.322] { [17:28:03.322] { [17:28:03.322] { [17:28:03.322] base::local({ [17:28:03.322] has_future <- base::requireNamespace("future", [17:28:03.322] quietly = TRUE) [17:28:03.322] if (has_future) { [17:28:03.322] ns <- base::getNamespace("future") [17:28:03.322] version <- ns[[".package"]][["version"]] [17:28:03.322] if (is.null(version)) [17:28:03.322] version <- utils::packageVersion("future") [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] version <- NULL [17:28:03.322] } [17:28:03.322] if (!has_future || version < "1.8.0") { [17:28:03.322] info <- base::c(r_version = base::gsub("R version ", [17:28:03.322] "", base::R.version$version.string), [17:28:03.322] platform = base::sprintf("%s (%s-bit)", [17:28:03.322] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:03.322] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:03.322] "release", "version")], collapse = " "), [17:28:03.322] hostname = base::Sys.info()[["nodename"]]) [17:28:03.322] info <- base::sprintf("%s: %s", base::names(info), [17:28:03.322] info) [17:28:03.322] info <- base::paste(info, collapse = "; ") [17:28:03.322] if (!has_future) { [17:28:03.322] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:03.322] info) [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:03.322] info, version) [17:28:03.322] } [17:28:03.322] base::stop(msg) [17:28:03.322] } [17:28:03.322] }) [17:28:03.322] } [17:28:03.322] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:03.322] base::options(mc.cores = 1L) [17:28:03.322] } [17:28:03.322] ...future.strategy.old <- future::plan("list") [17:28:03.322] options(future.plan = NULL) [17:28:03.322] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.322] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:03.322] } [17:28:03.322] ...future.workdir <- getwd() [17:28:03.322] } [17:28:03.322] ...future.oldOptions <- base::as.list(base::.Options) [17:28:03.322] ...future.oldEnvVars <- base::Sys.getenv() [17:28:03.322] } [17:28:03.322] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:03.322] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:03.322] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:03.322] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:03.322] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:03.322] future.stdout.windows.reencode = NULL, width = 80L) [17:28:03.322] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:03.322] base::names(...future.oldOptions)) [17:28:03.322] } [17:28:03.322] if (FALSE) { [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] if (TRUE) { [17:28:03.322] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:03.322] open = "w") [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:03.322] windows = "NUL", "/dev/null"), open = "w") [17:28:03.322] } [17:28:03.322] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:03.322] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:03.322] base::sink(type = "output", split = FALSE) [17:28:03.322] base::close(...future.stdout) [17:28:03.322] }, add = TRUE) [17:28:03.322] } [17:28:03.322] ...future.frame <- base::sys.nframe() [17:28:03.322] ...future.conditions <- base::list() [17:28:03.322] ...future.rng <- base::globalenv()$.Random.seed [17:28:03.322] if (FALSE) { [17:28:03.322] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:03.322] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:03.322] } [17:28:03.322] ...future.result <- base::tryCatch({ [17:28:03.322] base::withCallingHandlers({ [17:28:03.322] ...future.value <- base::withVisible(base::local({ [17:28:03.322] ...future.makeSendCondition <- base::local({ [17:28:03.322] sendCondition <- NULL [17:28:03.322] function(frame = 1L) { [17:28:03.322] if (is.function(sendCondition)) [17:28:03.322] return(sendCondition) [17:28:03.322] ns <- getNamespace("parallel") [17:28:03.322] if (exists("sendData", mode = "function", [17:28:03.322] envir = ns)) { [17:28:03.322] parallel_sendData <- get("sendData", mode = "function", [17:28:03.322] envir = ns) [17:28:03.322] envir <- sys.frame(frame) [17:28:03.322] master <- NULL [17:28:03.322] while (!identical(envir, .GlobalEnv) && [17:28:03.322] !identical(envir, emptyenv())) { [17:28:03.322] if (exists("master", mode = "list", envir = envir, [17:28:03.322] inherits = FALSE)) { [17:28:03.322] master <- get("master", mode = "list", [17:28:03.322] envir = envir, inherits = FALSE) [17:28:03.322] if (inherits(master, c("SOCKnode", [17:28:03.322] "SOCK0node"))) { [17:28:03.322] sendCondition <<- function(cond) { [17:28:03.322] data <- list(type = "VALUE", value = cond, [17:28:03.322] success = TRUE) [17:28:03.322] parallel_sendData(master, data) [17:28:03.322] } [17:28:03.322] return(sendCondition) [17:28:03.322] } [17:28:03.322] } [17:28:03.322] frame <- frame + 1L [17:28:03.322] envir <- sys.frame(frame) [17:28:03.322] } [17:28:03.322] } [17:28:03.322] sendCondition <<- function(cond) NULL [17:28:03.322] } [17:28:03.322] }) [17:28:03.322] withCallingHandlers({ [17:28:03.322] { [17:28:03.322] Sys.sleep(0.1) [17:28:03.322] kk [17:28:03.322] } [17:28:03.322] }, immediateCondition = function(cond) { [17:28:03.322] sendCondition <- ...future.makeSendCondition() [17:28:03.322] sendCondition(cond) [17:28:03.322] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.322] { [17:28:03.322] inherits <- base::inherits [17:28:03.322] invokeRestart <- base::invokeRestart [17:28:03.322] is.null <- base::is.null [17:28:03.322] muffled <- FALSE [17:28:03.322] if (inherits(cond, "message")) { [17:28:03.322] muffled <- grepl(pattern, "muffleMessage") [17:28:03.322] if (muffled) [17:28:03.322] invokeRestart("muffleMessage") [17:28:03.322] } [17:28:03.322] else if (inherits(cond, "warning")) { [17:28:03.322] muffled <- grepl(pattern, "muffleWarning") [17:28:03.322] if (muffled) [17:28:03.322] invokeRestart("muffleWarning") [17:28:03.322] } [17:28:03.322] else if (inherits(cond, "condition")) { [17:28:03.322] if (!is.null(pattern)) { [17:28:03.322] computeRestarts <- base::computeRestarts [17:28:03.322] grepl <- base::grepl [17:28:03.322] restarts <- computeRestarts(cond) [17:28:03.322] for (restart in restarts) { [17:28:03.322] name <- restart$name [17:28:03.322] if (is.null(name)) [17:28:03.322] next [17:28:03.322] if (!grepl(pattern, name)) [17:28:03.322] next [17:28:03.322] invokeRestart(restart) [17:28:03.322] muffled <- TRUE [17:28:03.322] break [17:28:03.322] } [17:28:03.322] } [17:28:03.322] } [17:28:03.322] invisible(muffled) [17:28:03.322] } [17:28:03.322] muffleCondition(cond) [17:28:03.322] }) [17:28:03.322] })) [17:28:03.322] future::FutureResult(value = ...future.value$value, [17:28:03.322] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.322] ...future.rng), globalenv = if (FALSE) [17:28:03.322] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:03.322] ...future.globalenv.names)) [17:28:03.322] else NULL, started = ...future.startTime, version = "1.8") [17:28:03.322] }, condition = base::local({ [17:28:03.322] c <- base::c [17:28:03.322] inherits <- base::inherits [17:28:03.322] invokeRestart <- base::invokeRestart [17:28:03.322] length <- base::length [17:28:03.322] list <- base::list [17:28:03.322] seq.int <- base::seq.int [17:28:03.322] signalCondition <- base::signalCondition [17:28:03.322] sys.calls <- base::sys.calls [17:28:03.322] `[[` <- base::`[[` [17:28:03.322] `+` <- base::`+` [17:28:03.322] `<<-` <- base::`<<-` [17:28:03.322] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:03.322] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:03.322] 3L)] [17:28:03.322] } [17:28:03.322] function(cond) { [17:28:03.322] is_error <- inherits(cond, "error") [17:28:03.322] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:03.322] NULL) [17:28:03.322] if (is_error) { [17:28:03.322] sessionInformation <- function() { [17:28:03.322] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:03.322] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:03.322] search = base::search(), system = base::Sys.info()) [17:28:03.322] } [17:28:03.322] ...future.conditions[[length(...future.conditions) + [17:28:03.322] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:03.322] cond$call), session = sessionInformation(), [17:28:03.322] timestamp = base::Sys.time(), signaled = 0L) [17:28:03.322] signalCondition(cond) [17:28:03.322] } [17:28:03.322] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:03.322] "immediateCondition"))) { [17:28:03.322] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:03.322] ...future.conditions[[length(...future.conditions) + [17:28:03.322] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:03.322] if (TRUE && !signal) { [17:28:03.322] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.322] { [17:28:03.322] inherits <- base::inherits [17:28:03.322] invokeRestart <- base::invokeRestart [17:28:03.322] is.null <- base::is.null [17:28:03.322] muffled <- FALSE [17:28:03.322] if (inherits(cond, "message")) { [17:28:03.322] muffled <- grepl(pattern, "muffleMessage") [17:28:03.322] if (muffled) [17:28:03.322] invokeRestart("muffleMessage") [17:28:03.322] } [17:28:03.322] else if (inherits(cond, "warning")) { [17:28:03.322] muffled <- grepl(pattern, "muffleWarning") [17:28:03.322] if (muffled) [17:28:03.322] invokeRestart("muffleWarning") [17:28:03.322] } [17:28:03.322] else if (inherits(cond, "condition")) { [17:28:03.322] if (!is.null(pattern)) { [17:28:03.322] computeRestarts <- base::computeRestarts [17:28:03.322] grepl <- base::grepl [17:28:03.322] restarts <- computeRestarts(cond) [17:28:03.322] for (restart in restarts) { [17:28:03.322] name <- restart$name [17:28:03.322] if (is.null(name)) [17:28:03.322] next [17:28:03.322] if (!grepl(pattern, name)) [17:28:03.322] next [17:28:03.322] invokeRestart(restart) [17:28:03.322] muffled <- TRUE [17:28:03.322] break [17:28:03.322] } [17:28:03.322] } [17:28:03.322] } [17:28:03.322] invisible(muffled) [17:28:03.322] } [17:28:03.322] muffleCondition(cond, pattern = "^muffle") [17:28:03.322] } [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] if (TRUE) { [17:28:03.322] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.322] { [17:28:03.322] inherits <- base::inherits [17:28:03.322] invokeRestart <- base::invokeRestart [17:28:03.322] is.null <- base::is.null [17:28:03.322] muffled <- FALSE [17:28:03.322] if (inherits(cond, "message")) { [17:28:03.322] muffled <- grepl(pattern, "muffleMessage") [17:28:03.322] if (muffled) [17:28:03.322] invokeRestart("muffleMessage") [17:28:03.322] } [17:28:03.322] else if (inherits(cond, "warning")) { [17:28:03.322] muffled <- grepl(pattern, "muffleWarning") [17:28:03.322] if (muffled) [17:28:03.322] invokeRestart("muffleWarning") [17:28:03.322] } [17:28:03.322] else if (inherits(cond, "condition")) { [17:28:03.322] if (!is.null(pattern)) { [17:28:03.322] computeRestarts <- base::computeRestarts [17:28:03.322] grepl <- base::grepl [17:28:03.322] restarts <- computeRestarts(cond) [17:28:03.322] for (restart in restarts) { [17:28:03.322] name <- restart$name [17:28:03.322] if (is.null(name)) [17:28:03.322] next [17:28:03.322] if (!grepl(pattern, name)) [17:28:03.322] next [17:28:03.322] invokeRestart(restart) [17:28:03.322] muffled <- TRUE [17:28:03.322] break [17:28:03.322] } [17:28:03.322] } [17:28:03.322] } [17:28:03.322] invisible(muffled) [17:28:03.322] } [17:28:03.322] muffleCondition(cond, pattern = "^muffle") [17:28:03.322] } [17:28:03.322] } [17:28:03.322] } [17:28:03.322] })) [17:28:03.322] }, error = function(ex) { [17:28:03.322] base::structure(base::list(value = NULL, visible = NULL, [17:28:03.322] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.322] ...future.rng), started = ...future.startTime, [17:28:03.322] finished = Sys.time(), session_uuid = NA_character_, [17:28:03.322] version = "1.8"), class = "FutureResult") [17:28:03.322] }, finally = { [17:28:03.322] if (!identical(...future.workdir, getwd())) [17:28:03.322] setwd(...future.workdir) [17:28:03.322] { [17:28:03.322] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:03.322] ...future.oldOptions$nwarnings <- NULL [17:28:03.322] } [17:28:03.322] base::options(...future.oldOptions) [17:28:03.322] if (.Platform$OS.type == "windows") { [17:28:03.322] old_names <- names(...future.oldEnvVars) [17:28:03.322] envs <- base::Sys.getenv() [17:28:03.322] names <- names(envs) [17:28:03.322] common <- intersect(names, old_names) [17:28:03.322] added <- setdiff(names, old_names) [17:28:03.322] removed <- setdiff(old_names, names) [17:28:03.322] changed <- common[...future.oldEnvVars[common] != [17:28:03.322] envs[common]] [17:28:03.322] NAMES <- toupper(changed) [17:28:03.322] args <- list() [17:28:03.322] for (kk in seq_along(NAMES)) { [17:28:03.322] name <- changed[[kk]] [17:28:03.322] NAME <- NAMES[[kk]] [17:28:03.322] if (name != NAME && is.element(NAME, old_names)) [17:28:03.322] next [17:28:03.322] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.322] } [17:28:03.322] NAMES <- toupper(added) [17:28:03.322] for (kk in seq_along(NAMES)) { [17:28:03.322] name <- added[[kk]] [17:28:03.322] NAME <- NAMES[[kk]] [17:28:03.322] if (name != NAME && is.element(NAME, old_names)) [17:28:03.322] next [17:28:03.322] args[[name]] <- "" [17:28:03.322] } [17:28:03.322] NAMES <- toupper(removed) [17:28:03.322] for (kk in seq_along(NAMES)) { [17:28:03.322] name <- removed[[kk]] [17:28:03.322] NAME <- NAMES[[kk]] [17:28:03.322] if (name != NAME && is.element(NAME, old_names)) [17:28:03.322] next [17:28:03.322] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.322] } [17:28:03.322] if (length(args) > 0) [17:28:03.322] base::do.call(base::Sys.setenv, args = args) [17:28:03.322] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:03.322] } [17:28:03.322] { [17:28:03.322] if (base::length(...future.futureOptionsAdded) > [17:28:03.322] 0L) { [17:28:03.322] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:03.322] base::names(opts) <- ...future.futureOptionsAdded [17:28:03.322] base::options(opts) [17:28:03.322] } [17:28:03.322] { [17:28:03.322] { [17:28:03.322] base::options(mc.cores = ...future.mc.cores.old) [17:28:03.322] NULL [17:28:03.322] } [17:28:03.322] options(future.plan = NULL) [17:28:03.322] if (is.na(NA_character_)) [17:28:03.322] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.322] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:03.322] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:03.322] .init = FALSE) [17:28:03.322] } [17:28:03.322] } [17:28:03.322] } [17:28:03.322] }) [17:28:03.322] if (TRUE) { [17:28:03.322] base::sink(type = "output", split = FALSE) [17:28:03.322] if (TRUE) { [17:28:03.322] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:03.322] } [17:28:03.322] else { [17:28:03.322] ...future.result["stdout"] <- base::list(NULL) [17:28:03.322] } [17:28:03.322] base::close(...future.stdout) [17:28:03.322] ...future.stdout <- NULL [17:28:03.322] } [17:28:03.322] ...future.result$conditions <- ...future.conditions [17:28:03.322] ...future.result$finished <- base::Sys.time() [17:28:03.322] ...future.result [17:28:03.322] } [17:28:03.327] Exporting 1 global objects (56 bytes) to cluster node #1 ... [17:28:03.327] Exporting 'kk' (56 bytes) to cluster node #1 ... [17:28:03.328] Exporting 'kk' (56 bytes) to cluster node #1 ... DONE [17:28:03.328] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [17:28:03.329] MultisessionFuture started [17:28:03.329] - Launch lazy future ... done [17:28:03.329] run() for 'MultisessionFuture' ... done [17:28:03.329] getGlobalsAndPackages() ... [17:28:03.329] Searching for globals... [17:28:03.331] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:28:03.331] Searching for globals ... DONE [17:28:03.331] Resolving globals: FALSE [17:28:03.331] The total size of the 1 globals is 56 bytes (56 bytes) [17:28:03.332] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:28:03.332] - globals: [1] 'kk' [17:28:03.332] [17:28:03.332] getGlobalsAndPackages() ... DONE [17:28:03.333] run() for 'Future' ... [17:28:03.333] - state: 'created' [17:28:03.333] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:03.346] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:03.346] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:03.347] - Field: 'node' [17:28:03.347] - Field: 'label' [17:28:03.347] - Field: 'local' [17:28:03.347] - Field: 'owner' [17:28:03.347] - Field: 'envir' [17:28:03.348] - Field: 'workers' [17:28:03.348] - Field: 'packages' [17:28:03.348] - Field: 'gc' [17:28:03.348] - Field: 'conditions' [17:28:03.348] - Field: 'persistent' [17:28:03.348] - Field: 'expr' [17:28:03.349] - Field: 'uuid' [17:28:03.349] - Field: 'seed' [17:28:03.349] - Field: 'version' [17:28:03.349] - Field: 'result' [17:28:03.349] - Field: 'asynchronous' [17:28:03.350] - Field: 'calls' [17:28:03.350] - Field: 'globals' [17:28:03.350] - Field: 'stdout' [17:28:03.350] - Field: 'earlySignal' [17:28:03.350] - Field: 'lazy' [17:28:03.350] - Field: 'state' [17:28:03.351] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:03.351] - Launch lazy future ... [17:28:03.351] Packages needed by the future expression (n = 0): [17:28:03.351] Packages needed by future strategies (n = 0): [17:28:03.352] { [17:28:03.352] { [17:28:03.352] { [17:28:03.352] ...future.startTime <- base::Sys.time() [17:28:03.352] { [17:28:03.352] { [17:28:03.352] { [17:28:03.352] { [17:28:03.352] base::local({ [17:28:03.352] has_future <- base::requireNamespace("future", [17:28:03.352] quietly = TRUE) [17:28:03.352] if (has_future) { [17:28:03.352] ns <- base::getNamespace("future") [17:28:03.352] version <- ns[[".package"]][["version"]] [17:28:03.352] if (is.null(version)) [17:28:03.352] version <- utils::packageVersion("future") [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] version <- NULL [17:28:03.352] } [17:28:03.352] if (!has_future || version < "1.8.0") { [17:28:03.352] info <- base::c(r_version = base::gsub("R version ", [17:28:03.352] "", base::R.version$version.string), [17:28:03.352] platform = base::sprintf("%s (%s-bit)", [17:28:03.352] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:03.352] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:03.352] "release", "version")], collapse = " "), [17:28:03.352] hostname = base::Sys.info()[["nodename"]]) [17:28:03.352] info <- base::sprintf("%s: %s", base::names(info), [17:28:03.352] info) [17:28:03.352] info <- base::paste(info, collapse = "; ") [17:28:03.352] if (!has_future) { [17:28:03.352] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:03.352] info) [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:03.352] info, version) [17:28:03.352] } [17:28:03.352] base::stop(msg) [17:28:03.352] } [17:28:03.352] }) [17:28:03.352] } [17:28:03.352] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:03.352] base::options(mc.cores = 1L) [17:28:03.352] } [17:28:03.352] ...future.strategy.old <- future::plan("list") [17:28:03.352] options(future.plan = NULL) [17:28:03.352] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.352] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:03.352] } [17:28:03.352] ...future.workdir <- getwd() [17:28:03.352] } [17:28:03.352] ...future.oldOptions <- base::as.list(base::.Options) [17:28:03.352] ...future.oldEnvVars <- base::Sys.getenv() [17:28:03.352] } [17:28:03.352] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:03.352] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:03.352] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:03.352] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:03.352] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:03.352] future.stdout.windows.reencode = NULL, width = 80L) [17:28:03.352] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:03.352] base::names(...future.oldOptions)) [17:28:03.352] } [17:28:03.352] if (FALSE) { [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] if (TRUE) { [17:28:03.352] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:03.352] open = "w") [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:03.352] windows = "NUL", "/dev/null"), open = "w") [17:28:03.352] } [17:28:03.352] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:03.352] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:03.352] base::sink(type = "output", split = FALSE) [17:28:03.352] base::close(...future.stdout) [17:28:03.352] }, add = TRUE) [17:28:03.352] } [17:28:03.352] ...future.frame <- base::sys.nframe() [17:28:03.352] ...future.conditions <- base::list() [17:28:03.352] ...future.rng <- base::globalenv()$.Random.seed [17:28:03.352] if (FALSE) { [17:28:03.352] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:03.352] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:03.352] } [17:28:03.352] ...future.result <- base::tryCatch({ [17:28:03.352] base::withCallingHandlers({ [17:28:03.352] ...future.value <- base::withVisible(base::local({ [17:28:03.352] ...future.makeSendCondition <- base::local({ [17:28:03.352] sendCondition <- NULL [17:28:03.352] function(frame = 1L) { [17:28:03.352] if (is.function(sendCondition)) [17:28:03.352] return(sendCondition) [17:28:03.352] ns <- getNamespace("parallel") [17:28:03.352] if (exists("sendData", mode = "function", [17:28:03.352] envir = ns)) { [17:28:03.352] parallel_sendData <- get("sendData", mode = "function", [17:28:03.352] envir = ns) [17:28:03.352] envir <- sys.frame(frame) [17:28:03.352] master <- NULL [17:28:03.352] while (!identical(envir, .GlobalEnv) && [17:28:03.352] !identical(envir, emptyenv())) { [17:28:03.352] if (exists("master", mode = "list", envir = envir, [17:28:03.352] inherits = FALSE)) { [17:28:03.352] master <- get("master", mode = "list", [17:28:03.352] envir = envir, inherits = FALSE) [17:28:03.352] if (inherits(master, c("SOCKnode", [17:28:03.352] "SOCK0node"))) { [17:28:03.352] sendCondition <<- function(cond) { [17:28:03.352] data <- list(type = "VALUE", value = cond, [17:28:03.352] success = TRUE) [17:28:03.352] parallel_sendData(master, data) [17:28:03.352] } [17:28:03.352] return(sendCondition) [17:28:03.352] } [17:28:03.352] } [17:28:03.352] frame <- frame + 1L [17:28:03.352] envir <- sys.frame(frame) [17:28:03.352] } [17:28:03.352] } [17:28:03.352] sendCondition <<- function(cond) NULL [17:28:03.352] } [17:28:03.352] }) [17:28:03.352] withCallingHandlers({ [17:28:03.352] { [17:28:03.352] Sys.sleep(0.1) [17:28:03.352] kk [17:28:03.352] } [17:28:03.352] }, immediateCondition = function(cond) { [17:28:03.352] sendCondition <- ...future.makeSendCondition() [17:28:03.352] sendCondition(cond) [17:28:03.352] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.352] { [17:28:03.352] inherits <- base::inherits [17:28:03.352] invokeRestart <- base::invokeRestart [17:28:03.352] is.null <- base::is.null [17:28:03.352] muffled <- FALSE [17:28:03.352] if (inherits(cond, "message")) { [17:28:03.352] muffled <- grepl(pattern, "muffleMessage") [17:28:03.352] if (muffled) [17:28:03.352] invokeRestart("muffleMessage") [17:28:03.352] } [17:28:03.352] else if (inherits(cond, "warning")) { [17:28:03.352] muffled <- grepl(pattern, "muffleWarning") [17:28:03.352] if (muffled) [17:28:03.352] invokeRestart("muffleWarning") [17:28:03.352] } [17:28:03.352] else if (inherits(cond, "condition")) { [17:28:03.352] if (!is.null(pattern)) { [17:28:03.352] computeRestarts <- base::computeRestarts [17:28:03.352] grepl <- base::grepl [17:28:03.352] restarts <- computeRestarts(cond) [17:28:03.352] for (restart in restarts) { [17:28:03.352] name <- restart$name [17:28:03.352] if (is.null(name)) [17:28:03.352] next [17:28:03.352] if (!grepl(pattern, name)) [17:28:03.352] next [17:28:03.352] invokeRestart(restart) [17:28:03.352] muffled <- TRUE [17:28:03.352] break [17:28:03.352] } [17:28:03.352] } [17:28:03.352] } [17:28:03.352] invisible(muffled) [17:28:03.352] } [17:28:03.352] muffleCondition(cond) [17:28:03.352] }) [17:28:03.352] })) [17:28:03.352] future::FutureResult(value = ...future.value$value, [17:28:03.352] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.352] ...future.rng), globalenv = if (FALSE) [17:28:03.352] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:03.352] ...future.globalenv.names)) [17:28:03.352] else NULL, started = ...future.startTime, version = "1.8") [17:28:03.352] }, condition = base::local({ [17:28:03.352] c <- base::c [17:28:03.352] inherits <- base::inherits [17:28:03.352] invokeRestart <- base::invokeRestart [17:28:03.352] length <- base::length [17:28:03.352] list <- base::list [17:28:03.352] seq.int <- base::seq.int [17:28:03.352] signalCondition <- base::signalCondition [17:28:03.352] sys.calls <- base::sys.calls [17:28:03.352] `[[` <- base::`[[` [17:28:03.352] `+` <- base::`+` [17:28:03.352] `<<-` <- base::`<<-` [17:28:03.352] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:03.352] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:03.352] 3L)] [17:28:03.352] } [17:28:03.352] function(cond) { [17:28:03.352] is_error <- inherits(cond, "error") [17:28:03.352] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:03.352] NULL) [17:28:03.352] if (is_error) { [17:28:03.352] sessionInformation <- function() { [17:28:03.352] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:03.352] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:03.352] search = base::search(), system = base::Sys.info()) [17:28:03.352] } [17:28:03.352] ...future.conditions[[length(...future.conditions) + [17:28:03.352] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:03.352] cond$call), session = sessionInformation(), [17:28:03.352] timestamp = base::Sys.time(), signaled = 0L) [17:28:03.352] signalCondition(cond) [17:28:03.352] } [17:28:03.352] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:03.352] "immediateCondition"))) { [17:28:03.352] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:03.352] ...future.conditions[[length(...future.conditions) + [17:28:03.352] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:03.352] if (TRUE && !signal) { [17:28:03.352] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.352] { [17:28:03.352] inherits <- base::inherits [17:28:03.352] invokeRestart <- base::invokeRestart [17:28:03.352] is.null <- base::is.null [17:28:03.352] muffled <- FALSE [17:28:03.352] if (inherits(cond, "message")) { [17:28:03.352] muffled <- grepl(pattern, "muffleMessage") [17:28:03.352] if (muffled) [17:28:03.352] invokeRestart("muffleMessage") [17:28:03.352] } [17:28:03.352] else if (inherits(cond, "warning")) { [17:28:03.352] muffled <- grepl(pattern, "muffleWarning") [17:28:03.352] if (muffled) [17:28:03.352] invokeRestart("muffleWarning") [17:28:03.352] } [17:28:03.352] else if (inherits(cond, "condition")) { [17:28:03.352] if (!is.null(pattern)) { [17:28:03.352] computeRestarts <- base::computeRestarts [17:28:03.352] grepl <- base::grepl [17:28:03.352] restarts <- computeRestarts(cond) [17:28:03.352] for (restart in restarts) { [17:28:03.352] name <- restart$name [17:28:03.352] if (is.null(name)) [17:28:03.352] next [17:28:03.352] if (!grepl(pattern, name)) [17:28:03.352] next [17:28:03.352] invokeRestart(restart) [17:28:03.352] muffled <- TRUE [17:28:03.352] break [17:28:03.352] } [17:28:03.352] } [17:28:03.352] } [17:28:03.352] invisible(muffled) [17:28:03.352] } [17:28:03.352] muffleCondition(cond, pattern = "^muffle") [17:28:03.352] } [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] if (TRUE) { [17:28:03.352] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.352] { [17:28:03.352] inherits <- base::inherits [17:28:03.352] invokeRestart <- base::invokeRestart [17:28:03.352] is.null <- base::is.null [17:28:03.352] muffled <- FALSE [17:28:03.352] if (inherits(cond, "message")) { [17:28:03.352] muffled <- grepl(pattern, "muffleMessage") [17:28:03.352] if (muffled) [17:28:03.352] invokeRestart("muffleMessage") [17:28:03.352] } [17:28:03.352] else if (inherits(cond, "warning")) { [17:28:03.352] muffled <- grepl(pattern, "muffleWarning") [17:28:03.352] if (muffled) [17:28:03.352] invokeRestart("muffleWarning") [17:28:03.352] } [17:28:03.352] else if (inherits(cond, "condition")) { [17:28:03.352] if (!is.null(pattern)) { [17:28:03.352] computeRestarts <- base::computeRestarts [17:28:03.352] grepl <- base::grepl [17:28:03.352] restarts <- computeRestarts(cond) [17:28:03.352] for (restart in restarts) { [17:28:03.352] name <- restart$name [17:28:03.352] if (is.null(name)) [17:28:03.352] next [17:28:03.352] if (!grepl(pattern, name)) [17:28:03.352] next [17:28:03.352] invokeRestart(restart) [17:28:03.352] muffled <- TRUE [17:28:03.352] break [17:28:03.352] } [17:28:03.352] } [17:28:03.352] } [17:28:03.352] invisible(muffled) [17:28:03.352] } [17:28:03.352] muffleCondition(cond, pattern = "^muffle") [17:28:03.352] } [17:28:03.352] } [17:28:03.352] } [17:28:03.352] })) [17:28:03.352] }, error = function(ex) { [17:28:03.352] base::structure(base::list(value = NULL, visible = NULL, [17:28:03.352] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.352] ...future.rng), started = ...future.startTime, [17:28:03.352] finished = Sys.time(), session_uuid = NA_character_, [17:28:03.352] version = "1.8"), class = "FutureResult") [17:28:03.352] }, finally = { [17:28:03.352] if (!identical(...future.workdir, getwd())) [17:28:03.352] setwd(...future.workdir) [17:28:03.352] { [17:28:03.352] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:03.352] ...future.oldOptions$nwarnings <- NULL [17:28:03.352] } [17:28:03.352] base::options(...future.oldOptions) [17:28:03.352] if (.Platform$OS.type == "windows") { [17:28:03.352] old_names <- names(...future.oldEnvVars) [17:28:03.352] envs <- base::Sys.getenv() [17:28:03.352] names <- names(envs) [17:28:03.352] common <- intersect(names, old_names) [17:28:03.352] added <- setdiff(names, old_names) [17:28:03.352] removed <- setdiff(old_names, names) [17:28:03.352] changed <- common[...future.oldEnvVars[common] != [17:28:03.352] envs[common]] [17:28:03.352] NAMES <- toupper(changed) [17:28:03.352] args <- list() [17:28:03.352] for (kk in seq_along(NAMES)) { [17:28:03.352] name <- changed[[kk]] [17:28:03.352] NAME <- NAMES[[kk]] [17:28:03.352] if (name != NAME && is.element(NAME, old_names)) [17:28:03.352] next [17:28:03.352] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.352] } [17:28:03.352] NAMES <- toupper(added) [17:28:03.352] for (kk in seq_along(NAMES)) { [17:28:03.352] name <- added[[kk]] [17:28:03.352] NAME <- NAMES[[kk]] [17:28:03.352] if (name != NAME && is.element(NAME, old_names)) [17:28:03.352] next [17:28:03.352] args[[name]] <- "" [17:28:03.352] } [17:28:03.352] NAMES <- toupper(removed) [17:28:03.352] for (kk in seq_along(NAMES)) { [17:28:03.352] name <- removed[[kk]] [17:28:03.352] NAME <- NAMES[[kk]] [17:28:03.352] if (name != NAME && is.element(NAME, old_names)) [17:28:03.352] next [17:28:03.352] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.352] } [17:28:03.352] if (length(args) > 0) [17:28:03.352] base::do.call(base::Sys.setenv, args = args) [17:28:03.352] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:03.352] } [17:28:03.352] { [17:28:03.352] if (base::length(...future.futureOptionsAdded) > [17:28:03.352] 0L) { [17:28:03.352] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:03.352] base::names(opts) <- ...future.futureOptionsAdded [17:28:03.352] base::options(opts) [17:28:03.352] } [17:28:03.352] { [17:28:03.352] { [17:28:03.352] base::options(mc.cores = ...future.mc.cores.old) [17:28:03.352] NULL [17:28:03.352] } [17:28:03.352] options(future.plan = NULL) [17:28:03.352] if (is.na(NA_character_)) [17:28:03.352] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.352] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:03.352] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:03.352] .init = FALSE) [17:28:03.352] } [17:28:03.352] } [17:28:03.352] } [17:28:03.352] }) [17:28:03.352] if (TRUE) { [17:28:03.352] base::sink(type = "output", split = FALSE) [17:28:03.352] if (TRUE) { [17:28:03.352] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:03.352] } [17:28:03.352] else { [17:28:03.352] ...future.result["stdout"] <- base::list(NULL) [17:28:03.352] } [17:28:03.352] base::close(...future.stdout) [17:28:03.352] ...future.stdout <- NULL [17:28:03.352] } [17:28:03.352] ...future.result$conditions <- ...future.conditions [17:28:03.352] ...future.result$finished <- base::Sys.time() [17:28:03.352] ...future.result [17:28:03.352] } [17:28:03.357] Exporting 1 global objects (56 bytes) to cluster node #2 ... [17:28:03.357] Exporting 'kk' (56 bytes) to cluster node #2 ... [17:28:03.358] Exporting 'kk' (56 bytes) to cluster node #2 ... DONE [17:28:03.358] Exporting 1 global objects (56 bytes) to cluster node #2 ... DONE [17:28:03.358] MultisessionFuture started [17:28:03.359] - Launch lazy future ... done [17:28:03.359] run() for 'MultisessionFuture' ... done [17:28:03.359] getGlobalsAndPackages() ... [17:28:03.359] Searching for globals... [17:28:03.360] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:28:03.360] Searching for globals ... DONE [17:28:03.361] Resolving globals: FALSE [17:28:03.361] The total size of the 1 globals is 56 bytes (56 bytes) [17:28:03.362] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:28:03.362] - globals: [1] 'kk' [17:28:03.362] [17:28:03.362] getGlobalsAndPackages() ... DONE [17:28:03.362] run() for 'Future' ... [17:28:03.363] - state: 'created' [17:28:03.363] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:03.377] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:03.377] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:03.377] - Field: 'node' [17:28:03.378] - Field: 'label' [17:28:03.378] - Field: 'local' [17:28:03.378] - Field: 'owner' [17:28:03.378] - Field: 'envir' [17:28:03.378] - Field: 'workers' [17:28:03.378] - Field: 'packages' [17:28:03.379] - Field: 'gc' [17:28:03.379] - Field: 'conditions' [17:28:03.379] - Field: 'persistent' [17:28:03.379] - Field: 'expr' [17:28:03.379] - Field: 'uuid' [17:28:03.380] - Field: 'seed' [17:28:03.380] - Field: 'version' [17:28:03.380] - Field: 'result' [17:28:03.380] - Field: 'asynchronous' [17:28:03.380] - Field: 'calls' [17:28:03.380] - Field: 'globals' [17:28:03.381] - Field: 'stdout' [17:28:03.381] - Field: 'earlySignal' [17:28:03.381] - Field: 'lazy' [17:28:03.381] - Field: 'state' [17:28:03.381] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:03.381] - Launch lazy future ... [17:28:03.382] Packages needed by the future expression (n = 0): [17:28:03.382] Packages needed by future strategies (n = 0): [17:28:03.383] { [17:28:03.383] { [17:28:03.383] { [17:28:03.383] ...future.startTime <- base::Sys.time() [17:28:03.383] { [17:28:03.383] { [17:28:03.383] { [17:28:03.383] { [17:28:03.383] base::local({ [17:28:03.383] has_future <- base::requireNamespace("future", [17:28:03.383] quietly = TRUE) [17:28:03.383] if (has_future) { [17:28:03.383] ns <- base::getNamespace("future") [17:28:03.383] version <- ns[[".package"]][["version"]] [17:28:03.383] if (is.null(version)) [17:28:03.383] version <- utils::packageVersion("future") [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] version <- NULL [17:28:03.383] } [17:28:03.383] if (!has_future || version < "1.8.0") { [17:28:03.383] info <- base::c(r_version = base::gsub("R version ", [17:28:03.383] "", base::R.version$version.string), [17:28:03.383] platform = base::sprintf("%s (%s-bit)", [17:28:03.383] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:03.383] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:03.383] "release", "version")], collapse = " "), [17:28:03.383] hostname = base::Sys.info()[["nodename"]]) [17:28:03.383] info <- base::sprintf("%s: %s", base::names(info), [17:28:03.383] info) [17:28:03.383] info <- base::paste(info, collapse = "; ") [17:28:03.383] if (!has_future) { [17:28:03.383] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:03.383] info) [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:03.383] info, version) [17:28:03.383] } [17:28:03.383] base::stop(msg) [17:28:03.383] } [17:28:03.383] }) [17:28:03.383] } [17:28:03.383] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:03.383] base::options(mc.cores = 1L) [17:28:03.383] } [17:28:03.383] ...future.strategy.old <- future::plan("list") [17:28:03.383] options(future.plan = NULL) [17:28:03.383] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.383] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:03.383] } [17:28:03.383] ...future.workdir <- getwd() [17:28:03.383] } [17:28:03.383] ...future.oldOptions <- base::as.list(base::.Options) [17:28:03.383] ...future.oldEnvVars <- base::Sys.getenv() [17:28:03.383] } [17:28:03.383] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:03.383] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:03.383] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:03.383] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:03.383] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:03.383] future.stdout.windows.reencode = NULL, width = 80L) [17:28:03.383] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:03.383] base::names(...future.oldOptions)) [17:28:03.383] } [17:28:03.383] if (FALSE) { [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] if (TRUE) { [17:28:03.383] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:03.383] open = "w") [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:03.383] windows = "NUL", "/dev/null"), open = "w") [17:28:03.383] } [17:28:03.383] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:03.383] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:03.383] base::sink(type = "output", split = FALSE) [17:28:03.383] base::close(...future.stdout) [17:28:03.383] }, add = TRUE) [17:28:03.383] } [17:28:03.383] ...future.frame <- base::sys.nframe() [17:28:03.383] ...future.conditions <- base::list() [17:28:03.383] ...future.rng <- base::globalenv()$.Random.seed [17:28:03.383] if (FALSE) { [17:28:03.383] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:03.383] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:03.383] } [17:28:03.383] ...future.result <- base::tryCatch({ [17:28:03.383] base::withCallingHandlers({ [17:28:03.383] ...future.value <- base::withVisible(base::local({ [17:28:03.383] ...future.makeSendCondition <- base::local({ [17:28:03.383] sendCondition <- NULL [17:28:03.383] function(frame = 1L) { [17:28:03.383] if (is.function(sendCondition)) [17:28:03.383] return(sendCondition) [17:28:03.383] ns <- getNamespace("parallel") [17:28:03.383] if (exists("sendData", mode = "function", [17:28:03.383] envir = ns)) { [17:28:03.383] parallel_sendData <- get("sendData", mode = "function", [17:28:03.383] envir = ns) [17:28:03.383] envir <- sys.frame(frame) [17:28:03.383] master <- NULL [17:28:03.383] while (!identical(envir, .GlobalEnv) && [17:28:03.383] !identical(envir, emptyenv())) { [17:28:03.383] if (exists("master", mode = "list", envir = envir, [17:28:03.383] inherits = FALSE)) { [17:28:03.383] master <- get("master", mode = "list", [17:28:03.383] envir = envir, inherits = FALSE) [17:28:03.383] if (inherits(master, c("SOCKnode", [17:28:03.383] "SOCK0node"))) { [17:28:03.383] sendCondition <<- function(cond) { [17:28:03.383] data <- list(type = "VALUE", value = cond, [17:28:03.383] success = TRUE) [17:28:03.383] parallel_sendData(master, data) [17:28:03.383] } [17:28:03.383] return(sendCondition) [17:28:03.383] } [17:28:03.383] } [17:28:03.383] frame <- frame + 1L [17:28:03.383] envir <- sys.frame(frame) [17:28:03.383] } [17:28:03.383] } [17:28:03.383] sendCondition <<- function(cond) NULL [17:28:03.383] } [17:28:03.383] }) [17:28:03.383] withCallingHandlers({ [17:28:03.383] { [17:28:03.383] Sys.sleep(0.1) [17:28:03.383] kk [17:28:03.383] } [17:28:03.383] }, immediateCondition = function(cond) { [17:28:03.383] sendCondition <- ...future.makeSendCondition() [17:28:03.383] sendCondition(cond) [17:28:03.383] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.383] { [17:28:03.383] inherits <- base::inherits [17:28:03.383] invokeRestart <- base::invokeRestart [17:28:03.383] is.null <- base::is.null [17:28:03.383] muffled <- FALSE [17:28:03.383] if (inherits(cond, "message")) { [17:28:03.383] muffled <- grepl(pattern, "muffleMessage") [17:28:03.383] if (muffled) [17:28:03.383] invokeRestart("muffleMessage") [17:28:03.383] } [17:28:03.383] else if (inherits(cond, "warning")) { [17:28:03.383] muffled <- grepl(pattern, "muffleWarning") [17:28:03.383] if (muffled) [17:28:03.383] invokeRestart("muffleWarning") [17:28:03.383] } [17:28:03.383] else if (inherits(cond, "condition")) { [17:28:03.383] if (!is.null(pattern)) { [17:28:03.383] computeRestarts <- base::computeRestarts [17:28:03.383] grepl <- base::grepl [17:28:03.383] restarts <- computeRestarts(cond) [17:28:03.383] for (restart in restarts) { [17:28:03.383] name <- restart$name [17:28:03.383] if (is.null(name)) [17:28:03.383] next [17:28:03.383] if (!grepl(pattern, name)) [17:28:03.383] next [17:28:03.383] invokeRestart(restart) [17:28:03.383] muffled <- TRUE [17:28:03.383] break [17:28:03.383] } [17:28:03.383] } [17:28:03.383] } [17:28:03.383] invisible(muffled) [17:28:03.383] } [17:28:03.383] muffleCondition(cond) [17:28:03.383] }) [17:28:03.383] })) [17:28:03.383] future::FutureResult(value = ...future.value$value, [17:28:03.383] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.383] ...future.rng), globalenv = if (FALSE) [17:28:03.383] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:03.383] ...future.globalenv.names)) [17:28:03.383] else NULL, started = ...future.startTime, version = "1.8") [17:28:03.383] }, condition = base::local({ [17:28:03.383] c <- base::c [17:28:03.383] inherits <- base::inherits [17:28:03.383] invokeRestart <- base::invokeRestart [17:28:03.383] length <- base::length [17:28:03.383] list <- base::list [17:28:03.383] seq.int <- base::seq.int [17:28:03.383] signalCondition <- base::signalCondition [17:28:03.383] sys.calls <- base::sys.calls [17:28:03.383] `[[` <- base::`[[` [17:28:03.383] `+` <- base::`+` [17:28:03.383] `<<-` <- base::`<<-` [17:28:03.383] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:03.383] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:03.383] 3L)] [17:28:03.383] } [17:28:03.383] function(cond) { [17:28:03.383] is_error <- inherits(cond, "error") [17:28:03.383] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:03.383] NULL) [17:28:03.383] if (is_error) { [17:28:03.383] sessionInformation <- function() { [17:28:03.383] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:03.383] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:03.383] search = base::search(), system = base::Sys.info()) [17:28:03.383] } [17:28:03.383] ...future.conditions[[length(...future.conditions) + [17:28:03.383] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:03.383] cond$call), session = sessionInformation(), [17:28:03.383] timestamp = base::Sys.time(), signaled = 0L) [17:28:03.383] signalCondition(cond) [17:28:03.383] } [17:28:03.383] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:03.383] "immediateCondition"))) { [17:28:03.383] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:03.383] ...future.conditions[[length(...future.conditions) + [17:28:03.383] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:03.383] if (TRUE && !signal) { [17:28:03.383] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.383] { [17:28:03.383] inherits <- base::inherits [17:28:03.383] invokeRestart <- base::invokeRestart [17:28:03.383] is.null <- base::is.null [17:28:03.383] muffled <- FALSE [17:28:03.383] if (inherits(cond, "message")) { [17:28:03.383] muffled <- grepl(pattern, "muffleMessage") [17:28:03.383] if (muffled) [17:28:03.383] invokeRestart("muffleMessage") [17:28:03.383] } [17:28:03.383] else if (inherits(cond, "warning")) { [17:28:03.383] muffled <- grepl(pattern, "muffleWarning") [17:28:03.383] if (muffled) [17:28:03.383] invokeRestart("muffleWarning") [17:28:03.383] } [17:28:03.383] else if (inherits(cond, "condition")) { [17:28:03.383] if (!is.null(pattern)) { [17:28:03.383] computeRestarts <- base::computeRestarts [17:28:03.383] grepl <- base::grepl [17:28:03.383] restarts <- computeRestarts(cond) [17:28:03.383] for (restart in restarts) { [17:28:03.383] name <- restart$name [17:28:03.383] if (is.null(name)) [17:28:03.383] next [17:28:03.383] if (!grepl(pattern, name)) [17:28:03.383] next [17:28:03.383] invokeRestart(restart) [17:28:03.383] muffled <- TRUE [17:28:03.383] break [17:28:03.383] } [17:28:03.383] } [17:28:03.383] } [17:28:03.383] invisible(muffled) [17:28:03.383] } [17:28:03.383] muffleCondition(cond, pattern = "^muffle") [17:28:03.383] } [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] if (TRUE) { [17:28:03.383] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.383] { [17:28:03.383] inherits <- base::inherits [17:28:03.383] invokeRestart <- base::invokeRestart [17:28:03.383] is.null <- base::is.null [17:28:03.383] muffled <- FALSE [17:28:03.383] if (inherits(cond, "message")) { [17:28:03.383] muffled <- grepl(pattern, "muffleMessage") [17:28:03.383] if (muffled) [17:28:03.383] invokeRestart("muffleMessage") [17:28:03.383] } [17:28:03.383] else if (inherits(cond, "warning")) { [17:28:03.383] muffled <- grepl(pattern, "muffleWarning") [17:28:03.383] if (muffled) [17:28:03.383] invokeRestart("muffleWarning") [17:28:03.383] } [17:28:03.383] else if (inherits(cond, "condition")) { [17:28:03.383] if (!is.null(pattern)) { [17:28:03.383] computeRestarts <- base::computeRestarts [17:28:03.383] grepl <- base::grepl [17:28:03.383] restarts <- computeRestarts(cond) [17:28:03.383] for (restart in restarts) { [17:28:03.383] name <- restart$name [17:28:03.383] if (is.null(name)) [17:28:03.383] next [17:28:03.383] if (!grepl(pattern, name)) [17:28:03.383] next [17:28:03.383] invokeRestart(restart) [17:28:03.383] muffled <- TRUE [17:28:03.383] break [17:28:03.383] } [17:28:03.383] } [17:28:03.383] } [17:28:03.383] invisible(muffled) [17:28:03.383] } [17:28:03.383] muffleCondition(cond, pattern = "^muffle") [17:28:03.383] } [17:28:03.383] } [17:28:03.383] } [17:28:03.383] })) [17:28:03.383] }, error = function(ex) { [17:28:03.383] base::structure(base::list(value = NULL, visible = NULL, [17:28:03.383] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.383] ...future.rng), started = ...future.startTime, [17:28:03.383] finished = Sys.time(), session_uuid = NA_character_, [17:28:03.383] version = "1.8"), class = "FutureResult") [17:28:03.383] }, finally = { [17:28:03.383] if (!identical(...future.workdir, getwd())) [17:28:03.383] setwd(...future.workdir) [17:28:03.383] { [17:28:03.383] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:03.383] ...future.oldOptions$nwarnings <- NULL [17:28:03.383] } [17:28:03.383] base::options(...future.oldOptions) [17:28:03.383] if (.Platform$OS.type == "windows") { [17:28:03.383] old_names <- names(...future.oldEnvVars) [17:28:03.383] envs <- base::Sys.getenv() [17:28:03.383] names <- names(envs) [17:28:03.383] common <- intersect(names, old_names) [17:28:03.383] added <- setdiff(names, old_names) [17:28:03.383] removed <- setdiff(old_names, names) [17:28:03.383] changed <- common[...future.oldEnvVars[common] != [17:28:03.383] envs[common]] [17:28:03.383] NAMES <- toupper(changed) [17:28:03.383] args <- list() [17:28:03.383] for (kk in seq_along(NAMES)) { [17:28:03.383] name <- changed[[kk]] [17:28:03.383] NAME <- NAMES[[kk]] [17:28:03.383] if (name != NAME && is.element(NAME, old_names)) [17:28:03.383] next [17:28:03.383] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.383] } [17:28:03.383] NAMES <- toupper(added) [17:28:03.383] for (kk in seq_along(NAMES)) { [17:28:03.383] name <- added[[kk]] [17:28:03.383] NAME <- NAMES[[kk]] [17:28:03.383] if (name != NAME && is.element(NAME, old_names)) [17:28:03.383] next [17:28:03.383] args[[name]] <- "" [17:28:03.383] } [17:28:03.383] NAMES <- toupper(removed) [17:28:03.383] for (kk in seq_along(NAMES)) { [17:28:03.383] name <- removed[[kk]] [17:28:03.383] NAME <- NAMES[[kk]] [17:28:03.383] if (name != NAME && is.element(NAME, old_names)) [17:28:03.383] next [17:28:03.383] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.383] } [17:28:03.383] if (length(args) > 0) [17:28:03.383] base::do.call(base::Sys.setenv, args = args) [17:28:03.383] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:03.383] } [17:28:03.383] { [17:28:03.383] if (base::length(...future.futureOptionsAdded) > [17:28:03.383] 0L) { [17:28:03.383] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:03.383] base::names(opts) <- ...future.futureOptionsAdded [17:28:03.383] base::options(opts) [17:28:03.383] } [17:28:03.383] { [17:28:03.383] { [17:28:03.383] base::options(mc.cores = ...future.mc.cores.old) [17:28:03.383] NULL [17:28:03.383] } [17:28:03.383] options(future.plan = NULL) [17:28:03.383] if (is.na(NA_character_)) [17:28:03.383] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.383] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:03.383] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:03.383] .init = FALSE) [17:28:03.383] } [17:28:03.383] } [17:28:03.383] } [17:28:03.383] }) [17:28:03.383] if (TRUE) { [17:28:03.383] base::sink(type = "output", split = FALSE) [17:28:03.383] if (TRUE) { [17:28:03.383] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:03.383] } [17:28:03.383] else { [17:28:03.383] ...future.result["stdout"] <- base::list(NULL) [17:28:03.383] } [17:28:03.383] base::close(...future.stdout) [17:28:03.383] ...future.stdout <- NULL [17:28:03.383] } [17:28:03.383] ...future.result$conditions <- ...future.conditions [17:28:03.383] ...future.result$finished <- base::Sys.time() [17:28:03.383] ...future.result [17:28:03.383] } [17:28:03.387] Poll #1 (0): usedNodes() = 2, workers = 2 [17:28:03.459] receiveMessageFromWorker() for ClusterFuture ... [17:28:03.459] - Validating connection of MultisessionFuture [17:28:03.459] - received message: FutureResult [17:28:03.459] - Received FutureResult [17:28:03.460] - Erased future from FutureRegistry [17:28:03.460] result() for ClusterFuture ... [17:28:03.460] - result already collected: FutureResult [17:28:03.460] result() for ClusterFuture ... done [17:28:03.460] receiveMessageFromWorker() for ClusterFuture ... done [17:28:03.461] result() for ClusterFuture ... [17:28:03.461] - result already collected: FutureResult [17:28:03.461] result() for ClusterFuture ... done [17:28:03.461] result() for ClusterFuture ... [17:28:03.461] - result already collected: FutureResult [17:28:03.461] result() for ClusterFuture ... done [17:28:03.462] Exporting 1 global objects (56 bytes) to cluster node #1 ... [17:28:03.462] Exporting 'kk' (56 bytes) to cluster node #1 ... [17:28:03.463] Exporting 'kk' (56 bytes) to cluster node #1 ... DONE [17:28:03.463] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [17:28:03.463] MultisessionFuture started [17:28:03.464] - Launch lazy future ... done [17:28:03.464] run() for 'MultisessionFuture' ... done [17:28:03.464] resolve() on list ... [17:28:03.464] recursive: 0 [17:28:03.464] length: 3 [17:28:03.464] [17:28:03.465] Future #1 [17:28:03.465] length: 2 (resolved future 1) [17:28:03.487] receiveMessageFromWorker() for ClusterFuture ... [17:28:03.488] - Validating connection of MultisessionFuture [17:28:03.488] - received message: FutureResult [17:28:03.488] - Received FutureResult [17:28:03.488] - Erased future from FutureRegistry [17:28:03.488] result() for ClusterFuture ... [17:28:03.488] - result already collected: FutureResult [17:28:03.489] result() for ClusterFuture ... done [17:28:03.489] receiveMessageFromWorker() for ClusterFuture ... done [17:28:03.489] Future #2 [17:28:03.489] length: 1 (resolved future 2) [17:28:03.581] receiveMessageFromWorker() for ClusterFuture ... [17:28:03.582] - Validating connection of MultisessionFuture [17:28:03.582] - received message: FutureResult [17:28:03.582] - Received FutureResult [17:28:03.582] - Erased future from FutureRegistry [17:28:03.582] result() for ClusterFuture ... [17:28:03.583] - result already collected: FutureResult [17:28:03.583] result() for ClusterFuture ... done [17:28:03.583] receiveMessageFromWorker() for ClusterFuture ... done [17:28:03.583] Future #3 [17:28:03.583] length: 0 (resolved future 3) [17:28:03.583] resolve() on list ... DONE [17:28:03.584] getGlobalsAndPackages() ... [17:28:03.584] Searching for globals... [17:28:03.585] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:28:03.585] Searching for globals ... DONE [17:28:03.585] Resolving globals: FALSE [17:28:03.586] The total size of the 1 globals is 56 bytes (56 bytes) [17:28:03.586] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:28:03.587] - globals: [1] 'kk' [17:28:03.587] [17:28:03.587] getGlobalsAndPackages() ... DONE [17:28:03.587] getGlobalsAndPackages() ... [17:28:03.587] Searching for globals... [17:28:03.589] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:28:03.589] Searching for globals ... DONE [17:28:03.589] Resolving globals: FALSE [17:28:03.589] The total size of the 1 globals is 56 bytes (56 bytes) [17:28:03.590] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:28:03.590] - globals: [1] 'kk' [17:28:03.590] [17:28:03.590] getGlobalsAndPackages() ... DONE [17:28:03.591] getGlobalsAndPackages() ... [17:28:03.591] Searching for globals... [17:28:03.592] - globals found: [3] '{', 'Sys.sleep', 'kk' [17:28:03.592] Searching for globals ... DONE [17:28:03.593] Resolving globals: FALSE [17:28:03.593] The total size of the 1 globals is 56 bytes (56 bytes) [17:28:03.593] The total size of the 1 globals exported for future expression ('{; Sys.sleep(0.1); kk; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'kk' (56 bytes of class 'numeric') [17:28:03.594] - globals: [1] 'kk' [17:28:03.594] [17:28:03.594] getGlobalsAndPackages() ... DONE [17:28:03.594] resolve() on list ... [17:28:03.594] recursive: 0 [17:28:03.595] length: 3 [17:28:03.595] [17:28:03.595] run() for 'Future' ... [17:28:03.595] - state: 'created' [17:28:03.595] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:03.609] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:03.610] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:03.610] - Field: 'node' [17:28:03.610] - Field: 'label' [17:28:03.610] - Field: 'local' [17:28:03.610] - Field: 'owner' [17:28:03.611] - Field: 'envir' [17:28:03.611] - Field: 'workers' [17:28:03.611] - Field: 'packages' [17:28:03.611] - Field: 'gc' [17:28:03.614] - Field: 'conditions' [17:28:03.615] - Field: 'persistent' [17:28:03.615] - Field: 'expr' [17:28:03.615] - Field: 'uuid' [17:28:03.615] - Field: 'seed' [17:28:03.615] - Field: 'version' [17:28:03.616] - Field: 'result' [17:28:03.616] - Field: 'asynchronous' [17:28:03.616] - Field: 'calls' [17:28:03.616] - Field: 'globals' [17:28:03.616] - Field: 'stdout' [17:28:03.617] - Field: 'earlySignal' [17:28:03.617] - Field: 'lazy' [17:28:03.617] - Field: 'state' [17:28:03.617] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:03.617] - Launch lazy future ... [17:28:03.618] Packages needed by the future expression (n = 0): [17:28:03.618] Packages needed by future strategies (n = 0): [17:28:03.618] { [17:28:03.618] { [17:28:03.618] { [17:28:03.618] ...future.startTime <- base::Sys.time() [17:28:03.618] { [17:28:03.618] { [17:28:03.618] { [17:28:03.618] { [17:28:03.618] base::local({ [17:28:03.618] has_future <- base::requireNamespace("future", [17:28:03.618] quietly = TRUE) [17:28:03.618] if (has_future) { [17:28:03.618] ns <- base::getNamespace("future") [17:28:03.618] version <- ns[[".package"]][["version"]] [17:28:03.618] if (is.null(version)) [17:28:03.618] version <- utils::packageVersion("future") [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] version <- NULL [17:28:03.618] } [17:28:03.618] if (!has_future || version < "1.8.0") { [17:28:03.618] info <- base::c(r_version = base::gsub("R version ", [17:28:03.618] "", base::R.version$version.string), [17:28:03.618] platform = base::sprintf("%s (%s-bit)", [17:28:03.618] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:03.618] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:03.618] "release", "version")], collapse = " "), [17:28:03.618] hostname = base::Sys.info()[["nodename"]]) [17:28:03.618] info <- base::sprintf("%s: %s", base::names(info), [17:28:03.618] info) [17:28:03.618] info <- base::paste(info, collapse = "; ") [17:28:03.618] if (!has_future) { [17:28:03.618] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:03.618] info) [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:03.618] info, version) [17:28:03.618] } [17:28:03.618] base::stop(msg) [17:28:03.618] } [17:28:03.618] }) [17:28:03.618] } [17:28:03.618] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:03.618] base::options(mc.cores = 1L) [17:28:03.618] } [17:28:03.618] ...future.strategy.old <- future::plan("list") [17:28:03.618] options(future.plan = NULL) [17:28:03.618] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.618] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:03.618] } [17:28:03.618] ...future.workdir <- getwd() [17:28:03.618] } [17:28:03.618] ...future.oldOptions <- base::as.list(base::.Options) [17:28:03.618] ...future.oldEnvVars <- base::Sys.getenv() [17:28:03.618] } [17:28:03.618] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:03.618] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:03.618] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:03.618] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:03.618] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:03.618] future.stdout.windows.reencode = NULL, width = 80L) [17:28:03.618] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:03.618] base::names(...future.oldOptions)) [17:28:03.618] } [17:28:03.618] if (FALSE) { [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] if (TRUE) { [17:28:03.618] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:03.618] open = "w") [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:03.618] windows = "NUL", "/dev/null"), open = "w") [17:28:03.618] } [17:28:03.618] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:03.618] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:03.618] base::sink(type = "output", split = FALSE) [17:28:03.618] base::close(...future.stdout) [17:28:03.618] }, add = TRUE) [17:28:03.618] } [17:28:03.618] ...future.frame <- base::sys.nframe() [17:28:03.618] ...future.conditions <- base::list() [17:28:03.618] ...future.rng <- base::globalenv()$.Random.seed [17:28:03.618] if (FALSE) { [17:28:03.618] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:03.618] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:03.618] } [17:28:03.618] ...future.result <- base::tryCatch({ [17:28:03.618] base::withCallingHandlers({ [17:28:03.618] ...future.value <- base::withVisible(base::local({ [17:28:03.618] ...future.makeSendCondition <- base::local({ [17:28:03.618] sendCondition <- NULL [17:28:03.618] function(frame = 1L) { [17:28:03.618] if (is.function(sendCondition)) [17:28:03.618] return(sendCondition) [17:28:03.618] ns <- getNamespace("parallel") [17:28:03.618] if (exists("sendData", mode = "function", [17:28:03.618] envir = ns)) { [17:28:03.618] parallel_sendData <- get("sendData", mode = "function", [17:28:03.618] envir = ns) [17:28:03.618] envir <- sys.frame(frame) [17:28:03.618] master <- NULL [17:28:03.618] while (!identical(envir, .GlobalEnv) && [17:28:03.618] !identical(envir, emptyenv())) { [17:28:03.618] if (exists("master", mode = "list", envir = envir, [17:28:03.618] inherits = FALSE)) { [17:28:03.618] master <- get("master", mode = "list", [17:28:03.618] envir = envir, inherits = FALSE) [17:28:03.618] if (inherits(master, c("SOCKnode", [17:28:03.618] "SOCK0node"))) { [17:28:03.618] sendCondition <<- function(cond) { [17:28:03.618] data <- list(type = "VALUE", value = cond, [17:28:03.618] success = TRUE) [17:28:03.618] parallel_sendData(master, data) [17:28:03.618] } [17:28:03.618] return(sendCondition) [17:28:03.618] } [17:28:03.618] } [17:28:03.618] frame <- frame + 1L [17:28:03.618] envir <- sys.frame(frame) [17:28:03.618] } [17:28:03.618] } [17:28:03.618] sendCondition <<- function(cond) NULL [17:28:03.618] } [17:28:03.618] }) [17:28:03.618] withCallingHandlers({ [17:28:03.618] { [17:28:03.618] Sys.sleep(0.1) [17:28:03.618] kk [17:28:03.618] } [17:28:03.618] }, immediateCondition = function(cond) { [17:28:03.618] sendCondition <- ...future.makeSendCondition() [17:28:03.618] sendCondition(cond) [17:28:03.618] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.618] { [17:28:03.618] inherits <- base::inherits [17:28:03.618] invokeRestart <- base::invokeRestart [17:28:03.618] is.null <- base::is.null [17:28:03.618] muffled <- FALSE [17:28:03.618] if (inherits(cond, "message")) { [17:28:03.618] muffled <- grepl(pattern, "muffleMessage") [17:28:03.618] if (muffled) [17:28:03.618] invokeRestart("muffleMessage") [17:28:03.618] } [17:28:03.618] else if (inherits(cond, "warning")) { [17:28:03.618] muffled <- grepl(pattern, "muffleWarning") [17:28:03.618] if (muffled) [17:28:03.618] invokeRestart("muffleWarning") [17:28:03.618] } [17:28:03.618] else if (inherits(cond, "condition")) { [17:28:03.618] if (!is.null(pattern)) { [17:28:03.618] computeRestarts <- base::computeRestarts [17:28:03.618] grepl <- base::grepl [17:28:03.618] restarts <- computeRestarts(cond) [17:28:03.618] for (restart in restarts) { [17:28:03.618] name <- restart$name [17:28:03.618] if (is.null(name)) [17:28:03.618] next [17:28:03.618] if (!grepl(pattern, name)) [17:28:03.618] next [17:28:03.618] invokeRestart(restart) [17:28:03.618] muffled <- TRUE [17:28:03.618] break [17:28:03.618] } [17:28:03.618] } [17:28:03.618] } [17:28:03.618] invisible(muffled) [17:28:03.618] } [17:28:03.618] muffleCondition(cond) [17:28:03.618] }) [17:28:03.618] })) [17:28:03.618] future::FutureResult(value = ...future.value$value, [17:28:03.618] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.618] ...future.rng), globalenv = if (FALSE) [17:28:03.618] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:03.618] ...future.globalenv.names)) [17:28:03.618] else NULL, started = ...future.startTime, version = "1.8") [17:28:03.618] }, condition = base::local({ [17:28:03.618] c <- base::c [17:28:03.618] inherits <- base::inherits [17:28:03.618] invokeRestart <- base::invokeRestart [17:28:03.618] length <- base::length [17:28:03.618] list <- base::list [17:28:03.618] seq.int <- base::seq.int [17:28:03.618] signalCondition <- base::signalCondition [17:28:03.618] sys.calls <- base::sys.calls [17:28:03.618] `[[` <- base::`[[` [17:28:03.618] `+` <- base::`+` [17:28:03.618] `<<-` <- base::`<<-` [17:28:03.618] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:03.618] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:03.618] 3L)] [17:28:03.618] } [17:28:03.618] function(cond) { [17:28:03.618] is_error <- inherits(cond, "error") [17:28:03.618] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:03.618] NULL) [17:28:03.618] if (is_error) { [17:28:03.618] sessionInformation <- function() { [17:28:03.618] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:03.618] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:03.618] search = base::search(), system = base::Sys.info()) [17:28:03.618] } [17:28:03.618] ...future.conditions[[length(...future.conditions) + [17:28:03.618] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:03.618] cond$call), session = sessionInformation(), [17:28:03.618] timestamp = base::Sys.time(), signaled = 0L) [17:28:03.618] signalCondition(cond) [17:28:03.618] } [17:28:03.618] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:03.618] "immediateCondition"))) { [17:28:03.618] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:03.618] ...future.conditions[[length(...future.conditions) + [17:28:03.618] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:03.618] if (TRUE && !signal) { [17:28:03.618] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.618] { [17:28:03.618] inherits <- base::inherits [17:28:03.618] invokeRestart <- base::invokeRestart [17:28:03.618] is.null <- base::is.null [17:28:03.618] muffled <- FALSE [17:28:03.618] if (inherits(cond, "message")) { [17:28:03.618] muffled <- grepl(pattern, "muffleMessage") [17:28:03.618] if (muffled) [17:28:03.618] invokeRestart("muffleMessage") [17:28:03.618] } [17:28:03.618] else if (inherits(cond, "warning")) { [17:28:03.618] muffled <- grepl(pattern, "muffleWarning") [17:28:03.618] if (muffled) [17:28:03.618] invokeRestart("muffleWarning") [17:28:03.618] } [17:28:03.618] else if (inherits(cond, "condition")) { [17:28:03.618] if (!is.null(pattern)) { [17:28:03.618] computeRestarts <- base::computeRestarts [17:28:03.618] grepl <- base::grepl [17:28:03.618] restarts <- computeRestarts(cond) [17:28:03.618] for (restart in restarts) { [17:28:03.618] name <- restart$name [17:28:03.618] if (is.null(name)) [17:28:03.618] next [17:28:03.618] if (!grepl(pattern, name)) [17:28:03.618] next [17:28:03.618] invokeRestart(restart) [17:28:03.618] muffled <- TRUE [17:28:03.618] break [17:28:03.618] } [17:28:03.618] } [17:28:03.618] } [17:28:03.618] invisible(muffled) [17:28:03.618] } [17:28:03.618] muffleCondition(cond, pattern = "^muffle") [17:28:03.618] } [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] if (TRUE) { [17:28:03.618] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.618] { [17:28:03.618] inherits <- base::inherits [17:28:03.618] invokeRestart <- base::invokeRestart [17:28:03.618] is.null <- base::is.null [17:28:03.618] muffled <- FALSE [17:28:03.618] if (inherits(cond, "message")) { [17:28:03.618] muffled <- grepl(pattern, "muffleMessage") [17:28:03.618] if (muffled) [17:28:03.618] invokeRestart("muffleMessage") [17:28:03.618] } [17:28:03.618] else if (inherits(cond, "warning")) { [17:28:03.618] muffled <- grepl(pattern, "muffleWarning") [17:28:03.618] if (muffled) [17:28:03.618] invokeRestart("muffleWarning") [17:28:03.618] } [17:28:03.618] else if (inherits(cond, "condition")) { [17:28:03.618] if (!is.null(pattern)) { [17:28:03.618] computeRestarts <- base::computeRestarts [17:28:03.618] grepl <- base::grepl [17:28:03.618] restarts <- computeRestarts(cond) [17:28:03.618] for (restart in restarts) { [17:28:03.618] name <- restart$name [17:28:03.618] if (is.null(name)) [17:28:03.618] next [17:28:03.618] if (!grepl(pattern, name)) [17:28:03.618] next [17:28:03.618] invokeRestart(restart) [17:28:03.618] muffled <- TRUE [17:28:03.618] break [17:28:03.618] } [17:28:03.618] } [17:28:03.618] } [17:28:03.618] invisible(muffled) [17:28:03.618] } [17:28:03.618] muffleCondition(cond, pattern = "^muffle") [17:28:03.618] } [17:28:03.618] } [17:28:03.618] } [17:28:03.618] })) [17:28:03.618] }, error = function(ex) { [17:28:03.618] base::structure(base::list(value = NULL, visible = NULL, [17:28:03.618] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.618] ...future.rng), started = ...future.startTime, [17:28:03.618] finished = Sys.time(), session_uuid = NA_character_, [17:28:03.618] version = "1.8"), class = "FutureResult") [17:28:03.618] }, finally = { [17:28:03.618] if (!identical(...future.workdir, getwd())) [17:28:03.618] setwd(...future.workdir) [17:28:03.618] { [17:28:03.618] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:03.618] ...future.oldOptions$nwarnings <- NULL [17:28:03.618] } [17:28:03.618] base::options(...future.oldOptions) [17:28:03.618] if (.Platform$OS.type == "windows") { [17:28:03.618] old_names <- names(...future.oldEnvVars) [17:28:03.618] envs <- base::Sys.getenv() [17:28:03.618] names <- names(envs) [17:28:03.618] common <- intersect(names, old_names) [17:28:03.618] added <- setdiff(names, old_names) [17:28:03.618] removed <- setdiff(old_names, names) [17:28:03.618] changed <- common[...future.oldEnvVars[common] != [17:28:03.618] envs[common]] [17:28:03.618] NAMES <- toupper(changed) [17:28:03.618] args <- list() [17:28:03.618] for (kk in seq_along(NAMES)) { [17:28:03.618] name <- changed[[kk]] [17:28:03.618] NAME <- NAMES[[kk]] [17:28:03.618] if (name != NAME && is.element(NAME, old_names)) [17:28:03.618] next [17:28:03.618] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.618] } [17:28:03.618] NAMES <- toupper(added) [17:28:03.618] for (kk in seq_along(NAMES)) { [17:28:03.618] name <- added[[kk]] [17:28:03.618] NAME <- NAMES[[kk]] [17:28:03.618] if (name != NAME && is.element(NAME, old_names)) [17:28:03.618] next [17:28:03.618] args[[name]] <- "" [17:28:03.618] } [17:28:03.618] NAMES <- toupper(removed) [17:28:03.618] for (kk in seq_along(NAMES)) { [17:28:03.618] name <- removed[[kk]] [17:28:03.618] NAME <- NAMES[[kk]] [17:28:03.618] if (name != NAME && is.element(NAME, old_names)) [17:28:03.618] next [17:28:03.618] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.618] } [17:28:03.618] if (length(args) > 0) [17:28:03.618] base::do.call(base::Sys.setenv, args = args) [17:28:03.618] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:03.618] } [17:28:03.618] { [17:28:03.618] if (base::length(...future.futureOptionsAdded) > [17:28:03.618] 0L) { [17:28:03.618] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:03.618] base::names(opts) <- ...future.futureOptionsAdded [17:28:03.618] base::options(opts) [17:28:03.618] } [17:28:03.618] { [17:28:03.618] { [17:28:03.618] base::options(mc.cores = ...future.mc.cores.old) [17:28:03.618] NULL [17:28:03.618] } [17:28:03.618] options(future.plan = NULL) [17:28:03.618] if (is.na(NA_character_)) [17:28:03.618] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.618] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:03.618] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:03.618] .init = FALSE) [17:28:03.618] } [17:28:03.618] } [17:28:03.618] } [17:28:03.618] }) [17:28:03.618] if (TRUE) { [17:28:03.618] base::sink(type = "output", split = FALSE) [17:28:03.618] if (TRUE) { [17:28:03.618] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:03.618] } [17:28:03.618] else { [17:28:03.618] ...future.result["stdout"] <- base::list(NULL) [17:28:03.618] } [17:28:03.618] base::close(...future.stdout) [17:28:03.618] ...future.stdout <- NULL [17:28:03.618] } [17:28:03.618] ...future.result$conditions <- ...future.conditions [17:28:03.618] ...future.result$finished <- base::Sys.time() [17:28:03.618] ...future.result [17:28:03.618] } [17:28:03.623] Exporting 1 global objects (56 bytes) to cluster node #1 ... [17:28:03.624] Exporting 'kk' (56 bytes) to cluster node #1 ... [17:28:03.624] Exporting 'kk' (56 bytes) to cluster node #1 ... DONE [17:28:03.624] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [17:28:03.625] MultisessionFuture started [17:28:03.625] - Launch lazy future ... done [17:28:03.625] run() for 'MultisessionFuture' ... done [17:28:03.753] receiveMessageFromWorker() for ClusterFuture ... [17:28:03.754] - Validating connection of MultisessionFuture [17:28:03.754] - received message: FutureResult [17:28:03.754] - Received FutureResult [17:28:03.754] - Erased future from FutureRegistry [17:28:03.755] result() for ClusterFuture ... [17:28:03.755] - result already collected: FutureResult [17:28:03.755] result() for ClusterFuture ... done [17:28:03.755] receiveMessageFromWorker() for ClusterFuture ... done [17:28:03.755] Future #1 [17:28:03.755] length: 2 (resolved future 1) [17:28:03.756] run() for 'Future' ... [17:28:03.756] - state: 'created' [17:28:03.756] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:03.770] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:03.771] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:03.771] - Field: 'node' [17:28:03.771] - Field: 'label' [17:28:03.771] - Field: 'local' [17:28:03.771] - Field: 'owner' [17:28:03.771] - Field: 'envir' [17:28:03.772] - Field: 'workers' [17:28:03.772] - Field: 'packages' [17:28:03.772] - Field: 'gc' [17:28:03.772] - Field: 'conditions' [17:28:03.772] - Field: 'persistent' [17:28:03.773] - Field: 'expr' [17:28:03.773] - Field: 'uuid' [17:28:03.773] - Field: 'seed' [17:28:03.773] - Field: 'version' [17:28:03.773] - Field: 'result' [17:28:03.773] - Field: 'asynchronous' [17:28:03.774] - Field: 'calls' [17:28:03.774] - Field: 'globals' [17:28:03.774] - Field: 'stdout' [17:28:03.774] - Field: 'earlySignal' [17:28:03.774] - Field: 'lazy' [17:28:03.774] - Field: 'state' [17:28:03.775] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:03.775] - Launch lazy future ... [17:28:03.775] Packages needed by the future expression (n = 0): [17:28:03.775] Packages needed by future strategies (n = 0): [17:28:03.776] { [17:28:03.776] { [17:28:03.776] { [17:28:03.776] ...future.startTime <- base::Sys.time() [17:28:03.776] { [17:28:03.776] { [17:28:03.776] { [17:28:03.776] { [17:28:03.776] base::local({ [17:28:03.776] has_future <- base::requireNamespace("future", [17:28:03.776] quietly = TRUE) [17:28:03.776] if (has_future) { [17:28:03.776] ns <- base::getNamespace("future") [17:28:03.776] version <- ns[[".package"]][["version"]] [17:28:03.776] if (is.null(version)) [17:28:03.776] version <- utils::packageVersion("future") [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] version <- NULL [17:28:03.776] } [17:28:03.776] if (!has_future || version < "1.8.0") { [17:28:03.776] info <- base::c(r_version = base::gsub("R version ", [17:28:03.776] "", base::R.version$version.string), [17:28:03.776] platform = base::sprintf("%s (%s-bit)", [17:28:03.776] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:03.776] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:03.776] "release", "version")], collapse = " "), [17:28:03.776] hostname = base::Sys.info()[["nodename"]]) [17:28:03.776] info <- base::sprintf("%s: %s", base::names(info), [17:28:03.776] info) [17:28:03.776] info <- base::paste(info, collapse = "; ") [17:28:03.776] if (!has_future) { [17:28:03.776] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:03.776] info) [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:03.776] info, version) [17:28:03.776] } [17:28:03.776] base::stop(msg) [17:28:03.776] } [17:28:03.776] }) [17:28:03.776] } [17:28:03.776] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:03.776] base::options(mc.cores = 1L) [17:28:03.776] } [17:28:03.776] ...future.strategy.old <- future::plan("list") [17:28:03.776] options(future.plan = NULL) [17:28:03.776] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.776] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:03.776] } [17:28:03.776] ...future.workdir <- getwd() [17:28:03.776] } [17:28:03.776] ...future.oldOptions <- base::as.list(base::.Options) [17:28:03.776] ...future.oldEnvVars <- base::Sys.getenv() [17:28:03.776] } [17:28:03.776] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:03.776] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:03.776] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:03.776] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:03.776] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:03.776] future.stdout.windows.reencode = NULL, width = 80L) [17:28:03.776] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:03.776] base::names(...future.oldOptions)) [17:28:03.776] } [17:28:03.776] if (FALSE) { [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] if (TRUE) { [17:28:03.776] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:03.776] open = "w") [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:03.776] windows = "NUL", "/dev/null"), open = "w") [17:28:03.776] } [17:28:03.776] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:03.776] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:03.776] base::sink(type = "output", split = FALSE) [17:28:03.776] base::close(...future.stdout) [17:28:03.776] }, add = TRUE) [17:28:03.776] } [17:28:03.776] ...future.frame <- base::sys.nframe() [17:28:03.776] ...future.conditions <- base::list() [17:28:03.776] ...future.rng <- base::globalenv()$.Random.seed [17:28:03.776] if (FALSE) { [17:28:03.776] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:03.776] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:03.776] } [17:28:03.776] ...future.result <- base::tryCatch({ [17:28:03.776] base::withCallingHandlers({ [17:28:03.776] ...future.value <- base::withVisible(base::local({ [17:28:03.776] ...future.makeSendCondition <- base::local({ [17:28:03.776] sendCondition <- NULL [17:28:03.776] function(frame = 1L) { [17:28:03.776] if (is.function(sendCondition)) [17:28:03.776] return(sendCondition) [17:28:03.776] ns <- getNamespace("parallel") [17:28:03.776] if (exists("sendData", mode = "function", [17:28:03.776] envir = ns)) { [17:28:03.776] parallel_sendData <- get("sendData", mode = "function", [17:28:03.776] envir = ns) [17:28:03.776] envir <- sys.frame(frame) [17:28:03.776] master <- NULL [17:28:03.776] while (!identical(envir, .GlobalEnv) && [17:28:03.776] !identical(envir, emptyenv())) { [17:28:03.776] if (exists("master", mode = "list", envir = envir, [17:28:03.776] inherits = FALSE)) { [17:28:03.776] master <- get("master", mode = "list", [17:28:03.776] envir = envir, inherits = FALSE) [17:28:03.776] if (inherits(master, c("SOCKnode", [17:28:03.776] "SOCK0node"))) { [17:28:03.776] sendCondition <<- function(cond) { [17:28:03.776] data <- list(type = "VALUE", value = cond, [17:28:03.776] success = TRUE) [17:28:03.776] parallel_sendData(master, data) [17:28:03.776] } [17:28:03.776] return(sendCondition) [17:28:03.776] } [17:28:03.776] } [17:28:03.776] frame <- frame + 1L [17:28:03.776] envir <- sys.frame(frame) [17:28:03.776] } [17:28:03.776] } [17:28:03.776] sendCondition <<- function(cond) NULL [17:28:03.776] } [17:28:03.776] }) [17:28:03.776] withCallingHandlers({ [17:28:03.776] { [17:28:03.776] Sys.sleep(0.1) [17:28:03.776] kk [17:28:03.776] } [17:28:03.776] }, immediateCondition = function(cond) { [17:28:03.776] sendCondition <- ...future.makeSendCondition() [17:28:03.776] sendCondition(cond) [17:28:03.776] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.776] { [17:28:03.776] inherits <- base::inherits [17:28:03.776] invokeRestart <- base::invokeRestart [17:28:03.776] is.null <- base::is.null [17:28:03.776] muffled <- FALSE [17:28:03.776] if (inherits(cond, "message")) { [17:28:03.776] muffled <- grepl(pattern, "muffleMessage") [17:28:03.776] if (muffled) [17:28:03.776] invokeRestart("muffleMessage") [17:28:03.776] } [17:28:03.776] else if (inherits(cond, "warning")) { [17:28:03.776] muffled <- grepl(pattern, "muffleWarning") [17:28:03.776] if (muffled) [17:28:03.776] invokeRestart("muffleWarning") [17:28:03.776] } [17:28:03.776] else if (inherits(cond, "condition")) { [17:28:03.776] if (!is.null(pattern)) { [17:28:03.776] computeRestarts <- base::computeRestarts [17:28:03.776] grepl <- base::grepl [17:28:03.776] restarts <- computeRestarts(cond) [17:28:03.776] for (restart in restarts) { [17:28:03.776] name <- restart$name [17:28:03.776] if (is.null(name)) [17:28:03.776] next [17:28:03.776] if (!grepl(pattern, name)) [17:28:03.776] next [17:28:03.776] invokeRestart(restart) [17:28:03.776] muffled <- TRUE [17:28:03.776] break [17:28:03.776] } [17:28:03.776] } [17:28:03.776] } [17:28:03.776] invisible(muffled) [17:28:03.776] } [17:28:03.776] muffleCondition(cond) [17:28:03.776] }) [17:28:03.776] })) [17:28:03.776] future::FutureResult(value = ...future.value$value, [17:28:03.776] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.776] ...future.rng), globalenv = if (FALSE) [17:28:03.776] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:03.776] ...future.globalenv.names)) [17:28:03.776] else NULL, started = ...future.startTime, version = "1.8") [17:28:03.776] }, condition = base::local({ [17:28:03.776] c <- base::c [17:28:03.776] inherits <- base::inherits [17:28:03.776] invokeRestart <- base::invokeRestart [17:28:03.776] length <- base::length [17:28:03.776] list <- base::list [17:28:03.776] seq.int <- base::seq.int [17:28:03.776] signalCondition <- base::signalCondition [17:28:03.776] sys.calls <- base::sys.calls [17:28:03.776] `[[` <- base::`[[` [17:28:03.776] `+` <- base::`+` [17:28:03.776] `<<-` <- base::`<<-` [17:28:03.776] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:03.776] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:03.776] 3L)] [17:28:03.776] } [17:28:03.776] function(cond) { [17:28:03.776] is_error <- inherits(cond, "error") [17:28:03.776] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:03.776] NULL) [17:28:03.776] if (is_error) { [17:28:03.776] sessionInformation <- function() { [17:28:03.776] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:03.776] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:03.776] search = base::search(), system = base::Sys.info()) [17:28:03.776] } [17:28:03.776] ...future.conditions[[length(...future.conditions) + [17:28:03.776] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:03.776] cond$call), session = sessionInformation(), [17:28:03.776] timestamp = base::Sys.time(), signaled = 0L) [17:28:03.776] signalCondition(cond) [17:28:03.776] } [17:28:03.776] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:03.776] "immediateCondition"))) { [17:28:03.776] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:03.776] ...future.conditions[[length(...future.conditions) + [17:28:03.776] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:03.776] if (TRUE && !signal) { [17:28:03.776] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.776] { [17:28:03.776] inherits <- base::inherits [17:28:03.776] invokeRestart <- base::invokeRestart [17:28:03.776] is.null <- base::is.null [17:28:03.776] muffled <- FALSE [17:28:03.776] if (inherits(cond, "message")) { [17:28:03.776] muffled <- grepl(pattern, "muffleMessage") [17:28:03.776] if (muffled) [17:28:03.776] invokeRestart("muffleMessage") [17:28:03.776] } [17:28:03.776] else if (inherits(cond, "warning")) { [17:28:03.776] muffled <- grepl(pattern, "muffleWarning") [17:28:03.776] if (muffled) [17:28:03.776] invokeRestart("muffleWarning") [17:28:03.776] } [17:28:03.776] else if (inherits(cond, "condition")) { [17:28:03.776] if (!is.null(pattern)) { [17:28:03.776] computeRestarts <- base::computeRestarts [17:28:03.776] grepl <- base::grepl [17:28:03.776] restarts <- computeRestarts(cond) [17:28:03.776] for (restart in restarts) { [17:28:03.776] name <- restart$name [17:28:03.776] if (is.null(name)) [17:28:03.776] next [17:28:03.776] if (!grepl(pattern, name)) [17:28:03.776] next [17:28:03.776] invokeRestart(restart) [17:28:03.776] muffled <- TRUE [17:28:03.776] break [17:28:03.776] } [17:28:03.776] } [17:28:03.776] } [17:28:03.776] invisible(muffled) [17:28:03.776] } [17:28:03.776] muffleCondition(cond, pattern = "^muffle") [17:28:03.776] } [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] if (TRUE) { [17:28:03.776] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.776] { [17:28:03.776] inherits <- base::inherits [17:28:03.776] invokeRestart <- base::invokeRestart [17:28:03.776] is.null <- base::is.null [17:28:03.776] muffled <- FALSE [17:28:03.776] if (inherits(cond, "message")) { [17:28:03.776] muffled <- grepl(pattern, "muffleMessage") [17:28:03.776] if (muffled) [17:28:03.776] invokeRestart("muffleMessage") [17:28:03.776] } [17:28:03.776] else if (inherits(cond, "warning")) { [17:28:03.776] muffled <- grepl(pattern, "muffleWarning") [17:28:03.776] if (muffled) [17:28:03.776] invokeRestart("muffleWarning") [17:28:03.776] } [17:28:03.776] else if (inherits(cond, "condition")) { [17:28:03.776] if (!is.null(pattern)) { [17:28:03.776] computeRestarts <- base::computeRestarts [17:28:03.776] grepl <- base::grepl [17:28:03.776] restarts <- computeRestarts(cond) [17:28:03.776] for (restart in restarts) { [17:28:03.776] name <- restart$name [17:28:03.776] if (is.null(name)) [17:28:03.776] next [17:28:03.776] if (!grepl(pattern, name)) [17:28:03.776] next [17:28:03.776] invokeRestart(restart) [17:28:03.776] muffled <- TRUE [17:28:03.776] break [17:28:03.776] } [17:28:03.776] } [17:28:03.776] } [17:28:03.776] invisible(muffled) [17:28:03.776] } [17:28:03.776] muffleCondition(cond, pattern = "^muffle") [17:28:03.776] } [17:28:03.776] } [17:28:03.776] } [17:28:03.776] })) [17:28:03.776] }, error = function(ex) { [17:28:03.776] base::structure(base::list(value = NULL, visible = NULL, [17:28:03.776] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.776] ...future.rng), started = ...future.startTime, [17:28:03.776] finished = Sys.time(), session_uuid = NA_character_, [17:28:03.776] version = "1.8"), class = "FutureResult") [17:28:03.776] }, finally = { [17:28:03.776] if (!identical(...future.workdir, getwd())) [17:28:03.776] setwd(...future.workdir) [17:28:03.776] { [17:28:03.776] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:03.776] ...future.oldOptions$nwarnings <- NULL [17:28:03.776] } [17:28:03.776] base::options(...future.oldOptions) [17:28:03.776] if (.Platform$OS.type == "windows") { [17:28:03.776] old_names <- names(...future.oldEnvVars) [17:28:03.776] envs <- base::Sys.getenv() [17:28:03.776] names <- names(envs) [17:28:03.776] common <- intersect(names, old_names) [17:28:03.776] added <- setdiff(names, old_names) [17:28:03.776] removed <- setdiff(old_names, names) [17:28:03.776] changed <- common[...future.oldEnvVars[common] != [17:28:03.776] envs[common]] [17:28:03.776] NAMES <- toupper(changed) [17:28:03.776] args <- list() [17:28:03.776] for (kk in seq_along(NAMES)) { [17:28:03.776] name <- changed[[kk]] [17:28:03.776] NAME <- NAMES[[kk]] [17:28:03.776] if (name != NAME && is.element(NAME, old_names)) [17:28:03.776] next [17:28:03.776] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.776] } [17:28:03.776] NAMES <- toupper(added) [17:28:03.776] for (kk in seq_along(NAMES)) { [17:28:03.776] name <- added[[kk]] [17:28:03.776] NAME <- NAMES[[kk]] [17:28:03.776] if (name != NAME && is.element(NAME, old_names)) [17:28:03.776] next [17:28:03.776] args[[name]] <- "" [17:28:03.776] } [17:28:03.776] NAMES <- toupper(removed) [17:28:03.776] for (kk in seq_along(NAMES)) { [17:28:03.776] name <- removed[[kk]] [17:28:03.776] NAME <- NAMES[[kk]] [17:28:03.776] if (name != NAME && is.element(NAME, old_names)) [17:28:03.776] next [17:28:03.776] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.776] } [17:28:03.776] if (length(args) > 0) [17:28:03.776] base::do.call(base::Sys.setenv, args = args) [17:28:03.776] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:03.776] } [17:28:03.776] { [17:28:03.776] if (base::length(...future.futureOptionsAdded) > [17:28:03.776] 0L) { [17:28:03.776] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:03.776] base::names(opts) <- ...future.futureOptionsAdded [17:28:03.776] base::options(opts) [17:28:03.776] } [17:28:03.776] { [17:28:03.776] { [17:28:03.776] base::options(mc.cores = ...future.mc.cores.old) [17:28:03.776] NULL [17:28:03.776] } [17:28:03.776] options(future.plan = NULL) [17:28:03.776] if (is.na(NA_character_)) [17:28:03.776] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.776] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:03.776] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:03.776] .init = FALSE) [17:28:03.776] } [17:28:03.776] } [17:28:03.776] } [17:28:03.776] }) [17:28:03.776] if (TRUE) { [17:28:03.776] base::sink(type = "output", split = FALSE) [17:28:03.776] if (TRUE) { [17:28:03.776] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:03.776] } [17:28:03.776] else { [17:28:03.776] ...future.result["stdout"] <- base::list(NULL) [17:28:03.776] } [17:28:03.776] base::close(...future.stdout) [17:28:03.776] ...future.stdout <- NULL [17:28:03.776] } [17:28:03.776] ...future.result$conditions <- ...future.conditions [17:28:03.776] ...future.result$finished <- base::Sys.time() [17:28:03.776] ...future.result [17:28:03.776] } [17:28:03.781] Exporting 1 global objects (56 bytes) to cluster node #1 ... [17:28:03.781] Exporting 'kk' (56 bytes) to cluster node #1 ... [17:28:03.782] Exporting 'kk' (56 bytes) to cluster node #1 ... DONE [17:28:03.782] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [17:28:03.782] MultisessionFuture started [17:28:03.783] - Launch lazy future ... done [17:28:03.783] run() for 'MultisessionFuture' ... done [17:28:03.901] receiveMessageFromWorker() for ClusterFuture ... [17:28:03.901] - Validating connection of MultisessionFuture [17:28:03.901] - received message: FutureResult [17:28:03.901] - Received FutureResult [17:28:03.901] - Erased future from FutureRegistry [17:28:03.902] result() for ClusterFuture ... [17:28:03.902] - result already collected: FutureResult [17:28:03.902] result() for ClusterFuture ... done [17:28:03.902] receiveMessageFromWorker() for ClusterFuture ... done [17:28:03.902] Future #2 [17:28:03.902] length: 1 (resolved future 2) [17:28:03.903] run() for 'Future' ... [17:28:03.903] - state: 'created' [17:28:03.903] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:03.917] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:03.917] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:03.918] - Field: 'node' [17:28:03.918] - Field: 'label' [17:28:03.918] - Field: 'local' [17:28:03.918] - Field: 'owner' [17:28:03.918] - Field: 'envir' [17:28:03.919] - Field: 'workers' [17:28:03.919] - Field: 'packages' [17:28:03.919] - Field: 'gc' [17:28:03.919] - Field: 'conditions' [17:28:03.919] - Field: 'persistent' [17:28:03.920] - Field: 'expr' [17:28:03.920] - Field: 'uuid' [17:28:03.920] - Field: 'seed' [17:28:03.920] - Field: 'version' [17:28:03.920] - Field: 'result' [17:28:03.920] - Field: 'asynchronous' [17:28:03.921] - Field: 'calls' [17:28:03.921] - Field: 'globals' [17:28:03.921] - Field: 'stdout' [17:28:03.921] - Field: 'earlySignal' [17:28:03.921] - Field: 'lazy' [17:28:03.921] - Field: 'state' [17:28:03.922] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:03.922] - Launch lazy future ... [17:28:03.922] Packages needed by the future expression (n = 0): [17:28:03.922] Packages needed by future strategies (n = 0): [17:28:03.923] { [17:28:03.923] { [17:28:03.923] { [17:28:03.923] ...future.startTime <- base::Sys.time() [17:28:03.923] { [17:28:03.923] { [17:28:03.923] { [17:28:03.923] { [17:28:03.923] base::local({ [17:28:03.923] has_future <- base::requireNamespace("future", [17:28:03.923] quietly = TRUE) [17:28:03.923] if (has_future) { [17:28:03.923] ns <- base::getNamespace("future") [17:28:03.923] version <- ns[[".package"]][["version"]] [17:28:03.923] if (is.null(version)) [17:28:03.923] version <- utils::packageVersion("future") [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] version <- NULL [17:28:03.923] } [17:28:03.923] if (!has_future || version < "1.8.0") { [17:28:03.923] info <- base::c(r_version = base::gsub("R version ", [17:28:03.923] "", base::R.version$version.string), [17:28:03.923] platform = base::sprintf("%s (%s-bit)", [17:28:03.923] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:03.923] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:03.923] "release", "version")], collapse = " "), [17:28:03.923] hostname = base::Sys.info()[["nodename"]]) [17:28:03.923] info <- base::sprintf("%s: %s", base::names(info), [17:28:03.923] info) [17:28:03.923] info <- base::paste(info, collapse = "; ") [17:28:03.923] if (!has_future) { [17:28:03.923] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:03.923] info) [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:03.923] info, version) [17:28:03.923] } [17:28:03.923] base::stop(msg) [17:28:03.923] } [17:28:03.923] }) [17:28:03.923] } [17:28:03.923] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:03.923] base::options(mc.cores = 1L) [17:28:03.923] } [17:28:03.923] ...future.strategy.old <- future::plan("list") [17:28:03.923] options(future.plan = NULL) [17:28:03.923] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.923] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:03.923] } [17:28:03.923] ...future.workdir <- getwd() [17:28:03.923] } [17:28:03.923] ...future.oldOptions <- base::as.list(base::.Options) [17:28:03.923] ...future.oldEnvVars <- base::Sys.getenv() [17:28:03.923] } [17:28:03.923] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:03.923] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:03.923] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:03.923] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:03.923] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:03.923] future.stdout.windows.reencode = NULL, width = 80L) [17:28:03.923] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:03.923] base::names(...future.oldOptions)) [17:28:03.923] } [17:28:03.923] if (FALSE) { [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] if (TRUE) { [17:28:03.923] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:03.923] open = "w") [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:03.923] windows = "NUL", "/dev/null"), open = "w") [17:28:03.923] } [17:28:03.923] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:03.923] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:03.923] base::sink(type = "output", split = FALSE) [17:28:03.923] base::close(...future.stdout) [17:28:03.923] }, add = TRUE) [17:28:03.923] } [17:28:03.923] ...future.frame <- base::sys.nframe() [17:28:03.923] ...future.conditions <- base::list() [17:28:03.923] ...future.rng <- base::globalenv()$.Random.seed [17:28:03.923] if (FALSE) { [17:28:03.923] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:03.923] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:03.923] } [17:28:03.923] ...future.result <- base::tryCatch({ [17:28:03.923] base::withCallingHandlers({ [17:28:03.923] ...future.value <- base::withVisible(base::local({ [17:28:03.923] ...future.makeSendCondition <- base::local({ [17:28:03.923] sendCondition <- NULL [17:28:03.923] function(frame = 1L) { [17:28:03.923] if (is.function(sendCondition)) [17:28:03.923] return(sendCondition) [17:28:03.923] ns <- getNamespace("parallel") [17:28:03.923] if (exists("sendData", mode = "function", [17:28:03.923] envir = ns)) { [17:28:03.923] parallel_sendData <- get("sendData", mode = "function", [17:28:03.923] envir = ns) [17:28:03.923] envir <- sys.frame(frame) [17:28:03.923] master <- NULL [17:28:03.923] while (!identical(envir, .GlobalEnv) && [17:28:03.923] !identical(envir, emptyenv())) { [17:28:03.923] if (exists("master", mode = "list", envir = envir, [17:28:03.923] inherits = FALSE)) { [17:28:03.923] master <- get("master", mode = "list", [17:28:03.923] envir = envir, inherits = FALSE) [17:28:03.923] if (inherits(master, c("SOCKnode", [17:28:03.923] "SOCK0node"))) { [17:28:03.923] sendCondition <<- function(cond) { [17:28:03.923] data <- list(type = "VALUE", value = cond, [17:28:03.923] success = TRUE) [17:28:03.923] parallel_sendData(master, data) [17:28:03.923] } [17:28:03.923] return(sendCondition) [17:28:03.923] } [17:28:03.923] } [17:28:03.923] frame <- frame + 1L [17:28:03.923] envir <- sys.frame(frame) [17:28:03.923] } [17:28:03.923] } [17:28:03.923] sendCondition <<- function(cond) NULL [17:28:03.923] } [17:28:03.923] }) [17:28:03.923] withCallingHandlers({ [17:28:03.923] { [17:28:03.923] Sys.sleep(0.1) [17:28:03.923] kk [17:28:03.923] } [17:28:03.923] }, immediateCondition = function(cond) { [17:28:03.923] sendCondition <- ...future.makeSendCondition() [17:28:03.923] sendCondition(cond) [17:28:03.923] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.923] { [17:28:03.923] inherits <- base::inherits [17:28:03.923] invokeRestart <- base::invokeRestart [17:28:03.923] is.null <- base::is.null [17:28:03.923] muffled <- FALSE [17:28:03.923] if (inherits(cond, "message")) { [17:28:03.923] muffled <- grepl(pattern, "muffleMessage") [17:28:03.923] if (muffled) [17:28:03.923] invokeRestart("muffleMessage") [17:28:03.923] } [17:28:03.923] else if (inherits(cond, "warning")) { [17:28:03.923] muffled <- grepl(pattern, "muffleWarning") [17:28:03.923] if (muffled) [17:28:03.923] invokeRestart("muffleWarning") [17:28:03.923] } [17:28:03.923] else if (inherits(cond, "condition")) { [17:28:03.923] if (!is.null(pattern)) { [17:28:03.923] computeRestarts <- base::computeRestarts [17:28:03.923] grepl <- base::grepl [17:28:03.923] restarts <- computeRestarts(cond) [17:28:03.923] for (restart in restarts) { [17:28:03.923] name <- restart$name [17:28:03.923] if (is.null(name)) [17:28:03.923] next [17:28:03.923] if (!grepl(pattern, name)) [17:28:03.923] next [17:28:03.923] invokeRestart(restart) [17:28:03.923] muffled <- TRUE [17:28:03.923] break [17:28:03.923] } [17:28:03.923] } [17:28:03.923] } [17:28:03.923] invisible(muffled) [17:28:03.923] } [17:28:03.923] muffleCondition(cond) [17:28:03.923] }) [17:28:03.923] })) [17:28:03.923] future::FutureResult(value = ...future.value$value, [17:28:03.923] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.923] ...future.rng), globalenv = if (FALSE) [17:28:03.923] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:03.923] ...future.globalenv.names)) [17:28:03.923] else NULL, started = ...future.startTime, version = "1.8") [17:28:03.923] }, condition = base::local({ [17:28:03.923] c <- base::c [17:28:03.923] inherits <- base::inherits [17:28:03.923] invokeRestart <- base::invokeRestart [17:28:03.923] length <- base::length [17:28:03.923] list <- base::list [17:28:03.923] seq.int <- base::seq.int [17:28:03.923] signalCondition <- base::signalCondition [17:28:03.923] sys.calls <- base::sys.calls [17:28:03.923] `[[` <- base::`[[` [17:28:03.923] `+` <- base::`+` [17:28:03.923] `<<-` <- base::`<<-` [17:28:03.923] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:03.923] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:03.923] 3L)] [17:28:03.923] } [17:28:03.923] function(cond) { [17:28:03.923] is_error <- inherits(cond, "error") [17:28:03.923] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:03.923] NULL) [17:28:03.923] if (is_error) { [17:28:03.923] sessionInformation <- function() { [17:28:03.923] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:03.923] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:03.923] search = base::search(), system = base::Sys.info()) [17:28:03.923] } [17:28:03.923] ...future.conditions[[length(...future.conditions) + [17:28:03.923] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:03.923] cond$call), session = sessionInformation(), [17:28:03.923] timestamp = base::Sys.time(), signaled = 0L) [17:28:03.923] signalCondition(cond) [17:28:03.923] } [17:28:03.923] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:03.923] "immediateCondition"))) { [17:28:03.923] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:03.923] ...future.conditions[[length(...future.conditions) + [17:28:03.923] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:03.923] if (TRUE && !signal) { [17:28:03.923] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.923] { [17:28:03.923] inherits <- base::inherits [17:28:03.923] invokeRestart <- base::invokeRestart [17:28:03.923] is.null <- base::is.null [17:28:03.923] muffled <- FALSE [17:28:03.923] if (inherits(cond, "message")) { [17:28:03.923] muffled <- grepl(pattern, "muffleMessage") [17:28:03.923] if (muffled) [17:28:03.923] invokeRestart("muffleMessage") [17:28:03.923] } [17:28:03.923] else if (inherits(cond, "warning")) { [17:28:03.923] muffled <- grepl(pattern, "muffleWarning") [17:28:03.923] if (muffled) [17:28:03.923] invokeRestart("muffleWarning") [17:28:03.923] } [17:28:03.923] else if (inherits(cond, "condition")) { [17:28:03.923] if (!is.null(pattern)) { [17:28:03.923] computeRestarts <- base::computeRestarts [17:28:03.923] grepl <- base::grepl [17:28:03.923] restarts <- computeRestarts(cond) [17:28:03.923] for (restart in restarts) { [17:28:03.923] name <- restart$name [17:28:03.923] if (is.null(name)) [17:28:03.923] next [17:28:03.923] if (!grepl(pattern, name)) [17:28:03.923] next [17:28:03.923] invokeRestart(restart) [17:28:03.923] muffled <- TRUE [17:28:03.923] break [17:28:03.923] } [17:28:03.923] } [17:28:03.923] } [17:28:03.923] invisible(muffled) [17:28:03.923] } [17:28:03.923] muffleCondition(cond, pattern = "^muffle") [17:28:03.923] } [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] if (TRUE) { [17:28:03.923] muffleCondition <- function (cond, pattern = "^muffle") [17:28:03.923] { [17:28:03.923] inherits <- base::inherits [17:28:03.923] invokeRestart <- base::invokeRestart [17:28:03.923] is.null <- base::is.null [17:28:03.923] muffled <- FALSE [17:28:03.923] if (inherits(cond, "message")) { [17:28:03.923] muffled <- grepl(pattern, "muffleMessage") [17:28:03.923] if (muffled) [17:28:03.923] invokeRestart("muffleMessage") [17:28:03.923] } [17:28:03.923] else if (inherits(cond, "warning")) { [17:28:03.923] muffled <- grepl(pattern, "muffleWarning") [17:28:03.923] if (muffled) [17:28:03.923] invokeRestart("muffleWarning") [17:28:03.923] } [17:28:03.923] else if (inherits(cond, "condition")) { [17:28:03.923] if (!is.null(pattern)) { [17:28:03.923] computeRestarts <- base::computeRestarts [17:28:03.923] grepl <- base::grepl [17:28:03.923] restarts <- computeRestarts(cond) [17:28:03.923] for (restart in restarts) { [17:28:03.923] name <- restart$name [17:28:03.923] if (is.null(name)) [17:28:03.923] next [17:28:03.923] if (!grepl(pattern, name)) [17:28:03.923] next [17:28:03.923] invokeRestart(restart) [17:28:03.923] muffled <- TRUE [17:28:03.923] break [17:28:03.923] } [17:28:03.923] } [17:28:03.923] } [17:28:03.923] invisible(muffled) [17:28:03.923] } [17:28:03.923] muffleCondition(cond, pattern = "^muffle") [17:28:03.923] } [17:28:03.923] } [17:28:03.923] } [17:28:03.923] })) [17:28:03.923] }, error = function(ex) { [17:28:03.923] base::structure(base::list(value = NULL, visible = NULL, [17:28:03.923] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:03.923] ...future.rng), started = ...future.startTime, [17:28:03.923] finished = Sys.time(), session_uuid = NA_character_, [17:28:03.923] version = "1.8"), class = "FutureResult") [17:28:03.923] }, finally = { [17:28:03.923] if (!identical(...future.workdir, getwd())) [17:28:03.923] setwd(...future.workdir) [17:28:03.923] { [17:28:03.923] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:03.923] ...future.oldOptions$nwarnings <- NULL [17:28:03.923] } [17:28:03.923] base::options(...future.oldOptions) [17:28:03.923] if (.Platform$OS.type == "windows") { [17:28:03.923] old_names <- names(...future.oldEnvVars) [17:28:03.923] envs <- base::Sys.getenv() [17:28:03.923] names <- names(envs) [17:28:03.923] common <- intersect(names, old_names) [17:28:03.923] added <- setdiff(names, old_names) [17:28:03.923] removed <- setdiff(old_names, names) [17:28:03.923] changed <- common[...future.oldEnvVars[common] != [17:28:03.923] envs[common]] [17:28:03.923] NAMES <- toupper(changed) [17:28:03.923] args <- list() [17:28:03.923] for (kk in seq_along(NAMES)) { [17:28:03.923] name <- changed[[kk]] [17:28:03.923] NAME <- NAMES[[kk]] [17:28:03.923] if (name != NAME && is.element(NAME, old_names)) [17:28:03.923] next [17:28:03.923] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.923] } [17:28:03.923] NAMES <- toupper(added) [17:28:03.923] for (kk in seq_along(NAMES)) { [17:28:03.923] name <- added[[kk]] [17:28:03.923] NAME <- NAMES[[kk]] [17:28:03.923] if (name != NAME && is.element(NAME, old_names)) [17:28:03.923] next [17:28:03.923] args[[name]] <- "" [17:28:03.923] } [17:28:03.923] NAMES <- toupper(removed) [17:28:03.923] for (kk in seq_along(NAMES)) { [17:28:03.923] name <- removed[[kk]] [17:28:03.923] NAME <- NAMES[[kk]] [17:28:03.923] if (name != NAME && is.element(NAME, old_names)) [17:28:03.923] next [17:28:03.923] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:03.923] } [17:28:03.923] if (length(args) > 0) [17:28:03.923] base::do.call(base::Sys.setenv, args = args) [17:28:03.923] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:03.923] } [17:28:03.923] { [17:28:03.923] if (base::length(...future.futureOptionsAdded) > [17:28:03.923] 0L) { [17:28:03.923] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:03.923] base::names(opts) <- ...future.futureOptionsAdded [17:28:03.923] base::options(opts) [17:28:03.923] } [17:28:03.923] { [17:28:03.923] { [17:28:03.923] base::options(mc.cores = ...future.mc.cores.old) [17:28:03.923] NULL [17:28:03.923] } [17:28:03.923] options(future.plan = NULL) [17:28:03.923] if (is.na(NA_character_)) [17:28:03.923] Sys.unsetenv("R_FUTURE_PLAN") [17:28:03.923] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:03.923] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:03.923] .init = FALSE) [17:28:03.923] } [17:28:03.923] } [17:28:03.923] } [17:28:03.923] }) [17:28:03.923] if (TRUE) { [17:28:03.923] base::sink(type = "output", split = FALSE) [17:28:03.923] if (TRUE) { [17:28:03.923] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:03.923] } [17:28:03.923] else { [17:28:03.923] ...future.result["stdout"] <- base::list(NULL) [17:28:03.923] } [17:28:03.923] base::close(...future.stdout) [17:28:03.923] ...future.stdout <- NULL [17:28:03.923] } [17:28:03.923] ...future.result$conditions <- ...future.conditions [17:28:03.923] ...future.result$finished <- base::Sys.time() [17:28:03.923] ...future.result [17:28:03.923] } [17:28:03.928] Exporting 1 global objects (56 bytes) to cluster node #1 ... [17:28:03.928] Exporting 'kk' (56 bytes) to cluster node #1 ... [17:28:03.929] Exporting 'kk' (56 bytes) to cluster node #1 ... DONE [17:28:03.929] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [17:28:03.929] MultisessionFuture started [17:28:03.930] - Launch lazy future ... done [17:28:03.930] run() for 'MultisessionFuture' ... done [17:28:04.055] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.056] - Validating connection of MultisessionFuture [17:28:04.056] - received message: FutureResult [17:28:04.056] - Received FutureResult [17:28:04.056] - Erased future from FutureRegistry [17:28:04.056] result() for ClusterFuture ... [17:28:04.057] - result already collected: FutureResult [17:28:04.057] result() for ClusterFuture ... done [17:28:04.057] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.057] Future #3 [17:28:04.057] length: 0 (resolved future 3) [17:28:04.057] resolve() on list ... DONE *** resolve() for lists ... DONE *** resolve() for environments ... [17:28:04.058] resolve() on environment ... [17:28:04.058] recursive: 0 [17:28:04.059] elements: [2] 'a', 'b' [17:28:04.059] length: 1 (resolved future 1) [17:28:04.059] length: 0 (resolved future 2) [17:28:04.060] resolve() on environment ... DONE [17:28:04.060] getGlobalsAndPackages() ... [17:28:04.060] Searching for globals... [17:28:04.061] [17:28:04.061] Searching for globals ... DONE [17:28:04.061] - globals: [0] [17:28:04.061] getGlobalsAndPackages() ... DONE [17:28:04.061] run() for 'Future' ... [17:28:04.062] - state: 'created' [17:28:04.062] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.076] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.076] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.076] - Field: 'node' [17:28:04.076] - Field: 'label' [17:28:04.076] - Field: 'local' [17:28:04.077] - Field: 'owner' [17:28:04.077] - Field: 'envir' [17:28:04.077] - Field: 'workers' [17:28:04.077] - Field: 'packages' [17:28:04.077] - Field: 'gc' [17:28:04.078] - Field: 'conditions' [17:28:04.078] - Field: 'persistent' [17:28:04.078] - Field: 'expr' [17:28:04.078] - Field: 'uuid' [17:28:04.078] - Field: 'seed' [17:28:04.078] - Field: 'version' [17:28:04.079] - Field: 'result' [17:28:04.079] - Field: 'asynchronous' [17:28:04.079] - Field: 'calls' [17:28:04.079] - Field: 'globals' [17:28:04.079] - Field: 'stdout' [17:28:04.079] - Field: 'earlySignal' [17:28:04.080] - Field: 'lazy' [17:28:04.080] - Field: 'state' [17:28:04.080] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.080] - Launch lazy future ... [17:28:04.081] Packages needed by the future expression (n = 0): [17:28:04.081] Packages needed by future strategies (n = 0): [17:28:04.081] { [17:28:04.081] { [17:28:04.081] { [17:28:04.081] ...future.startTime <- base::Sys.time() [17:28:04.081] { [17:28:04.081] { [17:28:04.081] { [17:28:04.081] { [17:28:04.081] base::local({ [17:28:04.081] has_future <- base::requireNamespace("future", [17:28:04.081] quietly = TRUE) [17:28:04.081] if (has_future) { [17:28:04.081] ns <- base::getNamespace("future") [17:28:04.081] version <- ns[[".package"]][["version"]] [17:28:04.081] if (is.null(version)) [17:28:04.081] version <- utils::packageVersion("future") [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] version <- NULL [17:28:04.081] } [17:28:04.081] if (!has_future || version < "1.8.0") { [17:28:04.081] info <- base::c(r_version = base::gsub("R version ", [17:28:04.081] "", base::R.version$version.string), [17:28:04.081] platform = base::sprintf("%s (%s-bit)", [17:28:04.081] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.081] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.081] "release", "version")], collapse = " "), [17:28:04.081] hostname = base::Sys.info()[["nodename"]]) [17:28:04.081] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.081] info) [17:28:04.081] info <- base::paste(info, collapse = "; ") [17:28:04.081] if (!has_future) { [17:28:04.081] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.081] info) [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.081] info, version) [17:28:04.081] } [17:28:04.081] base::stop(msg) [17:28:04.081] } [17:28:04.081] }) [17:28:04.081] } [17:28:04.081] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.081] base::options(mc.cores = 1L) [17:28:04.081] } [17:28:04.081] ...future.strategy.old <- future::plan("list") [17:28:04.081] options(future.plan = NULL) [17:28:04.081] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.081] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.081] } [17:28:04.081] ...future.workdir <- getwd() [17:28:04.081] } [17:28:04.081] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.081] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.081] } [17:28:04.081] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.081] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.081] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.081] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.081] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.081] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.081] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.081] base::names(...future.oldOptions)) [17:28:04.081] } [17:28:04.081] if (FALSE) { [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] if (TRUE) { [17:28:04.081] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.081] open = "w") [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.081] windows = "NUL", "/dev/null"), open = "w") [17:28:04.081] } [17:28:04.081] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.081] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.081] base::sink(type = "output", split = FALSE) [17:28:04.081] base::close(...future.stdout) [17:28:04.081] }, add = TRUE) [17:28:04.081] } [17:28:04.081] ...future.frame <- base::sys.nframe() [17:28:04.081] ...future.conditions <- base::list() [17:28:04.081] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.081] if (FALSE) { [17:28:04.081] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.081] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.081] } [17:28:04.081] ...future.result <- base::tryCatch({ [17:28:04.081] base::withCallingHandlers({ [17:28:04.081] ...future.value <- base::withVisible(base::local({ [17:28:04.081] ...future.makeSendCondition <- base::local({ [17:28:04.081] sendCondition <- NULL [17:28:04.081] function(frame = 1L) { [17:28:04.081] if (is.function(sendCondition)) [17:28:04.081] return(sendCondition) [17:28:04.081] ns <- getNamespace("parallel") [17:28:04.081] if (exists("sendData", mode = "function", [17:28:04.081] envir = ns)) { [17:28:04.081] parallel_sendData <- get("sendData", mode = "function", [17:28:04.081] envir = ns) [17:28:04.081] envir <- sys.frame(frame) [17:28:04.081] master <- NULL [17:28:04.081] while (!identical(envir, .GlobalEnv) && [17:28:04.081] !identical(envir, emptyenv())) { [17:28:04.081] if (exists("master", mode = "list", envir = envir, [17:28:04.081] inherits = FALSE)) { [17:28:04.081] master <- get("master", mode = "list", [17:28:04.081] envir = envir, inherits = FALSE) [17:28:04.081] if (inherits(master, c("SOCKnode", [17:28:04.081] "SOCK0node"))) { [17:28:04.081] sendCondition <<- function(cond) { [17:28:04.081] data <- list(type = "VALUE", value = cond, [17:28:04.081] success = TRUE) [17:28:04.081] parallel_sendData(master, data) [17:28:04.081] } [17:28:04.081] return(sendCondition) [17:28:04.081] } [17:28:04.081] } [17:28:04.081] frame <- frame + 1L [17:28:04.081] envir <- sys.frame(frame) [17:28:04.081] } [17:28:04.081] } [17:28:04.081] sendCondition <<- function(cond) NULL [17:28:04.081] } [17:28:04.081] }) [17:28:04.081] withCallingHandlers({ [17:28:04.081] 1 [17:28:04.081] }, immediateCondition = function(cond) { [17:28:04.081] sendCondition <- ...future.makeSendCondition() [17:28:04.081] sendCondition(cond) [17:28:04.081] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.081] { [17:28:04.081] inherits <- base::inherits [17:28:04.081] invokeRestart <- base::invokeRestart [17:28:04.081] is.null <- base::is.null [17:28:04.081] muffled <- FALSE [17:28:04.081] if (inherits(cond, "message")) { [17:28:04.081] muffled <- grepl(pattern, "muffleMessage") [17:28:04.081] if (muffled) [17:28:04.081] invokeRestart("muffleMessage") [17:28:04.081] } [17:28:04.081] else if (inherits(cond, "warning")) { [17:28:04.081] muffled <- grepl(pattern, "muffleWarning") [17:28:04.081] if (muffled) [17:28:04.081] invokeRestart("muffleWarning") [17:28:04.081] } [17:28:04.081] else if (inherits(cond, "condition")) { [17:28:04.081] if (!is.null(pattern)) { [17:28:04.081] computeRestarts <- base::computeRestarts [17:28:04.081] grepl <- base::grepl [17:28:04.081] restarts <- computeRestarts(cond) [17:28:04.081] for (restart in restarts) { [17:28:04.081] name <- restart$name [17:28:04.081] if (is.null(name)) [17:28:04.081] next [17:28:04.081] if (!grepl(pattern, name)) [17:28:04.081] next [17:28:04.081] invokeRestart(restart) [17:28:04.081] muffled <- TRUE [17:28:04.081] break [17:28:04.081] } [17:28:04.081] } [17:28:04.081] } [17:28:04.081] invisible(muffled) [17:28:04.081] } [17:28:04.081] muffleCondition(cond) [17:28:04.081] }) [17:28:04.081] })) [17:28:04.081] future::FutureResult(value = ...future.value$value, [17:28:04.081] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.081] ...future.rng), globalenv = if (FALSE) [17:28:04.081] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.081] ...future.globalenv.names)) [17:28:04.081] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.081] }, condition = base::local({ [17:28:04.081] c <- base::c [17:28:04.081] inherits <- base::inherits [17:28:04.081] invokeRestart <- base::invokeRestart [17:28:04.081] length <- base::length [17:28:04.081] list <- base::list [17:28:04.081] seq.int <- base::seq.int [17:28:04.081] signalCondition <- base::signalCondition [17:28:04.081] sys.calls <- base::sys.calls [17:28:04.081] `[[` <- base::`[[` [17:28:04.081] `+` <- base::`+` [17:28:04.081] `<<-` <- base::`<<-` [17:28:04.081] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.081] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.081] 3L)] [17:28:04.081] } [17:28:04.081] function(cond) { [17:28:04.081] is_error <- inherits(cond, "error") [17:28:04.081] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.081] NULL) [17:28:04.081] if (is_error) { [17:28:04.081] sessionInformation <- function() { [17:28:04.081] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.081] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.081] search = base::search(), system = base::Sys.info()) [17:28:04.081] } [17:28:04.081] ...future.conditions[[length(...future.conditions) + [17:28:04.081] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.081] cond$call), session = sessionInformation(), [17:28:04.081] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.081] signalCondition(cond) [17:28:04.081] } [17:28:04.081] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.081] "immediateCondition"))) { [17:28:04.081] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.081] ...future.conditions[[length(...future.conditions) + [17:28:04.081] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.081] if (TRUE && !signal) { [17:28:04.081] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.081] { [17:28:04.081] inherits <- base::inherits [17:28:04.081] invokeRestart <- base::invokeRestart [17:28:04.081] is.null <- base::is.null [17:28:04.081] muffled <- FALSE [17:28:04.081] if (inherits(cond, "message")) { [17:28:04.081] muffled <- grepl(pattern, "muffleMessage") [17:28:04.081] if (muffled) [17:28:04.081] invokeRestart("muffleMessage") [17:28:04.081] } [17:28:04.081] else if (inherits(cond, "warning")) { [17:28:04.081] muffled <- grepl(pattern, "muffleWarning") [17:28:04.081] if (muffled) [17:28:04.081] invokeRestart("muffleWarning") [17:28:04.081] } [17:28:04.081] else if (inherits(cond, "condition")) { [17:28:04.081] if (!is.null(pattern)) { [17:28:04.081] computeRestarts <- base::computeRestarts [17:28:04.081] grepl <- base::grepl [17:28:04.081] restarts <- computeRestarts(cond) [17:28:04.081] for (restart in restarts) { [17:28:04.081] name <- restart$name [17:28:04.081] if (is.null(name)) [17:28:04.081] next [17:28:04.081] if (!grepl(pattern, name)) [17:28:04.081] next [17:28:04.081] invokeRestart(restart) [17:28:04.081] muffled <- TRUE [17:28:04.081] break [17:28:04.081] } [17:28:04.081] } [17:28:04.081] } [17:28:04.081] invisible(muffled) [17:28:04.081] } [17:28:04.081] muffleCondition(cond, pattern = "^muffle") [17:28:04.081] } [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] if (TRUE) { [17:28:04.081] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.081] { [17:28:04.081] inherits <- base::inherits [17:28:04.081] invokeRestart <- base::invokeRestart [17:28:04.081] is.null <- base::is.null [17:28:04.081] muffled <- FALSE [17:28:04.081] if (inherits(cond, "message")) { [17:28:04.081] muffled <- grepl(pattern, "muffleMessage") [17:28:04.081] if (muffled) [17:28:04.081] invokeRestart("muffleMessage") [17:28:04.081] } [17:28:04.081] else if (inherits(cond, "warning")) { [17:28:04.081] muffled <- grepl(pattern, "muffleWarning") [17:28:04.081] if (muffled) [17:28:04.081] invokeRestart("muffleWarning") [17:28:04.081] } [17:28:04.081] else if (inherits(cond, "condition")) { [17:28:04.081] if (!is.null(pattern)) { [17:28:04.081] computeRestarts <- base::computeRestarts [17:28:04.081] grepl <- base::grepl [17:28:04.081] restarts <- computeRestarts(cond) [17:28:04.081] for (restart in restarts) { [17:28:04.081] name <- restart$name [17:28:04.081] if (is.null(name)) [17:28:04.081] next [17:28:04.081] if (!grepl(pattern, name)) [17:28:04.081] next [17:28:04.081] invokeRestart(restart) [17:28:04.081] muffled <- TRUE [17:28:04.081] break [17:28:04.081] } [17:28:04.081] } [17:28:04.081] } [17:28:04.081] invisible(muffled) [17:28:04.081] } [17:28:04.081] muffleCondition(cond, pattern = "^muffle") [17:28:04.081] } [17:28:04.081] } [17:28:04.081] } [17:28:04.081] })) [17:28:04.081] }, error = function(ex) { [17:28:04.081] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.081] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.081] ...future.rng), started = ...future.startTime, [17:28:04.081] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.081] version = "1.8"), class = "FutureResult") [17:28:04.081] }, finally = { [17:28:04.081] if (!identical(...future.workdir, getwd())) [17:28:04.081] setwd(...future.workdir) [17:28:04.081] { [17:28:04.081] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.081] ...future.oldOptions$nwarnings <- NULL [17:28:04.081] } [17:28:04.081] base::options(...future.oldOptions) [17:28:04.081] if (.Platform$OS.type == "windows") { [17:28:04.081] old_names <- names(...future.oldEnvVars) [17:28:04.081] envs <- base::Sys.getenv() [17:28:04.081] names <- names(envs) [17:28:04.081] common <- intersect(names, old_names) [17:28:04.081] added <- setdiff(names, old_names) [17:28:04.081] removed <- setdiff(old_names, names) [17:28:04.081] changed <- common[...future.oldEnvVars[common] != [17:28:04.081] envs[common]] [17:28:04.081] NAMES <- toupper(changed) [17:28:04.081] args <- list() [17:28:04.081] for (kk in seq_along(NAMES)) { [17:28:04.081] name <- changed[[kk]] [17:28:04.081] NAME <- NAMES[[kk]] [17:28:04.081] if (name != NAME && is.element(NAME, old_names)) [17:28:04.081] next [17:28:04.081] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.081] } [17:28:04.081] NAMES <- toupper(added) [17:28:04.081] for (kk in seq_along(NAMES)) { [17:28:04.081] name <- added[[kk]] [17:28:04.081] NAME <- NAMES[[kk]] [17:28:04.081] if (name != NAME && is.element(NAME, old_names)) [17:28:04.081] next [17:28:04.081] args[[name]] <- "" [17:28:04.081] } [17:28:04.081] NAMES <- toupper(removed) [17:28:04.081] for (kk in seq_along(NAMES)) { [17:28:04.081] name <- removed[[kk]] [17:28:04.081] NAME <- NAMES[[kk]] [17:28:04.081] if (name != NAME && is.element(NAME, old_names)) [17:28:04.081] next [17:28:04.081] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.081] } [17:28:04.081] if (length(args) > 0) [17:28:04.081] base::do.call(base::Sys.setenv, args = args) [17:28:04.081] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.081] } [17:28:04.081] { [17:28:04.081] if (base::length(...future.futureOptionsAdded) > [17:28:04.081] 0L) { [17:28:04.081] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.081] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.081] base::options(opts) [17:28:04.081] } [17:28:04.081] { [17:28:04.081] { [17:28:04.081] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.081] NULL [17:28:04.081] } [17:28:04.081] options(future.plan = NULL) [17:28:04.081] if (is.na(NA_character_)) [17:28:04.081] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.081] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.081] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.081] .init = FALSE) [17:28:04.081] } [17:28:04.081] } [17:28:04.081] } [17:28:04.081] }) [17:28:04.081] if (TRUE) { [17:28:04.081] base::sink(type = "output", split = FALSE) [17:28:04.081] if (TRUE) { [17:28:04.081] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.081] } [17:28:04.081] else { [17:28:04.081] ...future.result["stdout"] <- base::list(NULL) [17:28:04.081] } [17:28:04.081] base::close(...future.stdout) [17:28:04.081] ...future.stdout <- NULL [17:28:04.081] } [17:28:04.081] ...future.result$conditions <- ...future.conditions [17:28:04.081] ...future.result$finished <- base::Sys.time() [17:28:04.081] ...future.result [17:28:04.081] } [17:28:04.087] MultisessionFuture started [17:28:04.087] - Launch lazy future ... done [17:28:04.087] run() for 'MultisessionFuture' ... done [17:28:04.087] getGlobalsAndPackages() ... [17:28:04.087] Searching for globals... [17:28:04.088] [17:28:04.088] Searching for globals ... DONE [17:28:04.088] - globals: [0] [17:28:04.088] getGlobalsAndPackages() ... DONE [17:28:04.089] run() for 'Future' ... [17:28:04.089] - state: 'created' [17:28:04.089] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.103] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.103] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.103] - Field: 'node' [17:28:04.103] - Field: 'label' [17:28:04.103] - Field: 'local' [17:28:04.104] - Field: 'owner' [17:28:04.104] - Field: 'envir' [17:28:04.104] - Field: 'workers' [17:28:04.104] - Field: 'packages' [17:28:04.104] - Field: 'gc' [17:28:04.104] - Field: 'conditions' [17:28:04.105] - Field: 'persistent' [17:28:04.105] - Field: 'expr' [17:28:04.105] - Field: 'uuid' [17:28:04.105] - Field: 'seed' [17:28:04.105] - Field: 'version' [17:28:04.106] - Field: 'result' [17:28:04.106] - Field: 'asynchronous' [17:28:04.106] - Field: 'calls' [17:28:04.106] - Field: 'globals' [17:28:04.106] - Field: 'stdout' [17:28:04.106] - Field: 'earlySignal' [17:28:04.107] - Field: 'lazy' [17:28:04.107] - Field: 'state' [17:28:04.107] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.107] - Launch lazy future ... [17:28:04.108] Packages needed by the future expression (n = 0): [17:28:04.108] Packages needed by future strategies (n = 0): [17:28:04.108] { [17:28:04.108] { [17:28:04.108] { [17:28:04.108] ...future.startTime <- base::Sys.time() [17:28:04.108] { [17:28:04.108] { [17:28:04.108] { [17:28:04.108] { [17:28:04.108] base::local({ [17:28:04.108] has_future <- base::requireNamespace("future", [17:28:04.108] quietly = TRUE) [17:28:04.108] if (has_future) { [17:28:04.108] ns <- base::getNamespace("future") [17:28:04.108] version <- ns[[".package"]][["version"]] [17:28:04.108] if (is.null(version)) [17:28:04.108] version <- utils::packageVersion("future") [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] version <- NULL [17:28:04.108] } [17:28:04.108] if (!has_future || version < "1.8.0") { [17:28:04.108] info <- base::c(r_version = base::gsub("R version ", [17:28:04.108] "", base::R.version$version.string), [17:28:04.108] platform = base::sprintf("%s (%s-bit)", [17:28:04.108] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.108] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.108] "release", "version")], collapse = " "), [17:28:04.108] hostname = base::Sys.info()[["nodename"]]) [17:28:04.108] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.108] info) [17:28:04.108] info <- base::paste(info, collapse = "; ") [17:28:04.108] if (!has_future) { [17:28:04.108] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.108] info) [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.108] info, version) [17:28:04.108] } [17:28:04.108] base::stop(msg) [17:28:04.108] } [17:28:04.108] }) [17:28:04.108] } [17:28:04.108] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.108] base::options(mc.cores = 1L) [17:28:04.108] } [17:28:04.108] ...future.strategy.old <- future::plan("list") [17:28:04.108] options(future.plan = NULL) [17:28:04.108] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.108] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.108] } [17:28:04.108] ...future.workdir <- getwd() [17:28:04.108] } [17:28:04.108] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.108] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.108] } [17:28:04.108] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.108] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.108] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.108] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.108] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.108] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.108] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.108] base::names(...future.oldOptions)) [17:28:04.108] } [17:28:04.108] if (FALSE) { [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] if (TRUE) { [17:28:04.108] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.108] open = "w") [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.108] windows = "NUL", "/dev/null"), open = "w") [17:28:04.108] } [17:28:04.108] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.108] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.108] base::sink(type = "output", split = FALSE) [17:28:04.108] base::close(...future.stdout) [17:28:04.108] }, add = TRUE) [17:28:04.108] } [17:28:04.108] ...future.frame <- base::sys.nframe() [17:28:04.108] ...future.conditions <- base::list() [17:28:04.108] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.108] if (FALSE) { [17:28:04.108] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.108] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.108] } [17:28:04.108] ...future.result <- base::tryCatch({ [17:28:04.108] base::withCallingHandlers({ [17:28:04.108] ...future.value <- base::withVisible(base::local({ [17:28:04.108] ...future.makeSendCondition <- base::local({ [17:28:04.108] sendCondition <- NULL [17:28:04.108] function(frame = 1L) { [17:28:04.108] if (is.function(sendCondition)) [17:28:04.108] return(sendCondition) [17:28:04.108] ns <- getNamespace("parallel") [17:28:04.108] if (exists("sendData", mode = "function", [17:28:04.108] envir = ns)) { [17:28:04.108] parallel_sendData <- get("sendData", mode = "function", [17:28:04.108] envir = ns) [17:28:04.108] envir <- sys.frame(frame) [17:28:04.108] master <- NULL [17:28:04.108] while (!identical(envir, .GlobalEnv) && [17:28:04.108] !identical(envir, emptyenv())) { [17:28:04.108] if (exists("master", mode = "list", envir = envir, [17:28:04.108] inherits = FALSE)) { [17:28:04.108] master <- get("master", mode = "list", [17:28:04.108] envir = envir, inherits = FALSE) [17:28:04.108] if (inherits(master, c("SOCKnode", [17:28:04.108] "SOCK0node"))) { [17:28:04.108] sendCondition <<- function(cond) { [17:28:04.108] data <- list(type = "VALUE", value = cond, [17:28:04.108] success = TRUE) [17:28:04.108] parallel_sendData(master, data) [17:28:04.108] } [17:28:04.108] return(sendCondition) [17:28:04.108] } [17:28:04.108] } [17:28:04.108] frame <- frame + 1L [17:28:04.108] envir <- sys.frame(frame) [17:28:04.108] } [17:28:04.108] } [17:28:04.108] sendCondition <<- function(cond) NULL [17:28:04.108] } [17:28:04.108] }) [17:28:04.108] withCallingHandlers({ [17:28:04.108] 2 [17:28:04.108] }, immediateCondition = function(cond) { [17:28:04.108] sendCondition <- ...future.makeSendCondition() [17:28:04.108] sendCondition(cond) [17:28:04.108] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.108] { [17:28:04.108] inherits <- base::inherits [17:28:04.108] invokeRestart <- base::invokeRestart [17:28:04.108] is.null <- base::is.null [17:28:04.108] muffled <- FALSE [17:28:04.108] if (inherits(cond, "message")) { [17:28:04.108] muffled <- grepl(pattern, "muffleMessage") [17:28:04.108] if (muffled) [17:28:04.108] invokeRestart("muffleMessage") [17:28:04.108] } [17:28:04.108] else if (inherits(cond, "warning")) { [17:28:04.108] muffled <- grepl(pattern, "muffleWarning") [17:28:04.108] if (muffled) [17:28:04.108] invokeRestart("muffleWarning") [17:28:04.108] } [17:28:04.108] else if (inherits(cond, "condition")) { [17:28:04.108] if (!is.null(pattern)) { [17:28:04.108] computeRestarts <- base::computeRestarts [17:28:04.108] grepl <- base::grepl [17:28:04.108] restarts <- computeRestarts(cond) [17:28:04.108] for (restart in restarts) { [17:28:04.108] name <- restart$name [17:28:04.108] if (is.null(name)) [17:28:04.108] next [17:28:04.108] if (!grepl(pattern, name)) [17:28:04.108] next [17:28:04.108] invokeRestart(restart) [17:28:04.108] muffled <- TRUE [17:28:04.108] break [17:28:04.108] } [17:28:04.108] } [17:28:04.108] } [17:28:04.108] invisible(muffled) [17:28:04.108] } [17:28:04.108] muffleCondition(cond) [17:28:04.108] }) [17:28:04.108] })) [17:28:04.108] future::FutureResult(value = ...future.value$value, [17:28:04.108] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.108] ...future.rng), globalenv = if (FALSE) [17:28:04.108] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.108] ...future.globalenv.names)) [17:28:04.108] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.108] }, condition = base::local({ [17:28:04.108] c <- base::c [17:28:04.108] inherits <- base::inherits [17:28:04.108] invokeRestart <- base::invokeRestart [17:28:04.108] length <- base::length [17:28:04.108] list <- base::list [17:28:04.108] seq.int <- base::seq.int [17:28:04.108] signalCondition <- base::signalCondition [17:28:04.108] sys.calls <- base::sys.calls [17:28:04.108] `[[` <- base::`[[` [17:28:04.108] `+` <- base::`+` [17:28:04.108] `<<-` <- base::`<<-` [17:28:04.108] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.108] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.108] 3L)] [17:28:04.108] } [17:28:04.108] function(cond) { [17:28:04.108] is_error <- inherits(cond, "error") [17:28:04.108] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.108] NULL) [17:28:04.108] if (is_error) { [17:28:04.108] sessionInformation <- function() { [17:28:04.108] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.108] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.108] search = base::search(), system = base::Sys.info()) [17:28:04.108] } [17:28:04.108] ...future.conditions[[length(...future.conditions) + [17:28:04.108] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.108] cond$call), session = sessionInformation(), [17:28:04.108] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.108] signalCondition(cond) [17:28:04.108] } [17:28:04.108] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.108] "immediateCondition"))) { [17:28:04.108] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.108] ...future.conditions[[length(...future.conditions) + [17:28:04.108] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.108] if (TRUE && !signal) { [17:28:04.108] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.108] { [17:28:04.108] inherits <- base::inherits [17:28:04.108] invokeRestart <- base::invokeRestart [17:28:04.108] is.null <- base::is.null [17:28:04.108] muffled <- FALSE [17:28:04.108] if (inherits(cond, "message")) { [17:28:04.108] muffled <- grepl(pattern, "muffleMessage") [17:28:04.108] if (muffled) [17:28:04.108] invokeRestart("muffleMessage") [17:28:04.108] } [17:28:04.108] else if (inherits(cond, "warning")) { [17:28:04.108] muffled <- grepl(pattern, "muffleWarning") [17:28:04.108] if (muffled) [17:28:04.108] invokeRestart("muffleWarning") [17:28:04.108] } [17:28:04.108] else if (inherits(cond, "condition")) { [17:28:04.108] if (!is.null(pattern)) { [17:28:04.108] computeRestarts <- base::computeRestarts [17:28:04.108] grepl <- base::grepl [17:28:04.108] restarts <- computeRestarts(cond) [17:28:04.108] for (restart in restarts) { [17:28:04.108] name <- restart$name [17:28:04.108] if (is.null(name)) [17:28:04.108] next [17:28:04.108] if (!grepl(pattern, name)) [17:28:04.108] next [17:28:04.108] invokeRestart(restart) [17:28:04.108] muffled <- TRUE [17:28:04.108] break [17:28:04.108] } [17:28:04.108] } [17:28:04.108] } [17:28:04.108] invisible(muffled) [17:28:04.108] } [17:28:04.108] muffleCondition(cond, pattern = "^muffle") [17:28:04.108] } [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] if (TRUE) { [17:28:04.108] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.108] { [17:28:04.108] inherits <- base::inherits [17:28:04.108] invokeRestart <- base::invokeRestart [17:28:04.108] is.null <- base::is.null [17:28:04.108] muffled <- FALSE [17:28:04.108] if (inherits(cond, "message")) { [17:28:04.108] muffled <- grepl(pattern, "muffleMessage") [17:28:04.108] if (muffled) [17:28:04.108] invokeRestart("muffleMessage") [17:28:04.108] } [17:28:04.108] else if (inherits(cond, "warning")) { [17:28:04.108] muffled <- grepl(pattern, "muffleWarning") [17:28:04.108] if (muffled) [17:28:04.108] invokeRestart("muffleWarning") [17:28:04.108] } [17:28:04.108] else if (inherits(cond, "condition")) { [17:28:04.108] if (!is.null(pattern)) { [17:28:04.108] computeRestarts <- base::computeRestarts [17:28:04.108] grepl <- base::grepl [17:28:04.108] restarts <- computeRestarts(cond) [17:28:04.108] for (restart in restarts) { [17:28:04.108] name <- restart$name [17:28:04.108] if (is.null(name)) [17:28:04.108] next [17:28:04.108] if (!grepl(pattern, name)) [17:28:04.108] next [17:28:04.108] invokeRestart(restart) [17:28:04.108] muffled <- TRUE [17:28:04.108] break [17:28:04.108] } [17:28:04.108] } [17:28:04.108] } [17:28:04.108] invisible(muffled) [17:28:04.108] } [17:28:04.108] muffleCondition(cond, pattern = "^muffle") [17:28:04.108] } [17:28:04.108] } [17:28:04.108] } [17:28:04.108] })) [17:28:04.108] }, error = function(ex) { [17:28:04.108] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.108] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.108] ...future.rng), started = ...future.startTime, [17:28:04.108] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.108] version = "1.8"), class = "FutureResult") [17:28:04.108] }, finally = { [17:28:04.108] if (!identical(...future.workdir, getwd())) [17:28:04.108] setwd(...future.workdir) [17:28:04.108] { [17:28:04.108] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.108] ...future.oldOptions$nwarnings <- NULL [17:28:04.108] } [17:28:04.108] base::options(...future.oldOptions) [17:28:04.108] if (.Platform$OS.type == "windows") { [17:28:04.108] old_names <- names(...future.oldEnvVars) [17:28:04.108] envs <- base::Sys.getenv() [17:28:04.108] names <- names(envs) [17:28:04.108] common <- intersect(names, old_names) [17:28:04.108] added <- setdiff(names, old_names) [17:28:04.108] removed <- setdiff(old_names, names) [17:28:04.108] changed <- common[...future.oldEnvVars[common] != [17:28:04.108] envs[common]] [17:28:04.108] NAMES <- toupper(changed) [17:28:04.108] args <- list() [17:28:04.108] for (kk in seq_along(NAMES)) { [17:28:04.108] name <- changed[[kk]] [17:28:04.108] NAME <- NAMES[[kk]] [17:28:04.108] if (name != NAME && is.element(NAME, old_names)) [17:28:04.108] next [17:28:04.108] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.108] } [17:28:04.108] NAMES <- toupper(added) [17:28:04.108] for (kk in seq_along(NAMES)) { [17:28:04.108] name <- added[[kk]] [17:28:04.108] NAME <- NAMES[[kk]] [17:28:04.108] if (name != NAME && is.element(NAME, old_names)) [17:28:04.108] next [17:28:04.108] args[[name]] <- "" [17:28:04.108] } [17:28:04.108] NAMES <- toupper(removed) [17:28:04.108] for (kk in seq_along(NAMES)) { [17:28:04.108] name <- removed[[kk]] [17:28:04.108] NAME <- NAMES[[kk]] [17:28:04.108] if (name != NAME && is.element(NAME, old_names)) [17:28:04.108] next [17:28:04.108] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.108] } [17:28:04.108] if (length(args) > 0) [17:28:04.108] base::do.call(base::Sys.setenv, args = args) [17:28:04.108] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.108] } [17:28:04.108] { [17:28:04.108] if (base::length(...future.futureOptionsAdded) > [17:28:04.108] 0L) { [17:28:04.108] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.108] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.108] base::options(opts) [17:28:04.108] } [17:28:04.108] { [17:28:04.108] { [17:28:04.108] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.108] NULL [17:28:04.108] } [17:28:04.108] options(future.plan = NULL) [17:28:04.108] if (is.na(NA_character_)) [17:28:04.108] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.108] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.108] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.108] .init = FALSE) [17:28:04.108] } [17:28:04.108] } [17:28:04.108] } [17:28:04.108] }) [17:28:04.108] if (TRUE) { [17:28:04.108] base::sink(type = "output", split = FALSE) [17:28:04.108] if (TRUE) { [17:28:04.108] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.108] } [17:28:04.108] else { [17:28:04.108] ...future.result["stdout"] <- base::list(NULL) [17:28:04.108] } [17:28:04.108] base::close(...future.stdout) [17:28:04.108] ...future.stdout <- NULL [17:28:04.108] } [17:28:04.108] ...future.result$conditions <- ...future.conditions [17:28:04.108] ...future.result$finished <- base::Sys.time() [17:28:04.108] ...future.result [17:28:04.108] } [17:28:04.114] MultisessionFuture started [17:28:04.114] - Launch lazy future ... done [17:28:04.114] run() for 'MultisessionFuture' ... done [17:28:04.115] resolve() on environment ... [17:28:04.115] recursive: 0 [17:28:04.116] elements: [3] 'a', 'b', 'c' [17:28:04.116] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.117] - Validating connection of MultisessionFuture [17:28:04.117] - received message: FutureResult [17:28:04.117] - Received FutureResult [17:28:04.117] - Erased future from FutureRegistry [17:28:04.117] result() for ClusterFuture ... [17:28:04.117] - result already collected: FutureResult [17:28:04.118] result() for ClusterFuture ... done [17:28:04.118] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.118] Future #1 [17:28:04.118] length: 2 (resolved future 1) [17:28:04.130] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.130] - Validating connection of MultisessionFuture [17:28:04.130] - received message: FutureResult [17:28:04.130] - Received FutureResult [17:28:04.131] - Erased future from FutureRegistry [17:28:04.131] result() for ClusterFuture ... [17:28:04.131] - result already collected: FutureResult [17:28:04.131] result() for ClusterFuture ... done [17:28:04.131] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.131] Future #2 [17:28:04.132] length: 1 (resolved future 2) [17:28:04.132] length: 0 (resolved future 3) [17:28:04.132] resolve() on environment ... DONE [17:28:04.133] getGlobalsAndPackages() ... [17:28:04.133] Searching for globals... [17:28:04.134] - globals found: [1] '{' [17:28:04.134] Searching for globals ... DONE [17:28:04.134] Resolving globals: FALSE [17:28:04.134] [17:28:04.135] [17:28:04.135] getGlobalsAndPackages() ... DONE [17:28:04.135] run() for 'Future' ... [17:28:04.135] - state: 'created' [17:28:04.135] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.149] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.149] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.149] - Field: 'node' [17:28:04.150] - Field: 'label' [17:28:04.150] - Field: 'local' [17:28:04.150] - Field: 'owner' [17:28:04.150] - Field: 'envir' [17:28:04.150] - Field: 'workers' [17:28:04.150] - Field: 'packages' [17:28:04.151] - Field: 'gc' [17:28:04.151] - Field: 'conditions' [17:28:04.151] - Field: 'persistent' [17:28:04.151] - Field: 'expr' [17:28:04.151] - Field: 'uuid' [17:28:04.152] - Field: 'seed' [17:28:04.152] - Field: 'version' [17:28:04.152] - Field: 'result' [17:28:04.152] - Field: 'asynchronous' [17:28:04.152] - Field: 'calls' [17:28:04.152] - Field: 'globals' [17:28:04.153] - Field: 'stdout' [17:28:04.153] - Field: 'earlySignal' [17:28:04.153] - Field: 'lazy' [17:28:04.153] - Field: 'state' [17:28:04.153] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.153] - Launch lazy future ... [17:28:04.154] Packages needed by the future expression (n = 0): [17:28:04.154] Packages needed by future strategies (n = 0): [17:28:04.155] { [17:28:04.155] { [17:28:04.155] { [17:28:04.155] ...future.startTime <- base::Sys.time() [17:28:04.155] { [17:28:04.155] { [17:28:04.155] { [17:28:04.155] { [17:28:04.155] base::local({ [17:28:04.155] has_future <- base::requireNamespace("future", [17:28:04.155] quietly = TRUE) [17:28:04.155] if (has_future) { [17:28:04.155] ns <- base::getNamespace("future") [17:28:04.155] version <- ns[[".package"]][["version"]] [17:28:04.155] if (is.null(version)) [17:28:04.155] version <- utils::packageVersion("future") [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] version <- NULL [17:28:04.155] } [17:28:04.155] if (!has_future || version < "1.8.0") { [17:28:04.155] info <- base::c(r_version = base::gsub("R version ", [17:28:04.155] "", base::R.version$version.string), [17:28:04.155] platform = base::sprintf("%s (%s-bit)", [17:28:04.155] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.155] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.155] "release", "version")], collapse = " "), [17:28:04.155] hostname = base::Sys.info()[["nodename"]]) [17:28:04.155] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.155] info) [17:28:04.155] info <- base::paste(info, collapse = "; ") [17:28:04.155] if (!has_future) { [17:28:04.155] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.155] info) [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.155] info, version) [17:28:04.155] } [17:28:04.155] base::stop(msg) [17:28:04.155] } [17:28:04.155] }) [17:28:04.155] } [17:28:04.155] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.155] base::options(mc.cores = 1L) [17:28:04.155] } [17:28:04.155] ...future.strategy.old <- future::plan("list") [17:28:04.155] options(future.plan = NULL) [17:28:04.155] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.155] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.155] } [17:28:04.155] ...future.workdir <- getwd() [17:28:04.155] } [17:28:04.155] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.155] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.155] } [17:28:04.155] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.155] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.155] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.155] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.155] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.155] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.155] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.155] base::names(...future.oldOptions)) [17:28:04.155] } [17:28:04.155] if (FALSE) { [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] if (TRUE) { [17:28:04.155] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.155] open = "w") [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.155] windows = "NUL", "/dev/null"), open = "w") [17:28:04.155] } [17:28:04.155] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.155] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.155] base::sink(type = "output", split = FALSE) [17:28:04.155] base::close(...future.stdout) [17:28:04.155] }, add = TRUE) [17:28:04.155] } [17:28:04.155] ...future.frame <- base::sys.nframe() [17:28:04.155] ...future.conditions <- base::list() [17:28:04.155] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.155] if (FALSE) { [17:28:04.155] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.155] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.155] } [17:28:04.155] ...future.result <- base::tryCatch({ [17:28:04.155] base::withCallingHandlers({ [17:28:04.155] ...future.value <- base::withVisible(base::local({ [17:28:04.155] ...future.makeSendCondition <- base::local({ [17:28:04.155] sendCondition <- NULL [17:28:04.155] function(frame = 1L) { [17:28:04.155] if (is.function(sendCondition)) [17:28:04.155] return(sendCondition) [17:28:04.155] ns <- getNamespace("parallel") [17:28:04.155] if (exists("sendData", mode = "function", [17:28:04.155] envir = ns)) { [17:28:04.155] parallel_sendData <- get("sendData", mode = "function", [17:28:04.155] envir = ns) [17:28:04.155] envir <- sys.frame(frame) [17:28:04.155] master <- NULL [17:28:04.155] while (!identical(envir, .GlobalEnv) && [17:28:04.155] !identical(envir, emptyenv())) { [17:28:04.155] if (exists("master", mode = "list", envir = envir, [17:28:04.155] inherits = FALSE)) { [17:28:04.155] master <- get("master", mode = "list", [17:28:04.155] envir = envir, inherits = FALSE) [17:28:04.155] if (inherits(master, c("SOCKnode", [17:28:04.155] "SOCK0node"))) { [17:28:04.155] sendCondition <<- function(cond) { [17:28:04.155] data <- list(type = "VALUE", value = cond, [17:28:04.155] success = TRUE) [17:28:04.155] parallel_sendData(master, data) [17:28:04.155] } [17:28:04.155] return(sendCondition) [17:28:04.155] } [17:28:04.155] } [17:28:04.155] frame <- frame + 1L [17:28:04.155] envir <- sys.frame(frame) [17:28:04.155] } [17:28:04.155] } [17:28:04.155] sendCondition <<- function(cond) NULL [17:28:04.155] } [17:28:04.155] }) [17:28:04.155] withCallingHandlers({ [17:28:04.155] { [17:28:04.155] 1 [17:28:04.155] } [17:28:04.155] }, immediateCondition = function(cond) { [17:28:04.155] sendCondition <- ...future.makeSendCondition() [17:28:04.155] sendCondition(cond) [17:28:04.155] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.155] { [17:28:04.155] inherits <- base::inherits [17:28:04.155] invokeRestart <- base::invokeRestart [17:28:04.155] is.null <- base::is.null [17:28:04.155] muffled <- FALSE [17:28:04.155] if (inherits(cond, "message")) { [17:28:04.155] muffled <- grepl(pattern, "muffleMessage") [17:28:04.155] if (muffled) [17:28:04.155] invokeRestart("muffleMessage") [17:28:04.155] } [17:28:04.155] else if (inherits(cond, "warning")) { [17:28:04.155] muffled <- grepl(pattern, "muffleWarning") [17:28:04.155] if (muffled) [17:28:04.155] invokeRestart("muffleWarning") [17:28:04.155] } [17:28:04.155] else if (inherits(cond, "condition")) { [17:28:04.155] if (!is.null(pattern)) { [17:28:04.155] computeRestarts <- base::computeRestarts [17:28:04.155] grepl <- base::grepl [17:28:04.155] restarts <- computeRestarts(cond) [17:28:04.155] for (restart in restarts) { [17:28:04.155] name <- restart$name [17:28:04.155] if (is.null(name)) [17:28:04.155] next [17:28:04.155] if (!grepl(pattern, name)) [17:28:04.155] next [17:28:04.155] invokeRestart(restart) [17:28:04.155] muffled <- TRUE [17:28:04.155] break [17:28:04.155] } [17:28:04.155] } [17:28:04.155] } [17:28:04.155] invisible(muffled) [17:28:04.155] } [17:28:04.155] muffleCondition(cond) [17:28:04.155] }) [17:28:04.155] })) [17:28:04.155] future::FutureResult(value = ...future.value$value, [17:28:04.155] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.155] ...future.rng), globalenv = if (FALSE) [17:28:04.155] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.155] ...future.globalenv.names)) [17:28:04.155] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.155] }, condition = base::local({ [17:28:04.155] c <- base::c [17:28:04.155] inherits <- base::inherits [17:28:04.155] invokeRestart <- base::invokeRestart [17:28:04.155] length <- base::length [17:28:04.155] list <- base::list [17:28:04.155] seq.int <- base::seq.int [17:28:04.155] signalCondition <- base::signalCondition [17:28:04.155] sys.calls <- base::sys.calls [17:28:04.155] `[[` <- base::`[[` [17:28:04.155] `+` <- base::`+` [17:28:04.155] `<<-` <- base::`<<-` [17:28:04.155] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.155] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.155] 3L)] [17:28:04.155] } [17:28:04.155] function(cond) { [17:28:04.155] is_error <- inherits(cond, "error") [17:28:04.155] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.155] NULL) [17:28:04.155] if (is_error) { [17:28:04.155] sessionInformation <- function() { [17:28:04.155] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.155] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.155] search = base::search(), system = base::Sys.info()) [17:28:04.155] } [17:28:04.155] ...future.conditions[[length(...future.conditions) + [17:28:04.155] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.155] cond$call), session = sessionInformation(), [17:28:04.155] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.155] signalCondition(cond) [17:28:04.155] } [17:28:04.155] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.155] "immediateCondition"))) { [17:28:04.155] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.155] ...future.conditions[[length(...future.conditions) + [17:28:04.155] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.155] if (TRUE && !signal) { [17:28:04.155] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.155] { [17:28:04.155] inherits <- base::inherits [17:28:04.155] invokeRestart <- base::invokeRestart [17:28:04.155] is.null <- base::is.null [17:28:04.155] muffled <- FALSE [17:28:04.155] if (inherits(cond, "message")) { [17:28:04.155] muffled <- grepl(pattern, "muffleMessage") [17:28:04.155] if (muffled) [17:28:04.155] invokeRestart("muffleMessage") [17:28:04.155] } [17:28:04.155] else if (inherits(cond, "warning")) { [17:28:04.155] muffled <- grepl(pattern, "muffleWarning") [17:28:04.155] if (muffled) [17:28:04.155] invokeRestart("muffleWarning") [17:28:04.155] } [17:28:04.155] else if (inherits(cond, "condition")) { [17:28:04.155] if (!is.null(pattern)) { [17:28:04.155] computeRestarts <- base::computeRestarts [17:28:04.155] grepl <- base::grepl [17:28:04.155] restarts <- computeRestarts(cond) [17:28:04.155] for (restart in restarts) { [17:28:04.155] name <- restart$name [17:28:04.155] if (is.null(name)) [17:28:04.155] next [17:28:04.155] if (!grepl(pattern, name)) [17:28:04.155] next [17:28:04.155] invokeRestart(restart) [17:28:04.155] muffled <- TRUE [17:28:04.155] break [17:28:04.155] } [17:28:04.155] } [17:28:04.155] } [17:28:04.155] invisible(muffled) [17:28:04.155] } [17:28:04.155] muffleCondition(cond, pattern = "^muffle") [17:28:04.155] } [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] if (TRUE) { [17:28:04.155] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.155] { [17:28:04.155] inherits <- base::inherits [17:28:04.155] invokeRestart <- base::invokeRestart [17:28:04.155] is.null <- base::is.null [17:28:04.155] muffled <- FALSE [17:28:04.155] if (inherits(cond, "message")) { [17:28:04.155] muffled <- grepl(pattern, "muffleMessage") [17:28:04.155] if (muffled) [17:28:04.155] invokeRestart("muffleMessage") [17:28:04.155] } [17:28:04.155] else if (inherits(cond, "warning")) { [17:28:04.155] muffled <- grepl(pattern, "muffleWarning") [17:28:04.155] if (muffled) [17:28:04.155] invokeRestart("muffleWarning") [17:28:04.155] } [17:28:04.155] else if (inherits(cond, "condition")) { [17:28:04.155] if (!is.null(pattern)) { [17:28:04.155] computeRestarts <- base::computeRestarts [17:28:04.155] grepl <- base::grepl [17:28:04.155] restarts <- computeRestarts(cond) [17:28:04.155] for (restart in restarts) { [17:28:04.155] name <- restart$name [17:28:04.155] if (is.null(name)) [17:28:04.155] next [17:28:04.155] if (!grepl(pattern, name)) [17:28:04.155] next [17:28:04.155] invokeRestart(restart) [17:28:04.155] muffled <- TRUE [17:28:04.155] break [17:28:04.155] } [17:28:04.155] } [17:28:04.155] } [17:28:04.155] invisible(muffled) [17:28:04.155] } [17:28:04.155] muffleCondition(cond, pattern = "^muffle") [17:28:04.155] } [17:28:04.155] } [17:28:04.155] } [17:28:04.155] })) [17:28:04.155] }, error = function(ex) { [17:28:04.155] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.155] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.155] ...future.rng), started = ...future.startTime, [17:28:04.155] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.155] version = "1.8"), class = "FutureResult") [17:28:04.155] }, finally = { [17:28:04.155] if (!identical(...future.workdir, getwd())) [17:28:04.155] setwd(...future.workdir) [17:28:04.155] { [17:28:04.155] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.155] ...future.oldOptions$nwarnings <- NULL [17:28:04.155] } [17:28:04.155] base::options(...future.oldOptions) [17:28:04.155] if (.Platform$OS.type == "windows") { [17:28:04.155] old_names <- names(...future.oldEnvVars) [17:28:04.155] envs <- base::Sys.getenv() [17:28:04.155] names <- names(envs) [17:28:04.155] common <- intersect(names, old_names) [17:28:04.155] added <- setdiff(names, old_names) [17:28:04.155] removed <- setdiff(old_names, names) [17:28:04.155] changed <- common[...future.oldEnvVars[common] != [17:28:04.155] envs[common]] [17:28:04.155] NAMES <- toupper(changed) [17:28:04.155] args <- list() [17:28:04.155] for (kk in seq_along(NAMES)) { [17:28:04.155] name <- changed[[kk]] [17:28:04.155] NAME <- NAMES[[kk]] [17:28:04.155] if (name != NAME && is.element(NAME, old_names)) [17:28:04.155] next [17:28:04.155] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.155] } [17:28:04.155] NAMES <- toupper(added) [17:28:04.155] for (kk in seq_along(NAMES)) { [17:28:04.155] name <- added[[kk]] [17:28:04.155] NAME <- NAMES[[kk]] [17:28:04.155] if (name != NAME && is.element(NAME, old_names)) [17:28:04.155] next [17:28:04.155] args[[name]] <- "" [17:28:04.155] } [17:28:04.155] NAMES <- toupper(removed) [17:28:04.155] for (kk in seq_along(NAMES)) { [17:28:04.155] name <- removed[[kk]] [17:28:04.155] NAME <- NAMES[[kk]] [17:28:04.155] if (name != NAME && is.element(NAME, old_names)) [17:28:04.155] next [17:28:04.155] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.155] } [17:28:04.155] if (length(args) > 0) [17:28:04.155] base::do.call(base::Sys.setenv, args = args) [17:28:04.155] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.155] } [17:28:04.155] { [17:28:04.155] if (base::length(...future.futureOptionsAdded) > [17:28:04.155] 0L) { [17:28:04.155] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.155] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.155] base::options(opts) [17:28:04.155] } [17:28:04.155] { [17:28:04.155] { [17:28:04.155] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.155] NULL [17:28:04.155] } [17:28:04.155] options(future.plan = NULL) [17:28:04.155] if (is.na(NA_character_)) [17:28:04.155] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.155] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.155] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.155] .init = FALSE) [17:28:04.155] } [17:28:04.155] } [17:28:04.155] } [17:28:04.155] }) [17:28:04.155] if (TRUE) { [17:28:04.155] base::sink(type = "output", split = FALSE) [17:28:04.155] if (TRUE) { [17:28:04.155] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.155] } [17:28:04.155] else { [17:28:04.155] ...future.result["stdout"] <- base::list(NULL) [17:28:04.155] } [17:28:04.155] base::close(...future.stdout) [17:28:04.155] ...future.stdout <- NULL [17:28:04.155] } [17:28:04.155] ...future.result$conditions <- ...future.conditions [17:28:04.155] ...future.result$finished <- base::Sys.time() [17:28:04.155] ...future.result [17:28:04.155] } [17:28:04.160] MultisessionFuture started [17:28:04.160] - Launch lazy future ... done [17:28:04.160] run() for 'MultisessionFuture' ... done [17:28:04.161] getGlobalsAndPackages() ... [17:28:04.161] Searching for globals... [17:28:04.162] - globals found: [1] '{' [17:28:04.162] Searching for globals ... DONE [17:28:04.162] Resolving globals: FALSE [17:28:04.163] [17:28:04.163] [17:28:04.163] getGlobalsAndPackages() ... DONE [17:28:04.163] run() for 'Future' ... [17:28:04.163] - state: 'created' [17:28:04.164] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.177] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.178] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.178] - Field: 'node' [17:28:04.178] - Field: 'label' [17:28:04.178] - Field: 'local' [17:28:04.178] - Field: 'owner' [17:28:04.179] - Field: 'envir' [17:28:04.179] - Field: 'workers' [17:28:04.179] - Field: 'packages' [17:28:04.179] - Field: 'gc' [17:28:04.179] - Field: 'conditions' [17:28:04.179] - Field: 'persistent' [17:28:04.180] - Field: 'expr' [17:28:04.180] - Field: 'uuid' [17:28:04.180] - Field: 'seed' [17:28:04.180] - Field: 'version' [17:28:04.180] - Field: 'result' [17:28:04.180] - Field: 'asynchronous' [17:28:04.181] - Field: 'calls' [17:28:04.181] - Field: 'globals' [17:28:04.181] - Field: 'stdout' [17:28:04.181] - Field: 'earlySignal' [17:28:04.181] - Field: 'lazy' [17:28:04.182] - Field: 'state' [17:28:04.182] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.182] - Launch lazy future ... [17:28:04.182] Packages needed by the future expression (n = 0): [17:28:04.182] Packages needed by future strategies (n = 0): [17:28:04.183] { [17:28:04.183] { [17:28:04.183] { [17:28:04.183] ...future.startTime <- base::Sys.time() [17:28:04.183] { [17:28:04.183] { [17:28:04.183] { [17:28:04.183] { [17:28:04.183] base::local({ [17:28:04.183] has_future <- base::requireNamespace("future", [17:28:04.183] quietly = TRUE) [17:28:04.183] if (has_future) { [17:28:04.183] ns <- base::getNamespace("future") [17:28:04.183] version <- ns[[".package"]][["version"]] [17:28:04.183] if (is.null(version)) [17:28:04.183] version <- utils::packageVersion("future") [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] version <- NULL [17:28:04.183] } [17:28:04.183] if (!has_future || version < "1.8.0") { [17:28:04.183] info <- base::c(r_version = base::gsub("R version ", [17:28:04.183] "", base::R.version$version.string), [17:28:04.183] platform = base::sprintf("%s (%s-bit)", [17:28:04.183] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.183] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.183] "release", "version")], collapse = " "), [17:28:04.183] hostname = base::Sys.info()[["nodename"]]) [17:28:04.183] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.183] info) [17:28:04.183] info <- base::paste(info, collapse = "; ") [17:28:04.183] if (!has_future) { [17:28:04.183] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.183] info) [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.183] info, version) [17:28:04.183] } [17:28:04.183] base::stop(msg) [17:28:04.183] } [17:28:04.183] }) [17:28:04.183] } [17:28:04.183] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.183] base::options(mc.cores = 1L) [17:28:04.183] } [17:28:04.183] ...future.strategy.old <- future::plan("list") [17:28:04.183] options(future.plan = NULL) [17:28:04.183] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.183] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.183] } [17:28:04.183] ...future.workdir <- getwd() [17:28:04.183] } [17:28:04.183] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.183] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.183] } [17:28:04.183] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.183] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.183] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.183] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.183] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.183] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.183] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.183] base::names(...future.oldOptions)) [17:28:04.183] } [17:28:04.183] if (FALSE) { [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] if (TRUE) { [17:28:04.183] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.183] open = "w") [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.183] windows = "NUL", "/dev/null"), open = "w") [17:28:04.183] } [17:28:04.183] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.183] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.183] base::sink(type = "output", split = FALSE) [17:28:04.183] base::close(...future.stdout) [17:28:04.183] }, add = TRUE) [17:28:04.183] } [17:28:04.183] ...future.frame <- base::sys.nframe() [17:28:04.183] ...future.conditions <- base::list() [17:28:04.183] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.183] if (FALSE) { [17:28:04.183] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.183] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.183] } [17:28:04.183] ...future.result <- base::tryCatch({ [17:28:04.183] base::withCallingHandlers({ [17:28:04.183] ...future.value <- base::withVisible(base::local({ [17:28:04.183] ...future.makeSendCondition <- base::local({ [17:28:04.183] sendCondition <- NULL [17:28:04.183] function(frame = 1L) { [17:28:04.183] if (is.function(sendCondition)) [17:28:04.183] return(sendCondition) [17:28:04.183] ns <- getNamespace("parallel") [17:28:04.183] if (exists("sendData", mode = "function", [17:28:04.183] envir = ns)) { [17:28:04.183] parallel_sendData <- get("sendData", mode = "function", [17:28:04.183] envir = ns) [17:28:04.183] envir <- sys.frame(frame) [17:28:04.183] master <- NULL [17:28:04.183] while (!identical(envir, .GlobalEnv) && [17:28:04.183] !identical(envir, emptyenv())) { [17:28:04.183] if (exists("master", mode = "list", envir = envir, [17:28:04.183] inherits = FALSE)) { [17:28:04.183] master <- get("master", mode = "list", [17:28:04.183] envir = envir, inherits = FALSE) [17:28:04.183] if (inherits(master, c("SOCKnode", [17:28:04.183] "SOCK0node"))) { [17:28:04.183] sendCondition <<- function(cond) { [17:28:04.183] data <- list(type = "VALUE", value = cond, [17:28:04.183] success = TRUE) [17:28:04.183] parallel_sendData(master, data) [17:28:04.183] } [17:28:04.183] return(sendCondition) [17:28:04.183] } [17:28:04.183] } [17:28:04.183] frame <- frame + 1L [17:28:04.183] envir <- sys.frame(frame) [17:28:04.183] } [17:28:04.183] } [17:28:04.183] sendCondition <<- function(cond) NULL [17:28:04.183] } [17:28:04.183] }) [17:28:04.183] withCallingHandlers({ [17:28:04.183] { [17:28:04.183] 2 [17:28:04.183] } [17:28:04.183] }, immediateCondition = function(cond) { [17:28:04.183] sendCondition <- ...future.makeSendCondition() [17:28:04.183] sendCondition(cond) [17:28:04.183] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.183] { [17:28:04.183] inherits <- base::inherits [17:28:04.183] invokeRestart <- base::invokeRestart [17:28:04.183] is.null <- base::is.null [17:28:04.183] muffled <- FALSE [17:28:04.183] if (inherits(cond, "message")) { [17:28:04.183] muffled <- grepl(pattern, "muffleMessage") [17:28:04.183] if (muffled) [17:28:04.183] invokeRestart("muffleMessage") [17:28:04.183] } [17:28:04.183] else if (inherits(cond, "warning")) { [17:28:04.183] muffled <- grepl(pattern, "muffleWarning") [17:28:04.183] if (muffled) [17:28:04.183] invokeRestart("muffleWarning") [17:28:04.183] } [17:28:04.183] else if (inherits(cond, "condition")) { [17:28:04.183] if (!is.null(pattern)) { [17:28:04.183] computeRestarts <- base::computeRestarts [17:28:04.183] grepl <- base::grepl [17:28:04.183] restarts <- computeRestarts(cond) [17:28:04.183] for (restart in restarts) { [17:28:04.183] name <- restart$name [17:28:04.183] if (is.null(name)) [17:28:04.183] next [17:28:04.183] if (!grepl(pattern, name)) [17:28:04.183] next [17:28:04.183] invokeRestart(restart) [17:28:04.183] muffled <- TRUE [17:28:04.183] break [17:28:04.183] } [17:28:04.183] } [17:28:04.183] } [17:28:04.183] invisible(muffled) [17:28:04.183] } [17:28:04.183] muffleCondition(cond) [17:28:04.183] }) [17:28:04.183] })) [17:28:04.183] future::FutureResult(value = ...future.value$value, [17:28:04.183] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.183] ...future.rng), globalenv = if (FALSE) [17:28:04.183] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.183] ...future.globalenv.names)) [17:28:04.183] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.183] }, condition = base::local({ [17:28:04.183] c <- base::c [17:28:04.183] inherits <- base::inherits [17:28:04.183] invokeRestart <- base::invokeRestart [17:28:04.183] length <- base::length [17:28:04.183] list <- base::list [17:28:04.183] seq.int <- base::seq.int [17:28:04.183] signalCondition <- base::signalCondition [17:28:04.183] sys.calls <- base::sys.calls [17:28:04.183] `[[` <- base::`[[` [17:28:04.183] `+` <- base::`+` [17:28:04.183] `<<-` <- base::`<<-` [17:28:04.183] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.183] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.183] 3L)] [17:28:04.183] } [17:28:04.183] function(cond) { [17:28:04.183] is_error <- inherits(cond, "error") [17:28:04.183] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.183] NULL) [17:28:04.183] if (is_error) { [17:28:04.183] sessionInformation <- function() { [17:28:04.183] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.183] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.183] search = base::search(), system = base::Sys.info()) [17:28:04.183] } [17:28:04.183] ...future.conditions[[length(...future.conditions) + [17:28:04.183] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.183] cond$call), session = sessionInformation(), [17:28:04.183] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.183] signalCondition(cond) [17:28:04.183] } [17:28:04.183] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.183] "immediateCondition"))) { [17:28:04.183] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.183] ...future.conditions[[length(...future.conditions) + [17:28:04.183] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.183] if (TRUE && !signal) { [17:28:04.183] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.183] { [17:28:04.183] inherits <- base::inherits [17:28:04.183] invokeRestart <- base::invokeRestart [17:28:04.183] is.null <- base::is.null [17:28:04.183] muffled <- FALSE [17:28:04.183] if (inherits(cond, "message")) { [17:28:04.183] muffled <- grepl(pattern, "muffleMessage") [17:28:04.183] if (muffled) [17:28:04.183] invokeRestart("muffleMessage") [17:28:04.183] } [17:28:04.183] else if (inherits(cond, "warning")) { [17:28:04.183] muffled <- grepl(pattern, "muffleWarning") [17:28:04.183] if (muffled) [17:28:04.183] invokeRestart("muffleWarning") [17:28:04.183] } [17:28:04.183] else if (inherits(cond, "condition")) { [17:28:04.183] if (!is.null(pattern)) { [17:28:04.183] computeRestarts <- base::computeRestarts [17:28:04.183] grepl <- base::grepl [17:28:04.183] restarts <- computeRestarts(cond) [17:28:04.183] for (restart in restarts) { [17:28:04.183] name <- restart$name [17:28:04.183] if (is.null(name)) [17:28:04.183] next [17:28:04.183] if (!grepl(pattern, name)) [17:28:04.183] next [17:28:04.183] invokeRestart(restart) [17:28:04.183] muffled <- TRUE [17:28:04.183] break [17:28:04.183] } [17:28:04.183] } [17:28:04.183] } [17:28:04.183] invisible(muffled) [17:28:04.183] } [17:28:04.183] muffleCondition(cond, pattern = "^muffle") [17:28:04.183] } [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] if (TRUE) { [17:28:04.183] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.183] { [17:28:04.183] inherits <- base::inherits [17:28:04.183] invokeRestart <- base::invokeRestart [17:28:04.183] is.null <- base::is.null [17:28:04.183] muffled <- FALSE [17:28:04.183] if (inherits(cond, "message")) { [17:28:04.183] muffled <- grepl(pattern, "muffleMessage") [17:28:04.183] if (muffled) [17:28:04.183] invokeRestart("muffleMessage") [17:28:04.183] } [17:28:04.183] else if (inherits(cond, "warning")) { [17:28:04.183] muffled <- grepl(pattern, "muffleWarning") [17:28:04.183] if (muffled) [17:28:04.183] invokeRestart("muffleWarning") [17:28:04.183] } [17:28:04.183] else if (inherits(cond, "condition")) { [17:28:04.183] if (!is.null(pattern)) { [17:28:04.183] computeRestarts <- base::computeRestarts [17:28:04.183] grepl <- base::grepl [17:28:04.183] restarts <- computeRestarts(cond) [17:28:04.183] for (restart in restarts) { [17:28:04.183] name <- restart$name [17:28:04.183] if (is.null(name)) [17:28:04.183] next [17:28:04.183] if (!grepl(pattern, name)) [17:28:04.183] next [17:28:04.183] invokeRestart(restart) [17:28:04.183] muffled <- TRUE [17:28:04.183] break [17:28:04.183] } [17:28:04.183] } [17:28:04.183] } [17:28:04.183] invisible(muffled) [17:28:04.183] } [17:28:04.183] muffleCondition(cond, pattern = "^muffle") [17:28:04.183] } [17:28:04.183] } [17:28:04.183] } [17:28:04.183] })) [17:28:04.183] }, error = function(ex) { [17:28:04.183] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.183] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.183] ...future.rng), started = ...future.startTime, [17:28:04.183] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.183] version = "1.8"), class = "FutureResult") [17:28:04.183] }, finally = { [17:28:04.183] if (!identical(...future.workdir, getwd())) [17:28:04.183] setwd(...future.workdir) [17:28:04.183] { [17:28:04.183] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.183] ...future.oldOptions$nwarnings <- NULL [17:28:04.183] } [17:28:04.183] base::options(...future.oldOptions) [17:28:04.183] if (.Platform$OS.type == "windows") { [17:28:04.183] old_names <- names(...future.oldEnvVars) [17:28:04.183] envs <- base::Sys.getenv() [17:28:04.183] names <- names(envs) [17:28:04.183] common <- intersect(names, old_names) [17:28:04.183] added <- setdiff(names, old_names) [17:28:04.183] removed <- setdiff(old_names, names) [17:28:04.183] changed <- common[...future.oldEnvVars[common] != [17:28:04.183] envs[common]] [17:28:04.183] NAMES <- toupper(changed) [17:28:04.183] args <- list() [17:28:04.183] for (kk in seq_along(NAMES)) { [17:28:04.183] name <- changed[[kk]] [17:28:04.183] NAME <- NAMES[[kk]] [17:28:04.183] if (name != NAME && is.element(NAME, old_names)) [17:28:04.183] next [17:28:04.183] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.183] } [17:28:04.183] NAMES <- toupper(added) [17:28:04.183] for (kk in seq_along(NAMES)) { [17:28:04.183] name <- added[[kk]] [17:28:04.183] NAME <- NAMES[[kk]] [17:28:04.183] if (name != NAME && is.element(NAME, old_names)) [17:28:04.183] next [17:28:04.183] args[[name]] <- "" [17:28:04.183] } [17:28:04.183] NAMES <- toupper(removed) [17:28:04.183] for (kk in seq_along(NAMES)) { [17:28:04.183] name <- removed[[kk]] [17:28:04.183] NAME <- NAMES[[kk]] [17:28:04.183] if (name != NAME && is.element(NAME, old_names)) [17:28:04.183] next [17:28:04.183] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.183] } [17:28:04.183] if (length(args) > 0) [17:28:04.183] base::do.call(base::Sys.setenv, args = args) [17:28:04.183] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.183] } [17:28:04.183] { [17:28:04.183] if (base::length(...future.futureOptionsAdded) > [17:28:04.183] 0L) { [17:28:04.183] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.183] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.183] base::options(opts) [17:28:04.183] } [17:28:04.183] { [17:28:04.183] { [17:28:04.183] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.183] NULL [17:28:04.183] } [17:28:04.183] options(future.plan = NULL) [17:28:04.183] if (is.na(NA_character_)) [17:28:04.183] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.183] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.183] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.183] .init = FALSE) [17:28:04.183] } [17:28:04.183] } [17:28:04.183] } [17:28:04.183] }) [17:28:04.183] if (TRUE) { [17:28:04.183] base::sink(type = "output", split = FALSE) [17:28:04.183] if (TRUE) { [17:28:04.183] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.183] } [17:28:04.183] else { [17:28:04.183] ...future.result["stdout"] <- base::list(NULL) [17:28:04.183] } [17:28:04.183] base::close(...future.stdout) [17:28:04.183] ...future.stdout <- NULL [17:28:04.183] } [17:28:04.183] ...future.result$conditions <- ...future.conditions [17:28:04.183] ...future.result$finished <- base::Sys.time() [17:28:04.183] ...future.result [17:28:04.183] } [17:28:04.189] MultisessionFuture started [17:28:04.189] - Launch lazy future ... done [17:28:04.189] run() for 'MultisessionFuture' ... done [17:28:04.190] resolve() on environment ... [17:28:04.190] recursive: 0 [17:28:04.191] elements: [3] '.future_a', '.future_b', 'a', 'b', 'c' [17:28:04.191] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.191] - Validating connection of MultisessionFuture [17:28:04.191] - received message: FutureResult [17:28:04.192] - Received FutureResult [17:28:04.192] - Erased future from FutureRegistry [17:28:04.192] result() for ClusterFuture ... [17:28:04.192] - result already collected: FutureResult [17:28:04.192] result() for ClusterFuture ... done [17:28:04.192] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.193] Future #1 [17:28:04.193] length: 2 (resolved future 1) [17:28:04.203] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.203] - Validating connection of MultisessionFuture [17:28:04.204] - received message: FutureResult [17:28:04.204] - Received FutureResult [17:28:04.204] - Erased future from FutureRegistry [17:28:04.204] result() for ClusterFuture ... [17:28:04.205] - result already collected: FutureResult [17:28:04.205] result() for ClusterFuture ... done [17:28:04.208] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.208] Future #2 [17:28:04.208] length: 1 (resolved future 2) [17:28:04.209] length: 0 (resolved future 3) [17:28:04.209] resolve() on environment ... DONE [17:28:04.209] getGlobalsAndPackages() ... [17:28:04.209] Searching for globals... [17:28:04.210] - globals found: [1] '{' [17:28:04.210] Searching for globals ... DONE [17:28:04.211] Resolving globals: FALSE [17:28:04.211] [17:28:04.211] [17:28:04.211] getGlobalsAndPackages() ... DONE [17:28:04.212] run() for 'Future' ... [17:28:04.212] - state: 'created' [17:28:04.212] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.227] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.227] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.227] - Field: 'node' [17:28:04.227] - Field: 'label' [17:28:04.228] - Field: 'local' [17:28:04.228] - Field: 'owner' [17:28:04.228] - Field: 'envir' [17:28:04.228] - Field: 'workers' [17:28:04.228] - Field: 'packages' [17:28:04.228] - Field: 'gc' [17:28:04.229] - Field: 'conditions' [17:28:04.229] - Field: 'persistent' [17:28:04.229] - Field: 'expr' [17:28:04.229] - Field: 'uuid' [17:28:04.229] - Field: 'seed' [17:28:04.230] - Field: 'version' [17:28:04.230] - Field: 'result' [17:28:04.230] - Field: 'asynchronous' [17:28:04.230] - Field: 'calls' [17:28:04.230] - Field: 'globals' [17:28:04.230] - Field: 'stdout' [17:28:04.231] - Field: 'earlySignal' [17:28:04.231] - Field: 'lazy' [17:28:04.231] - Field: 'state' [17:28:04.231] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.231] - Launch lazy future ... [17:28:04.232] Packages needed by the future expression (n = 0): [17:28:04.232] Packages needed by future strategies (n = 0): [17:28:04.232] { [17:28:04.232] { [17:28:04.232] { [17:28:04.232] ...future.startTime <- base::Sys.time() [17:28:04.232] { [17:28:04.232] { [17:28:04.232] { [17:28:04.232] { [17:28:04.232] base::local({ [17:28:04.232] has_future <- base::requireNamespace("future", [17:28:04.232] quietly = TRUE) [17:28:04.232] if (has_future) { [17:28:04.232] ns <- base::getNamespace("future") [17:28:04.232] version <- ns[[".package"]][["version"]] [17:28:04.232] if (is.null(version)) [17:28:04.232] version <- utils::packageVersion("future") [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] version <- NULL [17:28:04.232] } [17:28:04.232] if (!has_future || version < "1.8.0") { [17:28:04.232] info <- base::c(r_version = base::gsub("R version ", [17:28:04.232] "", base::R.version$version.string), [17:28:04.232] platform = base::sprintf("%s (%s-bit)", [17:28:04.232] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.232] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.232] "release", "version")], collapse = " "), [17:28:04.232] hostname = base::Sys.info()[["nodename"]]) [17:28:04.232] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.232] info) [17:28:04.232] info <- base::paste(info, collapse = "; ") [17:28:04.232] if (!has_future) { [17:28:04.232] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.232] info) [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.232] info, version) [17:28:04.232] } [17:28:04.232] base::stop(msg) [17:28:04.232] } [17:28:04.232] }) [17:28:04.232] } [17:28:04.232] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.232] base::options(mc.cores = 1L) [17:28:04.232] } [17:28:04.232] ...future.strategy.old <- future::plan("list") [17:28:04.232] options(future.plan = NULL) [17:28:04.232] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.232] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.232] } [17:28:04.232] ...future.workdir <- getwd() [17:28:04.232] } [17:28:04.232] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.232] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.232] } [17:28:04.232] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.232] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.232] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.232] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.232] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.232] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.232] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.232] base::names(...future.oldOptions)) [17:28:04.232] } [17:28:04.232] if (FALSE) { [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] if (TRUE) { [17:28:04.232] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.232] open = "w") [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.232] windows = "NUL", "/dev/null"), open = "w") [17:28:04.232] } [17:28:04.232] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.232] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.232] base::sink(type = "output", split = FALSE) [17:28:04.232] base::close(...future.stdout) [17:28:04.232] }, add = TRUE) [17:28:04.232] } [17:28:04.232] ...future.frame <- base::sys.nframe() [17:28:04.232] ...future.conditions <- base::list() [17:28:04.232] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.232] if (FALSE) { [17:28:04.232] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.232] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.232] } [17:28:04.232] ...future.result <- base::tryCatch({ [17:28:04.232] base::withCallingHandlers({ [17:28:04.232] ...future.value <- base::withVisible(base::local({ [17:28:04.232] ...future.makeSendCondition <- base::local({ [17:28:04.232] sendCondition <- NULL [17:28:04.232] function(frame = 1L) { [17:28:04.232] if (is.function(sendCondition)) [17:28:04.232] return(sendCondition) [17:28:04.232] ns <- getNamespace("parallel") [17:28:04.232] if (exists("sendData", mode = "function", [17:28:04.232] envir = ns)) { [17:28:04.232] parallel_sendData <- get("sendData", mode = "function", [17:28:04.232] envir = ns) [17:28:04.232] envir <- sys.frame(frame) [17:28:04.232] master <- NULL [17:28:04.232] while (!identical(envir, .GlobalEnv) && [17:28:04.232] !identical(envir, emptyenv())) { [17:28:04.232] if (exists("master", mode = "list", envir = envir, [17:28:04.232] inherits = FALSE)) { [17:28:04.232] master <- get("master", mode = "list", [17:28:04.232] envir = envir, inherits = FALSE) [17:28:04.232] if (inherits(master, c("SOCKnode", [17:28:04.232] "SOCK0node"))) { [17:28:04.232] sendCondition <<- function(cond) { [17:28:04.232] data <- list(type = "VALUE", value = cond, [17:28:04.232] success = TRUE) [17:28:04.232] parallel_sendData(master, data) [17:28:04.232] } [17:28:04.232] return(sendCondition) [17:28:04.232] } [17:28:04.232] } [17:28:04.232] frame <- frame + 1L [17:28:04.232] envir <- sys.frame(frame) [17:28:04.232] } [17:28:04.232] } [17:28:04.232] sendCondition <<- function(cond) NULL [17:28:04.232] } [17:28:04.232] }) [17:28:04.232] withCallingHandlers({ [17:28:04.232] { [17:28:04.232] 1 [17:28:04.232] } [17:28:04.232] }, immediateCondition = function(cond) { [17:28:04.232] sendCondition <- ...future.makeSendCondition() [17:28:04.232] sendCondition(cond) [17:28:04.232] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.232] { [17:28:04.232] inherits <- base::inherits [17:28:04.232] invokeRestart <- base::invokeRestart [17:28:04.232] is.null <- base::is.null [17:28:04.232] muffled <- FALSE [17:28:04.232] if (inherits(cond, "message")) { [17:28:04.232] muffled <- grepl(pattern, "muffleMessage") [17:28:04.232] if (muffled) [17:28:04.232] invokeRestart("muffleMessage") [17:28:04.232] } [17:28:04.232] else if (inherits(cond, "warning")) { [17:28:04.232] muffled <- grepl(pattern, "muffleWarning") [17:28:04.232] if (muffled) [17:28:04.232] invokeRestart("muffleWarning") [17:28:04.232] } [17:28:04.232] else if (inherits(cond, "condition")) { [17:28:04.232] if (!is.null(pattern)) { [17:28:04.232] computeRestarts <- base::computeRestarts [17:28:04.232] grepl <- base::grepl [17:28:04.232] restarts <- computeRestarts(cond) [17:28:04.232] for (restart in restarts) { [17:28:04.232] name <- restart$name [17:28:04.232] if (is.null(name)) [17:28:04.232] next [17:28:04.232] if (!grepl(pattern, name)) [17:28:04.232] next [17:28:04.232] invokeRestart(restart) [17:28:04.232] muffled <- TRUE [17:28:04.232] break [17:28:04.232] } [17:28:04.232] } [17:28:04.232] } [17:28:04.232] invisible(muffled) [17:28:04.232] } [17:28:04.232] muffleCondition(cond) [17:28:04.232] }) [17:28:04.232] })) [17:28:04.232] future::FutureResult(value = ...future.value$value, [17:28:04.232] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.232] ...future.rng), globalenv = if (FALSE) [17:28:04.232] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.232] ...future.globalenv.names)) [17:28:04.232] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.232] }, condition = base::local({ [17:28:04.232] c <- base::c [17:28:04.232] inherits <- base::inherits [17:28:04.232] invokeRestart <- base::invokeRestart [17:28:04.232] length <- base::length [17:28:04.232] list <- base::list [17:28:04.232] seq.int <- base::seq.int [17:28:04.232] signalCondition <- base::signalCondition [17:28:04.232] sys.calls <- base::sys.calls [17:28:04.232] `[[` <- base::`[[` [17:28:04.232] `+` <- base::`+` [17:28:04.232] `<<-` <- base::`<<-` [17:28:04.232] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.232] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.232] 3L)] [17:28:04.232] } [17:28:04.232] function(cond) { [17:28:04.232] is_error <- inherits(cond, "error") [17:28:04.232] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.232] NULL) [17:28:04.232] if (is_error) { [17:28:04.232] sessionInformation <- function() { [17:28:04.232] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.232] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.232] search = base::search(), system = base::Sys.info()) [17:28:04.232] } [17:28:04.232] ...future.conditions[[length(...future.conditions) + [17:28:04.232] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.232] cond$call), session = sessionInformation(), [17:28:04.232] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.232] signalCondition(cond) [17:28:04.232] } [17:28:04.232] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.232] "immediateCondition"))) { [17:28:04.232] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.232] ...future.conditions[[length(...future.conditions) + [17:28:04.232] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.232] if (TRUE && !signal) { [17:28:04.232] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.232] { [17:28:04.232] inherits <- base::inherits [17:28:04.232] invokeRestart <- base::invokeRestart [17:28:04.232] is.null <- base::is.null [17:28:04.232] muffled <- FALSE [17:28:04.232] if (inherits(cond, "message")) { [17:28:04.232] muffled <- grepl(pattern, "muffleMessage") [17:28:04.232] if (muffled) [17:28:04.232] invokeRestart("muffleMessage") [17:28:04.232] } [17:28:04.232] else if (inherits(cond, "warning")) { [17:28:04.232] muffled <- grepl(pattern, "muffleWarning") [17:28:04.232] if (muffled) [17:28:04.232] invokeRestart("muffleWarning") [17:28:04.232] } [17:28:04.232] else if (inherits(cond, "condition")) { [17:28:04.232] if (!is.null(pattern)) { [17:28:04.232] computeRestarts <- base::computeRestarts [17:28:04.232] grepl <- base::grepl [17:28:04.232] restarts <- computeRestarts(cond) [17:28:04.232] for (restart in restarts) { [17:28:04.232] name <- restart$name [17:28:04.232] if (is.null(name)) [17:28:04.232] next [17:28:04.232] if (!grepl(pattern, name)) [17:28:04.232] next [17:28:04.232] invokeRestart(restart) [17:28:04.232] muffled <- TRUE [17:28:04.232] break [17:28:04.232] } [17:28:04.232] } [17:28:04.232] } [17:28:04.232] invisible(muffled) [17:28:04.232] } [17:28:04.232] muffleCondition(cond, pattern = "^muffle") [17:28:04.232] } [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] if (TRUE) { [17:28:04.232] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.232] { [17:28:04.232] inherits <- base::inherits [17:28:04.232] invokeRestart <- base::invokeRestart [17:28:04.232] is.null <- base::is.null [17:28:04.232] muffled <- FALSE [17:28:04.232] if (inherits(cond, "message")) { [17:28:04.232] muffled <- grepl(pattern, "muffleMessage") [17:28:04.232] if (muffled) [17:28:04.232] invokeRestart("muffleMessage") [17:28:04.232] } [17:28:04.232] else if (inherits(cond, "warning")) { [17:28:04.232] muffled <- grepl(pattern, "muffleWarning") [17:28:04.232] if (muffled) [17:28:04.232] invokeRestart("muffleWarning") [17:28:04.232] } [17:28:04.232] else if (inherits(cond, "condition")) { [17:28:04.232] if (!is.null(pattern)) { [17:28:04.232] computeRestarts <- base::computeRestarts [17:28:04.232] grepl <- base::grepl [17:28:04.232] restarts <- computeRestarts(cond) [17:28:04.232] for (restart in restarts) { [17:28:04.232] name <- restart$name [17:28:04.232] if (is.null(name)) [17:28:04.232] next [17:28:04.232] if (!grepl(pattern, name)) [17:28:04.232] next [17:28:04.232] invokeRestart(restart) [17:28:04.232] muffled <- TRUE [17:28:04.232] break [17:28:04.232] } [17:28:04.232] } [17:28:04.232] } [17:28:04.232] invisible(muffled) [17:28:04.232] } [17:28:04.232] muffleCondition(cond, pattern = "^muffle") [17:28:04.232] } [17:28:04.232] } [17:28:04.232] } [17:28:04.232] })) [17:28:04.232] }, error = function(ex) { [17:28:04.232] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.232] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.232] ...future.rng), started = ...future.startTime, [17:28:04.232] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.232] version = "1.8"), class = "FutureResult") [17:28:04.232] }, finally = { [17:28:04.232] if (!identical(...future.workdir, getwd())) [17:28:04.232] setwd(...future.workdir) [17:28:04.232] { [17:28:04.232] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.232] ...future.oldOptions$nwarnings <- NULL [17:28:04.232] } [17:28:04.232] base::options(...future.oldOptions) [17:28:04.232] if (.Platform$OS.type == "windows") { [17:28:04.232] old_names <- names(...future.oldEnvVars) [17:28:04.232] envs <- base::Sys.getenv() [17:28:04.232] names <- names(envs) [17:28:04.232] common <- intersect(names, old_names) [17:28:04.232] added <- setdiff(names, old_names) [17:28:04.232] removed <- setdiff(old_names, names) [17:28:04.232] changed <- common[...future.oldEnvVars[common] != [17:28:04.232] envs[common]] [17:28:04.232] NAMES <- toupper(changed) [17:28:04.232] args <- list() [17:28:04.232] for (kk in seq_along(NAMES)) { [17:28:04.232] name <- changed[[kk]] [17:28:04.232] NAME <- NAMES[[kk]] [17:28:04.232] if (name != NAME && is.element(NAME, old_names)) [17:28:04.232] next [17:28:04.232] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.232] } [17:28:04.232] NAMES <- toupper(added) [17:28:04.232] for (kk in seq_along(NAMES)) { [17:28:04.232] name <- added[[kk]] [17:28:04.232] NAME <- NAMES[[kk]] [17:28:04.232] if (name != NAME && is.element(NAME, old_names)) [17:28:04.232] next [17:28:04.232] args[[name]] <- "" [17:28:04.232] } [17:28:04.232] NAMES <- toupper(removed) [17:28:04.232] for (kk in seq_along(NAMES)) { [17:28:04.232] name <- removed[[kk]] [17:28:04.232] NAME <- NAMES[[kk]] [17:28:04.232] if (name != NAME && is.element(NAME, old_names)) [17:28:04.232] next [17:28:04.232] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.232] } [17:28:04.232] if (length(args) > 0) [17:28:04.232] base::do.call(base::Sys.setenv, args = args) [17:28:04.232] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.232] } [17:28:04.232] { [17:28:04.232] if (base::length(...future.futureOptionsAdded) > [17:28:04.232] 0L) { [17:28:04.232] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.232] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.232] base::options(opts) [17:28:04.232] } [17:28:04.232] { [17:28:04.232] { [17:28:04.232] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.232] NULL [17:28:04.232] } [17:28:04.232] options(future.plan = NULL) [17:28:04.232] if (is.na(NA_character_)) [17:28:04.232] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.232] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.232] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.232] .init = FALSE) [17:28:04.232] } [17:28:04.232] } [17:28:04.232] } [17:28:04.232] }) [17:28:04.232] if (TRUE) { [17:28:04.232] base::sink(type = "output", split = FALSE) [17:28:04.232] if (TRUE) { [17:28:04.232] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.232] } [17:28:04.232] else { [17:28:04.232] ...future.result["stdout"] <- base::list(NULL) [17:28:04.232] } [17:28:04.232] base::close(...future.stdout) [17:28:04.232] ...future.stdout <- NULL [17:28:04.232] } [17:28:04.232] ...future.result$conditions <- ...future.conditions [17:28:04.232] ...future.result$finished <- base::Sys.time() [17:28:04.232] ...future.result [17:28:04.232] } [17:28:04.238] MultisessionFuture started [17:28:04.238] - Launch lazy future ... done [17:28:04.238] run() for 'MultisessionFuture' ... done [17:28:04.239] getGlobalsAndPackages() ... [17:28:04.239] Searching for globals... [17:28:04.239] - globals found: [1] '{' [17:28:04.240] Searching for globals ... DONE [17:28:04.240] Resolving globals: FALSE [17:28:04.240] [17:28:04.240] [17:28:04.240] getGlobalsAndPackages() ... DONE [17:28:04.241] run() for 'Future' ... [17:28:04.241] - state: 'created' [17:28:04.241] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.255] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.255] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.255] - Field: 'node' [17:28:04.256] - Field: 'label' [17:28:04.256] - Field: 'local' [17:28:04.256] - Field: 'owner' [17:28:04.256] - Field: 'envir' [17:28:04.256] - Field: 'workers' [17:28:04.256] - Field: 'packages' [17:28:04.257] - Field: 'gc' [17:28:04.257] - Field: 'conditions' [17:28:04.257] - Field: 'persistent' [17:28:04.257] - Field: 'expr' [17:28:04.257] - Field: 'uuid' [17:28:04.257] - Field: 'seed' [17:28:04.258] - Field: 'version' [17:28:04.258] - Field: 'result' [17:28:04.258] - Field: 'asynchronous' [17:28:04.258] - Field: 'calls' [17:28:04.258] - Field: 'globals' [17:28:04.259] - Field: 'stdout' [17:28:04.259] - Field: 'earlySignal' [17:28:04.259] - Field: 'lazy' [17:28:04.259] - Field: 'state' [17:28:04.259] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.259] - Launch lazy future ... [17:28:04.260] Packages needed by the future expression (n = 0): [17:28:04.260] Packages needed by future strategies (n = 0): [17:28:04.260] { [17:28:04.260] { [17:28:04.260] { [17:28:04.260] ...future.startTime <- base::Sys.time() [17:28:04.260] { [17:28:04.260] { [17:28:04.260] { [17:28:04.260] { [17:28:04.260] base::local({ [17:28:04.260] has_future <- base::requireNamespace("future", [17:28:04.260] quietly = TRUE) [17:28:04.260] if (has_future) { [17:28:04.260] ns <- base::getNamespace("future") [17:28:04.260] version <- ns[[".package"]][["version"]] [17:28:04.260] if (is.null(version)) [17:28:04.260] version <- utils::packageVersion("future") [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] version <- NULL [17:28:04.260] } [17:28:04.260] if (!has_future || version < "1.8.0") { [17:28:04.260] info <- base::c(r_version = base::gsub("R version ", [17:28:04.260] "", base::R.version$version.string), [17:28:04.260] platform = base::sprintf("%s (%s-bit)", [17:28:04.260] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.260] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.260] "release", "version")], collapse = " "), [17:28:04.260] hostname = base::Sys.info()[["nodename"]]) [17:28:04.260] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.260] info) [17:28:04.260] info <- base::paste(info, collapse = "; ") [17:28:04.260] if (!has_future) { [17:28:04.260] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.260] info) [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.260] info, version) [17:28:04.260] } [17:28:04.260] base::stop(msg) [17:28:04.260] } [17:28:04.260] }) [17:28:04.260] } [17:28:04.260] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.260] base::options(mc.cores = 1L) [17:28:04.260] } [17:28:04.260] ...future.strategy.old <- future::plan("list") [17:28:04.260] options(future.plan = NULL) [17:28:04.260] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.260] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.260] } [17:28:04.260] ...future.workdir <- getwd() [17:28:04.260] } [17:28:04.260] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.260] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.260] } [17:28:04.260] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.260] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.260] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.260] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.260] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.260] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.260] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.260] base::names(...future.oldOptions)) [17:28:04.260] } [17:28:04.260] if (FALSE) { [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] if (TRUE) { [17:28:04.260] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.260] open = "w") [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.260] windows = "NUL", "/dev/null"), open = "w") [17:28:04.260] } [17:28:04.260] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.260] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.260] base::sink(type = "output", split = FALSE) [17:28:04.260] base::close(...future.stdout) [17:28:04.260] }, add = TRUE) [17:28:04.260] } [17:28:04.260] ...future.frame <- base::sys.nframe() [17:28:04.260] ...future.conditions <- base::list() [17:28:04.260] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.260] if (FALSE) { [17:28:04.260] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.260] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.260] } [17:28:04.260] ...future.result <- base::tryCatch({ [17:28:04.260] base::withCallingHandlers({ [17:28:04.260] ...future.value <- base::withVisible(base::local({ [17:28:04.260] ...future.makeSendCondition <- base::local({ [17:28:04.260] sendCondition <- NULL [17:28:04.260] function(frame = 1L) { [17:28:04.260] if (is.function(sendCondition)) [17:28:04.260] return(sendCondition) [17:28:04.260] ns <- getNamespace("parallel") [17:28:04.260] if (exists("sendData", mode = "function", [17:28:04.260] envir = ns)) { [17:28:04.260] parallel_sendData <- get("sendData", mode = "function", [17:28:04.260] envir = ns) [17:28:04.260] envir <- sys.frame(frame) [17:28:04.260] master <- NULL [17:28:04.260] while (!identical(envir, .GlobalEnv) && [17:28:04.260] !identical(envir, emptyenv())) { [17:28:04.260] if (exists("master", mode = "list", envir = envir, [17:28:04.260] inherits = FALSE)) { [17:28:04.260] master <- get("master", mode = "list", [17:28:04.260] envir = envir, inherits = FALSE) [17:28:04.260] if (inherits(master, c("SOCKnode", [17:28:04.260] "SOCK0node"))) { [17:28:04.260] sendCondition <<- function(cond) { [17:28:04.260] data <- list(type = "VALUE", value = cond, [17:28:04.260] success = TRUE) [17:28:04.260] parallel_sendData(master, data) [17:28:04.260] } [17:28:04.260] return(sendCondition) [17:28:04.260] } [17:28:04.260] } [17:28:04.260] frame <- frame + 1L [17:28:04.260] envir <- sys.frame(frame) [17:28:04.260] } [17:28:04.260] } [17:28:04.260] sendCondition <<- function(cond) NULL [17:28:04.260] } [17:28:04.260] }) [17:28:04.260] withCallingHandlers({ [17:28:04.260] { [17:28:04.260] 2 [17:28:04.260] } [17:28:04.260] }, immediateCondition = function(cond) { [17:28:04.260] sendCondition <- ...future.makeSendCondition() [17:28:04.260] sendCondition(cond) [17:28:04.260] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.260] { [17:28:04.260] inherits <- base::inherits [17:28:04.260] invokeRestart <- base::invokeRestart [17:28:04.260] is.null <- base::is.null [17:28:04.260] muffled <- FALSE [17:28:04.260] if (inherits(cond, "message")) { [17:28:04.260] muffled <- grepl(pattern, "muffleMessage") [17:28:04.260] if (muffled) [17:28:04.260] invokeRestart("muffleMessage") [17:28:04.260] } [17:28:04.260] else if (inherits(cond, "warning")) { [17:28:04.260] muffled <- grepl(pattern, "muffleWarning") [17:28:04.260] if (muffled) [17:28:04.260] invokeRestart("muffleWarning") [17:28:04.260] } [17:28:04.260] else if (inherits(cond, "condition")) { [17:28:04.260] if (!is.null(pattern)) { [17:28:04.260] computeRestarts <- base::computeRestarts [17:28:04.260] grepl <- base::grepl [17:28:04.260] restarts <- computeRestarts(cond) [17:28:04.260] for (restart in restarts) { [17:28:04.260] name <- restart$name [17:28:04.260] if (is.null(name)) [17:28:04.260] next [17:28:04.260] if (!grepl(pattern, name)) [17:28:04.260] next [17:28:04.260] invokeRestart(restart) [17:28:04.260] muffled <- TRUE [17:28:04.260] break [17:28:04.260] } [17:28:04.260] } [17:28:04.260] } [17:28:04.260] invisible(muffled) [17:28:04.260] } [17:28:04.260] muffleCondition(cond) [17:28:04.260] }) [17:28:04.260] })) [17:28:04.260] future::FutureResult(value = ...future.value$value, [17:28:04.260] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.260] ...future.rng), globalenv = if (FALSE) [17:28:04.260] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.260] ...future.globalenv.names)) [17:28:04.260] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.260] }, condition = base::local({ [17:28:04.260] c <- base::c [17:28:04.260] inherits <- base::inherits [17:28:04.260] invokeRestart <- base::invokeRestart [17:28:04.260] length <- base::length [17:28:04.260] list <- base::list [17:28:04.260] seq.int <- base::seq.int [17:28:04.260] signalCondition <- base::signalCondition [17:28:04.260] sys.calls <- base::sys.calls [17:28:04.260] `[[` <- base::`[[` [17:28:04.260] `+` <- base::`+` [17:28:04.260] `<<-` <- base::`<<-` [17:28:04.260] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.260] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.260] 3L)] [17:28:04.260] } [17:28:04.260] function(cond) { [17:28:04.260] is_error <- inherits(cond, "error") [17:28:04.260] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.260] NULL) [17:28:04.260] if (is_error) { [17:28:04.260] sessionInformation <- function() { [17:28:04.260] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.260] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.260] search = base::search(), system = base::Sys.info()) [17:28:04.260] } [17:28:04.260] ...future.conditions[[length(...future.conditions) + [17:28:04.260] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.260] cond$call), session = sessionInformation(), [17:28:04.260] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.260] signalCondition(cond) [17:28:04.260] } [17:28:04.260] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.260] "immediateCondition"))) { [17:28:04.260] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.260] ...future.conditions[[length(...future.conditions) + [17:28:04.260] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.260] if (TRUE && !signal) { [17:28:04.260] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.260] { [17:28:04.260] inherits <- base::inherits [17:28:04.260] invokeRestart <- base::invokeRestart [17:28:04.260] is.null <- base::is.null [17:28:04.260] muffled <- FALSE [17:28:04.260] if (inherits(cond, "message")) { [17:28:04.260] muffled <- grepl(pattern, "muffleMessage") [17:28:04.260] if (muffled) [17:28:04.260] invokeRestart("muffleMessage") [17:28:04.260] } [17:28:04.260] else if (inherits(cond, "warning")) { [17:28:04.260] muffled <- grepl(pattern, "muffleWarning") [17:28:04.260] if (muffled) [17:28:04.260] invokeRestart("muffleWarning") [17:28:04.260] } [17:28:04.260] else if (inherits(cond, "condition")) { [17:28:04.260] if (!is.null(pattern)) { [17:28:04.260] computeRestarts <- base::computeRestarts [17:28:04.260] grepl <- base::grepl [17:28:04.260] restarts <- computeRestarts(cond) [17:28:04.260] for (restart in restarts) { [17:28:04.260] name <- restart$name [17:28:04.260] if (is.null(name)) [17:28:04.260] next [17:28:04.260] if (!grepl(pattern, name)) [17:28:04.260] next [17:28:04.260] invokeRestart(restart) [17:28:04.260] muffled <- TRUE [17:28:04.260] break [17:28:04.260] } [17:28:04.260] } [17:28:04.260] } [17:28:04.260] invisible(muffled) [17:28:04.260] } [17:28:04.260] muffleCondition(cond, pattern = "^muffle") [17:28:04.260] } [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] if (TRUE) { [17:28:04.260] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.260] { [17:28:04.260] inherits <- base::inherits [17:28:04.260] invokeRestart <- base::invokeRestart [17:28:04.260] is.null <- base::is.null [17:28:04.260] muffled <- FALSE [17:28:04.260] if (inherits(cond, "message")) { [17:28:04.260] muffled <- grepl(pattern, "muffleMessage") [17:28:04.260] if (muffled) [17:28:04.260] invokeRestart("muffleMessage") [17:28:04.260] } [17:28:04.260] else if (inherits(cond, "warning")) { [17:28:04.260] muffled <- grepl(pattern, "muffleWarning") [17:28:04.260] if (muffled) [17:28:04.260] invokeRestart("muffleWarning") [17:28:04.260] } [17:28:04.260] else if (inherits(cond, "condition")) { [17:28:04.260] if (!is.null(pattern)) { [17:28:04.260] computeRestarts <- base::computeRestarts [17:28:04.260] grepl <- base::grepl [17:28:04.260] restarts <- computeRestarts(cond) [17:28:04.260] for (restart in restarts) { [17:28:04.260] name <- restart$name [17:28:04.260] if (is.null(name)) [17:28:04.260] next [17:28:04.260] if (!grepl(pattern, name)) [17:28:04.260] next [17:28:04.260] invokeRestart(restart) [17:28:04.260] muffled <- TRUE [17:28:04.260] break [17:28:04.260] } [17:28:04.260] } [17:28:04.260] } [17:28:04.260] invisible(muffled) [17:28:04.260] } [17:28:04.260] muffleCondition(cond, pattern = "^muffle") [17:28:04.260] } [17:28:04.260] } [17:28:04.260] } [17:28:04.260] })) [17:28:04.260] }, error = function(ex) { [17:28:04.260] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.260] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.260] ...future.rng), started = ...future.startTime, [17:28:04.260] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.260] version = "1.8"), class = "FutureResult") [17:28:04.260] }, finally = { [17:28:04.260] if (!identical(...future.workdir, getwd())) [17:28:04.260] setwd(...future.workdir) [17:28:04.260] { [17:28:04.260] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.260] ...future.oldOptions$nwarnings <- NULL [17:28:04.260] } [17:28:04.260] base::options(...future.oldOptions) [17:28:04.260] if (.Platform$OS.type == "windows") { [17:28:04.260] old_names <- names(...future.oldEnvVars) [17:28:04.260] envs <- base::Sys.getenv() [17:28:04.260] names <- names(envs) [17:28:04.260] common <- intersect(names, old_names) [17:28:04.260] added <- setdiff(names, old_names) [17:28:04.260] removed <- setdiff(old_names, names) [17:28:04.260] changed <- common[...future.oldEnvVars[common] != [17:28:04.260] envs[common]] [17:28:04.260] NAMES <- toupper(changed) [17:28:04.260] args <- list() [17:28:04.260] for (kk in seq_along(NAMES)) { [17:28:04.260] name <- changed[[kk]] [17:28:04.260] NAME <- NAMES[[kk]] [17:28:04.260] if (name != NAME && is.element(NAME, old_names)) [17:28:04.260] next [17:28:04.260] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.260] } [17:28:04.260] NAMES <- toupper(added) [17:28:04.260] for (kk in seq_along(NAMES)) { [17:28:04.260] name <- added[[kk]] [17:28:04.260] NAME <- NAMES[[kk]] [17:28:04.260] if (name != NAME && is.element(NAME, old_names)) [17:28:04.260] next [17:28:04.260] args[[name]] <- "" [17:28:04.260] } [17:28:04.260] NAMES <- toupper(removed) [17:28:04.260] for (kk in seq_along(NAMES)) { [17:28:04.260] name <- removed[[kk]] [17:28:04.260] NAME <- NAMES[[kk]] [17:28:04.260] if (name != NAME && is.element(NAME, old_names)) [17:28:04.260] next [17:28:04.260] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.260] } [17:28:04.260] if (length(args) > 0) [17:28:04.260] base::do.call(base::Sys.setenv, args = args) [17:28:04.260] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.260] } [17:28:04.260] { [17:28:04.260] if (base::length(...future.futureOptionsAdded) > [17:28:04.260] 0L) { [17:28:04.260] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.260] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.260] base::options(opts) [17:28:04.260] } [17:28:04.260] { [17:28:04.260] { [17:28:04.260] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.260] NULL [17:28:04.260] } [17:28:04.260] options(future.plan = NULL) [17:28:04.260] if (is.na(NA_character_)) [17:28:04.260] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.260] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.260] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.260] .init = FALSE) [17:28:04.260] } [17:28:04.260] } [17:28:04.260] } [17:28:04.260] }) [17:28:04.260] if (TRUE) { [17:28:04.260] base::sink(type = "output", split = FALSE) [17:28:04.260] if (TRUE) { [17:28:04.260] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.260] } [17:28:04.260] else { [17:28:04.260] ...future.result["stdout"] <- base::list(NULL) [17:28:04.260] } [17:28:04.260] base::close(...future.stdout) [17:28:04.260] ...future.stdout <- NULL [17:28:04.260] } [17:28:04.260] ...future.result$conditions <- ...future.conditions [17:28:04.260] ...future.result$finished <- base::Sys.time() [17:28:04.260] ...future.result [17:28:04.260] } [17:28:04.266] MultisessionFuture started [17:28:04.266] - Launch lazy future ... done [17:28:04.266] run() for 'MultisessionFuture' ... done [17:28:04.267] resolve() on environment ... [17:28:04.267] recursive: 0 [17:28:04.268] elements: [3] 'a' [17:28:04.268] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.268] - Validating connection of MultisessionFuture [17:28:04.269] - received message: FutureResult [17:28:04.269] - Received FutureResult [17:28:04.269] - Erased future from FutureRegistry [17:28:04.269] result() for ClusterFuture ... [17:28:04.269] - result already collected: FutureResult [17:28:04.270] result() for ClusterFuture ... done [17:28:04.270] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.270] Future #1 [17:28:04.270] length: 2 (resolved future 1) [17:28:04.280] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.281] - Validating connection of MultisessionFuture [17:28:04.281] - received message: FutureResult [17:28:04.281] - Received FutureResult [17:28:04.281] - Erased future from FutureRegistry [17:28:04.281] result() for ClusterFuture ... [17:28:04.282] - result already collected: FutureResult [17:28:04.282] result() for ClusterFuture ... done [17:28:04.282] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.282] Future #2 [17:28:04.282] length: 1 (resolved future 2) [17:28:04.282] length: 0 (resolved future 3) [17:28:04.283] resolve() on environment ... DONE [17:28:04.283] resolve() on environment ... [17:28:04.283] recursive: 0 [17:28:04.284] elements: [3] 'b' [17:28:04.284] Future #1 [17:28:04.284] length: 2 (resolved future 1) [17:28:04.284] Future #2 [17:28:04.285] length: 1 (resolved future 2) [17:28:04.285] length: 0 (resolved future 3) [17:28:04.285] resolve() on environment ... DONE [17:28:04.286] resolve() on environment ... [17:28:04.286] recursive: 0 [17:28:04.286] elements: [3] 'c' [17:28:04.287] Future #1 [17:28:04.287] length: 2 (resolved future 1) [17:28:04.287] Future #2 [17:28:04.287] length: 1 (resolved future 2) [17:28:04.287] length: 0 (resolved future 3) [17:28:04.287] resolve() on environment ... DONE [17:28:04.288] resolve() on environment ... [17:28:04.288] recursive: 0 [17:28:04.289] elements: [3] 'a', 'b', 'c', '.future_b' [17:28:04.289] Future #1 [17:28:04.289] result() for ClusterFuture ... [17:28:04.289] - result already collected: FutureResult [17:28:04.289] result() for ClusterFuture ... done [17:28:04.290] result() for ClusterFuture ... [17:28:04.290] - result already collected: FutureResult [17:28:04.290] result() for ClusterFuture ... done [17:28:04.290] length: 2 (resolved future 1) [17:28:04.290] Future #2 [17:28:04.291] result() for ClusterFuture ... [17:28:04.291] - result already collected: FutureResult [17:28:04.291] result() for ClusterFuture ... done [17:28:04.291] result() for ClusterFuture ... [17:28:04.291] - result already collected: FutureResult [17:28:04.291] result() for ClusterFuture ... done [17:28:04.291] length: 1 (resolved future 2) [17:28:04.292] length: 0 (resolved future 3) [17:28:04.292] resolve() on environment ... DONE [17:28:04.292] resolve() on environment ... [17:28:04.293] recursive: 99 [17:28:04.293] elements: [3] '.future_b', 'a', 'b', 'c' [17:28:04.293] Future #1 [17:28:04.294] result() for ClusterFuture ... [17:28:04.294] - result already collected: FutureResult [17:28:04.294] result() for ClusterFuture ... done [17:28:04.294] result() for ClusterFuture ... [17:28:04.294] - result already collected: FutureResult [17:28:04.294] result() for ClusterFuture ... done [17:28:04.295] A MultisessionFuture was resolved [17:28:04.295] length: 2 (resolved future 1) [17:28:04.295] Future #2 [17:28:04.295] result() for ClusterFuture ... [17:28:04.295] - result already collected: FutureResult [17:28:04.295] result() for ClusterFuture ... done [17:28:04.296] result() for ClusterFuture ... [17:28:04.296] - result already collected: FutureResult [17:28:04.296] result() for ClusterFuture ... done [17:28:04.296] A MultisessionFuture was resolved [17:28:04.296] length: 1 (resolved future 2) [17:28:04.296] length: 0 (resolved future 3) [17:28:04.297] resolve() on environment ... DONE *** resolve() for environments ... DONE *** resolve() for list environments ... [17:28:04.298] resolve() on list environment ... [17:28:04.298] recursive: 0 [17:28:04.298] length: 2 [17:28:04.298] elements: 'a', 'b' [17:28:04.299] length: 1 (resolved future 1) [17:28:04.299] length: 0 (resolved future 2) [17:28:04.299] resolve() on list environment ... DONE [17:28:04.299] getGlobalsAndPackages() ... [17:28:04.299] Searching for globals... [17:28:04.300] [17:28:04.300] Searching for globals ... DONE [17:28:04.300] - globals: [0] [17:28:04.300] getGlobalsAndPackages() ... DONE [17:28:04.301] run() for 'Future' ... [17:28:04.301] - state: 'created' [17:28:04.301] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.314] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.315] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.315] - Field: 'node' [17:28:04.315] - Field: 'label' [17:28:04.315] - Field: 'local' [17:28:04.315] - Field: 'owner' [17:28:04.316] - Field: 'envir' [17:28:04.316] - Field: 'workers' [17:28:04.316] - Field: 'packages' [17:28:04.316] - Field: 'gc' [17:28:04.316] - Field: 'conditions' [17:28:04.317] - Field: 'persistent' [17:28:04.317] - Field: 'expr' [17:28:04.317] - Field: 'uuid' [17:28:04.317] - Field: 'seed' [17:28:04.317] - Field: 'version' [17:28:04.317] - Field: 'result' [17:28:04.318] - Field: 'asynchronous' [17:28:04.318] - Field: 'calls' [17:28:04.318] - Field: 'globals' [17:28:04.318] - Field: 'stdout' [17:28:04.318] - Field: 'earlySignal' [17:28:04.319] - Field: 'lazy' [17:28:04.319] - Field: 'state' [17:28:04.319] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.319] - Launch lazy future ... [17:28:04.319] Packages needed by the future expression (n = 0): [17:28:04.320] Packages needed by future strategies (n = 0): [17:28:04.320] { [17:28:04.320] { [17:28:04.320] { [17:28:04.320] ...future.startTime <- base::Sys.time() [17:28:04.320] { [17:28:04.320] { [17:28:04.320] { [17:28:04.320] { [17:28:04.320] base::local({ [17:28:04.320] has_future <- base::requireNamespace("future", [17:28:04.320] quietly = TRUE) [17:28:04.320] if (has_future) { [17:28:04.320] ns <- base::getNamespace("future") [17:28:04.320] version <- ns[[".package"]][["version"]] [17:28:04.320] if (is.null(version)) [17:28:04.320] version <- utils::packageVersion("future") [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] version <- NULL [17:28:04.320] } [17:28:04.320] if (!has_future || version < "1.8.0") { [17:28:04.320] info <- base::c(r_version = base::gsub("R version ", [17:28:04.320] "", base::R.version$version.string), [17:28:04.320] platform = base::sprintf("%s (%s-bit)", [17:28:04.320] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.320] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.320] "release", "version")], collapse = " "), [17:28:04.320] hostname = base::Sys.info()[["nodename"]]) [17:28:04.320] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.320] info) [17:28:04.320] info <- base::paste(info, collapse = "; ") [17:28:04.320] if (!has_future) { [17:28:04.320] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.320] info) [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.320] info, version) [17:28:04.320] } [17:28:04.320] base::stop(msg) [17:28:04.320] } [17:28:04.320] }) [17:28:04.320] } [17:28:04.320] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.320] base::options(mc.cores = 1L) [17:28:04.320] } [17:28:04.320] ...future.strategy.old <- future::plan("list") [17:28:04.320] options(future.plan = NULL) [17:28:04.320] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.320] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.320] } [17:28:04.320] ...future.workdir <- getwd() [17:28:04.320] } [17:28:04.320] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.320] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.320] } [17:28:04.320] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.320] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.320] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.320] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.320] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.320] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.320] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.320] base::names(...future.oldOptions)) [17:28:04.320] } [17:28:04.320] if (FALSE) { [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] if (TRUE) { [17:28:04.320] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.320] open = "w") [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.320] windows = "NUL", "/dev/null"), open = "w") [17:28:04.320] } [17:28:04.320] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.320] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.320] base::sink(type = "output", split = FALSE) [17:28:04.320] base::close(...future.stdout) [17:28:04.320] }, add = TRUE) [17:28:04.320] } [17:28:04.320] ...future.frame <- base::sys.nframe() [17:28:04.320] ...future.conditions <- base::list() [17:28:04.320] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.320] if (FALSE) { [17:28:04.320] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.320] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.320] } [17:28:04.320] ...future.result <- base::tryCatch({ [17:28:04.320] base::withCallingHandlers({ [17:28:04.320] ...future.value <- base::withVisible(base::local({ [17:28:04.320] ...future.makeSendCondition <- base::local({ [17:28:04.320] sendCondition <- NULL [17:28:04.320] function(frame = 1L) { [17:28:04.320] if (is.function(sendCondition)) [17:28:04.320] return(sendCondition) [17:28:04.320] ns <- getNamespace("parallel") [17:28:04.320] if (exists("sendData", mode = "function", [17:28:04.320] envir = ns)) { [17:28:04.320] parallel_sendData <- get("sendData", mode = "function", [17:28:04.320] envir = ns) [17:28:04.320] envir <- sys.frame(frame) [17:28:04.320] master <- NULL [17:28:04.320] while (!identical(envir, .GlobalEnv) && [17:28:04.320] !identical(envir, emptyenv())) { [17:28:04.320] if (exists("master", mode = "list", envir = envir, [17:28:04.320] inherits = FALSE)) { [17:28:04.320] master <- get("master", mode = "list", [17:28:04.320] envir = envir, inherits = FALSE) [17:28:04.320] if (inherits(master, c("SOCKnode", [17:28:04.320] "SOCK0node"))) { [17:28:04.320] sendCondition <<- function(cond) { [17:28:04.320] data <- list(type = "VALUE", value = cond, [17:28:04.320] success = TRUE) [17:28:04.320] parallel_sendData(master, data) [17:28:04.320] } [17:28:04.320] return(sendCondition) [17:28:04.320] } [17:28:04.320] } [17:28:04.320] frame <- frame + 1L [17:28:04.320] envir <- sys.frame(frame) [17:28:04.320] } [17:28:04.320] } [17:28:04.320] sendCondition <<- function(cond) NULL [17:28:04.320] } [17:28:04.320] }) [17:28:04.320] withCallingHandlers({ [17:28:04.320] 1 [17:28:04.320] }, immediateCondition = function(cond) { [17:28:04.320] sendCondition <- ...future.makeSendCondition() [17:28:04.320] sendCondition(cond) [17:28:04.320] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.320] { [17:28:04.320] inherits <- base::inherits [17:28:04.320] invokeRestart <- base::invokeRestart [17:28:04.320] is.null <- base::is.null [17:28:04.320] muffled <- FALSE [17:28:04.320] if (inherits(cond, "message")) { [17:28:04.320] muffled <- grepl(pattern, "muffleMessage") [17:28:04.320] if (muffled) [17:28:04.320] invokeRestart("muffleMessage") [17:28:04.320] } [17:28:04.320] else if (inherits(cond, "warning")) { [17:28:04.320] muffled <- grepl(pattern, "muffleWarning") [17:28:04.320] if (muffled) [17:28:04.320] invokeRestart("muffleWarning") [17:28:04.320] } [17:28:04.320] else if (inherits(cond, "condition")) { [17:28:04.320] if (!is.null(pattern)) { [17:28:04.320] computeRestarts <- base::computeRestarts [17:28:04.320] grepl <- base::grepl [17:28:04.320] restarts <- computeRestarts(cond) [17:28:04.320] for (restart in restarts) { [17:28:04.320] name <- restart$name [17:28:04.320] if (is.null(name)) [17:28:04.320] next [17:28:04.320] if (!grepl(pattern, name)) [17:28:04.320] next [17:28:04.320] invokeRestart(restart) [17:28:04.320] muffled <- TRUE [17:28:04.320] break [17:28:04.320] } [17:28:04.320] } [17:28:04.320] } [17:28:04.320] invisible(muffled) [17:28:04.320] } [17:28:04.320] muffleCondition(cond) [17:28:04.320] }) [17:28:04.320] })) [17:28:04.320] future::FutureResult(value = ...future.value$value, [17:28:04.320] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.320] ...future.rng), globalenv = if (FALSE) [17:28:04.320] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.320] ...future.globalenv.names)) [17:28:04.320] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.320] }, condition = base::local({ [17:28:04.320] c <- base::c [17:28:04.320] inherits <- base::inherits [17:28:04.320] invokeRestart <- base::invokeRestart [17:28:04.320] length <- base::length [17:28:04.320] list <- base::list [17:28:04.320] seq.int <- base::seq.int [17:28:04.320] signalCondition <- base::signalCondition [17:28:04.320] sys.calls <- base::sys.calls [17:28:04.320] `[[` <- base::`[[` [17:28:04.320] `+` <- base::`+` [17:28:04.320] `<<-` <- base::`<<-` [17:28:04.320] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.320] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.320] 3L)] [17:28:04.320] } [17:28:04.320] function(cond) { [17:28:04.320] is_error <- inherits(cond, "error") [17:28:04.320] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.320] NULL) [17:28:04.320] if (is_error) { [17:28:04.320] sessionInformation <- function() { [17:28:04.320] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.320] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.320] search = base::search(), system = base::Sys.info()) [17:28:04.320] } [17:28:04.320] ...future.conditions[[length(...future.conditions) + [17:28:04.320] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.320] cond$call), session = sessionInformation(), [17:28:04.320] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.320] signalCondition(cond) [17:28:04.320] } [17:28:04.320] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.320] "immediateCondition"))) { [17:28:04.320] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.320] ...future.conditions[[length(...future.conditions) + [17:28:04.320] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.320] if (TRUE && !signal) { [17:28:04.320] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.320] { [17:28:04.320] inherits <- base::inherits [17:28:04.320] invokeRestart <- base::invokeRestart [17:28:04.320] is.null <- base::is.null [17:28:04.320] muffled <- FALSE [17:28:04.320] if (inherits(cond, "message")) { [17:28:04.320] muffled <- grepl(pattern, "muffleMessage") [17:28:04.320] if (muffled) [17:28:04.320] invokeRestart("muffleMessage") [17:28:04.320] } [17:28:04.320] else if (inherits(cond, "warning")) { [17:28:04.320] muffled <- grepl(pattern, "muffleWarning") [17:28:04.320] if (muffled) [17:28:04.320] invokeRestart("muffleWarning") [17:28:04.320] } [17:28:04.320] else if (inherits(cond, "condition")) { [17:28:04.320] if (!is.null(pattern)) { [17:28:04.320] computeRestarts <- base::computeRestarts [17:28:04.320] grepl <- base::grepl [17:28:04.320] restarts <- computeRestarts(cond) [17:28:04.320] for (restart in restarts) { [17:28:04.320] name <- restart$name [17:28:04.320] if (is.null(name)) [17:28:04.320] next [17:28:04.320] if (!grepl(pattern, name)) [17:28:04.320] next [17:28:04.320] invokeRestart(restart) [17:28:04.320] muffled <- TRUE [17:28:04.320] break [17:28:04.320] } [17:28:04.320] } [17:28:04.320] } [17:28:04.320] invisible(muffled) [17:28:04.320] } [17:28:04.320] muffleCondition(cond, pattern = "^muffle") [17:28:04.320] } [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] if (TRUE) { [17:28:04.320] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.320] { [17:28:04.320] inherits <- base::inherits [17:28:04.320] invokeRestart <- base::invokeRestart [17:28:04.320] is.null <- base::is.null [17:28:04.320] muffled <- FALSE [17:28:04.320] if (inherits(cond, "message")) { [17:28:04.320] muffled <- grepl(pattern, "muffleMessage") [17:28:04.320] if (muffled) [17:28:04.320] invokeRestart("muffleMessage") [17:28:04.320] } [17:28:04.320] else if (inherits(cond, "warning")) { [17:28:04.320] muffled <- grepl(pattern, "muffleWarning") [17:28:04.320] if (muffled) [17:28:04.320] invokeRestart("muffleWarning") [17:28:04.320] } [17:28:04.320] else if (inherits(cond, "condition")) { [17:28:04.320] if (!is.null(pattern)) { [17:28:04.320] computeRestarts <- base::computeRestarts [17:28:04.320] grepl <- base::grepl [17:28:04.320] restarts <- computeRestarts(cond) [17:28:04.320] for (restart in restarts) { [17:28:04.320] name <- restart$name [17:28:04.320] if (is.null(name)) [17:28:04.320] next [17:28:04.320] if (!grepl(pattern, name)) [17:28:04.320] next [17:28:04.320] invokeRestart(restart) [17:28:04.320] muffled <- TRUE [17:28:04.320] break [17:28:04.320] } [17:28:04.320] } [17:28:04.320] } [17:28:04.320] invisible(muffled) [17:28:04.320] } [17:28:04.320] muffleCondition(cond, pattern = "^muffle") [17:28:04.320] } [17:28:04.320] } [17:28:04.320] } [17:28:04.320] })) [17:28:04.320] }, error = function(ex) { [17:28:04.320] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.320] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.320] ...future.rng), started = ...future.startTime, [17:28:04.320] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.320] version = "1.8"), class = "FutureResult") [17:28:04.320] }, finally = { [17:28:04.320] if (!identical(...future.workdir, getwd())) [17:28:04.320] setwd(...future.workdir) [17:28:04.320] { [17:28:04.320] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.320] ...future.oldOptions$nwarnings <- NULL [17:28:04.320] } [17:28:04.320] base::options(...future.oldOptions) [17:28:04.320] if (.Platform$OS.type == "windows") { [17:28:04.320] old_names <- names(...future.oldEnvVars) [17:28:04.320] envs <- base::Sys.getenv() [17:28:04.320] names <- names(envs) [17:28:04.320] common <- intersect(names, old_names) [17:28:04.320] added <- setdiff(names, old_names) [17:28:04.320] removed <- setdiff(old_names, names) [17:28:04.320] changed <- common[...future.oldEnvVars[common] != [17:28:04.320] envs[common]] [17:28:04.320] NAMES <- toupper(changed) [17:28:04.320] args <- list() [17:28:04.320] for (kk in seq_along(NAMES)) { [17:28:04.320] name <- changed[[kk]] [17:28:04.320] NAME <- NAMES[[kk]] [17:28:04.320] if (name != NAME && is.element(NAME, old_names)) [17:28:04.320] next [17:28:04.320] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.320] } [17:28:04.320] NAMES <- toupper(added) [17:28:04.320] for (kk in seq_along(NAMES)) { [17:28:04.320] name <- added[[kk]] [17:28:04.320] NAME <- NAMES[[kk]] [17:28:04.320] if (name != NAME && is.element(NAME, old_names)) [17:28:04.320] next [17:28:04.320] args[[name]] <- "" [17:28:04.320] } [17:28:04.320] NAMES <- toupper(removed) [17:28:04.320] for (kk in seq_along(NAMES)) { [17:28:04.320] name <- removed[[kk]] [17:28:04.320] NAME <- NAMES[[kk]] [17:28:04.320] if (name != NAME && is.element(NAME, old_names)) [17:28:04.320] next [17:28:04.320] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.320] } [17:28:04.320] if (length(args) > 0) [17:28:04.320] base::do.call(base::Sys.setenv, args = args) [17:28:04.320] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.320] } [17:28:04.320] { [17:28:04.320] if (base::length(...future.futureOptionsAdded) > [17:28:04.320] 0L) { [17:28:04.320] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.320] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.320] base::options(opts) [17:28:04.320] } [17:28:04.320] { [17:28:04.320] { [17:28:04.320] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.320] NULL [17:28:04.320] } [17:28:04.320] options(future.plan = NULL) [17:28:04.320] if (is.na(NA_character_)) [17:28:04.320] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.320] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.320] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.320] .init = FALSE) [17:28:04.320] } [17:28:04.320] } [17:28:04.320] } [17:28:04.320] }) [17:28:04.320] if (TRUE) { [17:28:04.320] base::sink(type = "output", split = FALSE) [17:28:04.320] if (TRUE) { [17:28:04.320] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.320] } [17:28:04.320] else { [17:28:04.320] ...future.result["stdout"] <- base::list(NULL) [17:28:04.320] } [17:28:04.320] base::close(...future.stdout) [17:28:04.320] ...future.stdout <- NULL [17:28:04.320] } [17:28:04.320] ...future.result$conditions <- ...future.conditions [17:28:04.320] ...future.result$finished <- base::Sys.time() [17:28:04.320] ...future.result [17:28:04.320] } [17:28:04.326] MultisessionFuture started [17:28:04.326] - Launch lazy future ... done [17:28:04.326] run() for 'MultisessionFuture' ... done [17:28:04.326] getGlobalsAndPackages() ... [17:28:04.326] Searching for globals... [17:28:04.327] [17:28:04.327] Searching for globals ... DONE [17:28:04.327] - globals: [0] [17:28:04.327] getGlobalsAndPackages() ... DONE [17:28:04.328] run() for 'Future' ... [17:28:04.328] - state: 'created' [17:28:04.328] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.341] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.342] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.342] - Field: 'node' [17:28:04.342] - Field: 'label' [17:28:04.342] - Field: 'local' [17:28:04.342] - Field: 'owner' [17:28:04.343] - Field: 'envir' [17:28:04.343] - Field: 'workers' [17:28:04.343] - Field: 'packages' [17:28:04.343] - Field: 'gc' [17:28:04.343] - Field: 'conditions' [17:28:04.343] - Field: 'persistent' [17:28:04.344] - Field: 'expr' [17:28:04.344] - Field: 'uuid' [17:28:04.344] - Field: 'seed' [17:28:04.344] - Field: 'version' [17:28:04.344] - Field: 'result' [17:28:04.345] - Field: 'asynchronous' [17:28:04.345] - Field: 'calls' [17:28:04.345] - Field: 'globals' [17:28:04.345] - Field: 'stdout' [17:28:04.345] - Field: 'earlySignal' [17:28:04.345] - Field: 'lazy' [17:28:04.346] - Field: 'state' [17:28:04.346] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.346] - Launch lazy future ... [17:28:04.346] Packages needed by the future expression (n = 0): [17:28:04.346] Packages needed by future strategies (n = 0): [17:28:04.347] { [17:28:04.347] { [17:28:04.347] { [17:28:04.347] ...future.startTime <- base::Sys.time() [17:28:04.347] { [17:28:04.347] { [17:28:04.347] { [17:28:04.347] { [17:28:04.347] base::local({ [17:28:04.347] has_future <- base::requireNamespace("future", [17:28:04.347] quietly = TRUE) [17:28:04.347] if (has_future) { [17:28:04.347] ns <- base::getNamespace("future") [17:28:04.347] version <- ns[[".package"]][["version"]] [17:28:04.347] if (is.null(version)) [17:28:04.347] version <- utils::packageVersion("future") [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] version <- NULL [17:28:04.347] } [17:28:04.347] if (!has_future || version < "1.8.0") { [17:28:04.347] info <- base::c(r_version = base::gsub("R version ", [17:28:04.347] "", base::R.version$version.string), [17:28:04.347] platform = base::sprintf("%s (%s-bit)", [17:28:04.347] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.347] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.347] "release", "version")], collapse = " "), [17:28:04.347] hostname = base::Sys.info()[["nodename"]]) [17:28:04.347] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.347] info) [17:28:04.347] info <- base::paste(info, collapse = "; ") [17:28:04.347] if (!has_future) { [17:28:04.347] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.347] info) [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.347] info, version) [17:28:04.347] } [17:28:04.347] base::stop(msg) [17:28:04.347] } [17:28:04.347] }) [17:28:04.347] } [17:28:04.347] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.347] base::options(mc.cores = 1L) [17:28:04.347] } [17:28:04.347] ...future.strategy.old <- future::plan("list") [17:28:04.347] options(future.plan = NULL) [17:28:04.347] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.347] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.347] } [17:28:04.347] ...future.workdir <- getwd() [17:28:04.347] } [17:28:04.347] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.347] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.347] } [17:28:04.347] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.347] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.347] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.347] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.347] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.347] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.347] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.347] base::names(...future.oldOptions)) [17:28:04.347] } [17:28:04.347] if (FALSE) { [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] if (TRUE) { [17:28:04.347] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.347] open = "w") [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.347] windows = "NUL", "/dev/null"), open = "w") [17:28:04.347] } [17:28:04.347] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.347] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.347] base::sink(type = "output", split = FALSE) [17:28:04.347] base::close(...future.stdout) [17:28:04.347] }, add = TRUE) [17:28:04.347] } [17:28:04.347] ...future.frame <- base::sys.nframe() [17:28:04.347] ...future.conditions <- base::list() [17:28:04.347] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.347] if (FALSE) { [17:28:04.347] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.347] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.347] } [17:28:04.347] ...future.result <- base::tryCatch({ [17:28:04.347] base::withCallingHandlers({ [17:28:04.347] ...future.value <- base::withVisible(base::local({ [17:28:04.347] ...future.makeSendCondition <- base::local({ [17:28:04.347] sendCondition <- NULL [17:28:04.347] function(frame = 1L) { [17:28:04.347] if (is.function(sendCondition)) [17:28:04.347] return(sendCondition) [17:28:04.347] ns <- getNamespace("parallel") [17:28:04.347] if (exists("sendData", mode = "function", [17:28:04.347] envir = ns)) { [17:28:04.347] parallel_sendData <- get("sendData", mode = "function", [17:28:04.347] envir = ns) [17:28:04.347] envir <- sys.frame(frame) [17:28:04.347] master <- NULL [17:28:04.347] while (!identical(envir, .GlobalEnv) && [17:28:04.347] !identical(envir, emptyenv())) { [17:28:04.347] if (exists("master", mode = "list", envir = envir, [17:28:04.347] inherits = FALSE)) { [17:28:04.347] master <- get("master", mode = "list", [17:28:04.347] envir = envir, inherits = FALSE) [17:28:04.347] if (inherits(master, c("SOCKnode", [17:28:04.347] "SOCK0node"))) { [17:28:04.347] sendCondition <<- function(cond) { [17:28:04.347] data <- list(type = "VALUE", value = cond, [17:28:04.347] success = TRUE) [17:28:04.347] parallel_sendData(master, data) [17:28:04.347] } [17:28:04.347] return(sendCondition) [17:28:04.347] } [17:28:04.347] } [17:28:04.347] frame <- frame + 1L [17:28:04.347] envir <- sys.frame(frame) [17:28:04.347] } [17:28:04.347] } [17:28:04.347] sendCondition <<- function(cond) NULL [17:28:04.347] } [17:28:04.347] }) [17:28:04.347] withCallingHandlers({ [17:28:04.347] 2 [17:28:04.347] }, immediateCondition = function(cond) { [17:28:04.347] sendCondition <- ...future.makeSendCondition() [17:28:04.347] sendCondition(cond) [17:28:04.347] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.347] { [17:28:04.347] inherits <- base::inherits [17:28:04.347] invokeRestart <- base::invokeRestart [17:28:04.347] is.null <- base::is.null [17:28:04.347] muffled <- FALSE [17:28:04.347] if (inherits(cond, "message")) { [17:28:04.347] muffled <- grepl(pattern, "muffleMessage") [17:28:04.347] if (muffled) [17:28:04.347] invokeRestart("muffleMessage") [17:28:04.347] } [17:28:04.347] else if (inherits(cond, "warning")) { [17:28:04.347] muffled <- grepl(pattern, "muffleWarning") [17:28:04.347] if (muffled) [17:28:04.347] invokeRestart("muffleWarning") [17:28:04.347] } [17:28:04.347] else if (inherits(cond, "condition")) { [17:28:04.347] if (!is.null(pattern)) { [17:28:04.347] computeRestarts <- base::computeRestarts [17:28:04.347] grepl <- base::grepl [17:28:04.347] restarts <- computeRestarts(cond) [17:28:04.347] for (restart in restarts) { [17:28:04.347] name <- restart$name [17:28:04.347] if (is.null(name)) [17:28:04.347] next [17:28:04.347] if (!grepl(pattern, name)) [17:28:04.347] next [17:28:04.347] invokeRestart(restart) [17:28:04.347] muffled <- TRUE [17:28:04.347] break [17:28:04.347] } [17:28:04.347] } [17:28:04.347] } [17:28:04.347] invisible(muffled) [17:28:04.347] } [17:28:04.347] muffleCondition(cond) [17:28:04.347] }) [17:28:04.347] })) [17:28:04.347] future::FutureResult(value = ...future.value$value, [17:28:04.347] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.347] ...future.rng), globalenv = if (FALSE) [17:28:04.347] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.347] ...future.globalenv.names)) [17:28:04.347] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.347] }, condition = base::local({ [17:28:04.347] c <- base::c [17:28:04.347] inherits <- base::inherits [17:28:04.347] invokeRestart <- base::invokeRestart [17:28:04.347] length <- base::length [17:28:04.347] list <- base::list [17:28:04.347] seq.int <- base::seq.int [17:28:04.347] signalCondition <- base::signalCondition [17:28:04.347] sys.calls <- base::sys.calls [17:28:04.347] `[[` <- base::`[[` [17:28:04.347] `+` <- base::`+` [17:28:04.347] `<<-` <- base::`<<-` [17:28:04.347] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.347] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.347] 3L)] [17:28:04.347] } [17:28:04.347] function(cond) { [17:28:04.347] is_error <- inherits(cond, "error") [17:28:04.347] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.347] NULL) [17:28:04.347] if (is_error) { [17:28:04.347] sessionInformation <- function() { [17:28:04.347] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.347] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.347] search = base::search(), system = base::Sys.info()) [17:28:04.347] } [17:28:04.347] ...future.conditions[[length(...future.conditions) + [17:28:04.347] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.347] cond$call), session = sessionInformation(), [17:28:04.347] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.347] signalCondition(cond) [17:28:04.347] } [17:28:04.347] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.347] "immediateCondition"))) { [17:28:04.347] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.347] ...future.conditions[[length(...future.conditions) + [17:28:04.347] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.347] if (TRUE && !signal) { [17:28:04.347] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.347] { [17:28:04.347] inherits <- base::inherits [17:28:04.347] invokeRestart <- base::invokeRestart [17:28:04.347] is.null <- base::is.null [17:28:04.347] muffled <- FALSE [17:28:04.347] if (inherits(cond, "message")) { [17:28:04.347] muffled <- grepl(pattern, "muffleMessage") [17:28:04.347] if (muffled) [17:28:04.347] invokeRestart("muffleMessage") [17:28:04.347] } [17:28:04.347] else if (inherits(cond, "warning")) { [17:28:04.347] muffled <- grepl(pattern, "muffleWarning") [17:28:04.347] if (muffled) [17:28:04.347] invokeRestart("muffleWarning") [17:28:04.347] } [17:28:04.347] else if (inherits(cond, "condition")) { [17:28:04.347] if (!is.null(pattern)) { [17:28:04.347] computeRestarts <- base::computeRestarts [17:28:04.347] grepl <- base::grepl [17:28:04.347] restarts <- computeRestarts(cond) [17:28:04.347] for (restart in restarts) { [17:28:04.347] name <- restart$name [17:28:04.347] if (is.null(name)) [17:28:04.347] next [17:28:04.347] if (!grepl(pattern, name)) [17:28:04.347] next [17:28:04.347] invokeRestart(restart) [17:28:04.347] muffled <- TRUE [17:28:04.347] break [17:28:04.347] } [17:28:04.347] } [17:28:04.347] } [17:28:04.347] invisible(muffled) [17:28:04.347] } [17:28:04.347] muffleCondition(cond, pattern = "^muffle") [17:28:04.347] } [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] if (TRUE) { [17:28:04.347] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.347] { [17:28:04.347] inherits <- base::inherits [17:28:04.347] invokeRestart <- base::invokeRestart [17:28:04.347] is.null <- base::is.null [17:28:04.347] muffled <- FALSE [17:28:04.347] if (inherits(cond, "message")) { [17:28:04.347] muffled <- grepl(pattern, "muffleMessage") [17:28:04.347] if (muffled) [17:28:04.347] invokeRestart("muffleMessage") [17:28:04.347] } [17:28:04.347] else if (inherits(cond, "warning")) { [17:28:04.347] muffled <- grepl(pattern, "muffleWarning") [17:28:04.347] if (muffled) [17:28:04.347] invokeRestart("muffleWarning") [17:28:04.347] } [17:28:04.347] else if (inherits(cond, "condition")) { [17:28:04.347] if (!is.null(pattern)) { [17:28:04.347] computeRestarts <- base::computeRestarts [17:28:04.347] grepl <- base::grepl [17:28:04.347] restarts <- computeRestarts(cond) [17:28:04.347] for (restart in restarts) { [17:28:04.347] name <- restart$name [17:28:04.347] if (is.null(name)) [17:28:04.347] next [17:28:04.347] if (!grepl(pattern, name)) [17:28:04.347] next [17:28:04.347] invokeRestart(restart) [17:28:04.347] muffled <- TRUE [17:28:04.347] break [17:28:04.347] } [17:28:04.347] } [17:28:04.347] } [17:28:04.347] invisible(muffled) [17:28:04.347] } [17:28:04.347] muffleCondition(cond, pattern = "^muffle") [17:28:04.347] } [17:28:04.347] } [17:28:04.347] } [17:28:04.347] })) [17:28:04.347] }, error = function(ex) { [17:28:04.347] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.347] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.347] ...future.rng), started = ...future.startTime, [17:28:04.347] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.347] version = "1.8"), class = "FutureResult") [17:28:04.347] }, finally = { [17:28:04.347] if (!identical(...future.workdir, getwd())) [17:28:04.347] setwd(...future.workdir) [17:28:04.347] { [17:28:04.347] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.347] ...future.oldOptions$nwarnings <- NULL [17:28:04.347] } [17:28:04.347] base::options(...future.oldOptions) [17:28:04.347] if (.Platform$OS.type == "windows") { [17:28:04.347] old_names <- names(...future.oldEnvVars) [17:28:04.347] envs <- base::Sys.getenv() [17:28:04.347] names <- names(envs) [17:28:04.347] common <- intersect(names, old_names) [17:28:04.347] added <- setdiff(names, old_names) [17:28:04.347] removed <- setdiff(old_names, names) [17:28:04.347] changed <- common[...future.oldEnvVars[common] != [17:28:04.347] envs[common]] [17:28:04.347] NAMES <- toupper(changed) [17:28:04.347] args <- list() [17:28:04.347] for (kk in seq_along(NAMES)) { [17:28:04.347] name <- changed[[kk]] [17:28:04.347] NAME <- NAMES[[kk]] [17:28:04.347] if (name != NAME && is.element(NAME, old_names)) [17:28:04.347] next [17:28:04.347] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.347] } [17:28:04.347] NAMES <- toupper(added) [17:28:04.347] for (kk in seq_along(NAMES)) { [17:28:04.347] name <- added[[kk]] [17:28:04.347] NAME <- NAMES[[kk]] [17:28:04.347] if (name != NAME && is.element(NAME, old_names)) [17:28:04.347] next [17:28:04.347] args[[name]] <- "" [17:28:04.347] } [17:28:04.347] NAMES <- toupper(removed) [17:28:04.347] for (kk in seq_along(NAMES)) { [17:28:04.347] name <- removed[[kk]] [17:28:04.347] NAME <- NAMES[[kk]] [17:28:04.347] if (name != NAME && is.element(NAME, old_names)) [17:28:04.347] next [17:28:04.347] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.347] } [17:28:04.347] if (length(args) > 0) [17:28:04.347] base::do.call(base::Sys.setenv, args = args) [17:28:04.347] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.347] } [17:28:04.347] { [17:28:04.347] if (base::length(...future.futureOptionsAdded) > [17:28:04.347] 0L) { [17:28:04.347] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.347] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.347] base::options(opts) [17:28:04.347] } [17:28:04.347] { [17:28:04.347] { [17:28:04.347] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.347] NULL [17:28:04.347] } [17:28:04.347] options(future.plan = NULL) [17:28:04.347] if (is.na(NA_character_)) [17:28:04.347] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.347] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.347] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.347] .init = FALSE) [17:28:04.347] } [17:28:04.347] } [17:28:04.347] } [17:28:04.347] }) [17:28:04.347] if (TRUE) { [17:28:04.347] base::sink(type = "output", split = FALSE) [17:28:04.347] if (TRUE) { [17:28:04.347] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.347] } [17:28:04.347] else { [17:28:04.347] ...future.result["stdout"] <- base::list(NULL) [17:28:04.347] } [17:28:04.347] base::close(...future.stdout) [17:28:04.347] ...future.stdout <- NULL [17:28:04.347] } [17:28:04.347] ...future.result$conditions <- ...future.conditions [17:28:04.347] ...future.result$finished <- base::Sys.time() [17:28:04.347] ...future.result [17:28:04.347] } [17:28:04.353] MultisessionFuture started [17:28:04.353] - Launch lazy future ... done [17:28:04.353] run() for 'MultisessionFuture' ... done [17:28:04.354] resolve() on list environment ... [17:28:04.354] recursive: 0 [17:28:04.354] length: 3 [17:28:04.355] elements: 'a', 'b', 'c' [17:28:04.355] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.355] - Validating connection of MultisessionFuture [17:28:04.356] - received message: FutureResult [17:28:04.356] - Received FutureResult [17:28:04.356] - Erased future from FutureRegistry [17:28:04.356] result() for ClusterFuture ... [17:28:04.356] - result already collected: FutureResult [17:28:04.356] result() for ClusterFuture ... done [17:28:04.357] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.357] Future #1 [17:28:04.357] length: 2 (resolved future 1) [17:28:04.367] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.367] - Validating connection of MultisessionFuture [17:28:04.367] - received message: FutureResult [17:28:04.367] - Received FutureResult [17:28:04.368] - Erased future from FutureRegistry [17:28:04.368] result() for ClusterFuture ... [17:28:04.368] - result already collected: FutureResult [17:28:04.368] result() for ClusterFuture ... done [17:28:04.368] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.368] Future #2 [17:28:04.369] length: 1 (resolved future 2) [17:28:04.369] length: 0 (resolved future 3) [17:28:04.369] resolve() on list environment ... DONE [17:28:04.370] getGlobalsAndPackages() ... [17:28:04.370] Searching for globals... [17:28:04.371] - globals found: [1] '{' [17:28:04.371] Searching for globals ... DONE [17:28:04.371] Resolving globals: FALSE [17:28:04.372] [17:28:04.372] [17:28:04.372] getGlobalsAndPackages() ... DONE [17:28:04.372] run() for 'Future' ... [17:28:04.372] - state: 'created' [17:28:04.373] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.387] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.387] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.387] - Field: 'node' [17:28:04.387] - Field: 'label' [17:28:04.387] - Field: 'local' [17:28:04.388] - Field: 'owner' [17:28:04.388] - Field: 'envir' [17:28:04.388] - Field: 'workers' [17:28:04.388] - Field: 'packages' [17:28:04.388] - Field: 'gc' [17:28:04.388] - Field: 'conditions' [17:28:04.389] - Field: 'persistent' [17:28:04.389] - Field: 'expr' [17:28:04.389] - Field: 'uuid' [17:28:04.389] - Field: 'seed' [17:28:04.389] - Field: 'version' [17:28:04.389] - Field: 'result' [17:28:04.390] - Field: 'asynchronous' [17:28:04.390] - Field: 'calls' [17:28:04.390] - Field: 'globals' [17:28:04.390] - Field: 'stdout' [17:28:04.390] - Field: 'earlySignal' [17:28:04.391] - Field: 'lazy' [17:28:04.391] - Field: 'state' [17:28:04.391] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.391] - Launch lazy future ... [17:28:04.391] Packages needed by the future expression (n = 0): [17:28:04.392] Packages needed by future strategies (n = 0): [17:28:04.392] { [17:28:04.392] { [17:28:04.392] { [17:28:04.392] ...future.startTime <- base::Sys.time() [17:28:04.392] { [17:28:04.392] { [17:28:04.392] { [17:28:04.392] { [17:28:04.392] base::local({ [17:28:04.392] has_future <- base::requireNamespace("future", [17:28:04.392] quietly = TRUE) [17:28:04.392] if (has_future) { [17:28:04.392] ns <- base::getNamespace("future") [17:28:04.392] version <- ns[[".package"]][["version"]] [17:28:04.392] if (is.null(version)) [17:28:04.392] version <- utils::packageVersion("future") [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] version <- NULL [17:28:04.392] } [17:28:04.392] if (!has_future || version < "1.8.0") { [17:28:04.392] info <- base::c(r_version = base::gsub("R version ", [17:28:04.392] "", base::R.version$version.string), [17:28:04.392] platform = base::sprintf("%s (%s-bit)", [17:28:04.392] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.392] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.392] "release", "version")], collapse = " "), [17:28:04.392] hostname = base::Sys.info()[["nodename"]]) [17:28:04.392] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.392] info) [17:28:04.392] info <- base::paste(info, collapse = "; ") [17:28:04.392] if (!has_future) { [17:28:04.392] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.392] info) [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.392] info, version) [17:28:04.392] } [17:28:04.392] base::stop(msg) [17:28:04.392] } [17:28:04.392] }) [17:28:04.392] } [17:28:04.392] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.392] base::options(mc.cores = 1L) [17:28:04.392] } [17:28:04.392] ...future.strategy.old <- future::plan("list") [17:28:04.392] options(future.plan = NULL) [17:28:04.392] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.392] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.392] } [17:28:04.392] ...future.workdir <- getwd() [17:28:04.392] } [17:28:04.392] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.392] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.392] } [17:28:04.392] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.392] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.392] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.392] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.392] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.392] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.392] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.392] base::names(...future.oldOptions)) [17:28:04.392] } [17:28:04.392] if (FALSE) { [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] if (TRUE) { [17:28:04.392] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.392] open = "w") [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.392] windows = "NUL", "/dev/null"), open = "w") [17:28:04.392] } [17:28:04.392] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.392] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.392] base::sink(type = "output", split = FALSE) [17:28:04.392] base::close(...future.stdout) [17:28:04.392] }, add = TRUE) [17:28:04.392] } [17:28:04.392] ...future.frame <- base::sys.nframe() [17:28:04.392] ...future.conditions <- base::list() [17:28:04.392] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.392] if (FALSE) { [17:28:04.392] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.392] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.392] } [17:28:04.392] ...future.result <- base::tryCatch({ [17:28:04.392] base::withCallingHandlers({ [17:28:04.392] ...future.value <- base::withVisible(base::local({ [17:28:04.392] ...future.makeSendCondition <- base::local({ [17:28:04.392] sendCondition <- NULL [17:28:04.392] function(frame = 1L) { [17:28:04.392] if (is.function(sendCondition)) [17:28:04.392] return(sendCondition) [17:28:04.392] ns <- getNamespace("parallel") [17:28:04.392] if (exists("sendData", mode = "function", [17:28:04.392] envir = ns)) { [17:28:04.392] parallel_sendData <- get("sendData", mode = "function", [17:28:04.392] envir = ns) [17:28:04.392] envir <- sys.frame(frame) [17:28:04.392] master <- NULL [17:28:04.392] while (!identical(envir, .GlobalEnv) && [17:28:04.392] !identical(envir, emptyenv())) { [17:28:04.392] if (exists("master", mode = "list", envir = envir, [17:28:04.392] inherits = FALSE)) { [17:28:04.392] master <- get("master", mode = "list", [17:28:04.392] envir = envir, inherits = FALSE) [17:28:04.392] if (inherits(master, c("SOCKnode", [17:28:04.392] "SOCK0node"))) { [17:28:04.392] sendCondition <<- function(cond) { [17:28:04.392] data <- list(type = "VALUE", value = cond, [17:28:04.392] success = TRUE) [17:28:04.392] parallel_sendData(master, data) [17:28:04.392] } [17:28:04.392] return(sendCondition) [17:28:04.392] } [17:28:04.392] } [17:28:04.392] frame <- frame + 1L [17:28:04.392] envir <- sys.frame(frame) [17:28:04.392] } [17:28:04.392] } [17:28:04.392] sendCondition <<- function(cond) NULL [17:28:04.392] } [17:28:04.392] }) [17:28:04.392] withCallingHandlers({ [17:28:04.392] { [17:28:04.392] 1 [17:28:04.392] } [17:28:04.392] }, immediateCondition = function(cond) { [17:28:04.392] sendCondition <- ...future.makeSendCondition() [17:28:04.392] sendCondition(cond) [17:28:04.392] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.392] { [17:28:04.392] inherits <- base::inherits [17:28:04.392] invokeRestart <- base::invokeRestart [17:28:04.392] is.null <- base::is.null [17:28:04.392] muffled <- FALSE [17:28:04.392] if (inherits(cond, "message")) { [17:28:04.392] muffled <- grepl(pattern, "muffleMessage") [17:28:04.392] if (muffled) [17:28:04.392] invokeRestart("muffleMessage") [17:28:04.392] } [17:28:04.392] else if (inherits(cond, "warning")) { [17:28:04.392] muffled <- grepl(pattern, "muffleWarning") [17:28:04.392] if (muffled) [17:28:04.392] invokeRestart("muffleWarning") [17:28:04.392] } [17:28:04.392] else if (inherits(cond, "condition")) { [17:28:04.392] if (!is.null(pattern)) { [17:28:04.392] computeRestarts <- base::computeRestarts [17:28:04.392] grepl <- base::grepl [17:28:04.392] restarts <- computeRestarts(cond) [17:28:04.392] for (restart in restarts) { [17:28:04.392] name <- restart$name [17:28:04.392] if (is.null(name)) [17:28:04.392] next [17:28:04.392] if (!grepl(pattern, name)) [17:28:04.392] next [17:28:04.392] invokeRestart(restart) [17:28:04.392] muffled <- TRUE [17:28:04.392] break [17:28:04.392] } [17:28:04.392] } [17:28:04.392] } [17:28:04.392] invisible(muffled) [17:28:04.392] } [17:28:04.392] muffleCondition(cond) [17:28:04.392] }) [17:28:04.392] })) [17:28:04.392] future::FutureResult(value = ...future.value$value, [17:28:04.392] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.392] ...future.rng), globalenv = if (FALSE) [17:28:04.392] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.392] ...future.globalenv.names)) [17:28:04.392] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.392] }, condition = base::local({ [17:28:04.392] c <- base::c [17:28:04.392] inherits <- base::inherits [17:28:04.392] invokeRestart <- base::invokeRestart [17:28:04.392] length <- base::length [17:28:04.392] list <- base::list [17:28:04.392] seq.int <- base::seq.int [17:28:04.392] signalCondition <- base::signalCondition [17:28:04.392] sys.calls <- base::sys.calls [17:28:04.392] `[[` <- base::`[[` [17:28:04.392] `+` <- base::`+` [17:28:04.392] `<<-` <- base::`<<-` [17:28:04.392] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.392] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.392] 3L)] [17:28:04.392] } [17:28:04.392] function(cond) { [17:28:04.392] is_error <- inherits(cond, "error") [17:28:04.392] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.392] NULL) [17:28:04.392] if (is_error) { [17:28:04.392] sessionInformation <- function() { [17:28:04.392] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.392] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.392] search = base::search(), system = base::Sys.info()) [17:28:04.392] } [17:28:04.392] ...future.conditions[[length(...future.conditions) + [17:28:04.392] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.392] cond$call), session = sessionInformation(), [17:28:04.392] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.392] signalCondition(cond) [17:28:04.392] } [17:28:04.392] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.392] "immediateCondition"))) { [17:28:04.392] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.392] ...future.conditions[[length(...future.conditions) + [17:28:04.392] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.392] if (TRUE && !signal) { [17:28:04.392] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.392] { [17:28:04.392] inherits <- base::inherits [17:28:04.392] invokeRestart <- base::invokeRestart [17:28:04.392] is.null <- base::is.null [17:28:04.392] muffled <- FALSE [17:28:04.392] if (inherits(cond, "message")) { [17:28:04.392] muffled <- grepl(pattern, "muffleMessage") [17:28:04.392] if (muffled) [17:28:04.392] invokeRestart("muffleMessage") [17:28:04.392] } [17:28:04.392] else if (inherits(cond, "warning")) { [17:28:04.392] muffled <- grepl(pattern, "muffleWarning") [17:28:04.392] if (muffled) [17:28:04.392] invokeRestart("muffleWarning") [17:28:04.392] } [17:28:04.392] else if (inherits(cond, "condition")) { [17:28:04.392] if (!is.null(pattern)) { [17:28:04.392] computeRestarts <- base::computeRestarts [17:28:04.392] grepl <- base::grepl [17:28:04.392] restarts <- computeRestarts(cond) [17:28:04.392] for (restart in restarts) { [17:28:04.392] name <- restart$name [17:28:04.392] if (is.null(name)) [17:28:04.392] next [17:28:04.392] if (!grepl(pattern, name)) [17:28:04.392] next [17:28:04.392] invokeRestart(restart) [17:28:04.392] muffled <- TRUE [17:28:04.392] break [17:28:04.392] } [17:28:04.392] } [17:28:04.392] } [17:28:04.392] invisible(muffled) [17:28:04.392] } [17:28:04.392] muffleCondition(cond, pattern = "^muffle") [17:28:04.392] } [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] if (TRUE) { [17:28:04.392] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.392] { [17:28:04.392] inherits <- base::inherits [17:28:04.392] invokeRestart <- base::invokeRestart [17:28:04.392] is.null <- base::is.null [17:28:04.392] muffled <- FALSE [17:28:04.392] if (inherits(cond, "message")) { [17:28:04.392] muffled <- grepl(pattern, "muffleMessage") [17:28:04.392] if (muffled) [17:28:04.392] invokeRestart("muffleMessage") [17:28:04.392] } [17:28:04.392] else if (inherits(cond, "warning")) { [17:28:04.392] muffled <- grepl(pattern, "muffleWarning") [17:28:04.392] if (muffled) [17:28:04.392] invokeRestart("muffleWarning") [17:28:04.392] } [17:28:04.392] else if (inherits(cond, "condition")) { [17:28:04.392] if (!is.null(pattern)) { [17:28:04.392] computeRestarts <- base::computeRestarts [17:28:04.392] grepl <- base::grepl [17:28:04.392] restarts <- computeRestarts(cond) [17:28:04.392] for (restart in restarts) { [17:28:04.392] name <- restart$name [17:28:04.392] if (is.null(name)) [17:28:04.392] next [17:28:04.392] if (!grepl(pattern, name)) [17:28:04.392] next [17:28:04.392] invokeRestart(restart) [17:28:04.392] muffled <- TRUE [17:28:04.392] break [17:28:04.392] } [17:28:04.392] } [17:28:04.392] } [17:28:04.392] invisible(muffled) [17:28:04.392] } [17:28:04.392] muffleCondition(cond, pattern = "^muffle") [17:28:04.392] } [17:28:04.392] } [17:28:04.392] } [17:28:04.392] })) [17:28:04.392] }, error = function(ex) { [17:28:04.392] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.392] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.392] ...future.rng), started = ...future.startTime, [17:28:04.392] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.392] version = "1.8"), class = "FutureResult") [17:28:04.392] }, finally = { [17:28:04.392] if (!identical(...future.workdir, getwd())) [17:28:04.392] setwd(...future.workdir) [17:28:04.392] { [17:28:04.392] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.392] ...future.oldOptions$nwarnings <- NULL [17:28:04.392] } [17:28:04.392] base::options(...future.oldOptions) [17:28:04.392] if (.Platform$OS.type == "windows") { [17:28:04.392] old_names <- names(...future.oldEnvVars) [17:28:04.392] envs <- base::Sys.getenv() [17:28:04.392] names <- names(envs) [17:28:04.392] common <- intersect(names, old_names) [17:28:04.392] added <- setdiff(names, old_names) [17:28:04.392] removed <- setdiff(old_names, names) [17:28:04.392] changed <- common[...future.oldEnvVars[common] != [17:28:04.392] envs[common]] [17:28:04.392] NAMES <- toupper(changed) [17:28:04.392] args <- list() [17:28:04.392] for (kk in seq_along(NAMES)) { [17:28:04.392] name <- changed[[kk]] [17:28:04.392] NAME <- NAMES[[kk]] [17:28:04.392] if (name != NAME && is.element(NAME, old_names)) [17:28:04.392] next [17:28:04.392] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.392] } [17:28:04.392] NAMES <- toupper(added) [17:28:04.392] for (kk in seq_along(NAMES)) { [17:28:04.392] name <- added[[kk]] [17:28:04.392] NAME <- NAMES[[kk]] [17:28:04.392] if (name != NAME && is.element(NAME, old_names)) [17:28:04.392] next [17:28:04.392] args[[name]] <- "" [17:28:04.392] } [17:28:04.392] NAMES <- toupper(removed) [17:28:04.392] for (kk in seq_along(NAMES)) { [17:28:04.392] name <- removed[[kk]] [17:28:04.392] NAME <- NAMES[[kk]] [17:28:04.392] if (name != NAME && is.element(NAME, old_names)) [17:28:04.392] next [17:28:04.392] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.392] } [17:28:04.392] if (length(args) > 0) [17:28:04.392] base::do.call(base::Sys.setenv, args = args) [17:28:04.392] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.392] } [17:28:04.392] { [17:28:04.392] if (base::length(...future.futureOptionsAdded) > [17:28:04.392] 0L) { [17:28:04.392] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.392] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.392] base::options(opts) [17:28:04.392] } [17:28:04.392] { [17:28:04.392] { [17:28:04.392] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.392] NULL [17:28:04.392] } [17:28:04.392] options(future.plan = NULL) [17:28:04.392] if (is.na(NA_character_)) [17:28:04.392] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.392] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.392] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.392] .init = FALSE) [17:28:04.392] } [17:28:04.392] } [17:28:04.392] } [17:28:04.392] }) [17:28:04.392] if (TRUE) { [17:28:04.392] base::sink(type = "output", split = FALSE) [17:28:04.392] if (TRUE) { [17:28:04.392] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.392] } [17:28:04.392] else { [17:28:04.392] ...future.result["stdout"] <- base::list(NULL) [17:28:04.392] } [17:28:04.392] base::close(...future.stdout) [17:28:04.392] ...future.stdout <- NULL [17:28:04.392] } [17:28:04.392] ...future.result$conditions <- ...future.conditions [17:28:04.392] ...future.result$finished <- base::Sys.time() [17:28:04.392] ...future.result [17:28:04.392] } [17:28:04.398] MultisessionFuture started [17:28:04.398] - Launch lazy future ... done [17:28:04.398] run() for 'MultisessionFuture' ... done [17:28:04.399] getGlobalsAndPackages() ... [17:28:04.399] Searching for globals... [17:28:04.400] - globals found: [1] '{' [17:28:04.400] Searching for globals ... DONE [17:28:04.400] Resolving globals: FALSE [17:28:04.400] [17:28:04.401] [17:28:04.401] getGlobalsAndPackages() ... DONE [17:28:04.401] run() for 'Future' ... [17:28:04.401] - state: 'created' [17:28:04.401] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.418] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.419] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.419] - Field: 'node' [17:28:04.419] - Field: 'label' [17:28:04.419] - Field: 'local' [17:28:04.419] - Field: 'owner' [17:28:04.420] - Field: 'envir' [17:28:04.420] - Field: 'workers' [17:28:04.420] - Field: 'packages' [17:28:04.420] - Field: 'gc' [17:28:04.420] - Field: 'conditions' [17:28:04.420] - Field: 'persistent' [17:28:04.421] - Field: 'expr' [17:28:04.421] - Field: 'uuid' [17:28:04.421] - Field: 'seed' [17:28:04.421] - Field: 'version' [17:28:04.421] - Field: 'result' [17:28:04.421] - Field: 'asynchronous' [17:28:04.422] - Field: 'calls' [17:28:04.422] - Field: 'globals' [17:28:04.422] - Field: 'stdout' [17:28:04.422] - Field: 'earlySignal' [17:28:04.422] - Field: 'lazy' [17:28:04.423] - Field: 'state' [17:28:04.423] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.423] - Launch lazy future ... [17:28:04.423] Packages needed by the future expression (n = 0): [17:28:04.423] Packages needed by future strategies (n = 0): [17:28:04.424] { [17:28:04.424] { [17:28:04.424] { [17:28:04.424] ...future.startTime <- base::Sys.time() [17:28:04.424] { [17:28:04.424] { [17:28:04.424] { [17:28:04.424] { [17:28:04.424] base::local({ [17:28:04.424] has_future <- base::requireNamespace("future", [17:28:04.424] quietly = TRUE) [17:28:04.424] if (has_future) { [17:28:04.424] ns <- base::getNamespace("future") [17:28:04.424] version <- ns[[".package"]][["version"]] [17:28:04.424] if (is.null(version)) [17:28:04.424] version <- utils::packageVersion("future") [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] version <- NULL [17:28:04.424] } [17:28:04.424] if (!has_future || version < "1.8.0") { [17:28:04.424] info <- base::c(r_version = base::gsub("R version ", [17:28:04.424] "", base::R.version$version.string), [17:28:04.424] platform = base::sprintf("%s (%s-bit)", [17:28:04.424] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.424] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.424] "release", "version")], collapse = " "), [17:28:04.424] hostname = base::Sys.info()[["nodename"]]) [17:28:04.424] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.424] info) [17:28:04.424] info <- base::paste(info, collapse = "; ") [17:28:04.424] if (!has_future) { [17:28:04.424] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.424] info) [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.424] info, version) [17:28:04.424] } [17:28:04.424] base::stop(msg) [17:28:04.424] } [17:28:04.424] }) [17:28:04.424] } [17:28:04.424] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.424] base::options(mc.cores = 1L) [17:28:04.424] } [17:28:04.424] ...future.strategy.old <- future::plan("list") [17:28:04.424] options(future.plan = NULL) [17:28:04.424] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.424] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.424] } [17:28:04.424] ...future.workdir <- getwd() [17:28:04.424] } [17:28:04.424] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.424] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.424] } [17:28:04.424] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.424] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.424] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.424] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.424] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.424] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.424] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.424] base::names(...future.oldOptions)) [17:28:04.424] } [17:28:04.424] if (FALSE) { [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] if (TRUE) { [17:28:04.424] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.424] open = "w") [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.424] windows = "NUL", "/dev/null"), open = "w") [17:28:04.424] } [17:28:04.424] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.424] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.424] base::sink(type = "output", split = FALSE) [17:28:04.424] base::close(...future.stdout) [17:28:04.424] }, add = TRUE) [17:28:04.424] } [17:28:04.424] ...future.frame <- base::sys.nframe() [17:28:04.424] ...future.conditions <- base::list() [17:28:04.424] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.424] if (FALSE) { [17:28:04.424] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.424] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.424] } [17:28:04.424] ...future.result <- base::tryCatch({ [17:28:04.424] base::withCallingHandlers({ [17:28:04.424] ...future.value <- base::withVisible(base::local({ [17:28:04.424] ...future.makeSendCondition <- base::local({ [17:28:04.424] sendCondition <- NULL [17:28:04.424] function(frame = 1L) { [17:28:04.424] if (is.function(sendCondition)) [17:28:04.424] return(sendCondition) [17:28:04.424] ns <- getNamespace("parallel") [17:28:04.424] if (exists("sendData", mode = "function", [17:28:04.424] envir = ns)) { [17:28:04.424] parallel_sendData <- get("sendData", mode = "function", [17:28:04.424] envir = ns) [17:28:04.424] envir <- sys.frame(frame) [17:28:04.424] master <- NULL [17:28:04.424] while (!identical(envir, .GlobalEnv) && [17:28:04.424] !identical(envir, emptyenv())) { [17:28:04.424] if (exists("master", mode = "list", envir = envir, [17:28:04.424] inherits = FALSE)) { [17:28:04.424] master <- get("master", mode = "list", [17:28:04.424] envir = envir, inherits = FALSE) [17:28:04.424] if (inherits(master, c("SOCKnode", [17:28:04.424] "SOCK0node"))) { [17:28:04.424] sendCondition <<- function(cond) { [17:28:04.424] data <- list(type = "VALUE", value = cond, [17:28:04.424] success = TRUE) [17:28:04.424] parallel_sendData(master, data) [17:28:04.424] } [17:28:04.424] return(sendCondition) [17:28:04.424] } [17:28:04.424] } [17:28:04.424] frame <- frame + 1L [17:28:04.424] envir <- sys.frame(frame) [17:28:04.424] } [17:28:04.424] } [17:28:04.424] sendCondition <<- function(cond) NULL [17:28:04.424] } [17:28:04.424] }) [17:28:04.424] withCallingHandlers({ [17:28:04.424] { [17:28:04.424] 2 [17:28:04.424] } [17:28:04.424] }, immediateCondition = function(cond) { [17:28:04.424] sendCondition <- ...future.makeSendCondition() [17:28:04.424] sendCondition(cond) [17:28:04.424] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.424] { [17:28:04.424] inherits <- base::inherits [17:28:04.424] invokeRestart <- base::invokeRestart [17:28:04.424] is.null <- base::is.null [17:28:04.424] muffled <- FALSE [17:28:04.424] if (inherits(cond, "message")) { [17:28:04.424] muffled <- grepl(pattern, "muffleMessage") [17:28:04.424] if (muffled) [17:28:04.424] invokeRestart("muffleMessage") [17:28:04.424] } [17:28:04.424] else if (inherits(cond, "warning")) { [17:28:04.424] muffled <- grepl(pattern, "muffleWarning") [17:28:04.424] if (muffled) [17:28:04.424] invokeRestart("muffleWarning") [17:28:04.424] } [17:28:04.424] else if (inherits(cond, "condition")) { [17:28:04.424] if (!is.null(pattern)) { [17:28:04.424] computeRestarts <- base::computeRestarts [17:28:04.424] grepl <- base::grepl [17:28:04.424] restarts <- computeRestarts(cond) [17:28:04.424] for (restart in restarts) { [17:28:04.424] name <- restart$name [17:28:04.424] if (is.null(name)) [17:28:04.424] next [17:28:04.424] if (!grepl(pattern, name)) [17:28:04.424] next [17:28:04.424] invokeRestart(restart) [17:28:04.424] muffled <- TRUE [17:28:04.424] break [17:28:04.424] } [17:28:04.424] } [17:28:04.424] } [17:28:04.424] invisible(muffled) [17:28:04.424] } [17:28:04.424] muffleCondition(cond) [17:28:04.424] }) [17:28:04.424] })) [17:28:04.424] future::FutureResult(value = ...future.value$value, [17:28:04.424] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.424] ...future.rng), globalenv = if (FALSE) [17:28:04.424] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.424] ...future.globalenv.names)) [17:28:04.424] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.424] }, condition = base::local({ [17:28:04.424] c <- base::c [17:28:04.424] inherits <- base::inherits [17:28:04.424] invokeRestart <- base::invokeRestart [17:28:04.424] length <- base::length [17:28:04.424] list <- base::list [17:28:04.424] seq.int <- base::seq.int [17:28:04.424] signalCondition <- base::signalCondition [17:28:04.424] sys.calls <- base::sys.calls [17:28:04.424] `[[` <- base::`[[` [17:28:04.424] `+` <- base::`+` [17:28:04.424] `<<-` <- base::`<<-` [17:28:04.424] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.424] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.424] 3L)] [17:28:04.424] } [17:28:04.424] function(cond) { [17:28:04.424] is_error <- inherits(cond, "error") [17:28:04.424] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.424] NULL) [17:28:04.424] if (is_error) { [17:28:04.424] sessionInformation <- function() { [17:28:04.424] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.424] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.424] search = base::search(), system = base::Sys.info()) [17:28:04.424] } [17:28:04.424] ...future.conditions[[length(...future.conditions) + [17:28:04.424] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.424] cond$call), session = sessionInformation(), [17:28:04.424] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.424] signalCondition(cond) [17:28:04.424] } [17:28:04.424] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.424] "immediateCondition"))) { [17:28:04.424] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.424] ...future.conditions[[length(...future.conditions) + [17:28:04.424] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.424] if (TRUE && !signal) { [17:28:04.424] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.424] { [17:28:04.424] inherits <- base::inherits [17:28:04.424] invokeRestart <- base::invokeRestart [17:28:04.424] is.null <- base::is.null [17:28:04.424] muffled <- FALSE [17:28:04.424] if (inherits(cond, "message")) { [17:28:04.424] muffled <- grepl(pattern, "muffleMessage") [17:28:04.424] if (muffled) [17:28:04.424] invokeRestart("muffleMessage") [17:28:04.424] } [17:28:04.424] else if (inherits(cond, "warning")) { [17:28:04.424] muffled <- grepl(pattern, "muffleWarning") [17:28:04.424] if (muffled) [17:28:04.424] invokeRestart("muffleWarning") [17:28:04.424] } [17:28:04.424] else if (inherits(cond, "condition")) { [17:28:04.424] if (!is.null(pattern)) { [17:28:04.424] computeRestarts <- base::computeRestarts [17:28:04.424] grepl <- base::grepl [17:28:04.424] restarts <- computeRestarts(cond) [17:28:04.424] for (restart in restarts) { [17:28:04.424] name <- restart$name [17:28:04.424] if (is.null(name)) [17:28:04.424] next [17:28:04.424] if (!grepl(pattern, name)) [17:28:04.424] next [17:28:04.424] invokeRestart(restart) [17:28:04.424] muffled <- TRUE [17:28:04.424] break [17:28:04.424] } [17:28:04.424] } [17:28:04.424] } [17:28:04.424] invisible(muffled) [17:28:04.424] } [17:28:04.424] muffleCondition(cond, pattern = "^muffle") [17:28:04.424] } [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] if (TRUE) { [17:28:04.424] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.424] { [17:28:04.424] inherits <- base::inherits [17:28:04.424] invokeRestart <- base::invokeRestart [17:28:04.424] is.null <- base::is.null [17:28:04.424] muffled <- FALSE [17:28:04.424] if (inherits(cond, "message")) { [17:28:04.424] muffled <- grepl(pattern, "muffleMessage") [17:28:04.424] if (muffled) [17:28:04.424] invokeRestart("muffleMessage") [17:28:04.424] } [17:28:04.424] else if (inherits(cond, "warning")) { [17:28:04.424] muffled <- grepl(pattern, "muffleWarning") [17:28:04.424] if (muffled) [17:28:04.424] invokeRestart("muffleWarning") [17:28:04.424] } [17:28:04.424] else if (inherits(cond, "condition")) { [17:28:04.424] if (!is.null(pattern)) { [17:28:04.424] computeRestarts <- base::computeRestarts [17:28:04.424] grepl <- base::grepl [17:28:04.424] restarts <- computeRestarts(cond) [17:28:04.424] for (restart in restarts) { [17:28:04.424] name <- restart$name [17:28:04.424] if (is.null(name)) [17:28:04.424] next [17:28:04.424] if (!grepl(pattern, name)) [17:28:04.424] next [17:28:04.424] invokeRestart(restart) [17:28:04.424] muffled <- TRUE [17:28:04.424] break [17:28:04.424] } [17:28:04.424] } [17:28:04.424] } [17:28:04.424] invisible(muffled) [17:28:04.424] } [17:28:04.424] muffleCondition(cond, pattern = "^muffle") [17:28:04.424] } [17:28:04.424] } [17:28:04.424] } [17:28:04.424] })) [17:28:04.424] }, error = function(ex) { [17:28:04.424] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.424] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.424] ...future.rng), started = ...future.startTime, [17:28:04.424] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.424] version = "1.8"), class = "FutureResult") [17:28:04.424] }, finally = { [17:28:04.424] if (!identical(...future.workdir, getwd())) [17:28:04.424] setwd(...future.workdir) [17:28:04.424] { [17:28:04.424] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.424] ...future.oldOptions$nwarnings <- NULL [17:28:04.424] } [17:28:04.424] base::options(...future.oldOptions) [17:28:04.424] if (.Platform$OS.type == "windows") { [17:28:04.424] old_names <- names(...future.oldEnvVars) [17:28:04.424] envs <- base::Sys.getenv() [17:28:04.424] names <- names(envs) [17:28:04.424] common <- intersect(names, old_names) [17:28:04.424] added <- setdiff(names, old_names) [17:28:04.424] removed <- setdiff(old_names, names) [17:28:04.424] changed <- common[...future.oldEnvVars[common] != [17:28:04.424] envs[common]] [17:28:04.424] NAMES <- toupper(changed) [17:28:04.424] args <- list() [17:28:04.424] for (kk in seq_along(NAMES)) { [17:28:04.424] name <- changed[[kk]] [17:28:04.424] NAME <- NAMES[[kk]] [17:28:04.424] if (name != NAME && is.element(NAME, old_names)) [17:28:04.424] next [17:28:04.424] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.424] } [17:28:04.424] NAMES <- toupper(added) [17:28:04.424] for (kk in seq_along(NAMES)) { [17:28:04.424] name <- added[[kk]] [17:28:04.424] NAME <- NAMES[[kk]] [17:28:04.424] if (name != NAME && is.element(NAME, old_names)) [17:28:04.424] next [17:28:04.424] args[[name]] <- "" [17:28:04.424] } [17:28:04.424] NAMES <- toupper(removed) [17:28:04.424] for (kk in seq_along(NAMES)) { [17:28:04.424] name <- removed[[kk]] [17:28:04.424] NAME <- NAMES[[kk]] [17:28:04.424] if (name != NAME && is.element(NAME, old_names)) [17:28:04.424] next [17:28:04.424] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.424] } [17:28:04.424] if (length(args) > 0) [17:28:04.424] base::do.call(base::Sys.setenv, args = args) [17:28:04.424] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.424] } [17:28:04.424] { [17:28:04.424] if (base::length(...future.futureOptionsAdded) > [17:28:04.424] 0L) { [17:28:04.424] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.424] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.424] base::options(opts) [17:28:04.424] } [17:28:04.424] { [17:28:04.424] { [17:28:04.424] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.424] NULL [17:28:04.424] } [17:28:04.424] options(future.plan = NULL) [17:28:04.424] if (is.na(NA_character_)) [17:28:04.424] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.424] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.424] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.424] .init = FALSE) [17:28:04.424] } [17:28:04.424] } [17:28:04.424] } [17:28:04.424] }) [17:28:04.424] if (TRUE) { [17:28:04.424] base::sink(type = "output", split = FALSE) [17:28:04.424] if (TRUE) { [17:28:04.424] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.424] } [17:28:04.424] else { [17:28:04.424] ...future.result["stdout"] <- base::list(NULL) [17:28:04.424] } [17:28:04.424] base::close(...future.stdout) [17:28:04.424] ...future.stdout <- NULL [17:28:04.424] } [17:28:04.424] ...future.result$conditions <- ...future.conditions [17:28:04.424] ...future.result$finished <- base::Sys.time() [17:28:04.424] ...future.result [17:28:04.424] } [17:28:04.429] MultisessionFuture started [17:28:04.430] - Launch lazy future ... done [17:28:04.430] run() for 'MultisessionFuture' ... done [17:28:04.430] resolve() on list environment ... [17:28:04.431] recursive: 0 [17:28:04.431] length: 3 [17:28:04.431] elements: 'a', 'b', 'c' [17:28:04.432] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.432] - Validating connection of MultisessionFuture [17:28:04.432] - received message: FutureResult [17:28:04.432] - Received FutureResult [17:28:04.433] - Erased future from FutureRegistry [17:28:04.433] result() for ClusterFuture ... [17:28:04.433] - result already collected: FutureResult [17:28:04.433] result() for ClusterFuture ... done [17:28:04.433] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.433] Future #1 [17:28:04.434] length: 2 (resolved future 1) [17:28:04.443] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.443] - Validating connection of MultisessionFuture [17:28:04.443] - received message: FutureResult [17:28:04.444] - Received FutureResult [17:28:04.444] - Erased future from FutureRegistry [17:28:04.444] result() for ClusterFuture ... [17:28:04.444] - result already collected: FutureResult [17:28:04.444] result() for ClusterFuture ... done [17:28:04.444] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.445] Future #2 [17:28:04.445] length: 1 (resolved future 2) [17:28:04.445] length: 0 (resolved future 3) [17:28:04.445] resolve() on list environment ... DONE [17:28:04.446] getGlobalsAndPackages() ... [17:28:04.446] Searching for globals... [17:28:04.447] - globals found: [1] '{' [17:28:04.447] Searching for globals ... DONE [17:28:04.447] Resolving globals: FALSE [17:28:04.447] [17:28:04.447] [17:28:04.448] getGlobalsAndPackages() ... DONE [17:28:04.448] run() for 'Future' ... [17:28:04.448] - state: 'created' [17:28:04.448] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.462] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.462] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.462] - Field: 'node' [17:28:04.463] - Field: 'label' [17:28:04.463] - Field: 'local' [17:28:04.463] - Field: 'owner' [17:28:04.463] - Field: 'envir' [17:28:04.463] - Field: 'workers' [17:28:04.464] - Field: 'packages' [17:28:04.464] - Field: 'gc' [17:28:04.464] - Field: 'conditions' [17:28:04.464] - Field: 'persistent' [17:28:04.464] - Field: 'expr' [17:28:04.465] - Field: 'uuid' [17:28:04.465] - Field: 'seed' [17:28:04.465] - Field: 'version' [17:28:04.465] - Field: 'result' [17:28:04.465] - Field: 'asynchronous' [17:28:04.465] - Field: 'calls' [17:28:04.466] - Field: 'globals' [17:28:04.466] - Field: 'stdout' [17:28:04.466] - Field: 'earlySignal' [17:28:04.466] - Field: 'lazy' [17:28:04.466] - Field: 'state' [17:28:04.467] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.467] - Launch lazy future ... [17:28:04.467] Packages needed by the future expression (n = 0): [17:28:04.467] Packages needed by future strategies (n = 0): [17:28:04.468] { [17:28:04.468] { [17:28:04.468] { [17:28:04.468] ...future.startTime <- base::Sys.time() [17:28:04.468] { [17:28:04.468] { [17:28:04.468] { [17:28:04.468] { [17:28:04.468] base::local({ [17:28:04.468] has_future <- base::requireNamespace("future", [17:28:04.468] quietly = TRUE) [17:28:04.468] if (has_future) { [17:28:04.468] ns <- base::getNamespace("future") [17:28:04.468] version <- ns[[".package"]][["version"]] [17:28:04.468] if (is.null(version)) [17:28:04.468] version <- utils::packageVersion("future") [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] version <- NULL [17:28:04.468] } [17:28:04.468] if (!has_future || version < "1.8.0") { [17:28:04.468] info <- base::c(r_version = base::gsub("R version ", [17:28:04.468] "", base::R.version$version.string), [17:28:04.468] platform = base::sprintf("%s (%s-bit)", [17:28:04.468] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.468] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.468] "release", "version")], collapse = " "), [17:28:04.468] hostname = base::Sys.info()[["nodename"]]) [17:28:04.468] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.468] info) [17:28:04.468] info <- base::paste(info, collapse = "; ") [17:28:04.468] if (!has_future) { [17:28:04.468] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.468] info) [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.468] info, version) [17:28:04.468] } [17:28:04.468] base::stop(msg) [17:28:04.468] } [17:28:04.468] }) [17:28:04.468] } [17:28:04.468] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.468] base::options(mc.cores = 1L) [17:28:04.468] } [17:28:04.468] ...future.strategy.old <- future::plan("list") [17:28:04.468] options(future.plan = NULL) [17:28:04.468] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.468] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.468] } [17:28:04.468] ...future.workdir <- getwd() [17:28:04.468] } [17:28:04.468] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.468] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.468] } [17:28:04.468] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.468] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.468] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.468] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.468] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.468] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.468] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.468] base::names(...future.oldOptions)) [17:28:04.468] } [17:28:04.468] if (FALSE) { [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] if (TRUE) { [17:28:04.468] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.468] open = "w") [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.468] windows = "NUL", "/dev/null"), open = "w") [17:28:04.468] } [17:28:04.468] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.468] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.468] base::sink(type = "output", split = FALSE) [17:28:04.468] base::close(...future.stdout) [17:28:04.468] }, add = TRUE) [17:28:04.468] } [17:28:04.468] ...future.frame <- base::sys.nframe() [17:28:04.468] ...future.conditions <- base::list() [17:28:04.468] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.468] if (FALSE) { [17:28:04.468] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.468] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.468] } [17:28:04.468] ...future.result <- base::tryCatch({ [17:28:04.468] base::withCallingHandlers({ [17:28:04.468] ...future.value <- base::withVisible(base::local({ [17:28:04.468] ...future.makeSendCondition <- base::local({ [17:28:04.468] sendCondition <- NULL [17:28:04.468] function(frame = 1L) { [17:28:04.468] if (is.function(sendCondition)) [17:28:04.468] return(sendCondition) [17:28:04.468] ns <- getNamespace("parallel") [17:28:04.468] if (exists("sendData", mode = "function", [17:28:04.468] envir = ns)) { [17:28:04.468] parallel_sendData <- get("sendData", mode = "function", [17:28:04.468] envir = ns) [17:28:04.468] envir <- sys.frame(frame) [17:28:04.468] master <- NULL [17:28:04.468] while (!identical(envir, .GlobalEnv) && [17:28:04.468] !identical(envir, emptyenv())) { [17:28:04.468] if (exists("master", mode = "list", envir = envir, [17:28:04.468] inherits = FALSE)) { [17:28:04.468] master <- get("master", mode = "list", [17:28:04.468] envir = envir, inherits = FALSE) [17:28:04.468] if (inherits(master, c("SOCKnode", [17:28:04.468] "SOCK0node"))) { [17:28:04.468] sendCondition <<- function(cond) { [17:28:04.468] data <- list(type = "VALUE", value = cond, [17:28:04.468] success = TRUE) [17:28:04.468] parallel_sendData(master, data) [17:28:04.468] } [17:28:04.468] return(sendCondition) [17:28:04.468] } [17:28:04.468] } [17:28:04.468] frame <- frame + 1L [17:28:04.468] envir <- sys.frame(frame) [17:28:04.468] } [17:28:04.468] } [17:28:04.468] sendCondition <<- function(cond) NULL [17:28:04.468] } [17:28:04.468] }) [17:28:04.468] withCallingHandlers({ [17:28:04.468] { [17:28:04.468] 1 [17:28:04.468] } [17:28:04.468] }, immediateCondition = function(cond) { [17:28:04.468] sendCondition <- ...future.makeSendCondition() [17:28:04.468] sendCondition(cond) [17:28:04.468] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.468] { [17:28:04.468] inherits <- base::inherits [17:28:04.468] invokeRestart <- base::invokeRestart [17:28:04.468] is.null <- base::is.null [17:28:04.468] muffled <- FALSE [17:28:04.468] if (inherits(cond, "message")) { [17:28:04.468] muffled <- grepl(pattern, "muffleMessage") [17:28:04.468] if (muffled) [17:28:04.468] invokeRestart("muffleMessage") [17:28:04.468] } [17:28:04.468] else if (inherits(cond, "warning")) { [17:28:04.468] muffled <- grepl(pattern, "muffleWarning") [17:28:04.468] if (muffled) [17:28:04.468] invokeRestart("muffleWarning") [17:28:04.468] } [17:28:04.468] else if (inherits(cond, "condition")) { [17:28:04.468] if (!is.null(pattern)) { [17:28:04.468] computeRestarts <- base::computeRestarts [17:28:04.468] grepl <- base::grepl [17:28:04.468] restarts <- computeRestarts(cond) [17:28:04.468] for (restart in restarts) { [17:28:04.468] name <- restart$name [17:28:04.468] if (is.null(name)) [17:28:04.468] next [17:28:04.468] if (!grepl(pattern, name)) [17:28:04.468] next [17:28:04.468] invokeRestart(restart) [17:28:04.468] muffled <- TRUE [17:28:04.468] break [17:28:04.468] } [17:28:04.468] } [17:28:04.468] } [17:28:04.468] invisible(muffled) [17:28:04.468] } [17:28:04.468] muffleCondition(cond) [17:28:04.468] }) [17:28:04.468] })) [17:28:04.468] future::FutureResult(value = ...future.value$value, [17:28:04.468] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.468] ...future.rng), globalenv = if (FALSE) [17:28:04.468] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.468] ...future.globalenv.names)) [17:28:04.468] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.468] }, condition = base::local({ [17:28:04.468] c <- base::c [17:28:04.468] inherits <- base::inherits [17:28:04.468] invokeRestart <- base::invokeRestart [17:28:04.468] length <- base::length [17:28:04.468] list <- base::list [17:28:04.468] seq.int <- base::seq.int [17:28:04.468] signalCondition <- base::signalCondition [17:28:04.468] sys.calls <- base::sys.calls [17:28:04.468] `[[` <- base::`[[` [17:28:04.468] `+` <- base::`+` [17:28:04.468] `<<-` <- base::`<<-` [17:28:04.468] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.468] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.468] 3L)] [17:28:04.468] } [17:28:04.468] function(cond) { [17:28:04.468] is_error <- inherits(cond, "error") [17:28:04.468] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.468] NULL) [17:28:04.468] if (is_error) { [17:28:04.468] sessionInformation <- function() { [17:28:04.468] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.468] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.468] search = base::search(), system = base::Sys.info()) [17:28:04.468] } [17:28:04.468] ...future.conditions[[length(...future.conditions) + [17:28:04.468] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.468] cond$call), session = sessionInformation(), [17:28:04.468] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.468] signalCondition(cond) [17:28:04.468] } [17:28:04.468] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.468] "immediateCondition"))) { [17:28:04.468] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.468] ...future.conditions[[length(...future.conditions) + [17:28:04.468] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.468] if (TRUE && !signal) { [17:28:04.468] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.468] { [17:28:04.468] inherits <- base::inherits [17:28:04.468] invokeRestart <- base::invokeRestart [17:28:04.468] is.null <- base::is.null [17:28:04.468] muffled <- FALSE [17:28:04.468] if (inherits(cond, "message")) { [17:28:04.468] muffled <- grepl(pattern, "muffleMessage") [17:28:04.468] if (muffled) [17:28:04.468] invokeRestart("muffleMessage") [17:28:04.468] } [17:28:04.468] else if (inherits(cond, "warning")) { [17:28:04.468] muffled <- grepl(pattern, "muffleWarning") [17:28:04.468] if (muffled) [17:28:04.468] invokeRestart("muffleWarning") [17:28:04.468] } [17:28:04.468] else if (inherits(cond, "condition")) { [17:28:04.468] if (!is.null(pattern)) { [17:28:04.468] computeRestarts <- base::computeRestarts [17:28:04.468] grepl <- base::grepl [17:28:04.468] restarts <- computeRestarts(cond) [17:28:04.468] for (restart in restarts) { [17:28:04.468] name <- restart$name [17:28:04.468] if (is.null(name)) [17:28:04.468] next [17:28:04.468] if (!grepl(pattern, name)) [17:28:04.468] next [17:28:04.468] invokeRestart(restart) [17:28:04.468] muffled <- TRUE [17:28:04.468] break [17:28:04.468] } [17:28:04.468] } [17:28:04.468] } [17:28:04.468] invisible(muffled) [17:28:04.468] } [17:28:04.468] muffleCondition(cond, pattern = "^muffle") [17:28:04.468] } [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] if (TRUE) { [17:28:04.468] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.468] { [17:28:04.468] inherits <- base::inherits [17:28:04.468] invokeRestart <- base::invokeRestart [17:28:04.468] is.null <- base::is.null [17:28:04.468] muffled <- FALSE [17:28:04.468] if (inherits(cond, "message")) { [17:28:04.468] muffled <- grepl(pattern, "muffleMessage") [17:28:04.468] if (muffled) [17:28:04.468] invokeRestart("muffleMessage") [17:28:04.468] } [17:28:04.468] else if (inherits(cond, "warning")) { [17:28:04.468] muffled <- grepl(pattern, "muffleWarning") [17:28:04.468] if (muffled) [17:28:04.468] invokeRestart("muffleWarning") [17:28:04.468] } [17:28:04.468] else if (inherits(cond, "condition")) { [17:28:04.468] if (!is.null(pattern)) { [17:28:04.468] computeRestarts <- base::computeRestarts [17:28:04.468] grepl <- base::grepl [17:28:04.468] restarts <- computeRestarts(cond) [17:28:04.468] for (restart in restarts) { [17:28:04.468] name <- restart$name [17:28:04.468] if (is.null(name)) [17:28:04.468] next [17:28:04.468] if (!grepl(pattern, name)) [17:28:04.468] next [17:28:04.468] invokeRestart(restart) [17:28:04.468] muffled <- TRUE [17:28:04.468] break [17:28:04.468] } [17:28:04.468] } [17:28:04.468] } [17:28:04.468] invisible(muffled) [17:28:04.468] } [17:28:04.468] muffleCondition(cond, pattern = "^muffle") [17:28:04.468] } [17:28:04.468] } [17:28:04.468] } [17:28:04.468] })) [17:28:04.468] }, error = function(ex) { [17:28:04.468] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.468] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.468] ...future.rng), started = ...future.startTime, [17:28:04.468] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.468] version = "1.8"), class = "FutureResult") [17:28:04.468] }, finally = { [17:28:04.468] if (!identical(...future.workdir, getwd())) [17:28:04.468] setwd(...future.workdir) [17:28:04.468] { [17:28:04.468] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.468] ...future.oldOptions$nwarnings <- NULL [17:28:04.468] } [17:28:04.468] base::options(...future.oldOptions) [17:28:04.468] if (.Platform$OS.type == "windows") { [17:28:04.468] old_names <- names(...future.oldEnvVars) [17:28:04.468] envs <- base::Sys.getenv() [17:28:04.468] names <- names(envs) [17:28:04.468] common <- intersect(names, old_names) [17:28:04.468] added <- setdiff(names, old_names) [17:28:04.468] removed <- setdiff(old_names, names) [17:28:04.468] changed <- common[...future.oldEnvVars[common] != [17:28:04.468] envs[common]] [17:28:04.468] NAMES <- toupper(changed) [17:28:04.468] args <- list() [17:28:04.468] for (kk in seq_along(NAMES)) { [17:28:04.468] name <- changed[[kk]] [17:28:04.468] NAME <- NAMES[[kk]] [17:28:04.468] if (name != NAME && is.element(NAME, old_names)) [17:28:04.468] next [17:28:04.468] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.468] } [17:28:04.468] NAMES <- toupper(added) [17:28:04.468] for (kk in seq_along(NAMES)) { [17:28:04.468] name <- added[[kk]] [17:28:04.468] NAME <- NAMES[[kk]] [17:28:04.468] if (name != NAME && is.element(NAME, old_names)) [17:28:04.468] next [17:28:04.468] args[[name]] <- "" [17:28:04.468] } [17:28:04.468] NAMES <- toupper(removed) [17:28:04.468] for (kk in seq_along(NAMES)) { [17:28:04.468] name <- removed[[kk]] [17:28:04.468] NAME <- NAMES[[kk]] [17:28:04.468] if (name != NAME && is.element(NAME, old_names)) [17:28:04.468] next [17:28:04.468] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.468] } [17:28:04.468] if (length(args) > 0) [17:28:04.468] base::do.call(base::Sys.setenv, args = args) [17:28:04.468] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.468] } [17:28:04.468] { [17:28:04.468] if (base::length(...future.futureOptionsAdded) > [17:28:04.468] 0L) { [17:28:04.468] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.468] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.468] base::options(opts) [17:28:04.468] } [17:28:04.468] { [17:28:04.468] { [17:28:04.468] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.468] NULL [17:28:04.468] } [17:28:04.468] options(future.plan = NULL) [17:28:04.468] if (is.na(NA_character_)) [17:28:04.468] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.468] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.468] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.468] .init = FALSE) [17:28:04.468] } [17:28:04.468] } [17:28:04.468] } [17:28:04.468] }) [17:28:04.468] if (TRUE) { [17:28:04.468] base::sink(type = "output", split = FALSE) [17:28:04.468] if (TRUE) { [17:28:04.468] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.468] } [17:28:04.468] else { [17:28:04.468] ...future.result["stdout"] <- base::list(NULL) [17:28:04.468] } [17:28:04.468] base::close(...future.stdout) [17:28:04.468] ...future.stdout <- NULL [17:28:04.468] } [17:28:04.468] ...future.result$conditions <- ...future.conditions [17:28:04.468] ...future.result$finished <- base::Sys.time() [17:28:04.468] ...future.result [17:28:04.468] } [17:28:04.473] MultisessionFuture started [17:28:04.473] - Launch lazy future ... done [17:28:04.474] run() for 'MultisessionFuture' ... done [17:28:04.474] getGlobalsAndPackages() ... [17:28:04.474] Searching for globals... [17:28:04.475] - globals found: [2] '{', 'Sys.sleep' [17:28:04.476] Searching for globals ... DONE [17:28:04.476] Resolving globals: FALSE [17:28:04.476] [17:28:04.476] [17:28:04.476] getGlobalsAndPackages() ... DONE [17:28:04.477] run() for 'Future' ... [17:28:04.477] - state: 'created' [17:28:04.477] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.490] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.491] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.491] - Field: 'node' [17:28:04.491] - Field: 'label' [17:28:04.491] - Field: 'local' [17:28:04.491] - Field: 'owner' [17:28:04.492] - Field: 'envir' [17:28:04.492] - Field: 'workers' [17:28:04.492] - Field: 'packages' [17:28:04.492] - Field: 'gc' [17:28:04.492] - Field: 'conditions' [17:28:04.493] - Field: 'persistent' [17:28:04.493] - Field: 'expr' [17:28:04.493] - Field: 'uuid' [17:28:04.493] - Field: 'seed' [17:28:04.493] - Field: 'version' [17:28:04.493] - Field: 'result' [17:28:04.494] - Field: 'asynchronous' [17:28:04.494] - Field: 'calls' [17:28:04.494] - Field: 'globals' [17:28:04.494] - Field: 'stdout' [17:28:04.494] - Field: 'earlySignal' [17:28:04.494] - Field: 'lazy' [17:28:04.495] - Field: 'state' [17:28:04.495] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.495] - Launch lazy future ... [17:28:04.495] Packages needed by the future expression (n = 0): [17:28:04.496] Packages needed by future strategies (n = 0): [17:28:04.496] { [17:28:04.496] { [17:28:04.496] { [17:28:04.496] ...future.startTime <- base::Sys.time() [17:28:04.496] { [17:28:04.496] { [17:28:04.496] { [17:28:04.496] { [17:28:04.496] base::local({ [17:28:04.496] has_future <- base::requireNamespace("future", [17:28:04.496] quietly = TRUE) [17:28:04.496] if (has_future) { [17:28:04.496] ns <- base::getNamespace("future") [17:28:04.496] version <- ns[[".package"]][["version"]] [17:28:04.496] if (is.null(version)) [17:28:04.496] version <- utils::packageVersion("future") [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] version <- NULL [17:28:04.496] } [17:28:04.496] if (!has_future || version < "1.8.0") { [17:28:04.496] info <- base::c(r_version = base::gsub("R version ", [17:28:04.496] "", base::R.version$version.string), [17:28:04.496] platform = base::sprintf("%s (%s-bit)", [17:28:04.496] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.496] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.496] "release", "version")], collapse = " "), [17:28:04.496] hostname = base::Sys.info()[["nodename"]]) [17:28:04.496] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.496] info) [17:28:04.496] info <- base::paste(info, collapse = "; ") [17:28:04.496] if (!has_future) { [17:28:04.496] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.496] info) [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.496] info, version) [17:28:04.496] } [17:28:04.496] base::stop(msg) [17:28:04.496] } [17:28:04.496] }) [17:28:04.496] } [17:28:04.496] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.496] base::options(mc.cores = 1L) [17:28:04.496] } [17:28:04.496] ...future.strategy.old <- future::plan("list") [17:28:04.496] options(future.plan = NULL) [17:28:04.496] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.496] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.496] } [17:28:04.496] ...future.workdir <- getwd() [17:28:04.496] } [17:28:04.496] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.496] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.496] } [17:28:04.496] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.496] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.496] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.496] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.496] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.496] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.496] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.496] base::names(...future.oldOptions)) [17:28:04.496] } [17:28:04.496] if (FALSE) { [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] if (TRUE) { [17:28:04.496] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.496] open = "w") [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.496] windows = "NUL", "/dev/null"), open = "w") [17:28:04.496] } [17:28:04.496] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.496] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.496] base::sink(type = "output", split = FALSE) [17:28:04.496] base::close(...future.stdout) [17:28:04.496] }, add = TRUE) [17:28:04.496] } [17:28:04.496] ...future.frame <- base::sys.nframe() [17:28:04.496] ...future.conditions <- base::list() [17:28:04.496] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.496] if (FALSE) { [17:28:04.496] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.496] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.496] } [17:28:04.496] ...future.result <- base::tryCatch({ [17:28:04.496] base::withCallingHandlers({ [17:28:04.496] ...future.value <- base::withVisible(base::local({ [17:28:04.496] ...future.makeSendCondition <- base::local({ [17:28:04.496] sendCondition <- NULL [17:28:04.496] function(frame = 1L) { [17:28:04.496] if (is.function(sendCondition)) [17:28:04.496] return(sendCondition) [17:28:04.496] ns <- getNamespace("parallel") [17:28:04.496] if (exists("sendData", mode = "function", [17:28:04.496] envir = ns)) { [17:28:04.496] parallel_sendData <- get("sendData", mode = "function", [17:28:04.496] envir = ns) [17:28:04.496] envir <- sys.frame(frame) [17:28:04.496] master <- NULL [17:28:04.496] while (!identical(envir, .GlobalEnv) && [17:28:04.496] !identical(envir, emptyenv())) { [17:28:04.496] if (exists("master", mode = "list", envir = envir, [17:28:04.496] inherits = FALSE)) { [17:28:04.496] master <- get("master", mode = "list", [17:28:04.496] envir = envir, inherits = FALSE) [17:28:04.496] if (inherits(master, c("SOCKnode", [17:28:04.496] "SOCK0node"))) { [17:28:04.496] sendCondition <<- function(cond) { [17:28:04.496] data <- list(type = "VALUE", value = cond, [17:28:04.496] success = TRUE) [17:28:04.496] parallel_sendData(master, data) [17:28:04.496] } [17:28:04.496] return(sendCondition) [17:28:04.496] } [17:28:04.496] } [17:28:04.496] frame <- frame + 1L [17:28:04.496] envir <- sys.frame(frame) [17:28:04.496] } [17:28:04.496] } [17:28:04.496] sendCondition <<- function(cond) NULL [17:28:04.496] } [17:28:04.496] }) [17:28:04.496] withCallingHandlers({ [17:28:04.496] { [17:28:04.496] Sys.sleep(0.5) [17:28:04.496] 2 [17:28:04.496] } [17:28:04.496] }, immediateCondition = function(cond) { [17:28:04.496] sendCondition <- ...future.makeSendCondition() [17:28:04.496] sendCondition(cond) [17:28:04.496] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.496] { [17:28:04.496] inherits <- base::inherits [17:28:04.496] invokeRestart <- base::invokeRestart [17:28:04.496] is.null <- base::is.null [17:28:04.496] muffled <- FALSE [17:28:04.496] if (inherits(cond, "message")) { [17:28:04.496] muffled <- grepl(pattern, "muffleMessage") [17:28:04.496] if (muffled) [17:28:04.496] invokeRestart("muffleMessage") [17:28:04.496] } [17:28:04.496] else if (inherits(cond, "warning")) { [17:28:04.496] muffled <- grepl(pattern, "muffleWarning") [17:28:04.496] if (muffled) [17:28:04.496] invokeRestart("muffleWarning") [17:28:04.496] } [17:28:04.496] else if (inherits(cond, "condition")) { [17:28:04.496] if (!is.null(pattern)) { [17:28:04.496] computeRestarts <- base::computeRestarts [17:28:04.496] grepl <- base::grepl [17:28:04.496] restarts <- computeRestarts(cond) [17:28:04.496] for (restart in restarts) { [17:28:04.496] name <- restart$name [17:28:04.496] if (is.null(name)) [17:28:04.496] next [17:28:04.496] if (!grepl(pattern, name)) [17:28:04.496] next [17:28:04.496] invokeRestart(restart) [17:28:04.496] muffled <- TRUE [17:28:04.496] break [17:28:04.496] } [17:28:04.496] } [17:28:04.496] } [17:28:04.496] invisible(muffled) [17:28:04.496] } [17:28:04.496] muffleCondition(cond) [17:28:04.496] }) [17:28:04.496] })) [17:28:04.496] future::FutureResult(value = ...future.value$value, [17:28:04.496] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.496] ...future.rng), globalenv = if (FALSE) [17:28:04.496] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.496] ...future.globalenv.names)) [17:28:04.496] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.496] }, condition = base::local({ [17:28:04.496] c <- base::c [17:28:04.496] inherits <- base::inherits [17:28:04.496] invokeRestart <- base::invokeRestart [17:28:04.496] length <- base::length [17:28:04.496] list <- base::list [17:28:04.496] seq.int <- base::seq.int [17:28:04.496] signalCondition <- base::signalCondition [17:28:04.496] sys.calls <- base::sys.calls [17:28:04.496] `[[` <- base::`[[` [17:28:04.496] `+` <- base::`+` [17:28:04.496] `<<-` <- base::`<<-` [17:28:04.496] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.496] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.496] 3L)] [17:28:04.496] } [17:28:04.496] function(cond) { [17:28:04.496] is_error <- inherits(cond, "error") [17:28:04.496] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.496] NULL) [17:28:04.496] if (is_error) { [17:28:04.496] sessionInformation <- function() { [17:28:04.496] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.496] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.496] search = base::search(), system = base::Sys.info()) [17:28:04.496] } [17:28:04.496] ...future.conditions[[length(...future.conditions) + [17:28:04.496] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.496] cond$call), session = sessionInformation(), [17:28:04.496] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.496] signalCondition(cond) [17:28:04.496] } [17:28:04.496] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.496] "immediateCondition"))) { [17:28:04.496] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.496] ...future.conditions[[length(...future.conditions) + [17:28:04.496] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.496] if (TRUE && !signal) { [17:28:04.496] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.496] { [17:28:04.496] inherits <- base::inherits [17:28:04.496] invokeRestart <- base::invokeRestart [17:28:04.496] is.null <- base::is.null [17:28:04.496] muffled <- FALSE [17:28:04.496] if (inherits(cond, "message")) { [17:28:04.496] muffled <- grepl(pattern, "muffleMessage") [17:28:04.496] if (muffled) [17:28:04.496] invokeRestart("muffleMessage") [17:28:04.496] } [17:28:04.496] else if (inherits(cond, "warning")) { [17:28:04.496] muffled <- grepl(pattern, "muffleWarning") [17:28:04.496] if (muffled) [17:28:04.496] invokeRestart("muffleWarning") [17:28:04.496] } [17:28:04.496] else if (inherits(cond, "condition")) { [17:28:04.496] if (!is.null(pattern)) { [17:28:04.496] computeRestarts <- base::computeRestarts [17:28:04.496] grepl <- base::grepl [17:28:04.496] restarts <- computeRestarts(cond) [17:28:04.496] for (restart in restarts) { [17:28:04.496] name <- restart$name [17:28:04.496] if (is.null(name)) [17:28:04.496] next [17:28:04.496] if (!grepl(pattern, name)) [17:28:04.496] next [17:28:04.496] invokeRestart(restart) [17:28:04.496] muffled <- TRUE [17:28:04.496] break [17:28:04.496] } [17:28:04.496] } [17:28:04.496] } [17:28:04.496] invisible(muffled) [17:28:04.496] } [17:28:04.496] muffleCondition(cond, pattern = "^muffle") [17:28:04.496] } [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] if (TRUE) { [17:28:04.496] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.496] { [17:28:04.496] inherits <- base::inherits [17:28:04.496] invokeRestart <- base::invokeRestart [17:28:04.496] is.null <- base::is.null [17:28:04.496] muffled <- FALSE [17:28:04.496] if (inherits(cond, "message")) { [17:28:04.496] muffled <- grepl(pattern, "muffleMessage") [17:28:04.496] if (muffled) [17:28:04.496] invokeRestart("muffleMessage") [17:28:04.496] } [17:28:04.496] else if (inherits(cond, "warning")) { [17:28:04.496] muffled <- grepl(pattern, "muffleWarning") [17:28:04.496] if (muffled) [17:28:04.496] invokeRestart("muffleWarning") [17:28:04.496] } [17:28:04.496] else if (inherits(cond, "condition")) { [17:28:04.496] if (!is.null(pattern)) { [17:28:04.496] computeRestarts <- base::computeRestarts [17:28:04.496] grepl <- base::grepl [17:28:04.496] restarts <- computeRestarts(cond) [17:28:04.496] for (restart in restarts) { [17:28:04.496] name <- restart$name [17:28:04.496] if (is.null(name)) [17:28:04.496] next [17:28:04.496] if (!grepl(pattern, name)) [17:28:04.496] next [17:28:04.496] invokeRestart(restart) [17:28:04.496] muffled <- TRUE [17:28:04.496] break [17:28:04.496] } [17:28:04.496] } [17:28:04.496] } [17:28:04.496] invisible(muffled) [17:28:04.496] } [17:28:04.496] muffleCondition(cond, pattern = "^muffle") [17:28:04.496] } [17:28:04.496] } [17:28:04.496] } [17:28:04.496] })) [17:28:04.496] }, error = function(ex) { [17:28:04.496] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.496] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.496] ...future.rng), started = ...future.startTime, [17:28:04.496] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.496] version = "1.8"), class = "FutureResult") [17:28:04.496] }, finally = { [17:28:04.496] if (!identical(...future.workdir, getwd())) [17:28:04.496] setwd(...future.workdir) [17:28:04.496] { [17:28:04.496] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.496] ...future.oldOptions$nwarnings <- NULL [17:28:04.496] } [17:28:04.496] base::options(...future.oldOptions) [17:28:04.496] if (.Platform$OS.type == "windows") { [17:28:04.496] old_names <- names(...future.oldEnvVars) [17:28:04.496] envs <- base::Sys.getenv() [17:28:04.496] names <- names(envs) [17:28:04.496] common <- intersect(names, old_names) [17:28:04.496] added <- setdiff(names, old_names) [17:28:04.496] removed <- setdiff(old_names, names) [17:28:04.496] changed <- common[...future.oldEnvVars[common] != [17:28:04.496] envs[common]] [17:28:04.496] NAMES <- toupper(changed) [17:28:04.496] args <- list() [17:28:04.496] for (kk in seq_along(NAMES)) { [17:28:04.496] name <- changed[[kk]] [17:28:04.496] NAME <- NAMES[[kk]] [17:28:04.496] if (name != NAME && is.element(NAME, old_names)) [17:28:04.496] next [17:28:04.496] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.496] } [17:28:04.496] NAMES <- toupper(added) [17:28:04.496] for (kk in seq_along(NAMES)) { [17:28:04.496] name <- added[[kk]] [17:28:04.496] NAME <- NAMES[[kk]] [17:28:04.496] if (name != NAME && is.element(NAME, old_names)) [17:28:04.496] next [17:28:04.496] args[[name]] <- "" [17:28:04.496] } [17:28:04.496] NAMES <- toupper(removed) [17:28:04.496] for (kk in seq_along(NAMES)) { [17:28:04.496] name <- removed[[kk]] [17:28:04.496] NAME <- NAMES[[kk]] [17:28:04.496] if (name != NAME && is.element(NAME, old_names)) [17:28:04.496] next [17:28:04.496] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.496] } [17:28:04.496] if (length(args) > 0) [17:28:04.496] base::do.call(base::Sys.setenv, args = args) [17:28:04.496] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.496] } [17:28:04.496] { [17:28:04.496] if (base::length(...future.futureOptionsAdded) > [17:28:04.496] 0L) { [17:28:04.496] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.496] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.496] base::options(opts) [17:28:04.496] } [17:28:04.496] { [17:28:04.496] { [17:28:04.496] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.496] NULL [17:28:04.496] } [17:28:04.496] options(future.plan = NULL) [17:28:04.496] if (is.na(NA_character_)) [17:28:04.496] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.496] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.496] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.496] .init = FALSE) [17:28:04.496] } [17:28:04.496] } [17:28:04.496] } [17:28:04.496] }) [17:28:04.496] if (TRUE) { [17:28:04.496] base::sink(type = "output", split = FALSE) [17:28:04.496] if (TRUE) { [17:28:04.496] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.496] } [17:28:04.496] else { [17:28:04.496] ...future.result["stdout"] <- base::list(NULL) [17:28:04.496] } [17:28:04.496] base::close(...future.stdout) [17:28:04.496] ...future.stdout <- NULL [17:28:04.496] } [17:28:04.496] ...future.result$conditions <- ...future.conditions [17:28:04.496] ...future.result$finished <- base::Sys.time() [17:28:04.496] ...future.result [17:28:04.496] } [17:28:04.502] MultisessionFuture started [17:28:04.502] - Launch lazy future ... done [17:28:04.502] run() for 'MultisessionFuture' ... done [17:28:04.502] getGlobalsAndPackages() ... [17:28:04.503] Searching for globals... [17:28:04.503] - globals found: [1] '{' [17:28:04.504] Searching for globals ... DONE [17:28:04.504] Resolving globals: FALSE [17:28:04.504] [17:28:04.504] [17:28:04.504] getGlobalsAndPackages() ... DONE [17:28:04.505] run() for 'Future' ... [17:28:04.505] - state: 'created' [17:28:04.505] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [17:28:04.519] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [17:28:04.519] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [17:28:04.519] - Field: 'node' [17:28:04.519] - Field: 'label' [17:28:04.519] - Field: 'local' [17:28:04.520] - Field: 'owner' [17:28:04.520] - Field: 'envir' [17:28:04.520] - Field: 'workers' [17:28:04.520] - Field: 'packages' [17:28:04.520] - Field: 'gc' [17:28:04.520] - Field: 'conditions' [17:28:04.521] - Field: 'persistent' [17:28:04.521] - Field: 'expr' [17:28:04.521] - Field: 'uuid' [17:28:04.521] - Field: 'seed' [17:28:04.521] - Field: 'version' [17:28:04.522] - Field: 'result' [17:28:04.522] - Field: 'asynchronous' [17:28:04.522] - Field: 'calls' [17:28:04.522] - Field: 'globals' [17:28:04.522] - Field: 'stdout' [17:28:04.522] - Field: 'earlySignal' [17:28:04.523] - Field: 'lazy' [17:28:04.523] - Field: 'state' [17:28:04.523] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [17:28:04.523] - Launch lazy future ... [17:28:04.523] Packages needed by the future expression (n = 0): [17:28:04.524] Packages needed by future strategies (n = 0): [17:28:04.524] { [17:28:04.524] { [17:28:04.524] { [17:28:04.524] ...future.startTime <- base::Sys.time() [17:28:04.524] { [17:28:04.524] { [17:28:04.524] { [17:28:04.524] { [17:28:04.524] base::local({ [17:28:04.524] has_future <- base::requireNamespace("future", [17:28:04.524] quietly = TRUE) [17:28:04.524] if (has_future) { [17:28:04.524] ns <- base::getNamespace("future") [17:28:04.524] version <- ns[[".package"]][["version"]] [17:28:04.524] if (is.null(version)) [17:28:04.524] version <- utils::packageVersion("future") [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] version <- NULL [17:28:04.524] } [17:28:04.524] if (!has_future || version < "1.8.0") { [17:28:04.524] info <- base::c(r_version = base::gsub("R version ", [17:28:04.524] "", base::R.version$version.string), [17:28:04.524] platform = base::sprintf("%s (%s-bit)", [17:28:04.524] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [17:28:04.524] os = base::paste(base::Sys.info()[base::c("sysname", [17:28:04.524] "release", "version")], collapse = " "), [17:28:04.524] hostname = base::Sys.info()[["nodename"]]) [17:28:04.524] info <- base::sprintf("%s: %s", base::names(info), [17:28:04.524] info) [17:28:04.524] info <- base::paste(info, collapse = "; ") [17:28:04.524] if (!has_future) { [17:28:04.524] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [17:28:04.524] info) [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [17:28:04.524] info, version) [17:28:04.524] } [17:28:04.524] base::stop(msg) [17:28:04.524] } [17:28:04.524] }) [17:28:04.524] } [17:28:04.524] ...future.mc.cores.old <- base::getOption("mc.cores") [17:28:04.524] base::options(mc.cores = 1L) [17:28:04.524] } [17:28:04.524] ...future.strategy.old <- future::plan("list") [17:28:04.524] options(future.plan = NULL) [17:28:04.524] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.524] future::plan("default", .cleanup = FALSE, .init = FALSE) [17:28:04.524] } [17:28:04.524] ...future.workdir <- getwd() [17:28:04.524] } [17:28:04.524] ...future.oldOptions <- base::as.list(base::.Options) [17:28:04.524] ...future.oldEnvVars <- base::Sys.getenv() [17:28:04.524] } [17:28:04.524] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [17:28:04.524] future.globals.maxSize = NULL, future.globals.method = NULL, [17:28:04.524] future.globals.onMissing = NULL, future.globals.onReference = NULL, [17:28:04.524] future.globals.resolve = NULL, future.resolve.recursive = NULL, [17:28:04.524] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [17:28:04.524] future.stdout.windows.reencode = NULL, width = 80L) [17:28:04.524] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [17:28:04.524] base::names(...future.oldOptions)) [17:28:04.524] } [17:28:04.524] if (FALSE) { [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] if (TRUE) { [17:28:04.524] ...future.stdout <- base::rawConnection(base::raw(0L), [17:28:04.524] open = "w") [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [17:28:04.524] windows = "NUL", "/dev/null"), open = "w") [17:28:04.524] } [17:28:04.524] base::sink(...future.stdout, type = "output", split = FALSE) [17:28:04.524] base::on.exit(if (!base::is.null(...future.stdout)) { [17:28:04.524] base::sink(type = "output", split = FALSE) [17:28:04.524] base::close(...future.stdout) [17:28:04.524] }, add = TRUE) [17:28:04.524] } [17:28:04.524] ...future.frame <- base::sys.nframe() [17:28:04.524] ...future.conditions <- base::list() [17:28:04.524] ...future.rng <- base::globalenv()$.Random.seed [17:28:04.524] if (FALSE) { [17:28:04.524] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [17:28:04.524] "...future.value", "...future.globalenv.names", ".Random.seed") [17:28:04.524] } [17:28:04.524] ...future.result <- base::tryCatch({ [17:28:04.524] base::withCallingHandlers({ [17:28:04.524] ...future.value <- base::withVisible(base::local({ [17:28:04.524] ...future.makeSendCondition <- base::local({ [17:28:04.524] sendCondition <- NULL [17:28:04.524] function(frame = 1L) { [17:28:04.524] if (is.function(sendCondition)) [17:28:04.524] return(sendCondition) [17:28:04.524] ns <- getNamespace("parallel") [17:28:04.524] if (exists("sendData", mode = "function", [17:28:04.524] envir = ns)) { [17:28:04.524] parallel_sendData <- get("sendData", mode = "function", [17:28:04.524] envir = ns) [17:28:04.524] envir <- sys.frame(frame) [17:28:04.524] master <- NULL [17:28:04.524] while (!identical(envir, .GlobalEnv) && [17:28:04.524] !identical(envir, emptyenv())) { [17:28:04.524] if (exists("master", mode = "list", envir = envir, [17:28:04.524] inherits = FALSE)) { [17:28:04.524] master <- get("master", mode = "list", [17:28:04.524] envir = envir, inherits = FALSE) [17:28:04.524] if (inherits(master, c("SOCKnode", [17:28:04.524] "SOCK0node"))) { [17:28:04.524] sendCondition <<- function(cond) { [17:28:04.524] data <- list(type = "VALUE", value = cond, [17:28:04.524] success = TRUE) [17:28:04.524] parallel_sendData(master, data) [17:28:04.524] } [17:28:04.524] return(sendCondition) [17:28:04.524] } [17:28:04.524] } [17:28:04.524] frame <- frame + 1L [17:28:04.524] envir <- sys.frame(frame) [17:28:04.524] } [17:28:04.524] } [17:28:04.524] sendCondition <<- function(cond) NULL [17:28:04.524] } [17:28:04.524] }) [17:28:04.524] withCallingHandlers({ [17:28:04.524] { [17:28:04.524] 3 [17:28:04.524] } [17:28:04.524] }, immediateCondition = function(cond) { [17:28:04.524] sendCondition <- ...future.makeSendCondition() [17:28:04.524] sendCondition(cond) [17:28:04.524] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.524] { [17:28:04.524] inherits <- base::inherits [17:28:04.524] invokeRestart <- base::invokeRestart [17:28:04.524] is.null <- base::is.null [17:28:04.524] muffled <- FALSE [17:28:04.524] if (inherits(cond, "message")) { [17:28:04.524] muffled <- grepl(pattern, "muffleMessage") [17:28:04.524] if (muffled) [17:28:04.524] invokeRestart("muffleMessage") [17:28:04.524] } [17:28:04.524] else if (inherits(cond, "warning")) { [17:28:04.524] muffled <- grepl(pattern, "muffleWarning") [17:28:04.524] if (muffled) [17:28:04.524] invokeRestart("muffleWarning") [17:28:04.524] } [17:28:04.524] else if (inherits(cond, "condition")) { [17:28:04.524] if (!is.null(pattern)) { [17:28:04.524] computeRestarts <- base::computeRestarts [17:28:04.524] grepl <- base::grepl [17:28:04.524] restarts <- computeRestarts(cond) [17:28:04.524] for (restart in restarts) { [17:28:04.524] name <- restart$name [17:28:04.524] if (is.null(name)) [17:28:04.524] next [17:28:04.524] if (!grepl(pattern, name)) [17:28:04.524] next [17:28:04.524] invokeRestart(restart) [17:28:04.524] muffled <- TRUE [17:28:04.524] break [17:28:04.524] } [17:28:04.524] } [17:28:04.524] } [17:28:04.524] invisible(muffled) [17:28:04.524] } [17:28:04.524] muffleCondition(cond) [17:28:04.524] }) [17:28:04.524] })) [17:28:04.524] future::FutureResult(value = ...future.value$value, [17:28:04.524] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.524] ...future.rng), globalenv = if (FALSE) [17:28:04.524] list(added = base::setdiff(base::names(base::.GlobalEnv), [17:28:04.524] ...future.globalenv.names)) [17:28:04.524] else NULL, started = ...future.startTime, version = "1.8") [17:28:04.524] }, condition = base::local({ [17:28:04.524] c <- base::c [17:28:04.524] inherits <- base::inherits [17:28:04.524] invokeRestart <- base::invokeRestart [17:28:04.524] length <- base::length [17:28:04.524] list <- base::list [17:28:04.524] seq.int <- base::seq.int [17:28:04.524] signalCondition <- base::signalCondition [17:28:04.524] sys.calls <- base::sys.calls [17:28:04.524] `[[` <- base::`[[` [17:28:04.524] `+` <- base::`+` [17:28:04.524] `<<-` <- base::`<<-` [17:28:04.524] sysCalls <- function(calls = sys.calls(), from = 1L) { [17:28:04.524] calls[seq.int(from = from + 12L, to = length(calls) - [17:28:04.524] 3L)] [17:28:04.524] } [17:28:04.524] function(cond) { [17:28:04.524] is_error <- inherits(cond, "error") [17:28:04.524] ignore <- !is_error && !is.null(NULL) && inherits(cond, [17:28:04.524] NULL) [17:28:04.524] if (is_error) { [17:28:04.524] sessionInformation <- function() { [17:28:04.524] list(r = base::R.Version(), locale = base::Sys.getlocale(), [17:28:04.524] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [17:28:04.524] search = base::search(), system = base::Sys.info()) [17:28:04.524] } [17:28:04.524] ...future.conditions[[length(...future.conditions) + [17:28:04.524] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [17:28:04.524] cond$call), session = sessionInformation(), [17:28:04.524] timestamp = base::Sys.time(), signaled = 0L) [17:28:04.524] signalCondition(cond) [17:28:04.524] } [17:28:04.524] else if (!ignore && TRUE && inherits(cond, c("condition", [17:28:04.524] "immediateCondition"))) { [17:28:04.524] signal <- TRUE && inherits(cond, "immediateCondition") [17:28:04.524] ...future.conditions[[length(...future.conditions) + [17:28:04.524] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [17:28:04.524] if (TRUE && !signal) { [17:28:04.524] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.524] { [17:28:04.524] inherits <- base::inherits [17:28:04.524] invokeRestart <- base::invokeRestart [17:28:04.524] is.null <- base::is.null [17:28:04.524] muffled <- FALSE [17:28:04.524] if (inherits(cond, "message")) { [17:28:04.524] muffled <- grepl(pattern, "muffleMessage") [17:28:04.524] if (muffled) [17:28:04.524] invokeRestart("muffleMessage") [17:28:04.524] } [17:28:04.524] else if (inherits(cond, "warning")) { [17:28:04.524] muffled <- grepl(pattern, "muffleWarning") [17:28:04.524] if (muffled) [17:28:04.524] invokeRestart("muffleWarning") [17:28:04.524] } [17:28:04.524] else if (inherits(cond, "condition")) { [17:28:04.524] if (!is.null(pattern)) { [17:28:04.524] computeRestarts <- base::computeRestarts [17:28:04.524] grepl <- base::grepl [17:28:04.524] restarts <- computeRestarts(cond) [17:28:04.524] for (restart in restarts) { [17:28:04.524] name <- restart$name [17:28:04.524] if (is.null(name)) [17:28:04.524] next [17:28:04.524] if (!grepl(pattern, name)) [17:28:04.524] next [17:28:04.524] invokeRestart(restart) [17:28:04.524] muffled <- TRUE [17:28:04.524] break [17:28:04.524] } [17:28:04.524] } [17:28:04.524] } [17:28:04.524] invisible(muffled) [17:28:04.524] } [17:28:04.524] muffleCondition(cond, pattern = "^muffle") [17:28:04.524] } [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] if (TRUE) { [17:28:04.524] muffleCondition <- function (cond, pattern = "^muffle") [17:28:04.524] { [17:28:04.524] inherits <- base::inherits [17:28:04.524] invokeRestart <- base::invokeRestart [17:28:04.524] is.null <- base::is.null [17:28:04.524] muffled <- FALSE [17:28:04.524] if (inherits(cond, "message")) { [17:28:04.524] muffled <- grepl(pattern, "muffleMessage") [17:28:04.524] if (muffled) [17:28:04.524] invokeRestart("muffleMessage") [17:28:04.524] } [17:28:04.524] else if (inherits(cond, "warning")) { [17:28:04.524] muffled <- grepl(pattern, "muffleWarning") [17:28:04.524] if (muffled) [17:28:04.524] invokeRestart("muffleWarning") [17:28:04.524] } [17:28:04.524] else if (inherits(cond, "condition")) { [17:28:04.524] if (!is.null(pattern)) { [17:28:04.524] computeRestarts <- base::computeRestarts [17:28:04.524] grepl <- base::grepl [17:28:04.524] restarts <- computeRestarts(cond) [17:28:04.524] for (restart in restarts) { [17:28:04.524] name <- restart$name [17:28:04.524] if (is.null(name)) [17:28:04.524] next [17:28:04.524] if (!grepl(pattern, name)) [17:28:04.524] next [17:28:04.524] invokeRestart(restart) [17:28:04.524] muffled <- TRUE [17:28:04.524] break [17:28:04.524] } [17:28:04.524] } [17:28:04.524] } [17:28:04.524] invisible(muffled) [17:28:04.524] } [17:28:04.524] muffleCondition(cond, pattern = "^muffle") [17:28:04.524] } [17:28:04.524] } [17:28:04.524] } [17:28:04.524] })) [17:28:04.524] }, error = function(ex) { [17:28:04.524] base::structure(base::list(value = NULL, visible = NULL, [17:28:04.524] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [17:28:04.524] ...future.rng), started = ...future.startTime, [17:28:04.524] finished = Sys.time(), session_uuid = NA_character_, [17:28:04.524] version = "1.8"), class = "FutureResult") [17:28:04.524] }, finally = { [17:28:04.524] if (!identical(...future.workdir, getwd())) [17:28:04.524] setwd(...future.workdir) [17:28:04.524] { [17:28:04.524] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [17:28:04.524] ...future.oldOptions$nwarnings <- NULL [17:28:04.524] } [17:28:04.524] base::options(...future.oldOptions) [17:28:04.524] if (.Platform$OS.type == "windows") { [17:28:04.524] old_names <- names(...future.oldEnvVars) [17:28:04.524] envs <- base::Sys.getenv() [17:28:04.524] names <- names(envs) [17:28:04.524] common <- intersect(names, old_names) [17:28:04.524] added <- setdiff(names, old_names) [17:28:04.524] removed <- setdiff(old_names, names) [17:28:04.524] changed <- common[...future.oldEnvVars[common] != [17:28:04.524] envs[common]] [17:28:04.524] NAMES <- toupper(changed) [17:28:04.524] args <- list() [17:28:04.524] for (kk in seq_along(NAMES)) { [17:28:04.524] name <- changed[[kk]] [17:28:04.524] NAME <- NAMES[[kk]] [17:28:04.524] if (name != NAME && is.element(NAME, old_names)) [17:28:04.524] next [17:28:04.524] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.524] } [17:28:04.524] NAMES <- toupper(added) [17:28:04.524] for (kk in seq_along(NAMES)) { [17:28:04.524] name <- added[[kk]] [17:28:04.524] NAME <- NAMES[[kk]] [17:28:04.524] if (name != NAME && is.element(NAME, old_names)) [17:28:04.524] next [17:28:04.524] args[[name]] <- "" [17:28:04.524] } [17:28:04.524] NAMES <- toupper(removed) [17:28:04.524] for (kk in seq_along(NAMES)) { [17:28:04.524] name <- removed[[kk]] [17:28:04.524] NAME <- NAMES[[kk]] [17:28:04.524] if (name != NAME && is.element(NAME, old_names)) [17:28:04.524] next [17:28:04.524] args[[name]] <- ...future.oldEnvVars[[name]] [17:28:04.524] } [17:28:04.524] if (length(args) > 0) [17:28:04.524] base::do.call(base::Sys.setenv, args = args) [17:28:04.524] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [17:28:04.524] } [17:28:04.524] { [17:28:04.524] if (base::length(...future.futureOptionsAdded) > [17:28:04.524] 0L) { [17:28:04.524] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [17:28:04.524] base::names(opts) <- ...future.futureOptionsAdded [17:28:04.524] base::options(opts) [17:28:04.524] } [17:28:04.524] { [17:28:04.524] { [17:28:04.524] base::options(mc.cores = ...future.mc.cores.old) [17:28:04.524] NULL [17:28:04.524] } [17:28:04.524] options(future.plan = NULL) [17:28:04.524] if (is.na(NA_character_)) [17:28:04.524] Sys.unsetenv("R_FUTURE_PLAN") [17:28:04.524] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [17:28:04.524] future::plan(...future.strategy.old, .cleanup = FALSE, [17:28:04.524] .init = FALSE) [17:28:04.524] } [17:28:04.524] } [17:28:04.524] } [17:28:04.524] }) [17:28:04.524] if (TRUE) { [17:28:04.524] base::sink(type = "output", split = FALSE) [17:28:04.524] if (TRUE) { [17:28:04.524] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [17:28:04.524] } [17:28:04.524] else { [17:28:04.524] ...future.result["stdout"] <- base::list(NULL) [17:28:04.524] } [17:28:04.524] base::close(...future.stdout) [17:28:04.524] ...future.stdout <- NULL [17:28:04.524] } [17:28:04.524] ...future.result$conditions <- ...future.conditions [17:28:04.524] ...future.result$finished <- base::Sys.time() [17:28:04.524] ...future.result [17:28:04.524] } [17:28:04.529] Poll #1 (0): usedNodes() = 2, workers = 2 [17:28:04.547] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.547] - Validating connection of MultisessionFuture [17:28:04.547] - received message: FutureResult [17:28:04.548] - Received FutureResult [17:28:04.548] - Erased future from FutureRegistry [17:28:04.548] result() for ClusterFuture ... [17:28:04.548] - result already collected: FutureResult [17:28:04.548] result() for ClusterFuture ... done [17:28:04.549] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.549] result() for ClusterFuture ... [17:28:04.549] - result already collected: FutureResult [17:28:04.549] result() for ClusterFuture ... done [17:28:04.549] result() for ClusterFuture ... [17:28:04.549] - result already collected: FutureResult [17:28:04.550] result() for ClusterFuture ... done [17:28:04.551] MultisessionFuture started [17:28:04.551] - Launch lazy future ... done [17:28:04.551] run() for 'MultisessionFuture' ... done [17:28:04.552] resolve() on list environment ... [17:28:04.552] recursive: 0 [17:28:04.553] length: 4 [17:28:04.553] elements: 'a', 'b', 'c', 'd' [17:28:04.553] Future #1 [17:28:04.553] length: 3 (resolved future 1) [17:28:04.750] receiveMessageFromWorker() for ClusterFuture ... [17:28:04.750] - Validating connection of MultisessionFuture [17:28:04.751] - received message: FutureResult [17:28:04.751] - Received FutureResult [17:28:04.751] - Erased future from FutureRegistry [17:28:04.751] result() for ClusterFuture ... [17:28:04.751] - result already collected: FutureResult [17:28:04.752] result() for ClusterFuture ... done [17:28:04.752] receiveMessageFromWorker() for ClusterFuture ... done [17:28:04.752] Future #3 [17:28:04.752] length: 2 (resolved future 3) [17:28:04.752] length: 1 (resolved future 4) [17:28:05.029] receiveMessageFromWorker() for ClusterFuture ... [17:28:05.030] - Validating connection of MultisessionFuture [17:28:05.030] - received message: FutureResult [17:28:05.030] - Received FutureResult [17:28:05.030] - Erased future from FutureRegistry [17:28:05.031] result() for ClusterFuture ... [17:28:05.031] - result already collected: FutureResult [17:28:05.031] result() for ClusterFuture ... done [17:28:05.031] receiveMessageFromWorker() for ClusterFuture ... done [17:28:05.031] Future #2 [17:28:05.031] length: 0 (resolved future 2) [17:28:05.032] resolve() on list environment ... DONE [17:28:05.032] resolve() on list environment ... [17:28:05.032] recursive: 0 [17:28:05.033] length: 4 [17:28:05.033] elements: 'a', 'b', 'c', 'd' [17:28:05.033] Future #1 [17:28:05.034] length: 3 (resolved future 1) [17:28:05.034] Future #2 [17:28:05.034] length: 2 (resolved future 2) [17:28:05.034] Future #3 [17:28:05.034] length: 1 (resolved future 3) [17:28:05.034] length: 0 (resolved future 4) [17:28:05.035] resolve() on list environment ... DONE [17:28:05.035] resolve() on list environment ... [17:28:05.035] recursive: 0 [17:28:05.036] length: 4 [17:28:05.036] elements: 'a', 'b', 'c', 'd' [17:28:05.037] Future #1 [17:28:05.037] length: 3 (resolved future 1) [17:28:05.037] Future #2 [17:28:05.037] length: 2 (resolved future 2) [17:28:05.037] Future #3 [17:28:05.037] length: 1 (resolved future 3) [17:28:05.038] length: 0 (resolved future 4) [17:28:05.038] resolve() on list environment ... DONE [17:28:05.038] resolve() on list environment ... [17:28:05.039] recursive: 0 [17:28:05.039] length: 4 [17:28:05.039] elements: 'a', 'b', 'c', 'd' [17:28:05.040] Future #1 [17:28:05.040] length: 3 (resolved future 1) [17:28:05.040] Future #2 [17:28:05.040] length: 2 (resolved future 2) [17:28:05.040] Future #3 [17:28:05.041] length: 1 (resolved future 3) [17:28:05.041] length: 0 (resolved future 4) [17:28:05.041] resolve() on list environment ... DONE [17:28:05.042] resolve() on list environment ... [17:28:05.042] recursive: 0 [17:28:05.042] length: 4 [17:28:05.043] elements: 'a', 'b', 'c', 'd' [17:28:05.043] Future #1 [17:28:05.043] result() for ClusterFuture ... [17:28:05.043] - result already collected: FutureResult [17:28:05.043] result() for ClusterFuture ... done [17:28:05.043] result() for ClusterFuture ... [17:28:05.044] - result already collected: FutureResult [17:28:05.044] result() for ClusterFuture ... done [17:28:05.044] length: 3 (resolved future 1) [17:28:05.044] Future #2 [17:28:05.044] result() for ClusterFuture ... [17:28:05.045] - result already collected: FutureResult [17:28:05.045] result() for ClusterFuture ... done [17:28:05.045] result() for ClusterFuture ... [17:28:05.045] - result already collected: FutureResult [17:28:05.045] result() for ClusterFuture ... done [17:28:05.045] length: 2 (resolved future 2) [17:28:05.046] Future #3 [17:28:05.046] result() for ClusterFuture ... [17:28:05.046] - result already collected: FutureResult [17:28:05.046] result() for ClusterFuture ... done [17:28:05.046] result() for ClusterFuture ... [17:28:05.046] - result already collected: FutureResult [17:28:05.047] result() for ClusterFuture ... done [17:28:05.047] length: 1 (resolved future 3) [17:28:05.047] length: 0 (resolved future 4) [17:28:05.047] resolve() on list environment ... DONE [17:28:05.048] resolve() on list environment ... [17:28:05.048] recursive: 99 [17:28:05.049] length: 4 [17:28:05.049] elements: 'a', 'b', 'c', 'd' [17:28:05.049] Future #1 [17:28:05.049] result() for ClusterFuture ... [17:28:05.049] - result already collected: FutureResult [17:28:05.049] result() for ClusterFuture ... done [17:28:05.050] result() for ClusterFuture ... [17:28:05.050] - result already collected: FutureResult [17:28:05.050] result() for ClusterFuture ... done [17:28:05.050] A MultisessionFuture was resolved [17:28:05.050] length: 3 (resolved future 1) [17:28:05.051] Future #2 [17:28:05.051] result() for ClusterFuture ... [17:28:05.051] - result already collected: FutureResult [17:28:05.051] result() for ClusterFuture ... done [17:28:05.051] result() for ClusterFuture ... [17:28:05.051] - result already collected: FutureResult [17:28:05.052] result() for ClusterFuture ... done [17:28:05.052] A MultisessionFuture was resolved [17:28:05.052] length: 2 (resolved future 2) [17:28:05.052] Future #3 [17:28:05.052] result() for ClusterFuture ... [17:28:05.052] - result already collected: FutureResult [17:28:05.053] result() for ClusterFuture ... done [17:28:05.053] result() for ClusterFuture ... [17:28:05.053] - result already collected: FutureResult [17:28:05.053] result() for ClusterFuture ... done [17:28:05.053] A MultisessionFuture was resolved [17:28:05.053] length: 1 (resolved future 3) [17:28:05.054] length: 0 (resolved future 4) [17:28:05.054] resolve() on list environment ... DONE *** resolve() for list environments ... DONE - plan('multisession') ... > > > message("*** resolve() - globals with non-trustful length() ...") *** resolve() - globals with non-trustful length() ... > > length.CantTrustLength <- function(x) length(unclass(x)) + 1L > > .length <- future:::.length > > x <- structure(as.list(1:3), class = c("CantTrustLength", "list")) > str(list(n = length(x), n_true = .length(x))) List of 2 $ n : int 4 $ n_true: int 3 > stopifnot(length(x) > .length(x)) > x <- resolve(x) [17:28:05.058] resolve() on list ... [17:28:05.058] recursive: 0 [17:28:05.058] length: 3 [17:28:05.058] [17:28:05.058] length: 2 (resolved future 1) [17:28:05.058] length: 1 (resolved future 2) [17:28:05.059] length: 0 (resolved future 3) [17:28:05.059] resolve() on list ... DONE > > message("*** resolve() - globals with non-trustful length() ... DONE") *** resolve() - globals with non-trustful length() ... DONE > > > message("*** resolved() - default ...") *** resolved() - default ... > > res <- resolved(42L) > stopifnot(isTRUE(res)) > > message("*** resolved() - default ... DONE") *** resolved() - default ... DONE > > > message("*** resolve() ... DONE") *** resolve() ... DONE > > source("incl/end.R") [17:28:05.063] plan(): Setting new future strategy stack: [17:28:05.063] List of future strategies: [17:28:05.063] 1. FutureStrategy: [17:28:05.063] - args: function (..., envir = parent.frame(), workers = "") [17:28:05.063] - tweaked: FALSE [17:28:05.063] - call: future::plan(oplan) [17:28:05.064] plan(): nbrOfWorkers() = 1 Failed to undo environment variables: - Expected environment variables: [n=204] '!ExitCode', 'ALLUSERSPROFILE', 'APPDATA', 'BIBINPUTS', 'BINDIR', 'BSTINPUTS', 'COMMONPROGRAMFILES', 'COMPUTERNAME', 'COMSPEC', 'CURL_CA_BUNDLE', 'CYGWIN', 'CommonProgramFiles(x86)', 'CommonProgramW6432', 'DriverData', 'HOME', 'HOMEDRIVE', 'HOMEPATH', 'JAGS_ROOT', 'JAVA_HOME', 'LANGUAGE', 'LC_COLLATE', 'LC_MONETARY', 'LC_TIME', 'LOCALAPPDATA', 'LOGONSERVER', 'LS_HOME', 'LS_LICENSE_PATH', 'MAKE', 'MAKEFLAGS', 'MAKELEVEL', 'MFLAGS', 'MSMPI_BENCHMARKS', 'MSMPI_BIN', 'MSYS2_ENV_CONV_EXCL', 'NUMBER_OF_PROCESSORS', 'OCL', 'OMP_THREAD_LIMIT', 'OS', 'PATH', 'PATHEXT', 'PROCESSOR_ARCHITECTURE', 'PROCESSOR_IDENTIFIER', 'PROCESSOR_LEVEL', 'PROCESSOR_REVISION', 'PROGRAMFILES', 'PROMPT', 'PSModulePath', 'PUBLIC', 'PWD', 'ProgramData', 'ProgramFiles(x86)', 'ProgramW6432', 'RTOOLS43_HOME', 'RTOOLS44_HOME', 'R_ARCH', 'R_BROWSER', 'R_BZIPCMD', 'R_CMD', 'R_COMPILED_BY', 'R_CRAN_WEB', 'R_CUSTOM_TOOLS_PATH', 'R_CUSTOM_TOOLS_SOFT', 'R_DOC_DIR', 'R_ENVIRON_USER', 'R_GSCMD', 'R_GZIPCMD', 'R_HOME', 'R_INCLUDE_DIR', 'R_INSTALL_TAR', 'R_LIBS', 'R_LIBS_SITE', 'R_LIBS_USER', 'R_MAX_NUM_DLLS', 'R_OSTYPE', 'R_PAPERSIZE', 'R_PAPERSIZE_USER', 'R_PARALLELLY_MAKENODEPSOCK_AUTOKILL', 'R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT', 'R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL', 'R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS', 'R_PARALLELLY_MAKENODEPSOCK_TIMEOUT', 'R_PARALLELLY_RANDOM_PORTS', 'R_PARALLEL_PORT', 'R_RD4PDF', 'R_RTOOLS44_PATH', 'R_SCRIPT_LEGACY', 'R_SHARE_DIR', 'R_TESTS', 'R_UNZIPCMD', 'R_USER', 'R_VERSION', 'R_ZIPCMD', 'SED', 'SHLVL', 'SYSTEMDRIVE', 'SYSTEMROOT', 'TAR', 'TAR_OPTIONS', 'TEMP', 'TERM', 'TEXINPUTS', 'TMP', 'TMPDIR', 'USERDOMAIN', 'USERDOMAIN_ROAMINGPROFILE', 'USERNAME', 'USERPROFILE', 'WINDIR', '_', '_R_CHECK_AUTOCONF_', '_R_CHECK_BOGUS_RETURN_', '_R_CHECK_BROWSER_NONINTERACTIVE_', '_R_CHECK_BUILD_VIGNETTES_SEPARATELY_', '_R_CHECK_CODETOOLS_PROFILE_', '_R_CHECK_CODE_ASSIGN_TO_GLOBALENV_', '_R_CHECK_CODE_ATTACH_', '_R_CHECK_CODE_CLASS_IS_STRING_', '_R_CHECK_CODE_DATA_INTO_GLOBALENV_', '_R_CHECK_CODE_USAGE_VIA_NAMESPACES_', '_R_CHECK_CODE_USAGE_WITHOUT_LOADING_', '_R_CHECK_CODE_USAGE_WITH_ONLY_BASE_ATTACHED_', '_R_CHECK_CODOC_VARIABLES_IN_USAGES_', '_R_CHECK_COMPACT_DATA2_', '_R_CHECK_COMPILATION_FLAGS_', '_R_CHECK_CONNECTIONS_LEFT_OPEN_', '_R_CHECK_CRAN_INCOMING_', '_R_CHECK_CRAN_INCOMING_CHECK_FILE_URIS_', '_R_CHECK_CRAN_INCOMING_CHECK_URLS_IN_PARALLEL_', '_R_CHECK_CRAN_INCOMING_NOTE_GNU_MAKE_', '_R_CHECK_CRAN_INCOMING_REMOTE_', '_R_CHECK_CRAN_INCOMING_USE_ASPELL_', '_R_CHECK_DATALIST_', '_R_CHECK_DEPRECATED_DEFUNCT_', '_R_CHECK_DOC_SIZES2_', '_R_CHECK_DOT_FIRSTLIB_', '_R_CHECK_DOT_INTERNAL_', '_R_CHECK_EXAMPLE_TIMING_THRESHOLD_', '_R_CHECK_EXECUTABLES_', '_R_CHECK_EXECUTABLES_EXCLUSIONS_', '_R_CHECK_FF_CALLS_', '_R_CHECK_FF_DUP_', '_R_CHECK_FORCE_SUGGESTS_', '_R_CHECK_FUTURE_FILE_TIMESTAMPS_', '_R_CHECK_FUTURE_FILE_TIMESTAMPS_LEEWAY_', '_R_CHECK_HAVE_MYSQL_', '_R_CHECK_HAVE_ODBC_', '_R_CHECK_HAVE_PERL_', '_R_CHECK_HAVE_POSTGRES_', '_R_CHECK_INSTALL_DEPENDS_', '_R_CHECK_INTERNALS2_', '_R_CHECK_LENGTH_1_CONDITION_', '_R_CHECK_LICENSE_', '_R_CHECK_LIMIT_CORES_', '_R_CHECK_MATRIX_DATA_', '_R_CHECK_MBCS_CONVERSION_FAILURE_', '_R_CHECK_NATIVE_ROUTINE_REGISTRATION_', '_R_CHECK_NEWS_IN_PLAIN_TEXT_', '_R_CHECK_NO_RECOMMENDED_', '_R_CHECK_NO_STOP_ON_TEST_ERROR_', '_R_CHECK_ORPHANED_', '_R_CHECK_OVERWRITE_REGISTERED_S3_METHODS_', '_R_CHECK_PACKAGES_USED_IGNORE_UNUSED_IMPORTS_', '_R_CHECK_PACKAGES_USED_IN_TESTS_USE_SUBDIRS_', '_R_CHECK_PACKAGE_DATASETS_SUPPRESS_NOTES_', '_R_CHECK_PACKAGE_NAME_', '_R_CHECK_PKG_SIZES_', '_R_CHECK_PKG_SIZES_THRESHOLD_', '_R_CHECK_PRAGMAS_', '_R_CHECK_RD_EXAMPLES_T_AND_F_', '_R_CHECK_RD_LINE_WIDTHS_', '_R_CHECK_RD_MATH_RENDERING_', '_R_CHECK_RD_NOTE_LOST_BRACES_', '_R_CHECK_RD_VALIDATE_RD2HTML_', '_R_CHECK_REPLACING_IMPORTS_', '_R_CHECK_R_DEPENDS_', '_R_CHECK_S3_METHODS_SHOW_POSSIBLE_ISSUES_', '_R_CHECK_SCREEN_DEVICE_', '_R_CHECK_SERIALIZATION_', '_R_CHECK_SHLIB_OPENMP_FLAGS_', '_R_CHECK_SRC_MINUS_W_IMPLICIT_', '_R_CHECK_SUBDIRS_NOCASE_', '_R_CHECK_SUGGESTS_ONLY_', '_R_CHECK_SYSTEM_CLOCK_', '_R_CHECK_TESTS_NLINES_', '_R_CHECK_TEST_TIMING_', '_R_CHECK_TIMINGS_', '_R_CHECK_TOPLEVEL_FILES_', '_R_CHECK_UNDOC_USE_ALL_NAMES_', '_R_CHECK_UNSAFE_CALLS_', '_R_CHECK_URLS_SHOW_301_STATUS_', '_R_CHECK_VC_DIRS_', '_R_CHECK_VIGNETTES_NLINES_', '_R_CHECK_VIGNETTES_SKIP_RUN_MAYBE_', '_R_CHECK_VIGNETTE_TIMING_', '_R_CHECK_VIGNETTE_TITLES_', '_R_CHECK_WINDOWS_DEVICE_', '_R_CHECK_XREFS_USE_ALIASES_FROM_CRAN_', '_R_CLASS_MATRIX_ARRAY_', '_R_DEPRECATED_IS_R_', '_R_S3_METHOD_LOOKUP_BASEENV_AFTER_GLOBALENV_', '_R_SHLIB_BUILD_OBJECTS_SYMBOL_TABLES_', '__R_CHECK_DOC_FILES_NOTE_IF_ALL_SPECIAL__', 'maj.version', 'nextArg--timingsnextArg--install' - Environment variables still there: [n=0] - Environment variables missing: [n=1] 'MAKEFLAGS' Differences environment variable by environment variable: List of 3 $ name : chr "MAKEFLAGS" $ expected: 'Dlist' chr "" $ actual : 'Dlist' chr NA > > proc.time() user system elapsed 3.82 0.10 21.26