R Under development (unstable) (2023-06-30 r84625 ucrt) -- "Unsuffered Consequences" Copyright (C) 2023 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") [18:01:30.856] plan(): Setting new future strategy stack: [18:01:30.858] List of future strategies: [18:01:30.858] 1. sequential: [18:01:30.858] - args: function (..., envir = parent.frame()) [18:01:30.858] - tweaked: FALSE [18:01:30.858] - call: future::plan("sequential") [18:01:30.873] plan(): nbrOfWorkers() = 1 > > message("*** %<-% ...") *** %<-% ... > > for (cores in 1:availCores) { + ## Speed up CRAN checks: Skip on CRAN Windows 32-bit + if (!fullTest && isWin32) next + + message(sprintf("Testing with %d cores ...", cores)) + options(mc.cores = cores) + + for (strategy in supportedStrategies(cores)) { + message(sprintf("*** %%<-%% with %s futures ...", sQuote(strategy))) + plan(strategy) + + rm(list = intersect(c("x", "y"), ls())) + + message("** Future evaluation without globals") + v1 %<-% { x <- 1 } + stopifnot(!exists("x", inherits = FALSE), identical(v1, 1)) + + message("** Future evaluation with globals") + a <- 2 + v2 %<-% { x <- a } + stopifnot(!exists("x", inherits = FALSE), identical(v2, a)) + + message("** Future evaluation with errors") + v3 %<-% { + x <- 3 + stop("Woops!") + x + } + stopifnot(!exists("x", inherits = FALSE)) + res <- tryCatch(identical(v3, 3), error = identity) + stopifnot(inherits(res, "error")) + + + y <- listenv::listenv() + for (ii in 1:3) { + y[[ii]] %<-% { + if (ii %% 2 == 0) stop("Woops!") + ii + } + } + res <- tryCatch(as.list(y), error = identity) + stopifnot(inherits(res, "error")) + z <- y[c(1, 3)] + z <- unlist(z) + stopifnot(all(z == c(1, 3))) + res <- tryCatch(y[[2]], error = identity) + stopifnot(inherits(res, "error")) + res <- tryCatch(y[1:2], error = identity) + stopifnot(inherits(res, "error")) + + + message("** Future evaluation with a poor-man's \"progress bar\"") + v4 %<-% { + cat("Processing: ") + for (ii in 1:10) { cat(".") } + cat(" [100%]\n") + 4 + } + + + message("** Collecting results") + printf("v1 = %s\n", v1) + stopifnot(v1 == 1) + + printf("v2 = %s\n", v2) + stopifnot(v2 == a) + + stopifnot(tryCatch({ + printf("v3 = %s\n", v3) + }, error = function(ex) { + printf("v3: <%s> (as expect)\n", class(ex)[1]) + TRUE + })) + + printf("v4 = %s\n", v4) + #stopifnot(v4 == 4) + + + message("** Left-to-right and right-to-left future assignments") + c %<-% 1 + printf("c = %s\n", c) + 1 %->% d + printf("d = %s\n", d) + stopifnot(d == c) + + + + message("** Nested future assignments") + a %<-% { + b <- 1 + c %<-% 2 + 3 -> d + 4 %->% e + b + c + d + e + } + printf("a = %s\n", a) + stopifnot(a == 10) + + { a + 1 } %->% b + printf("b = %s\n", b) + stopifnot(b == a + 1) + + message(sprintf("*** %%<-%% with %s futures ... DONE", sQuote(strategy))) + } # for (strategy in ...) + + message(sprintf("Testing with %d cores ... DONE", cores)) + } ## for (cores ...) Testing with 1 cores ... *** %<-% with 'sequential' futures ... [18:01:30.946] plan(): Setting new future strategy stack: [18:01:30.946] List of future strategies: [18:01:30.946] 1. sequential: [18:01:30.946] - args: function (..., envir = parent.frame()) [18:01:30.946] - tweaked: FALSE [18:01:30.946] - call: plan(strategy) [18:01:30.958] plan(): nbrOfWorkers() = 1 ** Future evaluation without globals [18:01:30.960] getGlobalsAndPackages() ... [18:01:30.961] Searching for globals... [18:01:30.966] - globals found: [2] '{', '<-' [18:01:30.966] Searching for globals ... DONE [18:01:30.966] Resolving globals: FALSE [18:01:30.967] [18:01:30.967] [18:01:30.967] getGlobalsAndPackages() ... DONE [18:01:30.968] run() for 'Future' ... [18:01:30.969] - state: 'created' [18:01:30.969] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:30.969] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:30.970] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:30.970] - Field: 'label' [18:01:30.970] - Field: 'local' [18:01:30.970] - Field: 'owner' [18:01:30.970] - Field: 'envir' [18:01:30.970] - Field: 'packages' [18:01:30.971] - Field: 'gc' [18:01:30.971] - Field: 'conditions' [18:01:30.971] - Field: 'expr' [18:01:30.971] - Field: 'uuid' [18:01:30.971] - Field: 'seed' [18:01:30.972] - Field: 'version' [18:01:30.972] - Field: 'result' [18:01:30.972] - Field: 'asynchronous' [18:01:30.972] - Field: 'calls' [18:01:30.972] - Field: 'globals' [18:01:30.972] - Field: 'stdout' [18:01:30.973] - Field: 'earlySignal' [18:01:30.973] - Field: 'lazy' [18:01:30.973] - Field: 'state' [18:01:30.973] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:30.973] - Launch lazy future ... [18:01:30.974] Packages needed by the future expression (n = 0): [18:01:30.974] Packages needed by future strategies (n = 0): [18:01:30.975] { [18:01:30.975] { [18:01:30.975] { [18:01:30.975] ...future.startTime <- base::Sys.time() [18:01:30.975] { [18:01:30.975] { [18:01:30.975] { [18:01:30.975] base::local({ [18:01:30.975] has_future <- base::requireNamespace("future", [18:01:30.975] quietly = TRUE) [18:01:30.975] if (has_future) { [18:01:30.975] ns <- base::getNamespace("future") [18:01:30.975] version <- ns[[".package"]][["version"]] [18:01:30.975] if (is.null(version)) [18:01:30.975] version <- utils::packageVersion("future") [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] version <- NULL [18:01:30.975] } [18:01:30.975] if (!has_future || version < "1.8.0") { [18:01:30.975] info <- base::c(r_version = base::gsub("R version ", [18:01:30.975] "", base::R.version$version.string), [18:01:30.975] platform = base::sprintf("%s (%s-bit)", [18:01:30.975] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.975] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.975] "release", "version")], collapse = " "), [18:01:30.975] hostname = base::Sys.info()[["nodename"]]) [18:01:30.975] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.975] info) [18:01:30.975] info <- base::paste(info, collapse = "; ") [18:01:30.975] if (!has_future) { [18:01:30.975] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.975] info) [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.975] info, version) [18:01:30.975] } [18:01:30.975] base::stop(msg) [18:01:30.975] } [18:01:30.975] }) [18:01:30.975] } [18:01:30.975] options(future.plan = NULL) [18:01:30.975] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.975] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.975] } [18:01:30.975] ...future.workdir <- getwd() [18:01:30.975] } [18:01:30.975] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.975] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.975] } [18:01:30.975] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.975] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.975] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.975] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.975] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.975] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.975] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.975] base::names(...future.oldOptions)) [18:01:30.975] } [18:01:30.975] if (FALSE) { [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] if (TRUE) { [18:01:30.975] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.975] open = "w") [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.975] windows = "NUL", "/dev/null"), open = "w") [18:01:30.975] } [18:01:30.975] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.975] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.975] base::sink(type = "output", split = FALSE) [18:01:30.975] base::close(...future.stdout) [18:01:30.975] }, add = TRUE) [18:01:30.975] } [18:01:30.975] ...future.frame <- base::sys.nframe() [18:01:30.975] ...future.conditions <- base::list() [18:01:30.975] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.975] if (FALSE) { [18:01:30.975] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.975] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.975] } [18:01:30.975] ...future.result <- base::tryCatch({ [18:01:30.975] base::withCallingHandlers({ [18:01:30.975] ...future.value <- base::withVisible(base::local({ [18:01:30.975] x <- 1 [18:01:30.975] })) [18:01:30.975] future::FutureResult(value = ...future.value$value, [18:01:30.975] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.975] ...future.rng), globalenv = if (FALSE) [18:01:30.975] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.975] ...future.globalenv.names)) [18:01:30.975] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.975] }, condition = base::local({ [18:01:30.975] c <- base::c [18:01:30.975] inherits <- base::inherits [18:01:30.975] invokeRestart <- base::invokeRestart [18:01:30.975] length <- base::length [18:01:30.975] list <- base::list [18:01:30.975] seq.int <- base::seq.int [18:01:30.975] signalCondition <- base::signalCondition [18:01:30.975] sys.calls <- base::sys.calls [18:01:30.975] `[[` <- base::`[[` [18:01:30.975] `+` <- base::`+` [18:01:30.975] `<<-` <- base::`<<-` [18:01:30.975] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.975] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.975] 3L)] [18:01:30.975] } [18:01:30.975] function(cond) { [18:01:30.975] is_error <- inherits(cond, "error") [18:01:30.975] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.975] NULL) [18:01:30.975] if (is_error) { [18:01:30.975] sessionInformation <- function() { [18:01:30.975] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.975] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.975] search = base::search(), system = base::Sys.info()) [18:01:30.975] } [18:01:30.975] ...future.conditions[[length(...future.conditions) + [18:01:30.975] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.975] cond$call), session = sessionInformation(), [18:01:30.975] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.975] signalCondition(cond) [18:01:30.975] } [18:01:30.975] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.975] "immediateCondition"))) { [18:01:30.975] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.975] ...future.conditions[[length(...future.conditions) + [18:01:30.975] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.975] if (TRUE && !signal) { [18:01:30.975] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.975] { [18:01:30.975] inherits <- base::inherits [18:01:30.975] invokeRestart <- base::invokeRestart [18:01:30.975] is.null <- base::is.null [18:01:30.975] muffled <- FALSE [18:01:30.975] if (inherits(cond, "message")) { [18:01:30.975] muffled <- grepl(pattern, "muffleMessage") [18:01:30.975] if (muffled) [18:01:30.975] invokeRestart("muffleMessage") [18:01:30.975] } [18:01:30.975] else if (inherits(cond, "warning")) { [18:01:30.975] muffled <- grepl(pattern, "muffleWarning") [18:01:30.975] if (muffled) [18:01:30.975] invokeRestart("muffleWarning") [18:01:30.975] } [18:01:30.975] else if (inherits(cond, "condition")) { [18:01:30.975] if (!is.null(pattern)) { [18:01:30.975] computeRestarts <- base::computeRestarts [18:01:30.975] grepl <- base::grepl [18:01:30.975] restarts <- computeRestarts(cond) [18:01:30.975] for (restart in restarts) { [18:01:30.975] name <- restart$name [18:01:30.975] if (is.null(name)) [18:01:30.975] next [18:01:30.975] if (!grepl(pattern, name)) [18:01:30.975] next [18:01:30.975] invokeRestart(restart) [18:01:30.975] muffled <- TRUE [18:01:30.975] break [18:01:30.975] } [18:01:30.975] } [18:01:30.975] } [18:01:30.975] invisible(muffled) [18:01:30.975] } [18:01:30.975] muffleCondition(cond, pattern = "^muffle") [18:01:30.975] } [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] if (TRUE) { [18:01:30.975] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.975] { [18:01:30.975] inherits <- base::inherits [18:01:30.975] invokeRestart <- base::invokeRestart [18:01:30.975] is.null <- base::is.null [18:01:30.975] muffled <- FALSE [18:01:30.975] if (inherits(cond, "message")) { [18:01:30.975] muffled <- grepl(pattern, "muffleMessage") [18:01:30.975] if (muffled) [18:01:30.975] invokeRestart("muffleMessage") [18:01:30.975] } [18:01:30.975] else if (inherits(cond, "warning")) { [18:01:30.975] muffled <- grepl(pattern, "muffleWarning") [18:01:30.975] if (muffled) [18:01:30.975] invokeRestart("muffleWarning") [18:01:30.975] } [18:01:30.975] else if (inherits(cond, "condition")) { [18:01:30.975] if (!is.null(pattern)) { [18:01:30.975] computeRestarts <- base::computeRestarts [18:01:30.975] grepl <- base::grepl [18:01:30.975] restarts <- computeRestarts(cond) [18:01:30.975] for (restart in restarts) { [18:01:30.975] name <- restart$name [18:01:30.975] if (is.null(name)) [18:01:30.975] next [18:01:30.975] if (!grepl(pattern, name)) [18:01:30.975] next [18:01:30.975] invokeRestart(restart) [18:01:30.975] muffled <- TRUE [18:01:30.975] break [18:01:30.975] } [18:01:30.975] } [18:01:30.975] } [18:01:30.975] invisible(muffled) [18:01:30.975] } [18:01:30.975] muffleCondition(cond, pattern = "^muffle") [18:01:30.975] } [18:01:30.975] } [18:01:30.975] } [18:01:30.975] })) [18:01:30.975] }, error = function(ex) { [18:01:30.975] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.975] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.975] ...future.rng), started = ...future.startTime, [18:01:30.975] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.975] version = "1.8"), class = "FutureResult") [18:01:30.975] }, finally = { [18:01:30.975] if (!identical(...future.workdir, getwd())) [18:01:30.975] setwd(...future.workdir) [18:01:30.975] { [18:01:30.975] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.975] ...future.oldOptions$nwarnings <- NULL [18:01:30.975] } [18:01:30.975] base::options(...future.oldOptions) [18:01:30.975] if (.Platform$OS.type == "windows") { [18:01:30.975] old_names <- names(...future.oldEnvVars) [18:01:30.975] envs <- base::Sys.getenv() [18:01:30.975] names <- names(envs) [18:01:30.975] common <- intersect(names, old_names) [18:01:30.975] added <- setdiff(names, old_names) [18:01:30.975] removed <- setdiff(old_names, names) [18:01:30.975] changed <- common[...future.oldEnvVars[common] != [18:01:30.975] envs[common]] [18:01:30.975] NAMES <- toupper(changed) [18:01:30.975] args <- list() [18:01:30.975] for (kk in seq_along(NAMES)) { [18:01:30.975] name <- changed[[kk]] [18:01:30.975] NAME <- NAMES[[kk]] [18:01:30.975] if (name != NAME && is.element(NAME, old_names)) [18:01:30.975] next [18:01:30.975] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.975] } [18:01:30.975] NAMES <- toupper(added) [18:01:30.975] for (kk in seq_along(NAMES)) { [18:01:30.975] name <- added[[kk]] [18:01:30.975] NAME <- NAMES[[kk]] [18:01:30.975] if (name != NAME && is.element(NAME, old_names)) [18:01:30.975] next [18:01:30.975] args[[name]] <- "" [18:01:30.975] } [18:01:30.975] NAMES <- toupper(removed) [18:01:30.975] for (kk in seq_along(NAMES)) { [18:01:30.975] name <- removed[[kk]] [18:01:30.975] NAME <- NAMES[[kk]] [18:01:30.975] if (name != NAME && is.element(NAME, old_names)) [18:01:30.975] next [18:01:30.975] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.975] } [18:01:30.975] if (length(args) > 0) [18:01:30.975] base::do.call(base::Sys.setenv, args = args) [18:01:30.975] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.975] } [18:01:30.975] { [18:01:30.975] if (base::length(...future.futureOptionsAdded) > [18:01:30.975] 0L) { [18:01:30.975] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.975] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.975] base::options(opts) [18:01:30.975] } [18:01:30.975] { [18:01:30.975] { [18:01:30.975] NULL [18:01:30.975] RNGkind("Mersenne-Twister") [18:01:30.975] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:30.975] inherits = FALSE) [18:01:30.975] } [18:01:30.975] options(future.plan = NULL) [18:01:30.975] if (is.na(NA_character_)) [18:01:30.975] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.975] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.975] future::plan(list(function (..., envir = parent.frame()) [18:01:30.975] { [18:01:30.975] future <- SequentialFuture(..., envir = envir) [18:01:30.975] if (!future$lazy) [18:01:30.975] future <- run(future) [18:01:30.975] invisible(future) [18:01:30.975] }), .cleanup = FALSE, .init = FALSE) [18:01:30.975] } [18:01:30.975] } [18:01:30.975] } [18:01:30.975] }) [18:01:30.975] if (TRUE) { [18:01:30.975] base::sink(type = "output", split = FALSE) [18:01:30.975] if (TRUE) { [18:01:30.975] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.975] } [18:01:30.975] else { [18:01:30.975] ...future.result["stdout"] <- base::list(NULL) [18:01:30.975] } [18:01:30.975] base::close(...future.stdout) [18:01:30.975] ...future.stdout <- NULL [18:01:30.975] } [18:01:30.975] ...future.result$conditions <- ...future.conditions [18:01:30.975] ...future.result$finished <- base::Sys.time() [18:01:30.975] ...future.result [18:01:30.975] } [18:01:30.980] plan(): Setting new future strategy stack: [18:01:30.980] List of future strategies: [18:01:30.980] 1. sequential: [18:01:30.980] - args: function (..., envir = parent.frame()) [18:01:30.980] - tweaked: FALSE [18:01:30.980] - call: NULL [18:01:30.980] plan(): nbrOfWorkers() = 1 [18:01:30.982] plan(): Setting new future strategy stack: [18:01:30.983] List of future strategies: [18:01:30.983] 1. sequential: [18:01:30.983] - args: function (..., envir = parent.frame()) [18:01:30.983] - tweaked: FALSE [18:01:30.983] - call: plan(strategy) [18:01:30.983] plan(): nbrOfWorkers() = 1 [18:01:30.983] SequentialFuture started (and completed) [18:01:30.984] - Launch lazy future ... done [18:01:30.984] run() for 'SequentialFuture' ... done ** Future evaluation with globals [18:01:30.985] getGlobalsAndPackages() ... [18:01:30.985] Searching for globals... [18:01:30.988] - globals found: [3] '{', '<-', 'a' [18:01:30.988] Searching for globals ... DONE [18:01:30.988] Resolving globals: FALSE [18:01:30.989] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:30.990] The total size of the 1 globals exported for future expression ('{; x <- a; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [18:01:30.990] - globals: [1] 'a' [18:01:30.990] [18:01:30.990] getGlobalsAndPackages() ... DONE [18:01:30.991] run() for 'Future' ... [18:01:30.991] - state: 'created' [18:01:30.991] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:30.991] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:30.992] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:30.992] - Field: 'label' [18:01:30.992] - Field: 'local' [18:01:30.992] - Field: 'owner' [18:01:30.992] - Field: 'envir' [18:01:30.992] - Field: 'packages' [18:01:30.993] - Field: 'gc' [18:01:30.993] - Field: 'conditions' [18:01:30.993] - Field: 'expr' [18:01:30.993] - Field: 'uuid' [18:01:30.993] - Field: 'seed' [18:01:30.994] - Field: 'version' [18:01:30.994] - Field: 'result' [18:01:30.994] - Field: 'asynchronous' [18:01:30.994] - Field: 'calls' [18:01:30.994] - Field: 'globals' [18:01:30.995] - Field: 'stdout' [18:01:30.995] - Field: 'earlySignal' [18:01:30.995] - Field: 'lazy' [18:01:30.995] - Field: 'state' [18:01:30.995] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:30.995] - Launch lazy future ... [18:01:30.996] Packages needed by the future expression (n = 0): [18:01:30.996] Packages needed by future strategies (n = 0): [18:01:30.996] { [18:01:30.996] { [18:01:30.996] { [18:01:30.996] ...future.startTime <- base::Sys.time() [18:01:30.996] { [18:01:30.996] { [18:01:30.996] { [18:01:30.996] base::local({ [18:01:30.996] has_future <- base::requireNamespace("future", [18:01:30.996] quietly = TRUE) [18:01:30.996] if (has_future) { [18:01:30.996] ns <- base::getNamespace("future") [18:01:30.996] version <- ns[[".package"]][["version"]] [18:01:30.996] if (is.null(version)) [18:01:30.996] version <- utils::packageVersion("future") [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] version <- NULL [18:01:30.996] } [18:01:30.996] if (!has_future || version < "1.8.0") { [18:01:30.996] info <- base::c(r_version = base::gsub("R version ", [18:01:30.996] "", base::R.version$version.string), [18:01:30.996] platform = base::sprintf("%s (%s-bit)", [18:01:30.996] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.996] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.996] "release", "version")], collapse = " "), [18:01:30.996] hostname = base::Sys.info()[["nodename"]]) [18:01:30.996] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.996] info) [18:01:30.996] info <- base::paste(info, collapse = "; ") [18:01:30.996] if (!has_future) { [18:01:30.996] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.996] info) [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.996] info, version) [18:01:30.996] } [18:01:30.996] base::stop(msg) [18:01:30.996] } [18:01:30.996] }) [18:01:30.996] } [18:01:30.996] options(future.plan = NULL) [18:01:30.996] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.996] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.996] } [18:01:30.996] ...future.workdir <- getwd() [18:01:30.996] } [18:01:30.996] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.996] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.996] } [18:01:30.996] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.996] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.996] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.996] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.996] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.996] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.996] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.996] base::names(...future.oldOptions)) [18:01:30.996] } [18:01:30.996] if (FALSE) { [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] if (TRUE) { [18:01:30.996] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.996] open = "w") [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.996] windows = "NUL", "/dev/null"), open = "w") [18:01:30.996] } [18:01:30.996] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.996] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.996] base::sink(type = "output", split = FALSE) [18:01:30.996] base::close(...future.stdout) [18:01:30.996] }, add = TRUE) [18:01:30.996] } [18:01:30.996] ...future.frame <- base::sys.nframe() [18:01:30.996] ...future.conditions <- base::list() [18:01:30.996] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.996] if (FALSE) { [18:01:30.996] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.996] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.996] } [18:01:30.996] ...future.result <- base::tryCatch({ [18:01:30.996] base::withCallingHandlers({ [18:01:30.996] ...future.value <- base::withVisible(base::local({ [18:01:30.996] x <- a [18:01:30.996] })) [18:01:30.996] future::FutureResult(value = ...future.value$value, [18:01:30.996] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.996] ...future.rng), globalenv = if (FALSE) [18:01:30.996] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.996] ...future.globalenv.names)) [18:01:30.996] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.996] }, condition = base::local({ [18:01:30.996] c <- base::c [18:01:30.996] inherits <- base::inherits [18:01:30.996] invokeRestart <- base::invokeRestart [18:01:30.996] length <- base::length [18:01:30.996] list <- base::list [18:01:30.996] seq.int <- base::seq.int [18:01:30.996] signalCondition <- base::signalCondition [18:01:30.996] sys.calls <- base::sys.calls [18:01:30.996] `[[` <- base::`[[` [18:01:30.996] `+` <- base::`+` [18:01:30.996] `<<-` <- base::`<<-` [18:01:30.996] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.996] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.996] 3L)] [18:01:30.996] } [18:01:30.996] function(cond) { [18:01:30.996] is_error <- inherits(cond, "error") [18:01:30.996] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.996] NULL) [18:01:30.996] if (is_error) { [18:01:30.996] sessionInformation <- function() { [18:01:30.996] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.996] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.996] search = base::search(), system = base::Sys.info()) [18:01:30.996] } [18:01:30.996] ...future.conditions[[length(...future.conditions) + [18:01:30.996] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.996] cond$call), session = sessionInformation(), [18:01:30.996] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.996] signalCondition(cond) [18:01:30.996] } [18:01:30.996] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.996] "immediateCondition"))) { [18:01:30.996] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.996] ...future.conditions[[length(...future.conditions) + [18:01:30.996] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.996] if (TRUE && !signal) { [18:01:30.996] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.996] { [18:01:30.996] inherits <- base::inherits [18:01:30.996] invokeRestart <- base::invokeRestart [18:01:30.996] is.null <- base::is.null [18:01:30.996] muffled <- FALSE [18:01:30.996] if (inherits(cond, "message")) { [18:01:30.996] muffled <- grepl(pattern, "muffleMessage") [18:01:30.996] if (muffled) [18:01:30.996] invokeRestart("muffleMessage") [18:01:30.996] } [18:01:30.996] else if (inherits(cond, "warning")) { [18:01:30.996] muffled <- grepl(pattern, "muffleWarning") [18:01:30.996] if (muffled) [18:01:30.996] invokeRestart("muffleWarning") [18:01:30.996] } [18:01:30.996] else if (inherits(cond, "condition")) { [18:01:30.996] if (!is.null(pattern)) { [18:01:30.996] computeRestarts <- base::computeRestarts [18:01:30.996] grepl <- base::grepl [18:01:30.996] restarts <- computeRestarts(cond) [18:01:30.996] for (restart in restarts) { [18:01:30.996] name <- restart$name [18:01:30.996] if (is.null(name)) [18:01:30.996] next [18:01:30.996] if (!grepl(pattern, name)) [18:01:30.996] next [18:01:30.996] invokeRestart(restart) [18:01:30.996] muffled <- TRUE [18:01:30.996] break [18:01:30.996] } [18:01:30.996] } [18:01:30.996] } [18:01:30.996] invisible(muffled) [18:01:30.996] } [18:01:30.996] muffleCondition(cond, pattern = "^muffle") [18:01:30.996] } [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] if (TRUE) { [18:01:30.996] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.996] { [18:01:30.996] inherits <- base::inherits [18:01:30.996] invokeRestart <- base::invokeRestart [18:01:30.996] is.null <- base::is.null [18:01:30.996] muffled <- FALSE [18:01:30.996] if (inherits(cond, "message")) { [18:01:30.996] muffled <- grepl(pattern, "muffleMessage") [18:01:30.996] if (muffled) [18:01:30.996] invokeRestart("muffleMessage") [18:01:30.996] } [18:01:30.996] else if (inherits(cond, "warning")) { [18:01:30.996] muffled <- grepl(pattern, "muffleWarning") [18:01:30.996] if (muffled) [18:01:30.996] invokeRestart("muffleWarning") [18:01:30.996] } [18:01:30.996] else if (inherits(cond, "condition")) { [18:01:30.996] if (!is.null(pattern)) { [18:01:30.996] computeRestarts <- base::computeRestarts [18:01:30.996] grepl <- base::grepl [18:01:30.996] restarts <- computeRestarts(cond) [18:01:30.996] for (restart in restarts) { [18:01:30.996] name <- restart$name [18:01:30.996] if (is.null(name)) [18:01:30.996] next [18:01:30.996] if (!grepl(pattern, name)) [18:01:30.996] next [18:01:30.996] invokeRestart(restart) [18:01:30.996] muffled <- TRUE [18:01:30.996] break [18:01:30.996] } [18:01:30.996] } [18:01:30.996] } [18:01:30.996] invisible(muffled) [18:01:30.996] } [18:01:30.996] muffleCondition(cond, pattern = "^muffle") [18:01:30.996] } [18:01:30.996] } [18:01:30.996] } [18:01:30.996] })) [18:01:30.996] }, error = function(ex) { [18:01:30.996] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.996] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.996] ...future.rng), started = ...future.startTime, [18:01:30.996] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.996] version = "1.8"), class = "FutureResult") [18:01:30.996] }, finally = { [18:01:30.996] if (!identical(...future.workdir, getwd())) [18:01:30.996] setwd(...future.workdir) [18:01:30.996] { [18:01:30.996] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.996] ...future.oldOptions$nwarnings <- NULL [18:01:30.996] } [18:01:30.996] base::options(...future.oldOptions) [18:01:30.996] if (.Platform$OS.type == "windows") { [18:01:30.996] old_names <- names(...future.oldEnvVars) [18:01:30.996] envs <- base::Sys.getenv() [18:01:30.996] names <- names(envs) [18:01:30.996] common <- intersect(names, old_names) [18:01:30.996] added <- setdiff(names, old_names) [18:01:30.996] removed <- setdiff(old_names, names) [18:01:30.996] changed <- common[...future.oldEnvVars[common] != [18:01:30.996] envs[common]] [18:01:30.996] NAMES <- toupper(changed) [18:01:30.996] args <- list() [18:01:30.996] for (kk in seq_along(NAMES)) { [18:01:30.996] name <- changed[[kk]] [18:01:30.996] NAME <- NAMES[[kk]] [18:01:30.996] if (name != NAME && is.element(NAME, old_names)) [18:01:30.996] next [18:01:30.996] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.996] } [18:01:30.996] NAMES <- toupper(added) [18:01:30.996] for (kk in seq_along(NAMES)) { [18:01:30.996] name <- added[[kk]] [18:01:30.996] NAME <- NAMES[[kk]] [18:01:30.996] if (name != NAME && is.element(NAME, old_names)) [18:01:30.996] next [18:01:30.996] args[[name]] <- "" [18:01:30.996] } [18:01:30.996] NAMES <- toupper(removed) [18:01:30.996] for (kk in seq_along(NAMES)) { [18:01:30.996] name <- removed[[kk]] [18:01:30.996] NAME <- NAMES[[kk]] [18:01:30.996] if (name != NAME && is.element(NAME, old_names)) [18:01:30.996] next [18:01:30.996] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.996] } [18:01:30.996] if (length(args) > 0) [18:01:30.996] base::do.call(base::Sys.setenv, args = args) [18:01:30.996] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.996] } [18:01:30.996] { [18:01:30.996] if (base::length(...future.futureOptionsAdded) > [18:01:30.996] 0L) { [18:01:30.996] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.996] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.996] base::options(opts) [18:01:30.996] } [18:01:30.996] { [18:01:30.996] { [18:01:30.996] NULL [18:01:30.996] RNGkind("Mersenne-Twister") [18:01:30.996] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:30.996] inherits = FALSE) [18:01:30.996] } [18:01:30.996] options(future.plan = NULL) [18:01:30.996] if (is.na(NA_character_)) [18:01:30.996] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.996] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.996] future::plan(list(function (..., envir = parent.frame()) [18:01:30.996] { [18:01:30.996] future <- SequentialFuture(..., envir = envir) [18:01:30.996] if (!future$lazy) [18:01:30.996] future <- run(future) [18:01:30.996] invisible(future) [18:01:30.996] }), .cleanup = FALSE, .init = FALSE) [18:01:30.996] } [18:01:30.996] } [18:01:30.996] } [18:01:30.996] }) [18:01:30.996] if (TRUE) { [18:01:30.996] base::sink(type = "output", split = FALSE) [18:01:30.996] if (TRUE) { [18:01:30.996] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.996] } [18:01:30.996] else { [18:01:30.996] ...future.result["stdout"] <- base::list(NULL) [18:01:30.996] } [18:01:30.996] base::close(...future.stdout) [18:01:30.996] ...future.stdout <- NULL [18:01:30.996] } [18:01:30.996] ...future.result$conditions <- ...future.conditions [18:01:30.996] ...future.result$finished <- base::Sys.time() [18:01:30.996] ...future.result [18:01:30.996] } [18:01:31.000] assign_globals() ... [18:01:31.000] List of 1 [18:01:31.000] $ a: num 2 [18:01:31.000] - attr(*, "where")=List of 1 [18:01:31.000] ..$ a: [18:01:31.000] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:31.000] - attr(*, "resolved")= logi FALSE [18:01:31.000] - attr(*, "total_size")= num 56 [18:01:31.000] - attr(*, "already-done")= logi TRUE [18:01:31.006] - copied 'a' to environment [18:01:31.006] assign_globals() ... done [18:01:31.007] plan(): Setting new future strategy stack: [18:01:31.007] List of future strategies: [18:01:31.007] 1. sequential: [18:01:31.007] - args: function (..., envir = parent.frame()) [18:01:31.007] - tweaked: FALSE [18:01:31.007] - call: NULL [18:01:31.007] plan(): nbrOfWorkers() = 1 [18:01:31.008] plan(): Setting new future strategy stack: [18:01:31.008] List of future strategies: [18:01:31.008] 1. sequential: [18:01:31.008] - args: function (..., envir = parent.frame()) [18:01:31.008] - tweaked: FALSE [18:01:31.008] - call: plan(strategy) [18:01:31.009] plan(): nbrOfWorkers() = 1 [18:01:31.009] SequentialFuture started (and completed) [18:01:31.009] - Launch lazy future ... done [18:01:31.009] run() for 'SequentialFuture' ... done ** Future evaluation with errors [18:01:31.010] getGlobalsAndPackages() ... [18:01:31.010] Searching for globals... [18:01:31.014] - globals found: [3] '{', '<-', 'stop' [18:01:31.014] Searching for globals ... DONE [18:01:31.014] Resolving globals: FALSE [18:01:31.015] [18:01:31.015] [18:01:31.015] getGlobalsAndPackages() ... DONE [18:01:31.016] run() for 'Future' ... [18:01:31.016] - state: 'created' [18:01:31.016] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.016] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.016] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.017] - Field: 'label' [18:01:31.017] - Field: 'local' [18:01:31.017] - Field: 'owner' [18:01:31.017] - Field: 'envir' [18:01:31.017] - Field: 'packages' [18:01:31.018] - Field: 'gc' [18:01:31.018] - Field: 'conditions' [18:01:31.018] - Field: 'expr' [18:01:31.018] - Field: 'uuid' [18:01:31.018] - Field: 'seed' [18:01:31.018] - Field: 'version' [18:01:31.019] - Field: 'result' [18:01:31.019] - Field: 'asynchronous' [18:01:31.019] - Field: 'calls' [18:01:31.019] - Field: 'globals' [18:01:31.019] - Field: 'stdout' [18:01:31.019] - Field: 'earlySignal' [18:01:31.020] - Field: 'lazy' [18:01:31.020] - Field: 'state' [18:01:31.020] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.020] - Launch lazy future ... [18:01:31.020] Packages needed by the future expression (n = 0): [18:01:31.021] Packages needed by future strategies (n = 0): [18:01:31.021] { [18:01:31.021] { [18:01:31.021] { [18:01:31.021] ...future.startTime <- base::Sys.time() [18:01:31.021] { [18:01:31.021] { [18:01:31.021] { [18:01:31.021] base::local({ [18:01:31.021] has_future <- base::requireNamespace("future", [18:01:31.021] quietly = TRUE) [18:01:31.021] if (has_future) { [18:01:31.021] ns <- base::getNamespace("future") [18:01:31.021] version <- ns[[".package"]][["version"]] [18:01:31.021] if (is.null(version)) [18:01:31.021] version <- utils::packageVersion("future") [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] version <- NULL [18:01:31.021] } [18:01:31.021] if (!has_future || version < "1.8.0") { [18:01:31.021] info <- base::c(r_version = base::gsub("R version ", [18:01:31.021] "", base::R.version$version.string), [18:01:31.021] platform = base::sprintf("%s (%s-bit)", [18:01:31.021] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.021] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.021] "release", "version")], collapse = " "), [18:01:31.021] hostname = base::Sys.info()[["nodename"]]) [18:01:31.021] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.021] info) [18:01:31.021] info <- base::paste(info, collapse = "; ") [18:01:31.021] if (!has_future) { [18:01:31.021] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.021] info) [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.021] info, version) [18:01:31.021] } [18:01:31.021] base::stop(msg) [18:01:31.021] } [18:01:31.021] }) [18:01:31.021] } [18:01:31.021] options(future.plan = NULL) [18:01:31.021] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.021] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.021] } [18:01:31.021] ...future.workdir <- getwd() [18:01:31.021] } [18:01:31.021] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.021] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.021] } [18:01:31.021] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.021] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.021] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.021] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.021] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.021] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.021] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.021] base::names(...future.oldOptions)) [18:01:31.021] } [18:01:31.021] if (FALSE) { [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] if (TRUE) { [18:01:31.021] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.021] open = "w") [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.021] windows = "NUL", "/dev/null"), open = "w") [18:01:31.021] } [18:01:31.021] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.021] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.021] base::sink(type = "output", split = FALSE) [18:01:31.021] base::close(...future.stdout) [18:01:31.021] }, add = TRUE) [18:01:31.021] } [18:01:31.021] ...future.frame <- base::sys.nframe() [18:01:31.021] ...future.conditions <- base::list() [18:01:31.021] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.021] if (FALSE) { [18:01:31.021] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.021] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.021] } [18:01:31.021] ...future.result <- base::tryCatch({ [18:01:31.021] base::withCallingHandlers({ [18:01:31.021] ...future.value <- base::withVisible(base::local({ [18:01:31.021] x <- 3 [18:01:31.021] stop("Woops!") [18:01:31.021] x [18:01:31.021] })) [18:01:31.021] future::FutureResult(value = ...future.value$value, [18:01:31.021] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.021] ...future.rng), globalenv = if (FALSE) [18:01:31.021] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.021] ...future.globalenv.names)) [18:01:31.021] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.021] }, condition = base::local({ [18:01:31.021] c <- base::c [18:01:31.021] inherits <- base::inherits [18:01:31.021] invokeRestart <- base::invokeRestart [18:01:31.021] length <- base::length [18:01:31.021] list <- base::list [18:01:31.021] seq.int <- base::seq.int [18:01:31.021] signalCondition <- base::signalCondition [18:01:31.021] sys.calls <- base::sys.calls [18:01:31.021] `[[` <- base::`[[` [18:01:31.021] `+` <- base::`+` [18:01:31.021] `<<-` <- base::`<<-` [18:01:31.021] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.021] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.021] 3L)] [18:01:31.021] } [18:01:31.021] function(cond) { [18:01:31.021] is_error <- inherits(cond, "error") [18:01:31.021] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.021] NULL) [18:01:31.021] if (is_error) { [18:01:31.021] sessionInformation <- function() { [18:01:31.021] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.021] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.021] search = base::search(), system = base::Sys.info()) [18:01:31.021] } [18:01:31.021] ...future.conditions[[length(...future.conditions) + [18:01:31.021] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.021] cond$call), session = sessionInformation(), [18:01:31.021] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.021] signalCondition(cond) [18:01:31.021] } [18:01:31.021] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.021] "immediateCondition"))) { [18:01:31.021] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.021] ...future.conditions[[length(...future.conditions) + [18:01:31.021] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.021] if (TRUE && !signal) { [18:01:31.021] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.021] { [18:01:31.021] inherits <- base::inherits [18:01:31.021] invokeRestart <- base::invokeRestart [18:01:31.021] is.null <- base::is.null [18:01:31.021] muffled <- FALSE [18:01:31.021] if (inherits(cond, "message")) { [18:01:31.021] muffled <- grepl(pattern, "muffleMessage") [18:01:31.021] if (muffled) [18:01:31.021] invokeRestart("muffleMessage") [18:01:31.021] } [18:01:31.021] else if (inherits(cond, "warning")) { [18:01:31.021] muffled <- grepl(pattern, "muffleWarning") [18:01:31.021] if (muffled) [18:01:31.021] invokeRestart("muffleWarning") [18:01:31.021] } [18:01:31.021] else if (inherits(cond, "condition")) { [18:01:31.021] if (!is.null(pattern)) { [18:01:31.021] computeRestarts <- base::computeRestarts [18:01:31.021] grepl <- base::grepl [18:01:31.021] restarts <- computeRestarts(cond) [18:01:31.021] for (restart in restarts) { [18:01:31.021] name <- restart$name [18:01:31.021] if (is.null(name)) [18:01:31.021] next [18:01:31.021] if (!grepl(pattern, name)) [18:01:31.021] next [18:01:31.021] invokeRestart(restart) [18:01:31.021] muffled <- TRUE [18:01:31.021] break [18:01:31.021] } [18:01:31.021] } [18:01:31.021] } [18:01:31.021] invisible(muffled) [18:01:31.021] } [18:01:31.021] muffleCondition(cond, pattern = "^muffle") [18:01:31.021] } [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] if (TRUE) { [18:01:31.021] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.021] { [18:01:31.021] inherits <- base::inherits [18:01:31.021] invokeRestart <- base::invokeRestart [18:01:31.021] is.null <- base::is.null [18:01:31.021] muffled <- FALSE [18:01:31.021] if (inherits(cond, "message")) { [18:01:31.021] muffled <- grepl(pattern, "muffleMessage") [18:01:31.021] if (muffled) [18:01:31.021] invokeRestart("muffleMessage") [18:01:31.021] } [18:01:31.021] else if (inherits(cond, "warning")) { [18:01:31.021] muffled <- grepl(pattern, "muffleWarning") [18:01:31.021] if (muffled) [18:01:31.021] invokeRestart("muffleWarning") [18:01:31.021] } [18:01:31.021] else if (inherits(cond, "condition")) { [18:01:31.021] if (!is.null(pattern)) { [18:01:31.021] computeRestarts <- base::computeRestarts [18:01:31.021] grepl <- base::grepl [18:01:31.021] restarts <- computeRestarts(cond) [18:01:31.021] for (restart in restarts) { [18:01:31.021] name <- restart$name [18:01:31.021] if (is.null(name)) [18:01:31.021] next [18:01:31.021] if (!grepl(pattern, name)) [18:01:31.021] next [18:01:31.021] invokeRestart(restart) [18:01:31.021] muffled <- TRUE [18:01:31.021] break [18:01:31.021] } [18:01:31.021] } [18:01:31.021] } [18:01:31.021] invisible(muffled) [18:01:31.021] } [18:01:31.021] muffleCondition(cond, pattern = "^muffle") [18:01:31.021] } [18:01:31.021] } [18:01:31.021] } [18:01:31.021] })) [18:01:31.021] }, error = function(ex) { [18:01:31.021] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.021] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.021] ...future.rng), started = ...future.startTime, [18:01:31.021] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.021] version = "1.8"), class = "FutureResult") [18:01:31.021] }, finally = { [18:01:31.021] if (!identical(...future.workdir, getwd())) [18:01:31.021] setwd(...future.workdir) [18:01:31.021] { [18:01:31.021] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.021] ...future.oldOptions$nwarnings <- NULL [18:01:31.021] } [18:01:31.021] base::options(...future.oldOptions) [18:01:31.021] if (.Platform$OS.type == "windows") { [18:01:31.021] old_names <- names(...future.oldEnvVars) [18:01:31.021] envs <- base::Sys.getenv() [18:01:31.021] names <- names(envs) [18:01:31.021] common <- intersect(names, old_names) [18:01:31.021] added <- setdiff(names, old_names) [18:01:31.021] removed <- setdiff(old_names, names) [18:01:31.021] changed <- common[...future.oldEnvVars[common] != [18:01:31.021] envs[common]] [18:01:31.021] NAMES <- toupper(changed) [18:01:31.021] args <- list() [18:01:31.021] for (kk in seq_along(NAMES)) { [18:01:31.021] name <- changed[[kk]] [18:01:31.021] NAME <- NAMES[[kk]] [18:01:31.021] if (name != NAME && is.element(NAME, old_names)) [18:01:31.021] next [18:01:31.021] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.021] } [18:01:31.021] NAMES <- toupper(added) [18:01:31.021] for (kk in seq_along(NAMES)) { [18:01:31.021] name <- added[[kk]] [18:01:31.021] NAME <- NAMES[[kk]] [18:01:31.021] if (name != NAME && is.element(NAME, old_names)) [18:01:31.021] next [18:01:31.021] args[[name]] <- "" [18:01:31.021] } [18:01:31.021] NAMES <- toupper(removed) [18:01:31.021] for (kk in seq_along(NAMES)) { [18:01:31.021] name <- removed[[kk]] [18:01:31.021] NAME <- NAMES[[kk]] [18:01:31.021] if (name != NAME && is.element(NAME, old_names)) [18:01:31.021] next [18:01:31.021] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.021] } [18:01:31.021] if (length(args) > 0) [18:01:31.021] base::do.call(base::Sys.setenv, args = args) [18:01:31.021] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.021] } [18:01:31.021] { [18:01:31.021] if (base::length(...future.futureOptionsAdded) > [18:01:31.021] 0L) { [18:01:31.021] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.021] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.021] base::options(opts) [18:01:31.021] } [18:01:31.021] { [18:01:31.021] { [18:01:31.021] NULL [18:01:31.021] RNGkind("Mersenne-Twister") [18:01:31.021] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.021] inherits = FALSE) [18:01:31.021] } [18:01:31.021] options(future.plan = NULL) [18:01:31.021] if (is.na(NA_character_)) [18:01:31.021] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.021] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.021] future::plan(list(function (..., envir = parent.frame()) [18:01:31.021] { [18:01:31.021] future <- SequentialFuture(..., envir = envir) [18:01:31.021] if (!future$lazy) [18:01:31.021] future <- run(future) [18:01:31.021] invisible(future) [18:01:31.021] }), .cleanup = FALSE, .init = FALSE) [18:01:31.021] } [18:01:31.021] } [18:01:31.021] } [18:01:31.021] }) [18:01:31.021] if (TRUE) { [18:01:31.021] base::sink(type = "output", split = FALSE) [18:01:31.021] if (TRUE) { [18:01:31.021] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.021] } [18:01:31.021] else { [18:01:31.021] ...future.result["stdout"] <- base::list(NULL) [18:01:31.021] } [18:01:31.021] base::close(...future.stdout) [18:01:31.021] ...future.stdout <- NULL [18:01:31.021] } [18:01:31.021] ...future.result$conditions <- ...future.conditions [18:01:31.021] ...future.result$finished <- base::Sys.time() [18:01:31.021] ...future.result [18:01:31.021] } [18:01:31.025] plan(): Setting new future strategy stack: [18:01:31.025] List of future strategies: [18:01:31.025] 1. sequential: [18:01:31.025] - args: function (..., envir = parent.frame()) [18:01:31.025] - tweaked: FALSE [18:01:31.025] - call: NULL [18:01:31.026] plan(): nbrOfWorkers() = 1 [18:01:31.027] plan(): Setting new future strategy stack: [18:01:31.028] List of future strategies: [18:01:31.028] 1. sequential: [18:01:31.028] - args: function (..., envir = parent.frame()) [18:01:31.028] - tweaked: FALSE [18:01:31.028] - call: plan(strategy) [18:01:31.028] plan(): nbrOfWorkers() = 1 [18:01:31.028] SequentialFuture started (and completed) [18:01:31.029] signalConditions() ... [18:01:31.029] - include = 'immediateCondition' [18:01:31.029] - exclude = [18:01:31.029] - resignal = FALSE [18:01:31.029] - Number of conditions: 1 [18:01:31.029] signalConditions() ... done [18:01:31.030] - Launch lazy future ... done [18:01:31.030] run() for 'SequentialFuture' ... done [18:01:31.030] signalConditions() ... [18:01:31.030] - include = 'immediateCondition' [18:01:31.030] - exclude = [18:01:31.030] - resignal = FALSE [18:01:31.031] - Number of conditions: 1 [18:01:31.031] signalConditions() ... done [18:01:31.031] Future state: 'finished' [18:01:31.031] signalConditions() ... [18:01:31.032] - include = 'condition' [18:01:31.033] - exclude = 'immediateCondition' [18:01:31.033] - resignal = TRUE [18:01:31.033] - Number of conditions: 1 [18:01:31.033] - Condition #1: 'simpleError', 'error', 'condition' [18:01:31.033] signalConditions() ... done [18:01:31.034] getGlobalsAndPackages() ... [18:01:31.034] Searching for globals... [18:01:31.037] - globals found: [6] '{', 'if', '==', '%%', 'ii', 'stop' [18:01:31.037] Searching for globals ... DONE [18:01:31.037] Resolving globals: FALSE [18:01:31.038] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:31.038] The total size of the 1 globals exported for future expression ('{; if (ii%%2 == 0); stop("Woops!"); ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [18:01:31.038] - globals: [1] 'ii' [18:01:31.038] [18:01:31.039] getGlobalsAndPackages() ... DONE [18:01:31.039] run() for 'Future' ... [18:01:31.039] - state: 'created' [18:01:31.039] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.040] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.040] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.040] - Field: 'label' [18:01:31.040] - Field: 'local' [18:01:31.040] - Field: 'owner' [18:01:31.041] - Field: 'envir' [18:01:31.041] - Field: 'packages' [18:01:31.041] - Field: 'gc' [18:01:31.041] - Field: 'conditions' [18:01:31.041] - Field: 'expr' [18:01:31.041] - Field: 'uuid' [18:01:31.042] - Field: 'seed' [18:01:31.042] - Field: 'version' [18:01:31.042] - Field: 'result' [18:01:31.042] - Field: 'asynchronous' [18:01:31.042] - Field: 'calls' [18:01:31.042] - Field: 'globals' [18:01:31.043] - Field: 'stdout' [18:01:31.043] - Field: 'earlySignal' [18:01:31.043] - Field: 'lazy' [18:01:31.043] - Field: 'state' [18:01:31.043] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.043] - Launch lazy future ... [18:01:31.044] Packages needed by the future expression (n = 0): [18:01:31.044] Packages needed by future strategies (n = 0): [18:01:31.044] { [18:01:31.044] { [18:01:31.044] { [18:01:31.044] ...future.startTime <- base::Sys.time() [18:01:31.044] { [18:01:31.044] { [18:01:31.044] { [18:01:31.044] base::local({ [18:01:31.044] has_future <- base::requireNamespace("future", [18:01:31.044] quietly = TRUE) [18:01:31.044] if (has_future) { [18:01:31.044] ns <- base::getNamespace("future") [18:01:31.044] version <- ns[[".package"]][["version"]] [18:01:31.044] if (is.null(version)) [18:01:31.044] version <- utils::packageVersion("future") [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] version <- NULL [18:01:31.044] } [18:01:31.044] if (!has_future || version < "1.8.0") { [18:01:31.044] info <- base::c(r_version = base::gsub("R version ", [18:01:31.044] "", base::R.version$version.string), [18:01:31.044] platform = base::sprintf("%s (%s-bit)", [18:01:31.044] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.044] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.044] "release", "version")], collapse = " "), [18:01:31.044] hostname = base::Sys.info()[["nodename"]]) [18:01:31.044] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.044] info) [18:01:31.044] info <- base::paste(info, collapse = "; ") [18:01:31.044] if (!has_future) { [18:01:31.044] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.044] info) [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.044] info, version) [18:01:31.044] } [18:01:31.044] base::stop(msg) [18:01:31.044] } [18:01:31.044] }) [18:01:31.044] } [18:01:31.044] options(future.plan = NULL) [18:01:31.044] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.044] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.044] } [18:01:31.044] ...future.workdir <- getwd() [18:01:31.044] } [18:01:31.044] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.044] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.044] } [18:01:31.044] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.044] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.044] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.044] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.044] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.044] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.044] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.044] base::names(...future.oldOptions)) [18:01:31.044] } [18:01:31.044] if (FALSE) { [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] if (TRUE) { [18:01:31.044] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.044] open = "w") [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.044] windows = "NUL", "/dev/null"), open = "w") [18:01:31.044] } [18:01:31.044] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.044] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.044] base::sink(type = "output", split = FALSE) [18:01:31.044] base::close(...future.stdout) [18:01:31.044] }, add = TRUE) [18:01:31.044] } [18:01:31.044] ...future.frame <- base::sys.nframe() [18:01:31.044] ...future.conditions <- base::list() [18:01:31.044] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.044] if (FALSE) { [18:01:31.044] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.044] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.044] } [18:01:31.044] ...future.result <- base::tryCatch({ [18:01:31.044] base::withCallingHandlers({ [18:01:31.044] ...future.value <- base::withVisible(base::local({ [18:01:31.044] if (ii%%2 == 0) [18:01:31.044] stop("Woops!") [18:01:31.044] ii [18:01:31.044] })) [18:01:31.044] future::FutureResult(value = ...future.value$value, [18:01:31.044] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.044] ...future.rng), globalenv = if (FALSE) [18:01:31.044] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.044] ...future.globalenv.names)) [18:01:31.044] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.044] }, condition = base::local({ [18:01:31.044] c <- base::c [18:01:31.044] inherits <- base::inherits [18:01:31.044] invokeRestart <- base::invokeRestart [18:01:31.044] length <- base::length [18:01:31.044] list <- base::list [18:01:31.044] seq.int <- base::seq.int [18:01:31.044] signalCondition <- base::signalCondition [18:01:31.044] sys.calls <- base::sys.calls [18:01:31.044] `[[` <- base::`[[` [18:01:31.044] `+` <- base::`+` [18:01:31.044] `<<-` <- base::`<<-` [18:01:31.044] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.044] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.044] 3L)] [18:01:31.044] } [18:01:31.044] function(cond) { [18:01:31.044] is_error <- inherits(cond, "error") [18:01:31.044] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.044] NULL) [18:01:31.044] if (is_error) { [18:01:31.044] sessionInformation <- function() { [18:01:31.044] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.044] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.044] search = base::search(), system = base::Sys.info()) [18:01:31.044] } [18:01:31.044] ...future.conditions[[length(...future.conditions) + [18:01:31.044] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.044] cond$call), session = sessionInformation(), [18:01:31.044] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.044] signalCondition(cond) [18:01:31.044] } [18:01:31.044] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.044] "immediateCondition"))) { [18:01:31.044] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.044] ...future.conditions[[length(...future.conditions) + [18:01:31.044] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.044] if (TRUE && !signal) { [18:01:31.044] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.044] { [18:01:31.044] inherits <- base::inherits [18:01:31.044] invokeRestart <- base::invokeRestart [18:01:31.044] is.null <- base::is.null [18:01:31.044] muffled <- FALSE [18:01:31.044] if (inherits(cond, "message")) { [18:01:31.044] muffled <- grepl(pattern, "muffleMessage") [18:01:31.044] if (muffled) [18:01:31.044] invokeRestart("muffleMessage") [18:01:31.044] } [18:01:31.044] else if (inherits(cond, "warning")) { [18:01:31.044] muffled <- grepl(pattern, "muffleWarning") [18:01:31.044] if (muffled) [18:01:31.044] invokeRestart("muffleWarning") [18:01:31.044] } [18:01:31.044] else if (inherits(cond, "condition")) { [18:01:31.044] if (!is.null(pattern)) { [18:01:31.044] computeRestarts <- base::computeRestarts [18:01:31.044] grepl <- base::grepl [18:01:31.044] restarts <- computeRestarts(cond) [18:01:31.044] for (restart in restarts) { [18:01:31.044] name <- restart$name [18:01:31.044] if (is.null(name)) [18:01:31.044] next [18:01:31.044] if (!grepl(pattern, name)) [18:01:31.044] next [18:01:31.044] invokeRestart(restart) [18:01:31.044] muffled <- TRUE [18:01:31.044] break [18:01:31.044] } [18:01:31.044] } [18:01:31.044] } [18:01:31.044] invisible(muffled) [18:01:31.044] } [18:01:31.044] muffleCondition(cond, pattern = "^muffle") [18:01:31.044] } [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] if (TRUE) { [18:01:31.044] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.044] { [18:01:31.044] inherits <- base::inherits [18:01:31.044] invokeRestart <- base::invokeRestart [18:01:31.044] is.null <- base::is.null [18:01:31.044] muffled <- FALSE [18:01:31.044] if (inherits(cond, "message")) { [18:01:31.044] muffled <- grepl(pattern, "muffleMessage") [18:01:31.044] if (muffled) [18:01:31.044] invokeRestart("muffleMessage") [18:01:31.044] } [18:01:31.044] else if (inherits(cond, "warning")) { [18:01:31.044] muffled <- grepl(pattern, "muffleWarning") [18:01:31.044] if (muffled) [18:01:31.044] invokeRestart("muffleWarning") [18:01:31.044] } [18:01:31.044] else if (inherits(cond, "condition")) { [18:01:31.044] if (!is.null(pattern)) { [18:01:31.044] computeRestarts <- base::computeRestarts [18:01:31.044] grepl <- base::grepl [18:01:31.044] restarts <- computeRestarts(cond) [18:01:31.044] for (restart in restarts) { [18:01:31.044] name <- restart$name [18:01:31.044] if (is.null(name)) [18:01:31.044] next [18:01:31.044] if (!grepl(pattern, name)) [18:01:31.044] next [18:01:31.044] invokeRestart(restart) [18:01:31.044] muffled <- TRUE [18:01:31.044] break [18:01:31.044] } [18:01:31.044] } [18:01:31.044] } [18:01:31.044] invisible(muffled) [18:01:31.044] } [18:01:31.044] muffleCondition(cond, pattern = "^muffle") [18:01:31.044] } [18:01:31.044] } [18:01:31.044] } [18:01:31.044] })) [18:01:31.044] }, error = function(ex) { [18:01:31.044] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.044] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.044] ...future.rng), started = ...future.startTime, [18:01:31.044] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.044] version = "1.8"), class = "FutureResult") [18:01:31.044] }, finally = { [18:01:31.044] if (!identical(...future.workdir, getwd())) [18:01:31.044] setwd(...future.workdir) [18:01:31.044] { [18:01:31.044] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.044] ...future.oldOptions$nwarnings <- NULL [18:01:31.044] } [18:01:31.044] base::options(...future.oldOptions) [18:01:31.044] if (.Platform$OS.type == "windows") { [18:01:31.044] old_names <- names(...future.oldEnvVars) [18:01:31.044] envs <- base::Sys.getenv() [18:01:31.044] names <- names(envs) [18:01:31.044] common <- intersect(names, old_names) [18:01:31.044] added <- setdiff(names, old_names) [18:01:31.044] removed <- setdiff(old_names, names) [18:01:31.044] changed <- common[...future.oldEnvVars[common] != [18:01:31.044] envs[common]] [18:01:31.044] NAMES <- toupper(changed) [18:01:31.044] args <- list() [18:01:31.044] for (kk in seq_along(NAMES)) { [18:01:31.044] name <- changed[[kk]] [18:01:31.044] NAME <- NAMES[[kk]] [18:01:31.044] if (name != NAME && is.element(NAME, old_names)) [18:01:31.044] next [18:01:31.044] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.044] } [18:01:31.044] NAMES <- toupper(added) [18:01:31.044] for (kk in seq_along(NAMES)) { [18:01:31.044] name <- added[[kk]] [18:01:31.044] NAME <- NAMES[[kk]] [18:01:31.044] if (name != NAME && is.element(NAME, old_names)) [18:01:31.044] next [18:01:31.044] args[[name]] <- "" [18:01:31.044] } [18:01:31.044] NAMES <- toupper(removed) [18:01:31.044] for (kk in seq_along(NAMES)) { [18:01:31.044] name <- removed[[kk]] [18:01:31.044] NAME <- NAMES[[kk]] [18:01:31.044] if (name != NAME && is.element(NAME, old_names)) [18:01:31.044] next [18:01:31.044] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.044] } [18:01:31.044] if (length(args) > 0) [18:01:31.044] base::do.call(base::Sys.setenv, args = args) [18:01:31.044] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.044] } [18:01:31.044] { [18:01:31.044] if (base::length(...future.futureOptionsAdded) > [18:01:31.044] 0L) { [18:01:31.044] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.044] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.044] base::options(opts) [18:01:31.044] } [18:01:31.044] { [18:01:31.044] { [18:01:31.044] NULL [18:01:31.044] RNGkind("Mersenne-Twister") [18:01:31.044] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.044] inherits = FALSE) [18:01:31.044] } [18:01:31.044] options(future.plan = NULL) [18:01:31.044] if (is.na(NA_character_)) [18:01:31.044] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.044] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.044] future::plan(list(function (..., envir = parent.frame()) [18:01:31.044] { [18:01:31.044] future <- SequentialFuture(..., envir = envir) [18:01:31.044] if (!future$lazy) [18:01:31.044] future <- run(future) [18:01:31.044] invisible(future) [18:01:31.044] }), .cleanup = FALSE, .init = FALSE) [18:01:31.044] } [18:01:31.044] } [18:01:31.044] } [18:01:31.044] }) [18:01:31.044] if (TRUE) { [18:01:31.044] base::sink(type = "output", split = FALSE) [18:01:31.044] if (TRUE) { [18:01:31.044] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.044] } [18:01:31.044] else { [18:01:31.044] ...future.result["stdout"] <- base::list(NULL) [18:01:31.044] } [18:01:31.044] base::close(...future.stdout) [18:01:31.044] ...future.stdout <- NULL [18:01:31.044] } [18:01:31.044] ...future.result$conditions <- ...future.conditions [18:01:31.044] ...future.result$finished <- base::Sys.time() [18:01:31.044] ...future.result [18:01:31.044] } [18:01:31.048] assign_globals() ... [18:01:31.048] List of 1 [18:01:31.048] $ ii: int 1 [18:01:31.048] - attr(*, "where")=List of 1 [18:01:31.048] ..$ ii: [18:01:31.048] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:31.048] - attr(*, "resolved")= logi FALSE [18:01:31.048] - attr(*, "total_size")= num 56 [18:01:31.048] - attr(*, "already-done")= logi TRUE [18:01:31.051] - copied 'ii' to environment [18:01:31.052] assign_globals() ... done [18:01:31.052] plan(): Setting new future strategy stack: [18:01:31.052] List of future strategies: [18:01:31.052] 1. sequential: [18:01:31.052] - args: function (..., envir = parent.frame()) [18:01:31.052] - tweaked: FALSE [18:01:31.052] - call: NULL [18:01:31.053] plan(): nbrOfWorkers() = 1 [18:01:31.054] plan(): Setting new future strategy stack: [18:01:31.054] List of future strategies: [18:01:31.054] 1. sequential: [18:01:31.054] - args: function (..., envir = parent.frame()) [18:01:31.054] - tweaked: FALSE [18:01:31.054] - call: plan(strategy) [18:01:31.054] plan(): nbrOfWorkers() = 1 [18:01:31.055] SequentialFuture started (and completed) [18:01:31.055] - Launch lazy future ... done [18:01:31.055] run() for 'SequentialFuture' ... done [18:01:31.055] getGlobalsAndPackages() ... [18:01:31.056] Searching for globals... [18:01:31.057] - globals found: [6] '{', 'if', '==', '%%', 'ii', 'stop' [18:01:31.058] Searching for globals ... DONE [18:01:31.058] Resolving globals: FALSE [18:01:31.058] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:31.059] The total size of the 1 globals exported for future expression ('{; if (ii%%2 == 0); stop("Woops!"); ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [18:01:31.059] - globals: [1] 'ii' [18:01:31.059] [18:01:31.059] getGlobalsAndPackages() ... DONE [18:01:31.060] run() for 'Future' ... [18:01:31.060] - state: 'created' [18:01:31.060] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.060] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.061] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.061] - Field: 'label' [18:01:31.061] - Field: 'local' [18:01:31.061] - Field: 'owner' [18:01:31.061] - Field: 'envir' [18:01:31.061] - Field: 'packages' [18:01:31.062] - Field: 'gc' [18:01:31.062] - Field: 'conditions' [18:01:31.062] - Field: 'expr' [18:01:31.062] - Field: 'uuid' [18:01:31.062] - Field: 'seed' [18:01:31.062] - Field: 'version' [18:01:31.063] - Field: 'result' [18:01:31.063] - Field: 'asynchronous' [18:01:31.063] - Field: 'calls' [18:01:31.063] - Field: 'globals' [18:01:31.063] - Field: 'stdout' [18:01:31.064] - Field: 'earlySignal' [18:01:31.065] - Field: 'lazy' [18:01:31.065] - Field: 'state' [18:01:31.066] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.066] - Launch lazy future ... [18:01:31.067] Packages needed by the future expression (n = 0): [18:01:31.067] Packages needed by future strategies (n = 0): [18:01:31.069] { [18:01:31.069] { [18:01:31.069] { [18:01:31.069] ...future.startTime <- base::Sys.time() [18:01:31.069] { [18:01:31.069] { [18:01:31.069] { [18:01:31.069] base::local({ [18:01:31.069] has_future <- base::requireNamespace("future", [18:01:31.069] quietly = TRUE) [18:01:31.069] if (has_future) { [18:01:31.069] ns <- base::getNamespace("future") [18:01:31.069] version <- ns[[".package"]][["version"]] [18:01:31.069] if (is.null(version)) [18:01:31.069] version <- utils::packageVersion("future") [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] version <- NULL [18:01:31.069] } [18:01:31.069] if (!has_future || version < "1.8.0") { [18:01:31.069] info <- base::c(r_version = base::gsub("R version ", [18:01:31.069] "", base::R.version$version.string), [18:01:31.069] platform = base::sprintf("%s (%s-bit)", [18:01:31.069] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.069] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.069] "release", "version")], collapse = " "), [18:01:31.069] hostname = base::Sys.info()[["nodename"]]) [18:01:31.069] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.069] info) [18:01:31.069] info <- base::paste(info, collapse = "; ") [18:01:31.069] if (!has_future) { [18:01:31.069] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.069] info) [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.069] info, version) [18:01:31.069] } [18:01:31.069] base::stop(msg) [18:01:31.069] } [18:01:31.069] }) [18:01:31.069] } [18:01:31.069] options(future.plan = NULL) [18:01:31.069] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.069] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.069] } [18:01:31.069] ...future.workdir <- getwd() [18:01:31.069] } [18:01:31.069] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.069] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.069] } [18:01:31.069] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.069] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.069] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.069] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.069] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.069] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.069] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.069] base::names(...future.oldOptions)) [18:01:31.069] } [18:01:31.069] if (FALSE) { [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] if (TRUE) { [18:01:31.069] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.069] open = "w") [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.069] windows = "NUL", "/dev/null"), open = "w") [18:01:31.069] } [18:01:31.069] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.069] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.069] base::sink(type = "output", split = FALSE) [18:01:31.069] base::close(...future.stdout) [18:01:31.069] }, add = TRUE) [18:01:31.069] } [18:01:31.069] ...future.frame <- base::sys.nframe() [18:01:31.069] ...future.conditions <- base::list() [18:01:31.069] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.069] if (FALSE) { [18:01:31.069] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.069] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.069] } [18:01:31.069] ...future.result <- base::tryCatch({ [18:01:31.069] base::withCallingHandlers({ [18:01:31.069] ...future.value <- base::withVisible(base::local({ [18:01:31.069] if (ii%%2 == 0) [18:01:31.069] stop("Woops!") [18:01:31.069] ii [18:01:31.069] })) [18:01:31.069] future::FutureResult(value = ...future.value$value, [18:01:31.069] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.069] ...future.rng), globalenv = if (FALSE) [18:01:31.069] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.069] ...future.globalenv.names)) [18:01:31.069] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.069] }, condition = base::local({ [18:01:31.069] c <- base::c [18:01:31.069] inherits <- base::inherits [18:01:31.069] invokeRestart <- base::invokeRestart [18:01:31.069] length <- base::length [18:01:31.069] list <- base::list [18:01:31.069] seq.int <- base::seq.int [18:01:31.069] signalCondition <- base::signalCondition [18:01:31.069] sys.calls <- base::sys.calls [18:01:31.069] `[[` <- base::`[[` [18:01:31.069] `+` <- base::`+` [18:01:31.069] `<<-` <- base::`<<-` [18:01:31.069] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.069] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.069] 3L)] [18:01:31.069] } [18:01:31.069] function(cond) { [18:01:31.069] is_error <- inherits(cond, "error") [18:01:31.069] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.069] NULL) [18:01:31.069] if (is_error) { [18:01:31.069] sessionInformation <- function() { [18:01:31.069] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.069] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.069] search = base::search(), system = base::Sys.info()) [18:01:31.069] } [18:01:31.069] ...future.conditions[[length(...future.conditions) + [18:01:31.069] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.069] cond$call), session = sessionInformation(), [18:01:31.069] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.069] signalCondition(cond) [18:01:31.069] } [18:01:31.069] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.069] "immediateCondition"))) { [18:01:31.069] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.069] ...future.conditions[[length(...future.conditions) + [18:01:31.069] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.069] if (TRUE && !signal) { [18:01:31.069] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.069] { [18:01:31.069] inherits <- base::inherits [18:01:31.069] invokeRestart <- base::invokeRestart [18:01:31.069] is.null <- base::is.null [18:01:31.069] muffled <- FALSE [18:01:31.069] if (inherits(cond, "message")) { [18:01:31.069] muffled <- grepl(pattern, "muffleMessage") [18:01:31.069] if (muffled) [18:01:31.069] invokeRestart("muffleMessage") [18:01:31.069] } [18:01:31.069] else if (inherits(cond, "warning")) { [18:01:31.069] muffled <- grepl(pattern, "muffleWarning") [18:01:31.069] if (muffled) [18:01:31.069] invokeRestart("muffleWarning") [18:01:31.069] } [18:01:31.069] else if (inherits(cond, "condition")) { [18:01:31.069] if (!is.null(pattern)) { [18:01:31.069] computeRestarts <- base::computeRestarts [18:01:31.069] grepl <- base::grepl [18:01:31.069] restarts <- computeRestarts(cond) [18:01:31.069] for (restart in restarts) { [18:01:31.069] name <- restart$name [18:01:31.069] if (is.null(name)) [18:01:31.069] next [18:01:31.069] if (!grepl(pattern, name)) [18:01:31.069] next [18:01:31.069] invokeRestart(restart) [18:01:31.069] muffled <- TRUE [18:01:31.069] break [18:01:31.069] } [18:01:31.069] } [18:01:31.069] } [18:01:31.069] invisible(muffled) [18:01:31.069] } [18:01:31.069] muffleCondition(cond, pattern = "^muffle") [18:01:31.069] } [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] if (TRUE) { [18:01:31.069] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.069] { [18:01:31.069] inherits <- base::inherits [18:01:31.069] invokeRestart <- base::invokeRestart [18:01:31.069] is.null <- base::is.null [18:01:31.069] muffled <- FALSE [18:01:31.069] if (inherits(cond, "message")) { [18:01:31.069] muffled <- grepl(pattern, "muffleMessage") [18:01:31.069] if (muffled) [18:01:31.069] invokeRestart("muffleMessage") [18:01:31.069] } [18:01:31.069] else if (inherits(cond, "warning")) { [18:01:31.069] muffled <- grepl(pattern, "muffleWarning") [18:01:31.069] if (muffled) [18:01:31.069] invokeRestart("muffleWarning") [18:01:31.069] } [18:01:31.069] else if (inherits(cond, "condition")) { [18:01:31.069] if (!is.null(pattern)) { [18:01:31.069] computeRestarts <- base::computeRestarts [18:01:31.069] grepl <- base::grepl [18:01:31.069] restarts <- computeRestarts(cond) [18:01:31.069] for (restart in restarts) { [18:01:31.069] name <- restart$name [18:01:31.069] if (is.null(name)) [18:01:31.069] next [18:01:31.069] if (!grepl(pattern, name)) [18:01:31.069] next [18:01:31.069] invokeRestart(restart) [18:01:31.069] muffled <- TRUE [18:01:31.069] break [18:01:31.069] } [18:01:31.069] } [18:01:31.069] } [18:01:31.069] invisible(muffled) [18:01:31.069] } [18:01:31.069] muffleCondition(cond, pattern = "^muffle") [18:01:31.069] } [18:01:31.069] } [18:01:31.069] } [18:01:31.069] })) [18:01:31.069] }, error = function(ex) { [18:01:31.069] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.069] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.069] ...future.rng), started = ...future.startTime, [18:01:31.069] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.069] version = "1.8"), class = "FutureResult") [18:01:31.069] }, finally = { [18:01:31.069] if (!identical(...future.workdir, getwd())) [18:01:31.069] setwd(...future.workdir) [18:01:31.069] { [18:01:31.069] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.069] ...future.oldOptions$nwarnings <- NULL [18:01:31.069] } [18:01:31.069] base::options(...future.oldOptions) [18:01:31.069] if (.Platform$OS.type == "windows") { [18:01:31.069] old_names <- names(...future.oldEnvVars) [18:01:31.069] envs <- base::Sys.getenv() [18:01:31.069] names <- names(envs) [18:01:31.069] common <- intersect(names, old_names) [18:01:31.069] added <- setdiff(names, old_names) [18:01:31.069] removed <- setdiff(old_names, names) [18:01:31.069] changed <- common[...future.oldEnvVars[common] != [18:01:31.069] envs[common]] [18:01:31.069] NAMES <- toupper(changed) [18:01:31.069] args <- list() [18:01:31.069] for (kk in seq_along(NAMES)) { [18:01:31.069] name <- changed[[kk]] [18:01:31.069] NAME <- NAMES[[kk]] [18:01:31.069] if (name != NAME && is.element(NAME, old_names)) [18:01:31.069] next [18:01:31.069] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.069] } [18:01:31.069] NAMES <- toupper(added) [18:01:31.069] for (kk in seq_along(NAMES)) { [18:01:31.069] name <- added[[kk]] [18:01:31.069] NAME <- NAMES[[kk]] [18:01:31.069] if (name != NAME && is.element(NAME, old_names)) [18:01:31.069] next [18:01:31.069] args[[name]] <- "" [18:01:31.069] } [18:01:31.069] NAMES <- toupper(removed) [18:01:31.069] for (kk in seq_along(NAMES)) { [18:01:31.069] name <- removed[[kk]] [18:01:31.069] NAME <- NAMES[[kk]] [18:01:31.069] if (name != NAME && is.element(NAME, old_names)) [18:01:31.069] next [18:01:31.069] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.069] } [18:01:31.069] if (length(args) > 0) [18:01:31.069] base::do.call(base::Sys.setenv, args = args) [18:01:31.069] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.069] } [18:01:31.069] { [18:01:31.069] if (base::length(...future.futureOptionsAdded) > [18:01:31.069] 0L) { [18:01:31.069] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.069] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.069] base::options(opts) [18:01:31.069] } [18:01:31.069] { [18:01:31.069] { [18:01:31.069] NULL [18:01:31.069] RNGkind("Mersenne-Twister") [18:01:31.069] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.069] inherits = FALSE) [18:01:31.069] } [18:01:31.069] options(future.plan = NULL) [18:01:31.069] if (is.na(NA_character_)) [18:01:31.069] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.069] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.069] future::plan(list(function (..., envir = parent.frame()) [18:01:31.069] { [18:01:31.069] future <- SequentialFuture(..., envir = envir) [18:01:31.069] if (!future$lazy) [18:01:31.069] future <- run(future) [18:01:31.069] invisible(future) [18:01:31.069] }), .cleanup = FALSE, .init = FALSE) [18:01:31.069] } [18:01:31.069] } [18:01:31.069] } [18:01:31.069] }) [18:01:31.069] if (TRUE) { [18:01:31.069] base::sink(type = "output", split = FALSE) [18:01:31.069] if (TRUE) { [18:01:31.069] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.069] } [18:01:31.069] else { [18:01:31.069] ...future.result["stdout"] <- base::list(NULL) [18:01:31.069] } [18:01:31.069] base::close(...future.stdout) [18:01:31.069] ...future.stdout <- NULL [18:01:31.069] } [18:01:31.069] ...future.result$conditions <- ...future.conditions [18:01:31.069] ...future.result$finished <- base::Sys.time() [18:01:31.069] ...future.result [18:01:31.069] } [18:01:31.075] assign_globals() ... [18:01:31.075] List of 1 [18:01:31.075] $ ii: int 2 [18:01:31.075] - attr(*, "where")=List of 1 [18:01:31.075] ..$ ii: [18:01:31.075] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:31.075] - attr(*, "resolved")= logi FALSE [18:01:31.075] - attr(*, "total_size")= num 56 [18:01:31.075] - attr(*, "already-done")= logi TRUE [18:01:31.082] - copied 'ii' to environment [18:01:31.083] assign_globals() ... done [18:01:31.083] plan(): Setting new future strategy stack: [18:01:31.083] List of future strategies: [18:01:31.083] 1. sequential: [18:01:31.083] - args: function (..., envir = parent.frame()) [18:01:31.083] - tweaked: FALSE [18:01:31.083] - call: NULL [18:01:31.084] plan(): nbrOfWorkers() = 1 [18:01:31.086] plan(): Setting new future strategy stack: [18:01:31.086] List of future strategies: [18:01:31.086] 1. sequential: [18:01:31.086] - args: function (..., envir = parent.frame()) [18:01:31.086] - tweaked: FALSE [18:01:31.086] - call: plan(strategy) [18:01:31.087] plan(): nbrOfWorkers() = 1 [18:01:31.087] SequentialFuture started (and completed) [18:01:31.088] signalConditions() ... [18:01:31.088] - include = 'immediateCondition' [18:01:31.088] - exclude = [18:01:31.088] - resignal = FALSE [18:01:31.089] - Number of conditions: 1 [18:01:31.089] signalConditions() ... done [18:01:31.089] - Launch lazy future ... done [18:01:31.090] run() for 'SequentialFuture' ... done [18:01:31.090] getGlobalsAndPackages() ... [18:01:31.091] Searching for globals... [18:01:31.094] - globals found: [6] '{', 'if', '==', '%%', 'ii', 'stop' [18:01:31.094] Searching for globals ... DONE [18:01:31.094] Resolving globals: FALSE [18:01:31.095] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:31.096] The total size of the 1 globals exported for future expression ('{; if (ii%%2 == 0); stop("Woops!"); ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [18:01:31.096] - globals: [1] 'ii' [18:01:31.096] [18:01:31.097] getGlobalsAndPackages() ... DONE [18:01:31.097] run() for 'Future' ... [18:01:31.097] - state: 'created' [18:01:31.098] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.098] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.099] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.099] - Field: 'label' [18:01:31.099] - Field: 'local' [18:01:31.099] - Field: 'owner' [18:01:31.100] - Field: 'envir' [18:01:31.100] - Field: 'packages' [18:01:31.100] - Field: 'gc' [18:01:31.100] - Field: 'conditions' [18:01:31.101] - Field: 'expr' [18:01:31.101] - Field: 'uuid' [18:01:31.101] - Field: 'seed' [18:01:31.101] - Field: 'version' [18:01:31.102] - Field: 'result' [18:01:31.102] - Field: 'asynchronous' [18:01:31.102] - Field: 'calls' [18:01:31.102] - Field: 'globals' [18:01:31.103] - Field: 'stdout' [18:01:31.103] - Field: 'earlySignal' [18:01:31.103] - Field: 'lazy' [18:01:31.104] - Field: 'state' [18:01:31.104] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.104] - Launch lazy future ... [18:01:31.104] Packages needed by the future expression (n = 0): [18:01:31.105] Packages needed by future strategies (n = 0): [18:01:31.105] { [18:01:31.105] { [18:01:31.105] { [18:01:31.105] ...future.startTime <- base::Sys.time() [18:01:31.105] { [18:01:31.105] { [18:01:31.105] { [18:01:31.105] base::local({ [18:01:31.105] has_future <- base::requireNamespace("future", [18:01:31.105] quietly = TRUE) [18:01:31.105] if (has_future) { [18:01:31.105] ns <- base::getNamespace("future") [18:01:31.105] version <- ns[[".package"]][["version"]] [18:01:31.105] if (is.null(version)) [18:01:31.105] version <- utils::packageVersion("future") [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] version <- NULL [18:01:31.105] } [18:01:31.105] if (!has_future || version < "1.8.0") { [18:01:31.105] info <- base::c(r_version = base::gsub("R version ", [18:01:31.105] "", base::R.version$version.string), [18:01:31.105] platform = base::sprintf("%s (%s-bit)", [18:01:31.105] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.105] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.105] "release", "version")], collapse = " "), [18:01:31.105] hostname = base::Sys.info()[["nodename"]]) [18:01:31.105] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.105] info) [18:01:31.105] info <- base::paste(info, collapse = "; ") [18:01:31.105] if (!has_future) { [18:01:31.105] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.105] info) [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.105] info, version) [18:01:31.105] } [18:01:31.105] base::stop(msg) [18:01:31.105] } [18:01:31.105] }) [18:01:31.105] } [18:01:31.105] options(future.plan = NULL) [18:01:31.105] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.105] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.105] } [18:01:31.105] ...future.workdir <- getwd() [18:01:31.105] } [18:01:31.105] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.105] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.105] } [18:01:31.105] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.105] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.105] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.105] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.105] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.105] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.105] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.105] base::names(...future.oldOptions)) [18:01:31.105] } [18:01:31.105] if (FALSE) { [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] if (TRUE) { [18:01:31.105] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.105] open = "w") [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.105] windows = "NUL", "/dev/null"), open = "w") [18:01:31.105] } [18:01:31.105] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.105] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.105] base::sink(type = "output", split = FALSE) [18:01:31.105] base::close(...future.stdout) [18:01:31.105] }, add = TRUE) [18:01:31.105] } [18:01:31.105] ...future.frame <- base::sys.nframe() [18:01:31.105] ...future.conditions <- base::list() [18:01:31.105] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.105] if (FALSE) { [18:01:31.105] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.105] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.105] } [18:01:31.105] ...future.result <- base::tryCatch({ [18:01:31.105] base::withCallingHandlers({ [18:01:31.105] ...future.value <- base::withVisible(base::local({ [18:01:31.105] if (ii%%2 == 0) [18:01:31.105] stop("Woops!") [18:01:31.105] ii [18:01:31.105] })) [18:01:31.105] future::FutureResult(value = ...future.value$value, [18:01:31.105] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.105] ...future.rng), globalenv = if (FALSE) [18:01:31.105] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.105] ...future.globalenv.names)) [18:01:31.105] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.105] }, condition = base::local({ [18:01:31.105] c <- base::c [18:01:31.105] inherits <- base::inherits [18:01:31.105] invokeRestart <- base::invokeRestart [18:01:31.105] length <- base::length [18:01:31.105] list <- base::list [18:01:31.105] seq.int <- base::seq.int [18:01:31.105] signalCondition <- base::signalCondition [18:01:31.105] sys.calls <- base::sys.calls [18:01:31.105] `[[` <- base::`[[` [18:01:31.105] `+` <- base::`+` [18:01:31.105] `<<-` <- base::`<<-` [18:01:31.105] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.105] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.105] 3L)] [18:01:31.105] } [18:01:31.105] function(cond) { [18:01:31.105] is_error <- inherits(cond, "error") [18:01:31.105] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.105] NULL) [18:01:31.105] if (is_error) { [18:01:31.105] sessionInformation <- function() { [18:01:31.105] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.105] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.105] search = base::search(), system = base::Sys.info()) [18:01:31.105] } [18:01:31.105] ...future.conditions[[length(...future.conditions) + [18:01:31.105] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.105] cond$call), session = sessionInformation(), [18:01:31.105] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.105] signalCondition(cond) [18:01:31.105] } [18:01:31.105] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.105] "immediateCondition"))) { [18:01:31.105] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.105] ...future.conditions[[length(...future.conditions) + [18:01:31.105] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.105] if (TRUE && !signal) { [18:01:31.105] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.105] { [18:01:31.105] inherits <- base::inherits [18:01:31.105] invokeRestart <- base::invokeRestart [18:01:31.105] is.null <- base::is.null [18:01:31.105] muffled <- FALSE [18:01:31.105] if (inherits(cond, "message")) { [18:01:31.105] muffled <- grepl(pattern, "muffleMessage") [18:01:31.105] if (muffled) [18:01:31.105] invokeRestart("muffleMessage") [18:01:31.105] } [18:01:31.105] else if (inherits(cond, "warning")) { [18:01:31.105] muffled <- grepl(pattern, "muffleWarning") [18:01:31.105] if (muffled) [18:01:31.105] invokeRestart("muffleWarning") [18:01:31.105] } [18:01:31.105] else if (inherits(cond, "condition")) { [18:01:31.105] if (!is.null(pattern)) { [18:01:31.105] computeRestarts <- base::computeRestarts [18:01:31.105] grepl <- base::grepl [18:01:31.105] restarts <- computeRestarts(cond) [18:01:31.105] for (restart in restarts) { [18:01:31.105] name <- restart$name [18:01:31.105] if (is.null(name)) [18:01:31.105] next [18:01:31.105] if (!grepl(pattern, name)) [18:01:31.105] next [18:01:31.105] invokeRestart(restart) [18:01:31.105] muffled <- TRUE [18:01:31.105] break [18:01:31.105] } [18:01:31.105] } [18:01:31.105] } [18:01:31.105] invisible(muffled) [18:01:31.105] } [18:01:31.105] muffleCondition(cond, pattern = "^muffle") [18:01:31.105] } [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] if (TRUE) { [18:01:31.105] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.105] { [18:01:31.105] inherits <- base::inherits [18:01:31.105] invokeRestart <- base::invokeRestart [18:01:31.105] is.null <- base::is.null [18:01:31.105] muffled <- FALSE [18:01:31.105] if (inherits(cond, "message")) { [18:01:31.105] muffled <- grepl(pattern, "muffleMessage") [18:01:31.105] if (muffled) [18:01:31.105] invokeRestart("muffleMessage") [18:01:31.105] } [18:01:31.105] else if (inherits(cond, "warning")) { [18:01:31.105] muffled <- grepl(pattern, "muffleWarning") [18:01:31.105] if (muffled) [18:01:31.105] invokeRestart("muffleWarning") [18:01:31.105] } [18:01:31.105] else if (inherits(cond, "condition")) { [18:01:31.105] if (!is.null(pattern)) { [18:01:31.105] computeRestarts <- base::computeRestarts [18:01:31.105] grepl <- base::grepl [18:01:31.105] restarts <- computeRestarts(cond) [18:01:31.105] for (restart in restarts) { [18:01:31.105] name <- restart$name [18:01:31.105] if (is.null(name)) [18:01:31.105] next [18:01:31.105] if (!grepl(pattern, name)) [18:01:31.105] next [18:01:31.105] invokeRestart(restart) [18:01:31.105] muffled <- TRUE [18:01:31.105] break [18:01:31.105] } [18:01:31.105] } [18:01:31.105] } [18:01:31.105] invisible(muffled) [18:01:31.105] } [18:01:31.105] muffleCondition(cond, pattern = "^muffle") [18:01:31.105] } [18:01:31.105] } [18:01:31.105] } [18:01:31.105] })) [18:01:31.105] }, error = function(ex) { [18:01:31.105] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.105] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.105] ...future.rng), started = ...future.startTime, [18:01:31.105] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.105] version = "1.8"), class = "FutureResult") [18:01:31.105] }, finally = { [18:01:31.105] if (!identical(...future.workdir, getwd())) [18:01:31.105] setwd(...future.workdir) [18:01:31.105] { [18:01:31.105] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.105] ...future.oldOptions$nwarnings <- NULL [18:01:31.105] } [18:01:31.105] base::options(...future.oldOptions) [18:01:31.105] if (.Platform$OS.type == "windows") { [18:01:31.105] old_names <- names(...future.oldEnvVars) [18:01:31.105] envs <- base::Sys.getenv() [18:01:31.105] names <- names(envs) [18:01:31.105] common <- intersect(names, old_names) [18:01:31.105] added <- setdiff(names, old_names) [18:01:31.105] removed <- setdiff(old_names, names) [18:01:31.105] changed <- common[...future.oldEnvVars[common] != [18:01:31.105] envs[common]] [18:01:31.105] NAMES <- toupper(changed) [18:01:31.105] args <- list() [18:01:31.105] for (kk in seq_along(NAMES)) { [18:01:31.105] name <- changed[[kk]] [18:01:31.105] NAME <- NAMES[[kk]] [18:01:31.105] if (name != NAME && is.element(NAME, old_names)) [18:01:31.105] next [18:01:31.105] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.105] } [18:01:31.105] NAMES <- toupper(added) [18:01:31.105] for (kk in seq_along(NAMES)) { [18:01:31.105] name <- added[[kk]] [18:01:31.105] NAME <- NAMES[[kk]] [18:01:31.105] if (name != NAME && is.element(NAME, old_names)) [18:01:31.105] next [18:01:31.105] args[[name]] <- "" [18:01:31.105] } [18:01:31.105] NAMES <- toupper(removed) [18:01:31.105] for (kk in seq_along(NAMES)) { [18:01:31.105] name <- removed[[kk]] [18:01:31.105] NAME <- NAMES[[kk]] [18:01:31.105] if (name != NAME && is.element(NAME, old_names)) [18:01:31.105] next [18:01:31.105] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.105] } [18:01:31.105] if (length(args) > 0) [18:01:31.105] base::do.call(base::Sys.setenv, args = args) [18:01:31.105] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.105] } [18:01:31.105] { [18:01:31.105] if (base::length(...future.futureOptionsAdded) > [18:01:31.105] 0L) { [18:01:31.105] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.105] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.105] base::options(opts) [18:01:31.105] } [18:01:31.105] { [18:01:31.105] { [18:01:31.105] NULL [18:01:31.105] RNGkind("Mersenne-Twister") [18:01:31.105] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.105] inherits = FALSE) [18:01:31.105] } [18:01:31.105] options(future.plan = NULL) [18:01:31.105] if (is.na(NA_character_)) [18:01:31.105] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.105] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.105] future::plan(list(function (..., envir = parent.frame()) [18:01:31.105] { [18:01:31.105] future <- SequentialFuture(..., envir = envir) [18:01:31.105] if (!future$lazy) [18:01:31.105] future <- run(future) [18:01:31.105] invisible(future) [18:01:31.105] }), .cleanup = FALSE, .init = FALSE) [18:01:31.105] } [18:01:31.105] } [18:01:31.105] } [18:01:31.105] }) [18:01:31.105] if (TRUE) { [18:01:31.105] base::sink(type = "output", split = FALSE) [18:01:31.105] if (TRUE) { [18:01:31.105] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.105] } [18:01:31.105] else { [18:01:31.105] ...future.result["stdout"] <- base::list(NULL) [18:01:31.105] } [18:01:31.105] base::close(...future.stdout) [18:01:31.105] ...future.stdout <- NULL [18:01:31.105] } [18:01:31.105] ...future.result$conditions <- ...future.conditions [18:01:31.105] ...future.result$finished <- base::Sys.time() [18:01:31.105] ...future.result [18:01:31.105] } [18:01:31.111] assign_globals() ... [18:01:31.111] List of 1 [18:01:31.111] $ ii: int 3 [18:01:31.111] - attr(*, "where")=List of 1 [18:01:31.111] ..$ ii: [18:01:31.111] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:31.111] - attr(*, "resolved")= logi FALSE [18:01:31.111] - attr(*, "total_size")= num 56 [18:01:31.111] - attr(*, "already-done")= logi TRUE [18:01:31.114] - copied 'ii' to environment [18:01:31.114] assign_globals() ... done [18:01:31.115] plan(): Setting new future strategy stack: [18:01:31.115] List of future strategies: [18:01:31.115] 1. sequential: [18:01:31.115] - args: function (..., envir = parent.frame()) [18:01:31.115] - tweaked: FALSE [18:01:31.115] - call: NULL [18:01:31.115] plan(): nbrOfWorkers() = 1 [18:01:31.117] plan(): Setting new future strategy stack: [18:01:31.117] List of future strategies: [18:01:31.117] 1. sequential: [18:01:31.117] - args: function (..., envir = parent.frame()) [18:01:31.117] - tweaked: FALSE [18:01:31.117] - call: plan(strategy) [18:01:31.118] plan(): nbrOfWorkers() = 1 [18:01:31.118] SequentialFuture started (and completed) [18:01:31.118] - Launch lazy future ... done [18:01:31.118] run() for 'SequentialFuture' ... done [18:01:31.119] signalConditions() ... [18:01:31.119] - include = 'immediateCondition' [18:01:31.119] - exclude = [18:01:31.119] - resignal = FALSE [18:01:31.120] - Number of conditions: 1 [18:01:31.120] signalConditions() ... done [18:01:31.120] Future state: 'finished' [18:01:31.120] signalConditions() ... [18:01:31.120] - include = 'condition' [18:01:31.121] - exclude = 'immediateCondition' [18:01:31.121] - resignal = TRUE [18:01:31.121] - Number of conditions: 1 [18:01:31.121] - Condition #1: 'simpleError', 'error', 'condition' [18:01:31.121] signalConditions() ... done Warning in get(var, envir = x, inherits = FALSE) : restarting interrupted promise evaluation [18:01:31.123] signalConditions() ... [18:01:31.123] - include = 'immediateCondition' [18:01:31.123] - exclude = [18:01:31.123] - resignal = FALSE [18:01:31.123] - Number of conditions: 1 [18:01:31.124] signalConditions() ... done [18:01:31.124] Future state: 'finished' [18:01:31.124] signalConditions() ... [18:01:31.124] - include = 'condition' [18:01:31.124] - exclude = 'immediateCondition' [18:01:31.124] - resignal = TRUE [18:01:31.125] - Number of conditions: 1 [18:01:31.125] - Condition #1: 'simpleError', 'error', 'condition' [18:01:31.125] signalConditions() ... done Warning in get(var, envir = x, inherits = FALSE) : restarting interrupted promise evaluation [18:01:31.126] signalConditions() ... [18:01:31.126] - include = 'immediateCondition' [18:01:31.126] - exclude = [18:01:31.126] - resignal = FALSE [18:01:31.126] - Number of conditions: 1 [18:01:31.127] signalConditions() ... done [18:01:31.127] Future state: 'finished' [18:01:31.127] signalConditions() ... [18:01:31.127] - include = 'condition' [18:01:31.127] - exclude = 'immediateCondition' [18:01:31.127] - resignal = TRUE [18:01:31.128] - Number of conditions: 1 [18:01:31.128] - Condition #1: 'simpleError', 'error', 'condition' [18:01:31.128] signalConditions() ... done ** Future evaluation with a poor-man's "progress bar" [18:01:31.128] getGlobalsAndPackages() ... [18:01:31.129] Searching for globals... [18:01:31.132] - globals found: [4] '{', 'cat', 'for', ':' [18:01:31.132] Searching for globals ... DONE [18:01:31.133] Resolving globals: FALSE [18:01:31.133] [18:01:31.133] [18:01:31.133] getGlobalsAndPackages() ... DONE [18:01:31.134] run() for 'Future' ... [18:01:31.134] - state: 'created' [18:01:31.134] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.135] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.135] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.135] - Field: 'label' [18:01:31.135] - Field: 'local' [18:01:31.135] - Field: 'owner' [18:01:31.135] - Field: 'envir' [18:01:31.136] - Field: 'packages' [18:01:31.136] - Field: 'gc' [18:01:31.136] - Field: 'conditions' [18:01:31.136] - Field: 'expr' [18:01:31.136] - Field: 'uuid' [18:01:31.137] - Field: 'seed' [18:01:31.137] - Field: 'version' [18:01:31.137] - Field: 'result' [18:01:31.137] - Field: 'asynchronous' [18:01:31.137] - Field: 'calls' [18:01:31.137] - Field: 'globals' [18:01:31.138] - Field: 'stdout' [18:01:31.138] - Field: 'earlySignal' [18:01:31.138] - Field: 'lazy' [18:01:31.138] - Field: 'state' [18:01:31.138] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.139] - Launch lazy future ... [18:01:31.139] Packages needed by the future expression (n = 0): [18:01:31.139] Packages needed by future strategies (n = 0): [18:01:31.140] { [18:01:31.140] { [18:01:31.140] { [18:01:31.140] ...future.startTime <- base::Sys.time() [18:01:31.140] { [18:01:31.140] { [18:01:31.140] { [18:01:31.140] base::local({ [18:01:31.140] has_future <- base::requireNamespace("future", [18:01:31.140] quietly = TRUE) [18:01:31.140] if (has_future) { [18:01:31.140] ns <- base::getNamespace("future") [18:01:31.140] version <- ns[[".package"]][["version"]] [18:01:31.140] if (is.null(version)) [18:01:31.140] version <- utils::packageVersion("future") [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] version <- NULL [18:01:31.140] } [18:01:31.140] if (!has_future || version < "1.8.0") { [18:01:31.140] info <- base::c(r_version = base::gsub("R version ", [18:01:31.140] "", base::R.version$version.string), [18:01:31.140] platform = base::sprintf("%s (%s-bit)", [18:01:31.140] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.140] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.140] "release", "version")], collapse = " "), [18:01:31.140] hostname = base::Sys.info()[["nodename"]]) [18:01:31.140] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.140] info) [18:01:31.140] info <- base::paste(info, collapse = "; ") [18:01:31.140] if (!has_future) { [18:01:31.140] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.140] info) [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.140] info, version) [18:01:31.140] } [18:01:31.140] base::stop(msg) [18:01:31.140] } [18:01:31.140] }) [18:01:31.140] } [18:01:31.140] options(future.plan = NULL) [18:01:31.140] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.140] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.140] } [18:01:31.140] ...future.workdir <- getwd() [18:01:31.140] } [18:01:31.140] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.140] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.140] } [18:01:31.140] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.140] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.140] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.140] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.140] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.140] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.140] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.140] base::names(...future.oldOptions)) [18:01:31.140] } [18:01:31.140] if (FALSE) { [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] if (TRUE) { [18:01:31.140] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.140] open = "w") [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.140] windows = "NUL", "/dev/null"), open = "w") [18:01:31.140] } [18:01:31.140] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.140] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.140] base::sink(type = "output", split = FALSE) [18:01:31.140] base::close(...future.stdout) [18:01:31.140] }, add = TRUE) [18:01:31.140] } [18:01:31.140] ...future.frame <- base::sys.nframe() [18:01:31.140] ...future.conditions <- base::list() [18:01:31.140] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.140] if (FALSE) { [18:01:31.140] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.140] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.140] } [18:01:31.140] ...future.result <- base::tryCatch({ [18:01:31.140] base::withCallingHandlers({ [18:01:31.140] ...future.value <- base::withVisible(base::local({ [18:01:31.140] cat("Processing: ") [18:01:31.140] for (ii in 1:10) { [18:01:31.140] cat(".") [18:01:31.140] } [18:01:31.140] cat(" [100%]\n") [18:01:31.140] 4 [18:01:31.140] })) [18:01:31.140] future::FutureResult(value = ...future.value$value, [18:01:31.140] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.140] ...future.rng), globalenv = if (FALSE) [18:01:31.140] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.140] ...future.globalenv.names)) [18:01:31.140] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.140] }, condition = base::local({ [18:01:31.140] c <- base::c [18:01:31.140] inherits <- base::inherits [18:01:31.140] invokeRestart <- base::invokeRestart [18:01:31.140] length <- base::length [18:01:31.140] list <- base::list [18:01:31.140] seq.int <- base::seq.int [18:01:31.140] signalCondition <- base::signalCondition [18:01:31.140] sys.calls <- base::sys.calls [18:01:31.140] `[[` <- base::`[[` [18:01:31.140] `+` <- base::`+` [18:01:31.140] `<<-` <- base::`<<-` [18:01:31.140] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.140] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.140] 3L)] [18:01:31.140] } [18:01:31.140] function(cond) { [18:01:31.140] is_error <- inherits(cond, "error") [18:01:31.140] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.140] NULL) [18:01:31.140] if (is_error) { [18:01:31.140] sessionInformation <- function() { [18:01:31.140] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.140] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.140] search = base::search(), system = base::Sys.info()) [18:01:31.140] } [18:01:31.140] ...future.conditions[[length(...future.conditions) + [18:01:31.140] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.140] cond$call), session = sessionInformation(), [18:01:31.140] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.140] signalCondition(cond) [18:01:31.140] } [18:01:31.140] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.140] "immediateCondition"))) { [18:01:31.140] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.140] ...future.conditions[[length(...future.conditions) + [18:01:31.140] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.140] if (TRUE && !signal) { [18:01:31.140] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.140] { [18:01:31.140] inherits <- base::inherits [18:01:31.140] invokeRestart <- base::invokeRestart [18:01:31.140] is.null <- base::is.null [18:01:31.140] muffled <- FALSE [18:01:31.140] if (inherits(cond, "message")) { [18:01:31.140] muffled <- grepl(pattern, "muffleMessage") [18:01:31.140] if (muffled) [18:01:31.140] invokeRestart("muffleMessage") [18:01:31.140] } [18:01:31.140] else if (inherits(cond, "warning")) { [18:01:31.140] muffled <- grepl(pattern, "muffleWarning") [18:01:31.140] if (muffled) [18:01:31.140] invokeRestart("muffleWarning") [18:01:31.140] } [18:01:31.140] else if (inherits(cond, "condition")) { [18:01:31.140] if (!is.null(pattern)) { [18:01:31.140] computeRestarts <- base::computeRestarts [18:01:31.140] grepl <- base::grepl [18:01:31.140] restarts <- computeRestarts(cond) [18:01:31.140] for (restart in restarts) { [18:01:31.140] name <- restart$name [18:01:31.140] if (is.null(name)) [18:01:31.140] next [18:01:31.140] if (!grepl(pattern, name)) [18:01:31.140] next [18:01:31.140] invokeRestart(restart) [18:01:31.140] muffled <- TRUE [18:01:31.140] break [18:01:31.140] } [18:01:31.140] } [18:01:31.140] } [18:01:31.140] invisible(muffled) [18:01:31.140] } [18:01:31.140] muffleCondition(cond, pattern = "^muffle") [18:01:31.140] } [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] if (TRUE) { [18:01:31.140] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.140] { [18:01:31.140] inherits <- base::inherits [18:01:31.140] invokeRestart <- base::invokeRestart [18:01:31.140] is.null <- base::is.null [18:01:31.140] muffled <- FALSE [18:01:31.140] if (inherits(cond, "message")) { [18:01:31.140] muffled <- grepl(pattern, "muffleMessage") [18:01:31.140] if (muffled) [18:01:31.140] invokeRestart("muffleMessage") [18:01:31.140] } [18:01:31.140] else if (inherits(cond, "warning")) { [18:01:31.140] muffled <- grepl(pattern, "muffleWarning") [18:01:31.140] if (muffled) [18:01:31.140] invokeRestart("muffleWarning") [18:01:31.140] } [18:01:31.140] else if (inherits(cond, "condition")) { [18:01:31.140] if (!is.null(pattern)) { [18:01:31.140] computeRestarts <- base::computeRestarts [18:01:31.140] grepl <- base::grepl [18:01:31.140] restarts <- computeRestarts(cond) [18:01:31.140] for (restart in restarts) { [18:01:31.140] name <- restart$name [18:01:31.140] if (is.null(name)) [18:01:31.140] next [18:01:31.140] if (!grepl(pattern, name)) [18:01:31.140] next [18:01:31.140] invokeRestart(restart) [18:01:31.140] muffled <- TRUE [18:01:31.140] break [18:01:31.140] } [18:01:31.140] } [18:01:31.140] } [18:01:31.140] invisible(muffled) [18:01:31.140] } [18:01:31.140] muffleCondition(cond, pattern = "^muffle") [18:01:31.140] } [18:01:31.140] } [18:01:31.140] } [18:01:31.140] })) [18:01:31.140] }, error = function(ex) { [18:01:31.140] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.140] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.140] ...future.rng), started = ...future.startTime, [18:01:31.140] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.140] version = "1.8"), class = "FutureResult") [18:01:31.140] }, finally = { [18:01:31.140] if (!identical(...future.workdir, getwd())) [18:01:31.140] setwd(...future.workdir) [18:01:31.140] { [18:01:31.140] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.140] ...future.oldOptions$nwarnings <- NULL [18:01:31.140] } [18:01:31.140] base::options(...future.oldOptions) [18:01:31.140] if (.Platform$OS.type == "windows") { [18:01:31.140] old_names <- names(...future.oldEnvVars) [18:01:31.140] envs <- base::Sys.getenv() [18:01:31.140] names <- names(envs) [18:01:31.140] common <- intersect(names, old_names) [18:01:31.140] added <- setdiff(names, old_names) [18:01:31.140] removed <- setdiff(old_names, names) [18:01:31.140] changed <- common[...future.oldEnvVars[common] != [18:01:31.140] envs[common]] [18:01:31.140] NAMES <- toupper(changed) [18:01:31.140] args <- list() [18:01:31.140] for (kk in seq_along(NAMES)) { [18:01:31.140] name <- changed[[kk]] [18:01:31.140] NAME <- NAMES[[kk]] [18:01:31.140] if (name != NAME && is.element(NAME, old_names)) [18:01:31.140] next [18:01:31.140] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.140] } [18:01:31.140] NAMES <- toupper(added) [18:01:31.140] for (kk in seq_along(NAMES)) { [18:01:31.140] name <- added[[kk]] [18:01:31.140] NAME <- NAMES[[kk]] [18:01:31.140] if (name != NAME && is.element(NAME, old_names)) [18:01:31.140] next [18:01:31.140] args[[name]] <- "" [18:01:31.140] } [18:01:31.140] NAMES <- toupper(removed) [18:01:31.140] for (kk in seq_along(NAMES)) { [18:01:31.140] name <- removed[[kk]] [18:01:31.140] NAME <- NAMES[[kk]] [18:01:31.140] if (name != NAME && is.element(NAME, old_names)) [18:01:31.140] next [18:01:31.140] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.140] } [18:01:31.140] if (length(args) > 0) [18:01:31.140] base::do.call(base::Sys.setenv, args = args) [18:01:31.140] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.140] } [18:01:31.140] { [18:01:31.140] if (base::length(...future.futureOptionsAdded) > [18:01:31.140] 0L) { [18:01:31.140] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.140] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.140] base::options(opts) [18:01:31.140] } [18:01:31.140] { [18:01:31.140] { [18:01:31.140] NULL [18:01:31.140] RNGkind("Mersenne-Twister") [18:01:31.140] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.140] inherits = FALSE) [18:01:31.140] } [18:01:31.140] options(future.plan = NULL) [18:01:31.140] if (is.na(NA_character_)) [18:01:31.140] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.140] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.140] future::plan(list(function (..., envir = parent.frame()) [18:01:31.140] { [18:01:31.140] future <- SequentialFuture(..., envir = envir) [18:01:31.140] if (!future$lazy) [18:01:31.140] future <- run(future) [18:01:31.140] invisible(future) [18:01:31.140] }), .cleanup = FALSE, .init = FALSE) [18:01:31.140] } [18:01:31.140] } [18:01:31.140] } [18:01:31.140] }) [18:01:31.140] if (TRUE) { [18:01:31.140] base::sink(type = "output", split = FALSE) [18:01:31.140] if (TRUE) { [18:01:31.140] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.140] } [18:01:31.140] else { [18:01:31.140] ...future.result["stdout"] <- base::list(NULL) [18:01:31.140] } [18:01:31.140] base::close(...future.stdout) [18:01:31.140] ...future.stdout <- NULL [18:01:31.140] } [18:01:31.140] ...future.result$conditions <- ...future.conditions [18:01:31.140] ...future.result$finished <- base::Sys.time() [18:01:31.140] ...future.result [18:01:31.140] } [18:01:31.144] plan(): Setting new future strategy stack: [18:01:31.144] List of future strategies: [18:01:31.144] 1. sequential: [18:01:31.144] - args: function (..., envir = parent.frame()) [18:01:31.144] - tweaked: FALSE [18:01:31.144] - call: NULL [18:01:31.144] plan(): nbrOfWorkers() = 1 [18:01:31.145] plan(): Setting new future strategy stack: [18:01:31.146] List of future strategies: [18:01:31.146] 1. sequential: [18:01:31.146] - args: function (..., envir = parent.frame()) [18:01:31.146] - tweaked: FALSE [18:01:31.146] - call: plan(strategy) [18:01:31.146] plan(): nbrOfWorkers() = 1 [18:01:31.146] SequentialFuture started (and completed) [18:01:31.147] - Launch lazy future ... done [18:01:31.147] run() for 'SequentialFuture' ... done ** Collecting results v1 = 1 v2 = 2 Warning in sprintf(...) : restarting interrupted promise evaluation [18:01:31.148] signalConditions() ... [18:01:31.149] - include = 'immediateCondition' [18:01:31.149] - exclude = [18:01:31.149] - resignal = FALSE [18:01:31.149] - Number of conditions: 1 [18:01:31.149] signalConditions() ... done [18:01:31.150] Future state: 'finished' [18:01:31.150] signalConditions() ... [18:01:31.150] - include = 'condition' [18:01:31.150] - exclude = 'immediateCondition' [18:01:31.150] - resignal = TRUE [18:01:31.150] - Number of conditions: 1 [18:01:31.151] - Condition #1: 'simpleError', 'error', 'condition' [18:01:31.151] signalConditions() ... done v3: (as expect) Processing: .......... [100%] v4 = 4 ** Left-to-right and right-to-left future assignments [18:01:31.151] getGlobalsAndPackages() ... [18:01:31.152] Searching for globals... [18:01:31.152] [18:01:31.152] Searching for globals ... DONE [18:01:31.152] - globals: [0] [18:01:31.152] getGlobalsAndPackages() ... DONE [18:01:31.153] run() for 'Future' ... [18:01:31.153] - state: 'created' [18:01:31.153] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.153] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.154] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.154] - Field: 'label' [18:01:31.154] - Field: 'local' [18:01:31.154] - Field: 'owner' [18:01:31.154] - Field: 'envir' [18:01:31.154] - Field: 'packages' [18:01:31.155] - Field: 'gc' [18:01:31.155] - Field: 'conditions' [18:01:31.155] - Field: 'expr' [18:01:31.155] - Field: 'uuid' [18:01:31.155] - Field: 'seed' [18:01:31.155] - Field: 'version' [18:01:31.156] - Field: 'result' [18:01:31.156] - Field: 'asynchronous' [18:01:31.156] - Field: 'calls' [18:01:31.156] - Field: 'globals' [18:01:31.156] - Field: 'stdout' [18:01:31.157] - Field: 'earlySignal' [18:01:31.157] - Field: 'lazy' [18:01:31.157] - Field: 'state' [18:01:31.157] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.157] - Launch lazy future ... [18:01:31.157] Packages needed by the future expression (n = 0): [18:01:31.158] Packages needed by future strategies (n = 0): [18:01:31.158] { [18:01:31.158] { [18:01:31.158] { [18:01:31.158] ...future.startTime <- base::Sys.time() [18:01:31.158] { [18:01:31.158] { [18:01:31.158] { [18:01:31.158] base::local({ [18:01:31.158] has_future <- base::requireNamespace("future", [18:01:31.158] quietly = TRUE) [18:01:31.158] if (has_future) { [18:01:31.158] ns <- base::getNamespace("future") [18:01:31.158] version <- ns[[".package"]][["version"]] [18:01:31.158] if (is.null(version)) [18:01:31.158] version <- utils::packageVersion("future") [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] version <- NULL [18:01:31.158] } [18:01:31.158] if (!has_future || version < "1.8.0") { [18:01:31.158] info <- base::c(r_version = base::gsub("R version ", [18:01:31.158] "", base::R.version$version.string), [18:01:31.158] platform = base::sprintf("%s (%s-bit)", [18:01:31.158] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.158] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.158] "release", "version")], collapse = " "), [18:01:31.158] hostname = base::Sys.info()[["nodename"]]) [18:01:31.158] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.158] info) [18:01:31.158] info <- base::paste(info, collapse = "; ") [18:01:31.158] if (!has_future) { [18:01:31.158] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.158] info) [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.158] info, version) [18:01:31.158] } [18:01:31.158] base::stop(msg) [18:01:31.158] } [18:01:31.158] }) [18:01:31.158] } [18:01:31.158] options(future.plan = NULL) [18:01:31.158] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.158] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.158] } [18:01:31.158] ...future.workdir <- getwd() [18:01:31.158] } [18:01:31.158] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.158] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.158] } [18:01:31.158] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.158] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.158] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.158] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.158] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.158] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.158] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.158] base::names(...future.oldOptions)) [18:01:31.158] } [18:01:31.158] if (FALSE) { [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] if (TRUE) { [18:01:31.158] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.158] open = "w") [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.158] windows = "NUL", "/dev/null"), open = "w") [18:01:31.158] } [18:01:31.158] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.158] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.158] base::sink(type = "output", split = FALSE) [18:01:31.158] base::close(...future.stdout) [18:01:31.158] }, add = TRUE) [18:01:31.158] } [18:01:31.158] ...future.frame <- base::sys.nframe() [18:01:31.158] ...future.conditions <- base::list() [18:01:31.158] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.158] if (FALSE) { [18:01:31.158] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.158] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.158] } [18:01:31.158] ...future.result <- base::tryCatch({ [18:01:31.158] base::withCallingHandlers({ [18:01:31.158] ...future.value <- base::withVisible(base::local(1)) [18:01:31.158] future::FutureResult(value = ...future.value$value, [18:01:31.158] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.158] ...future.rng), globalenv = if (FALSE) [18:01:31.158] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.158] ...future.globalenv.names)) [18:01:31.158] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.158] }, condition = base::local({ [18:01:31.158] c <- base::c [18:01:31.158] inherits <- base::inherits [18:01:31.158] invokeRestart <- base::invokeRestart [18:01:31.158] length <- base::length [18:01:31.158] list <- base::list [18:01:31.158] seq.int <- base::seq.int [18:01:31.158] signalCondition <- base::signalCondition [18:01:31.158] sys.calls <- base::sys.calls [18:01:31.158] `[[` <- base::`[[` [18:01:31.158] `+` <- base::`+` [18:01:31.158] `<<-` <- base::`<<-` [18:01:31.158] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.158] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.158] 3L)] [18:01:31.158] } [18:01:31.158] function(cond) { [18:01:31.158] is_error <- inherits(cond, "error") [18:01:31.158] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.158] NULL) [18:01:31.158] if (is_error) { [18:01:31.158] sessionInformation <- function() { [18:01:31.158] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.158] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.158] search = base::search(), system = base::Sys.info()) [18:01:31.158] } [18:01:31.158] ...future.conditions[[length(...future.conditions) + [18:01:31.158] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.158] cond$call), session = sessionInformation(), [18:01:31.158] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.158] signalCondition(cond) [18:01:31.158] } [18:01:31.158] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.158] "immediateCondition"))) { [18:01:31.158] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.158] ...future.conditions[[length(...future.conditions) + [18:01:31.158] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.158] if (TRUE && !signal) { [18:01:31.158] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.158] { [18:01:31.158] inherits <- base::inherits [18:01:31.158] invokeRestart <- base::invokeRestart [18:01:31.158] is.null <- base::is.null [18:01:31.158] muffled <- FALSE [18:01:31.158] if (inherits(cond, "message")) { [18:01:31.158] muffled <- grepl(pattern, "muffleMessage") [18:01:31.158] if (muffled) [18:01:31.158] invokeRestart("muffleMessage") [18:01:31.158] } [18:01:31.158] else if (inherits(cond, "warning")) { [18:01:31.158] muffled <- grepl(pattern, "muffleWarning") [18:01:31.158] if (muffled) [18:01:31.158] invokeRestart("muffleWarning") [18:01:31.158] } [18:01:31.158] else if (inherits(cond, "condition")) { [18:01:31.158] if (!is.null(pattern)) { [18:01:31.158] computeRestarts <- base::computeRestarts [18:01:31.158] grepl <- base::grepl [18:01:31.158] restarts <- computeRestarts(cond) [18:01:31.158] for (restart in restarts) { [18:01:31.158] name <- restart$name [18:01:31.158] if (is.null(name)) [18:01:31.158] next [18:01:31.158] if (!grepl(pattern, name)) [18:01:31.158] next [18:01:31.158] invokeRestart(restart) [18:01:31.158] muffled <- TRUE [18:01:31.158] break [18:01:31.158] } [18:01:31.158] } [18:01:31.158] } [18:01:31.158] invisible(muffled) [18:01:31.158] } [18:01:31.158] muffleCondition(cond, pattern = "^muffle") [18:01:31.158] } [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] if (TRUE) { [18:01:31.158] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.158] { [18:01:31.158] inherits <- base::inherits [18:01:31.158] invokeRestart <- base::invokeRestart [18:01:31.158] is.null <- base::is.null [18:01:31.158] muffled <- FALSE [18:01:31.158] if (inherits(cond, "message")) { [18:01:31.158] muffled <- grepl(pattern, "muffleMessage") [18:01:31.158] if (muffled) [18:01:31.158] invokeRestart("muffleMessage") [18:01:31.158] } [18:01:31.158] else if (inherits(cond, "warning")) { [18:01:31.158] muffled <- grepl(pattern, "muffleWarning") [18:01:31.158] if (muffled) [18:01:31.158] invokeRestart("muffleWarning") [18:01:31.158] } [18:01:31.158] else if (inherits(cond, "condition")) { [18:01:31.158] if (!is.null(pattern)) { [18:01:31.158] computeRestarts <- base::computeRestarts [18:01:31.158] grepl <- base::grepl [18:01:31.158] restarts <- computeRestarts(cond) [18:01:31.158] for (restart in restarts) { [18:01:31.158] name <- restart$name [18:01:31.158] if (is.null(name)) [18:01:31.158] next [18:01:31.158] if (!grepl(pattern, name)) [18:01:31.158] next [18:01:31.158] invokeRestart(restart) [18:01:31.158] muffled <- TRUE [18:01:31.158] break [18:01:31.158] } [18:01:31.158] } [18:01:31.158] } [18:01:31.158] invisible(muffled) [18:01:31.158] } [18:01:31.158] muffleCondition(cond, pattern = "^muffle") [18:01:31.158] } [18:01:31.158] } [18:01:31.158] } [18:01:31.158] })) [18:01:31.158] }, error = function(ex) { [18:01:31.158] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.158] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.158] ...future.rng), started = ...future.startTime, [18:01:31.158] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.158] version = "1.8"), class = "FutureResult") [18:01:31.158] }, finally = { [18:01:31.158] if (!identical(...future.workdir, getwd())) [18:01:31.158] setwd(...future.workdir) [18:01:31.158] { [18:01:31.158] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.158] ...future.oldOptions$nwarnings <- NULL [18:01:31.158] } [18:01:31.158] base::options(...future.oldOptions) [18:01:31.158] if (.Platform$OS.type == "windows") { [18:01:31.158] old_names <- names(...future.oldEnvVars) [18:01:31.158] envs <- base::Sys.getenv() [18:01:31.158] names <- names(envs) [18:01:31.158] common <- intersect(names, old_names) [18:01:31.158] added <- setdiff(names, old_names) [18:01:31.158] removed <- setdiff(old_names, names) [18:01:31.158] changed <- common[...future.oldEnvVars[common] != [18:01:31.158] envs[common]] [18:01:31.158] NAMES <- toupper(changed) [18:01:31.158] args <- list() [18:01:31.158] for (kk in seq_along(NAMES)) { [18:01:31.158] name <- changed[[kk]] [18:01:31.158] NAME <- NAMES[[kk]] [18:01:31.158] if (name != NAME && is.element(NAME, old_names)) [18:01:31.158] next [18:01:31.158] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.158] } [18:01:31.158] NAMES <- toupper(added) [18:01:31.158] for (kk in seq_along(NAMES)) { [18:01:31.158] name <- added[[kk]] [18:01:31.158] NAME <- NAMES[[kk]] [18:01:31.158] if (name != NAME && is.element(NAME, old_names)) [18:01:31.158] next [18:01:31.158] args[[name]] <- "" [18:01:31.158] } [18:01:31.158] NAMES <- toupper(removed) [18:01:31.158] for (kk in seq_along(NAMES)) { [18:01:31.158] name <- removed[[kk]] [18:01:31.158] NAME <- NAMES[[kk]] [18:01:31.158] if (name != NAME && is.element(NAME, old_names)) [18:01:31.158] next [18:01:31.158] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.158] } [18:01:31.158] if (length(args) > 0) [18:01:31.158] base::do.call(base::Sys.setenv, args = args) [18:01:31.158] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.158] } [18:01:31.158] { [18:01:31.158] if (base::length(...future.futureOptionsAdded) > [18:01:31.158] 0L) { [18:01:31.158] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.158] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.158] base::options(opts) [18:01:31.158] } [18:01:31.158] { [18:01:31.158] { [18:01:31.158] NULL [18:01:31.158] RNGkind("Mersenne-Twister") [18:01:31.158] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.158] inherits = FALSE) [18:01:31.158] } [18:01:31.158] options(future.plan = NULL) [18:01:31.158] if (is.na(NA_character_)) [18:01:31.158] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.158] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.158] future::plan(list(function (..., envir = parent.frame()) [18:01:31.158] { [18:01:31.158] future <- SequentialFuture(..., envir = envir) [18:01:31.158] if (!future$lazy) [18:01:31.158] future <- run(future) [18:01:31.158] invisible(future) [18:01:31.158] }), .cleanup = FALSE, .init = FALSE) [18:01:31.158] } [18:01:31.158] } [18:01:31.158] } [18:01:31.158] }) [18:01:31.158] if (TRUE) { [18:01:31.158] base::sink(type = "output", split = FALSE) [18:01:31.158] if (TRUE) { [18:01:31.158] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.158] } [18:01:31.158] else { [18:01:31.158] ...future.result["stdout"] <- base::list(NULL) [18:01:31.158] } [18:01:31.158] base::close(...future.stdout) [18:01:31.158] ...future.stdout <- NULL [18:01:31.158] } [18:01:31.158] ...future.result$conditions <- ...future.conditions [18:01:31.158] ...future.result$finished <- base::Sys.time() [18:01:31.158] ...future.result [18:01:31.158] } [18:01:31.162] plan(): Setting new future strategy stack: [18:01:31.162] List of future strategies: [18:01:31.162] 1. sequential: [18:01:31.162] - args: function (..., envir = parent.frame()) [18:01:31.162] - tweaked: FALSE [18:01:31.162] - call: NULL [18:01:31.163] plan(): nbrOfWorkers() = 1 [18:01:31.164] plan(): Setting new future strategy stack: [18:01:31.164] List of future strategies: [18:01:31.164] 1. sequential: [18:01:31.164] - args: function (..., envir = parent.frame()) [18:01:31.164] - tweaked: FALSE [18:01:31.164] - call: plan(strategy) [18:01:31.164] plan(): nbrOfWorkers() = 1 [18:01:31.165] SequentialFuture started (and completed) [18:01:31.165] - Launch lazy future ... done [18:01:31.165] run() for 'SequentialFuture' ... done c = 1 [18:01:31.166] getGlobalsAndPackages() ... [18:01:31.166] Searching for globals... [18:01:31.166] [18:01:31.166] Searching for globals ... DONE [18:01:31.166] - globals: [0] [18:01:31.167] getGlobalsAndPackages() ... DONE [18:01:31.167] run() for 'Future' ... [18:01:31.167] - state: 'created' [18:01:31.167] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.168] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.168] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.168] - Field: 'label' [18:01:31.168] - Field: 'local' [18:01:31.168] - Field: 'owner' [18:01:31.169] - Field: 'envir' [18:01:31.169] - Field: 'packages' [18:01:31.169] - Field: 'gc' [18:01:31.169] - Field: 'conditions' [18:01:31.169] - Field: 'expr' [18:01:31.170] - Field: 'uuid' [18:01:31.170] - Field: 'seed' [18:01:31.170] - Field: 'version' [18:01:31.170] - Field: 'result' [18:01:31.170] - Field: 'asynchronous' [18:01:31.170] - Field: 'calls' [18:01:31.171] - Field: 'globals' [18:01:31.172] - Field: 'stdout' [18:01:31.172] - Field: 'earlySignal' [18:01:31.172] - Field: 'lazy' [18:01:31.172] - Field: 'state' [18:01:31.173] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.173] - Launch lazy future ... [18:01:31.173] Packages needed by the future expression (n = 0): [18:01:31.173] Packages needed by future strategies (n = 0): [18:01:31.174] { [18:01:31.174] { [18:01:31.174] { [18:01:31.174] ...future.startTime <- base::Sys.time() [18:01:31.174] { [18:01:31.174] { [18:01:31.174] { [18:01:31.174] base::local({ [18:01:31.174] has_future <- base::requireNamespace("future", [18:01:31.174] quietly = TRUE) [18:01:31.174] if (has_future) { [18:01:31.174] ns <- base::getNamespace("future") [18:01:31.174] version <- ns[[".package"]][["version"]] [18:01:31.174] if (is.null(version)) [18:01:31.174] version <- utils::packageVersion("future") [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] version <- NULL [18:01:31.174] } [18:01:31.174] if (!has_future || version < "1.8.0") { [18:01:31.174] info <- base::c(r_version = base::gsub("R version ", [18:01:31.174] "", base::R.version$version.string), [18:01:31.174] platform = base::sprintf("%s (%s-bit)", [18:01:31.174] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.174] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.174] "release", "version")], collapse = " "), [18:01:31.174] hostname = base::Sys.info()[["nodename"]]) [18:01:31.174] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.174] info) [18:01:31.174] info <- base::paste(info, collapse = "; ") [18:01:31.174] if (!has_future) { [18:01:31.174] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.174] info) [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.174] info, version) [18:01:31.174] } [18:01:31.174] base::stop(msg) [18:01:31.174] } [18:01:31.174] }) [18:01:31.174] } [18:01:31.174] options(future.plan = NULL) [18:01:31.174] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.174] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.174] } [18:01:31.174] ...future.workdir <- getwd() [18:01:31.174] } [18:01:31.174] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.174] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.174] } [18:01:31.174] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.174] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.174] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.174] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.174] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.174] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.174] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.174] base::names(...future.oldOptions)) [18:01:31.174] } [18:01:31.174] if (FALSE) { [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] if (TRUE) { [18:01:31.174] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.174] open = "w") [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.174] windows = "NUL", "/dev/null"), open = "w") [18:01:31.174] } [18:01:31.174] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.174] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.174] base::sink(type = "output", split = FALSE) [18:01:31.174] base::close(...future.stdout) [18:01:31.174] }, add = TRUE) [18:01:31.174] } [18:01:31.174] ...future.frame <- base::sys.nframe() [18:01:31.174] ...future.conditions <- base::list() [18:01:31.174] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.174] if (FALSE) { [18:01:31.174] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.174] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.174] } [18:01:31.174] ...future.result <- base::tryCatch({ [18:01:31.174] base::withCallingHandlers({ [18:01:31.174] ...future.value <- base::withVisible(base::local(1)) [18:01:31.174] future::FutureResult(value = ...future.value$value, [18:01:31.174] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.174] ...future.rng), globalenv = if (FALSE) [18:01:31.174] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.174] ...future.globalenv.names)) [18:01:31.174] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.174] }, condition = base::local({ [18:01:31.174] c <- base::c [18:01:31.174] inherits <- base::inherits [18:01:31.174] invokeRestart <- base::invokeRestart [18:01:31.174] length <- base::length [18:01:31.174] list <- base::list [18:01:31.174] seq.int <- base::seq.int [18:01:31.174] signalCondition <- base::signalCondition [18:01:31.174] sys.calls <- base::sys.calls [18:01:31.174] `[[` <- base::`[[` [18:01:31.174] `+` <- base::`+` [18:01:31.174] `<<-` <- base::`<<-` [18:01:31.174] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.174] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.174] 3L)] [18:01:31.174] } [18:01:31.174] function(cond) { [18:01:31.174] is_error <- inherits(cond, "error") [18:01:31.174] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.174] NULL) [18:01:31.174] if (is_error) { [18:01:31.174] sessionInformation <- function() { [18:01:31.174] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.174] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.174] search = base::search(), system = base::Sys.info()) [18:01:31.174] } [18:01:31.174] ...future.conditions[[length(...future.conditions) + [18:01:31.174] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.174] cond$call), session = sessionInformation(), [18:01:31.174] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.174] signalCondition(cond) [18:01:31.174] } [18:01:31.174] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.174] "immediateCondition"))) { [18:01:31.174] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.174] ...future.conditions[[length(...future.conditions) + [18:01:31.174] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.174] if (TRUE && !signal) { [18:01:31.174] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.174] { [18:01:31.174] inherits <- base::inherits [18:01:31.174] invokeRestart <- base::invokeRestart [18:01:31.174] is.null <- base::is.null [18:01:31.174] muffled <- FALSE [18:01:31.174] if (inherits(cond, "message")) { [18:01:31.174] muffled <- grepl(pattern, "muffleMessage") [18:01:31.174] if (muffled) [18:01:31.174] invokeRestart("muffleMessage") [18:01:31.174] } [18:01:31.174] else if (inherits(cond, "warning")) { [18:01:31.174] muffled <- grepl(pattern, "muffleWarning") [18:01:31.174] if (muffled) [18:01:31.174] invokeRestart("muffleWarning") [18:01:31.174] } [18:01:31.174] else if (inherits(cond, "condition")) { [18:01:31.174] if (!is.null(pattern)) { [18:01:31.174] computeRestarts <- base::computeRestarts [18:01:31.174] grepl <- base::grepl [18:01:31.174] restarts <- computeRestarts(cond) [18:01:31.174] for (restart in restarts) { [18:01:31.174] name <- restart$name [18:01:31.174] if (is.null(name)) [18:01:31.174] next [18:01:31.174] if (!grepl(pattern, name)) [18:01:31.174] next [18:01:31.174] invokeRestart(restart) [18:01:31.174] muffled <- TRUE [18:01:31.174] break [18:01:31.174] } [18:01:31.174] } [18:01:31.174] } [18:01:31.174] invisible(muffled) [18:01:31.174] } [18:01:31.174] muffleCondition(cond, pattern = "^muffle") [18:01:31.174] } [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] if (TRUE) { [18:01:31.174] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.174] { [18:01:31.174] inherits <- base::inherits [18:01:31.174] invokeRestart <- base::invokeRestart [18:01:31.174] is.null <- base::is.null [18:01:31.174] muffled <- FALSE [18:01:31.174] if (inherits(cond, "message")) { [18:01:31.174] muffled <- grepl(pattern, "muffleMessage") [18:01:31.174] if (muffled) [18:01:31.174] invokeRestart("muffleMessage") [18:01:31.174] } [18:01:31.174] else if (inherits(cond, "warning")) { [18:01:31.174] muffled <- grepl(pattern, "muffleWarning") [18:01:31.174] if (muffled) [18:01:31.174] invokeRestart("muffleWarning") [18:01:31.174] } [18:01:31.174] else if (inherits(cond, "condition")) { [18:01:31.174] if (!is.null(pattern)) { [18:01:31.174] computeRestarts <- base::computeRestarts [18:01:31.174] grepl <- base::grepl [18:01:31.174] restarts <- computeRestarts(cond) [18:01:31.174] for (restart in restarts) { [18:01:31.174] name <- restart$name [18:01:31.174] if (is.null(name)) [18:01:31.174] next [18:01:31.174] if (!grepl(pattern, name)) [18:01:31.174] next [18:01:31.174] invokeRestart(restart) [18:01:31.174] muffled <- TRUE [18:01:31.174] break [18:01:31.174] } [18:01:31.174] } [18:01:31.174] } [18:01:31.174] invisible(muffled) [18:01:31.174] } [18:01:31.174] muffleCondition(cond, pattern = "^muffle") [18:01:31.174] } [18:01:31.174] } [18:01:31.174] } [18:01:31.174] })) [18:01:31.174] }, error = function(ex) { [18:01:31.174] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.174] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.174] ...future.rng), started = ...future.startTime, [18:01:31.174] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.174] version = "1.8"), class = "FutureResult") [18:01:31.174] }, finally = { [18:01:31.174] if (!identical(...future.workdir, getwd())) [18:01:31.174] setwd(...future.workdir) [18:01:31.174] { [18:01:31.174] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.174] ...future.oldOptions$nwarnings <- NULL [18:01:31.174] } [18:01:31.174] base::options(...future.oldOptions) [18:01:31.174] if (.Platform$OS.type == "windows") { [18:01:31.174] old_names <- names(...future.oldEnvVars) [18:01:31.174] envs <- base::Sys.getenv() [18:01:31.174] names <- names(envs) [18:01:31.174] common <- intersect(names, old_names) [18:01:31.174] added <- setdiff(names, old_names) [18:01:31.174] removed <- setdiff(old_names, names) [18:01:31.174] changed <- common[...future.oldEnvVars[common] != [18:01:31.174] envs[common]] [18:01:31.174] NAMES <- toupper(changed) [18:01:31.174] args <- list() [18:01:31.174] for (kk in seq_along(NAMES)) { [18:01:31.174] name <- changed[[kk]] [18:01:31.174] NAME <- NAMES[[kk]] [18:01:31.174] if (name != NAME && is.element(NAME, old_names)) [18:01:31.174] next [18:01:31.174] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.174] } [18:01:31.174] NAMES <- toupper(added) [18:01:31.174] for (kk in seq_along(NAMES)) { [18:01:31.174] name <- added[[kk]] [18:01:31.174] NAME <- NAMES[[kk]] [18:01:31.174] if (name != NAME && is.element(NAME, old_names)) [18:01:31.174] next [18:01:31.174] args[[name]] <- "" [18:01:31.174] } [18:01:31.174] NAMES <- toupper(removed) [18:01:31.174] for (kk in seq_along(NAMES)) { [18:01:31.174] name <- removed[[kk]] [18:01:31.174] NAME <- NAMES[[kk]] [18:01:31.174] if (name != NAME && is.element(NAME, old_names)) [18:01:31.174] next [18:01:31.174] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.174] } [18:01:31.174] if (length(args) > 0) [18:01:31.174] base::do.call(base::Sys.setenv, args = args) [18:01:31.174] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.174] } [18:01:31.174] { [18:01:31.174] if (base::length(...future.futureOptionsAdded) > [18:01:31.174] 0L) { [18:01:31.174] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.174] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.174] base::options(opts) [18:01:31.174] } [18:01:31.174] { [18:01:31.174] { [18:01:31.174] NULL [18:01:31.174] RNGkind("Mersenne-Twister") [18:01:31.174] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.174] inherits = FALSE) [18:01:31.174] } [18:01:31.174] options(future.plan = NULL) [18:01:31.174] if (is.na(NA_character_)) [18:01:31.174] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.174] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.174] future::plan(list(function (..., envir = parent.frame()) [18:01:31.174] { [18:01:31.174] future <- SequentialFuture(..., envir = envir) [18:01:31.174] if (!future$lazy) [18:01:31.174] future <- run(future) [18:01:31.174] invisible(future) [18:01:31.174] }), .cleanup = FALSE, .init = FALSE) [18:01:31.174] } [18:01:31.174] } [18:01:31.174] } [18:01:31.174] }) [18:01:31.174] if (TRUE) { [18:01:31.174] base::sink(type = "output", split = FALSE) [18:01:31.174] if (TRUE) { [18:01:31.174] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.174] } [18:01:31.174] else { [18:01:31.174] ...future.result["stdout"] <- base::list(NULL) [18:01:31.174] } [18:01:31.174] base::close(...future.stdout) [18:01:31.174] ...future.stdout <- NULL [18:01:31.174] } [18:01:31.174] ...future.result$conditions <- ...future.conditions [18:01:31.174] ...future.result$finished <- base::Sys.time() [18:01:31.174] ...future.result [18:01:31.174] } [18:01:31.178] plan(): Setting new future strategy stack: [18:01:31.178] List of future strategies: [18:01:31.178] 1. sequential: [18:01:31.178] - args: function (..., envir = parent.frame()) [18:01:31.178] - tweaked: FALSE [18:01:31.178] - call: NULL [18:01:31.178] plan(): nbrOfWorkers() = 1 [18:01:31.180] plan(): Setting new future strategy stack: [18:01:31.180] List of future strategies: [18:01:31.180] 1. sequential: [18:01:31.180] - args: function (..., envir = parent.frame()) [18:01:31.180] - tweaked: FALSE [18:01:31.180] - call: plan(strategy) [18:01:31.180] plan(): nbrOfWorkers() = 1 [18:01:31.180] SequentialFuture started (and completed) [18:01:31.181] - Launch lazy future ... done [18:01:31.181] run() for 'SequentialFuture' ... done d = 1 ** Nested future assignments [18:01:31.181] getGlobalsAndPackages() ... [18:01:31.182] Searching for globals... [18:01:31.186] - globals found: [5] '{', '<-', '%<-%', '%->%', '+' [18:01:31.186] Searching for globals ... DONE [18:01:31.186] Resolving globals: FALSE [18:01:31.187] [18:01:31.187] - packages: [1] 'future' [18:01:31.187] getGlobalsAndPackages() ... DONE [18:01:31.188] run() for 'Future' ... [18:01:31.188] - state: 'created' [18:01:31.188] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.188] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.189] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.189] - Field: 'label' [18:01:31.189] - Field: 'local' [18:01:31.189] - Field: 'owner' [18:01:31.189] - Field: 'envir' [18:01:31.189] - Field: 'packages' [18:01:31.190] - Field: 'gc' [18:01:31.190] - Field: 'conditions' [18:01:31.190] - Field: 'expr' [18:01:31.190] - Field: 'uuid' [18:01:31.190] - Field: 'seed' [18:01:31.190] - Field: 'version' [18:01:31.191] - Field: 'result' [18:01:31.191] - Field: 'asynchronous' [18:01:31.191] - Field: 'calls' [18:01:31.191] - Field: 'globals' [18:01:31.191] - Field: 'stdout' [18:01:31.191] - Field: 'earlySignal' [18:01:31.192] - Field: 'lazy' [18:01:31.192] - Field: 'state' [18:01:31.192] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.192] - Launch lazy future ... [18:01:31.192] Packages needed by the future expression (n = 1): 'future' [18:01:31.193] Packages needed by future strategies (n = 0): [18:01:31.193] { [18:01:31.193] { [18:01:31.193] { [18:01:31.193] ...future.startTime <- base::Sys.time() [18:01:31.193] { [18:01:31.193] { [18:01:31.193] { [18:01:31.193] { [18:01:31.193] base::local({ [18:01:31.193] has_future <- base::requireNamespace("future", [18:01:31.193] quietly = TRUE) [18:01:31.193] if (has_future) { [18:01:31.193] ns <- base::getNamespace("future") [18:01:31.193] version <- ns[[".package"]][["version"]] [18:01:31.193] if (is.null(version)) [18:01:31.193] version <- utils::packageVersion("future") [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] version <- NULL [18:01:31.193] } [18:01:31.193] if (!has_future || version < "1.8.0") { [18:01:31.193] info <- base::c(r_version = base::gsub("R version ", [18:01:31.193] "", base::R.version$version.string), [18:01:31.193] platform = base::sprintf("%s (%s-bit)", [18:01:31.193] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.193] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.193] "release", "version")], collapse = " "), [18:01:31.193] hostname = base::Sys.info()[["nodename"]]) [18:01:31.193] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.193] info) [18:01:31.193] info <- base::paste(info, collapse = "; ") [18:01:31.193] if (!has_future) { [18:01:31.193] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.193] info) [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.193] info, version) [18:01:31.193] } [18:01:31.193] base::stop(msg) [18:01:31.193] } [18:01:31.193] }) [18:01:31.193] } [18:01:31.193] base::local({ [18:01:31.193] for (pkg in "future") { [18:01:31.193] base::loadNamespace(pkg) [18:01:31.193] base::library(pkg, character.only = TRUE) [18:01:31.193] } [18:01:31.193] }) [18:01:31.193] } [18:01:31.193] options(future.plan = NULL) [18:01:31.193] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.193] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.193] } [18:01:31.193] ...future.workdir <- getwd() [18:01:31.193] } [18:01:31.193] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.193] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.193] } [18:01:31.193] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.193] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.193] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.193] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.193] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.193] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.193] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.193] base::names(...future.oldOptions)) [18:01:31.193] } [18:01:31.193] if (FALSE) { [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] if (TRUE) { [18:01:31.193] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.193] open = "w") [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.193] windows = "NUL", "/dev/null"), open = "w") [18:01:31.193] } [18:01:31.193] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.193] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.193] base::sink(type = "output", split = FALSE) [18:01:31.193] base::close(...future.stdout) [18:01:31.193] }, add = TRUE) [18:01:31.193] } [18:01:31.193] ...future.frame <- base::sys.nframe() [18:01:31.193] ...future.conditions <- base::list() [18:01:31.193] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.193] if (FALSE) { [18:01:31.193] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.193] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.193] } [18:01:31.193] ...future.result <- base::tryCatch({ [18:01:31.193] base::withCallingHandlers({ [18:01:31.193] ...future.value <- base::withVisible(base::local({ [18:01:31.193] b <- 1 [18:01:31.193] c %<-% 2 [18:01:31.193] d <- 3 [18:01:31.193] 4 %->% e [18:01:31.193] b + c + d + e [18:01:31.193] })) [18:01:31.193] future::FutureResult(value = ...future.value$value, [18:01:31.193] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.193] ...future.rng), globalenv = if (FALSE) [18:01:31.193] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.193] ...future.globalenv.names)) [18:01:31.193] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.193] }, condition = base::local({ [18:01:31.193] c <- base::c [18:01:31.193] inherits <- base::inherits [18:01:31.193] invokeRestart <- base::invokeRestart [18:01:31.193] length <- base::length [18:01:31.193] list <- base::list [18:01:31.193] seq.int <- base::seq.int [18:01:31.193] signalCondition <- base::signalCondition [18:01:31.193] sys.calls <- base::sys.calls [18:01:31.193] `[[` <- base::`[[` [18:01:31.193] `+` <- base::`+` [18:01:31.193] `<<-` <- base::`<<-` [18:01:31.193] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.193] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.193] 3L)] [18:01:31.193] } [18:01:31.193] function(cond) { [18:01:31.193] is_error <- inherits(cond, "error") [18:01:31.193] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.193] NULL) [18:01:31.193] if (is_error) { [18:01:31.193] sessionInformation <- function() { [18:01:31.193] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.193] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.193] search = base::search(), system = base::Sys.info()) [18:01:31.193] } [18:01:31.193] ...future.conditions[[length(...future.conditions) + [18:01:31.193] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.193] cond$call), session = sessionInformation(), [18:01:31.193] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.193] signalCondition(cond) [18:01:31.193] } [18:01:31.193] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.193] "immediateCondition"))) { [18:01:31.193] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.193] ...future.conditions[[length(...future.conditions) + [18:01:31.193] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.193] if (TRUE && !signal) { [18:01:31.193] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.193] { [18:01:31.193] inherits <- base::inherits [18:01:31.193] invokeRestart <- base::invokeRestart [18:01:31.193] is.null <- base::is.null [18:01:31.193] muffled <- FALSE [18:01:31.193] if (inherits(cond, "message")) { [18:01:31.193] muffled <- grepl(pattern, "muffleMessage") [18:01:31.193] if (muffled) [18:01:31.193] invokeRestart("muffleMessage") [18:01:31.193] } [18:01:31.193] else if (inherits(cond, "warning")) { [18:01:31.193] muffled <- grepl(pattern, "muffleWarning") [18:01:31.193] if (muffled) [18:01:31.193] invokeRestart("muffleWarning") [18:01:31.193] } [18:01:31.193] else if (inherits(cond, "condition")) { [18:01:31.193] if (!is.null(pattern)) { [18:01:31.193] computeRestarts <- base::computeRestarts [18:01:31.193] grepl <- base::grepl [18:01:31.193] restarts <- computeRestarts(cond) [18:01:31.193] for (restart in restarts) { [18:01:31.193] name <- restart$name [18:01:31.193] if (is.null(name)) [18:01:31.193] next [18:01:31.193] if (!grepl(pattern, name)) [18:01:31.193] next [18:01:31.193] invokeRestart(restart) [18:01:31.193] muffled <- TRUE [18:01:31.193] break [18:01:31.193] } [18:01:31.193] } [18:01:31.193] } [18:01:31.193] invisible(muffled) [18:01:31.193] } [18:01:31.193] muffleCondition(cond, pattern = "^muffle") [18:01:31.193] } [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] if (TRUE) { [18:01:31.193] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.193] { [18:01:31.193] inherits <- base::inherits [18:01:31.193] invokeRestart <- base::invokeRestart [18:01:31.193] is.null <- base::is.null [18:01:31.193] muffled <- FALSE [18:01:31.193] if (inherits(cond, "message")) { [18:01:31.193] muffled <- grepl(pattern, "muffleMessage") [18:01:31.193] if (muffled) [18:01:31.193] invokeRestart("muffleMessage") [18:01:31.193] } [18:01:31.193] else if (inherits(cond, "warning")) { [18:01:31.193] muffled <- grepl(pattern, "muffleWarning") [18:01:31.193] if (muffled) [18:01:31.193] invokeRestart("muffleWarning") [18:01:31.193] } [18:01:31.193] else if (inherits(cond, "condition")) { [18:01:31.193] if (!is.null(pattern)) { [18:01:31.193] computeRestarts <- base::computeRestarts [18:01:31.193] grepl <- base::grepl [18:01:31.193] restarts <- computeRestarts(cond) [18:01:31.193] for (restart in restarts) { [18:01:31.193] name <- restart$name [18:01:31.193] if (is.null(name)) [18:01:31.193] next [18:01:31.193] if (!grepl(pattern, name)) [18:01:31.193] next [18:01:31.193] invokeRestart(restart) [18:01:31.193] muffled <- TRUE [18:01:31.193] break [18:01:31.193] } [18:01:31.193] } [18:01:31.193] } [18:01:31.193] invisible(muffled) [18:01:31.193] } [18:01:31.193] muffleCondition(cond, pattern = "^muffle") [18:01:31.193] } [18:01:31.193] } [18:01:31.193] } [18:01:31.193] })) [18:01:31.193] }, error = function(ex) { [18:01:31.193] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.193] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.193] ...future.rng), started = ...future.startTime, [18:01:31.193] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.193] version = "1.8"), class = "FutureResult") [18:01:31.193] }, finally = { [18:01:31.193] if (!identical(...future.workdir, getwd())) [18:01:31.193] setwd(...future.workdir) [18:01:31.193] { [18:01:31.193] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.193] ...future.oldOptions$nwarnings <- NULL [18:01:31.193] } [18:01:31.193] base::options(...future.oldOptions) [18:01:31.193] if (.Platform$OS.type == "windows") { [18:01:31.193] old_names <- names(...future.oldEnvVars) [18:01:31.193] envs <- base::Sys.getenv() [18:01:31.193] names <- names(envs) [18:01:31.193] common <- intersect(names, old_names) [18:01:31.193] added <- setdiff(names, old_names) [18:01:31.193] removed <- setdiff(old_names, names) [18:01:31.193] changed <- common[...future.oldEnvVars[common] != [18:01:31.193] envs[common]] [18:01:31.193] NAMES <- toupper(changed) [18:01:31.193] args <- list() [18:01:31.193] for (kk in seq_along(NAMES)) { [18:01:31.193] name <- changed[[kk]] [18:01:31.193] NAME <- NAMES[[kk]] [18:01:31.193] if (name != NAME && is.element(NAME, old_names)) [18:01:31.193] next [18:01:31.193] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.193] } [18:01:31.193] NAMES <- toupper(added) [18:01:31.193] for (kk in seq_along(NAMES)) { [18:01:31.193] name <- added[[kk]] [18:01:31.193] NAME <- NAMES[[kk]] [18:01:31.193] if (name != NAME && is.element(NAME, old_names)) [18:01:31.193] next [18:01:31.193] args[[name]] <- "" [18:01:31.193] } [18:01:31.193] NAMES <- toupper(removed) [18:01:31.193] for (kk in seq_along(NAMES)) { [18:01:31.193] name <- removed[[kk]] [18:01:31.193] NAME <- NAMES[[kk]] [18:01:31.193] if (name != NAME && is.element(NAME, old_names)) [18:01:31.193] next [18:01:31.193] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.193] } [18:01:31.193] if (length(args) > 0) [18:01:31.193] base::do.call(base::Sys.setenv, args = args) [18:01:31.193] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.193] } [18:01:31.193] { [18:01:31.193] if (base::length(...future.futureOptionsAdded) > [18:01:31.193] 0L) { [18:01:31.193] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.193] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.193] base::options(opts) [18:01:31.193] } [18:01:31.193] { [18:01:31.193] { [18:01:31.193] NULL [18:01:31.193] RNGkind("Mersenne-Twister") [18:01:31.193] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.193] inherits = FALSE) [18:01:31.193] } [18:01:31.193] options(future.plan = NULL) [18:01:31.193] if (is.na(NA_character_)) [18:01:31.193] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.193] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.193] future::plan(list(function (..., envir = parent.frame()) [18:01:31.193] { [18:01:31.193] future <- SequentialFuture(..., envir = envir) [18:01:31.193] if (!future$lazy) [18:01:31.193] future <- run(future) [18:01:31.193] invisible(future) [18:01:31.193] }), .cleanup = FALSE, .init = FALSE) [18:01:31.193] } [18:01:31.193] } [18:01:31.193] } [18:01:31.193] }) [18:01:31.193] if (TRUE) { [18:01:31.193] base::sink(type = "output", split = FALSE) [18:01:31.193] if (TRUE) { [18:01:31.193] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.193] } [18:01:31.193] else { [18:01:31.193] ...future.result["stdout"] <- base::list(NULL) [18:01:31.193] } [18:01:31.193] base::close(...future.stdout) [18:01:31.193] ...future.stdout <- NULL [18:01:31.193] } [18:01:31.193] ...future.result$conditions <- ...future.conditions [18:01:31.193] ...future.result$finished <- base::Sys.time() [18:01:31.193] ...future.result [18:01:31.193] } [18:01:31.198] plan(): Setting new future strategy stack: [18:01:31.198] List of future strategies: [18:01:31.198] 1. sequential: [18:01:31.198] - args: function (..., envir = parent.frame()) [18:01:31.198] - tweaked: FALSE [18:01:31.198] - call: NULL [18:01:31.198] plan(): nbrOfWorkers() = 1 [18:01:31.246] plan(): Setting new future strategy stack: [18:01:31.246] List of future strategies: [18:01:31.246] 1. sequential: [18:01:31.246] - args: function (..., envir = parent.frame()) [18:01:31.246] - tweaked: FALSE [18:01:31.246] - call: plan(strategy) [18:01:31.247] plan(): nbrOfWorkers() = 1 [18:01:31.247] SequentialFuture started (and completed) [18:01:31.247] signalConditions() ... [18:01:31.247] - include = 'immediateCondition' [18:01:31.248] - exclude = [18:01:31.248] - resignal = FALSE [18:01:31.248] - Number of conditions: 88 [18:01:31.248] signalConditions() ... done [18:01:31.248] - Launch lazy future ... done [18:01:31.248] run() for 'SequentialFuture' ... done [18:01:31.249] signalConditions() ... [18:01:31.249] - include = 'immediateCondition' [18:01:31.249] - exclude = [18:01:31.249] - resignal = FALSE [18:01:31.249] - Number of conditions: 88 [18:01:31.250] signalConditions() ... done [18:01:31.250] Future state: 'finished' [18:01:31.250] signalConditions() ... [18:01:31.250] - include = 'condition' [18:01:31.250] - exclude = 'immediateCondition' [18:01:31.250] - resignal = TRUE [18:01:31.251] - Number of conditions: 88 [18:01:31.251] - Condition #1: 'simpleMessage', 'message', 'condition' [18:01:31.199] getGlobalsAndPackages() ... [18:01:31.251] - Condition #2: 'simpleMessage', 'message', 'condition' [18:01:31.199] Searching for globals... [18:01:31.251] - Condition #3: 'simpleMessage', 'message', 'condition' [18:01:31.215] [18:01:31.251] - Condition #4: 'simpleMessage', 'message', 'condition' [18:01:31.215] Searching for globals ... DONE [18:01:31.252] - Condition #5: 'simpleMessage', 'message', 'condition' [18:01:31.216] - globals: [0] [18:01:31.252] - Condition #6: 'simpleMessage', 'message', 'condition' [18:01:31.216] getGlobalsAndPackages() ... DONE [18:01:31.252] - Condition #7: 'simpleMessage', 'message', 'condition' [18:01:31.216] run() for 'Future' ... [18:01:31.252] - Condition #8: 'simpleMessage', 'message', 'condition' [18:01:31.216] - state: 'created' [18:01:31.253] - Condition #9: 'simpleMessage', 'message', 'condition' [18:01:31.217] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.253] - Condition #10: 'simpleMessage', 'message', 'condition' [18:01:31.217] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.253] - Condition #11: 'simpleMessage', 'message', 'condition' [18:01:31.217] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.253] - Condition #12: 'simpleMessage', 'message', 'condition' [18:01:31.217] - Field: 'label' [18:01:31.253] - Condition #13: 'simpleMessage', 'message', 'condition' [18:01:31.218] - Field: 'local' [18:01:31.254] - Condition #14: 'simpleMessage', 'message', 'condition' [18:01:31.218] - Field: 'owner' [18:01:31.254] - Condition #15: 'simpleMessage', 'message', 'condition' [18:01:31.218] - Field: 'envir' [18:01:31.254] - Condition #16: 'simpleMessage', 'message', 'condition' [18:01:31.218] - Field: 'packages' [18:01:31.254] - Condition #17: 'simpleMessage', 'message', 'condition' [18:01:31.219] - Field: 'gc' [18:01:31.254] - Condition #18: 'simpleMessage', 'message', 'condition' [18:01:31.219] - Field: 'conditions' [18:01:31.255] - Condition #19: 'simpleMessage', 'message', 'condition' [18:01:31.219] - Field: 'expr' [18:01:31.255] - Condition #20: 'simpleMessage', 'message', 'condition' [18:01:31.219] - Field: 'uuid' [18:01:31.255] - Condition #21: 'simpleMessage', 'message', 'condition' [18:01:31.219] - Field: 'seed' [18:01:31.255] - Condition #22: 'simpleMessage', 'message', 'condition' [18:01:31.219] - Field: 'version' [18:01:31.255] - Condition #23: 'simpleMessage', 'message', 'condition' [18:01:31.220] - Field: 'result' [18:01:31.256] - Condition #24: 'simpleMessage', 'message', 'condition' [18:01:31.220] - Field: 'asynchronous' [18:01:31.256] - Condition #25: 'simpleMessage', 'message', 'condition' [18:01:31.220] - Field: 'calls' [18:01:31.256] - Condition #26: 'simpleMessage', 'message', 'condition' [18:01:31.220] - Field: 'globals' [18:01:31.256] - Condition #27: 'simpleMessage', 'message', 'condition' [18:01:31.220] - Field: 'stdout' [18:01:31.257] - Condition #28: 'simpleMessage', 'message', 'condition' [18:01:31.221] - Field: 'earlySignal' [18:01:31.257] - Condition #29: 'simpleMessage', 'message', 'condition' [18:01:31.221] - Field: 'lazy' [18:01:31.257] - Condition #30: 'simpleMessage', 'message', 'condition' [18:01:31.221] - Field: 'state' [18:01:31.257] - Condition #31: 'simpleMessage', 'message', 'condition' [18:01:31.221] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.257] - Condition #32: 'simpleMessage', 'message', 'condition' [18:01:31.221] - Launch lazy future ... [18:01:31.258] - Condition #33: 'simpleMessage', 'message', 'condition' [18:01:31.222] Packages needed by the future expression (n = 0): [18:01:31.258] - Condition #34: 'simpleMessage', 'message', 'condition' [18:01:31.222] Packages needed by future strategies (n = 0): [18:01:31.258] - Condition #35: 'simpleMessage', 'message', 'condition' [18:01:31.222] { [18:01:31.222] { [18:01:31.222] { [18:01:31.222] ...future.startTime <- base::Sys.time() [18:01:31.222] { [18:01:31.222] { [18:01:31.222] { [18:01:31.222] base::local({ [18:01:31.222] has_future <- base::requireNamespace("future", [18:01:31.222] quietly = TRUE) [18:01:31.222] if (has_future) { [18:01:31.222] ns <- base::getNamespace("future") [18:01:31.222] version <- ns[[".package"]][["version"]] [18:01:31.222] if (is.null(version)) [18:01:31.222] version <- utils::packageVersion("future") [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] version <- NULL [18:01:31.222] } [18:01:31.222] if (!has_future || version < "1.8.0") { [18:01:31.222] info <- base::c(r_version = base::gsub("R version ", [18:01:31.222] "", base::R.version$version.string), [18:01:31.222] platform = base::sprintf("%s (%s-bit)", [18:01:31.222] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.222] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.222] "release", "version")], collapse = " "), [18:01:31.222] hostname = base::Sys.info()[["nodename"]]) [18:01:31.222] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.222] info) [18:01:31.222] info <- base::paste(info, collapse = "; ") [18:01:31.222] if (!has_future) { [18:01:31.222] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.222] info) [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.222] info, version) [18:01:31.222] } [18:01:31.222] base::stop(msg) [18:01:31.222] } [18:01:31.222] }) [18:01:31.222] } [18:01:31.222] options(future.plan = NULL) [18:01:31.222] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.222] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.222] } [18:01:31.222] ...future.workdir <- getwd() [18:01:31.222] } [18:01:31.222] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.222] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.222] } [18:01:31.222] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.222] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.222] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.222] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.222] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.222] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.222] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.222] base::names(...future.oldOptions)) [18:01:31.222] } [18:01:31.222] if (FALSE) { [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] if (TRUE) { [18:01:31.222] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.222] open = "w") [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.222] windows = "NUL", "/dev/null"), open = "w") [18:01:31.222] } [18:01:31.222] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.222] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.222] base::sink(type = "output", split = FALSE) [18:01:31.222] base::close(...future.stdout) [18:01:31.222] }, add = TRUE) [18:01:31.222] } [18:01:31.222] ...future.frame <- base::sys.nframe() [18:01:31.222] ...future.conditions <- base::list() [18:01:31.222] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.222] if (FALSE) { [18:01:31.222] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.222] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.222] } [18:01:31.222] ...future.result <- base::tryCatch({ [18:01:31.222] base::withCallingHandlers({ [18:01:31.222] ...future.value <- base::withVisible(base::local(2)) [18:01:31.222] future::FutureResult(value = ...future.value$value, [18:01:31.222] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.222] ...future.rng), globalenv = if (FALSE) [18:01:31.222] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.222] ...future.globalenv.names)) [18:01:31.222] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.222] }, condition = base::local({ [18:01:31.222] c <- base::c [18:01:31.222] inherits <- base::inherits [18:01:31.222] invokeRestart <- base::invokeRestart [18:01:31.222] length <- base::length [18:01:31.222] list <- base::list [18:01:31.222] seq.int <- base::seq.int [18:01:31.222] signalCondition <- base::signalCondition [18:01:31.222] sys.calls <- base::sys.calls [18:01:31.222] `[[` <- base::`[[` [18:01:31.222] `+` <- base::`+` [18:01:31.222] `<<-` <- base::`<<-` [18:01:31.222] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.222] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.222] 3L)] [18:01:31.222] } [18:01:31.222] function(cond) { [18:01:31.222] is_error <- inherits(cond, "error") [18:01:31.222] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.222] NULL) [18:01:31.222] if (is_error) { [18:01:31.222] sessionInformation <- function() { [18:01:31.222] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.222] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.222] search = base::search(), system = base::Sys.info()) [18:01:31.222] } [18:01:31.222] ...future.conditions[[length(...future.conditions) + [18:01:31.222] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.222] cond$call), session = sessionInformation(), [18:01:31.222] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.222] signalCondition(cond) [18:01:31.222] } [18:01:31.222] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.222] "immediateCondition"))) { [18:01:31.222] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.222] ...future.conditions[[length(...future.conditions) + [18:01:31.222] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.222] if (TRUE && !signal) { [18:01:31.222] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.222] { [18:01:31.222] inherits <- base::inherits [18:01:31.222] invokeRestart <- base::invokeRestart [18:01:31.222] is.null <- base::is.null [18:01:31.222] muffled <- FALSE [18:01:31.222] if (inherits(cond, "message")) { [18:01:31.222] muffled <- grepl(pattern, "muffleMessage") [18:01:31.222] if (muffled) [18:01:31.222] invokeRestart("muffleMessage") [18:01:31.222] } [18:01:31.222] else if (inherits(cond, "warning")) { [18:01:31.222] muffled <- grepl(pattern, "muffleWarning") [18:01:31.222] if (muffled) [18:01:31.222] invokeRestart("muffleWarning") [18:01:31.222] } [18:01:31.222] else if (inherits(cond, "condition")) { [18:01:31.222] if (!is.null(pattern)) { [18:01:31.222] computeRestarts <- base::computeRestarts [18:01:31.222] grepl <- base::grepl [18:01:31.222] restarts <- computeRestarts(cond) [18:01:31.222] for (restart in restarts) { [18:01:31.222] name <- restart$name [18:01:31.222] if (is.null(name)) [18:01:31.222] next [18:01:31.222] if (!grepl(pattern, name)) [18:01:31.222] next [18:01:31.222] invokeRestart(restart) [18:01:31.222] muffled <- TRUE [18:01:31.222] break [18:01:31.222] } [18:01:31.222] } [18:01:31.222] } [18:01:31.222] invisible(muffled) [18:01:31.222] } [18:01:31.222] muffleCondition(cond, pattern = "^muffle") [18:01:31.222] } [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] if (TRUE) { [18:01:31.222] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.222] { [18:01:31.222] inherits <- base::inherits [18:01:31.222] invokeRestart <- base::invokeRestart [18:01:31.222] is.null <- base::is.null [18:01:31.222] muffled <- FALSE [18:01:31.222] if (inherits(cond, "message")) { [18:01:31.222] muffled <- grepl(pattern, "muffleMessage") [18:01:31.222] if (muffled) [18:01:31.222] invokeRestart("muffleMessage") [18:01:31.222] } [18:01:31.222] else if (inherits(cond, "warning")) { [18:01:31.222] muffled <- grepl(pattern, "muffleWarning") [18:01:31.222] if (muffled) [18:01:31.222] invokeRestart("muffleWarning") [18:01:31.222] } [18:01:31.222] else if (inherits(cond, "condition")) { [18:01:31.222] if (!is.null(pattern)) { [18:01:31.222] computeRestarts <- base::computeRestarts [18:01:31.222] grepl <- base::grepl [18:01:31.222] restarts <- computeRestarts(cond) [18:01:31.222] for (restart in restarts) { [18:01:31.222] name <- restart$name [18:01:31.222] if (is.null(name)) [18:01:31.222] next [18:01:31.222] if (!grepl(pattern, name)) [18:01:31.222] next [18:01:31.222] invokeRestart(restart) [18:01:31.222] muffled <- TRUE [18:01:31.222] break [18:01:31.222] } [18:01:31.222] } [18:01:31.222] } [18:01:31.222] invisible(muffled) [18:01:31.222] } [18:01:31.222] muffleCondition(cond, pattern = "^muffle") [18:01:31.222] } [18:01:31.222] } [18:01:31.222] } [18:01:31.222] })) [18:01:31.222] }, error = function(ex) { [18:01:31.222] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.222] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.222] ...future.rng), started = ...future.startTime, [18:01:31.222] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.222] version = "1.8"), class = "FutureResult") [18:01:31.222] }, finally = { [18:01:31.222] if (!identical(...future.workdir, getwd())) [18:01:31.222] setwd(...future.workdir) [18:01:31.222] { [18:01:31.222] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.222] ...future.oldOptions$nwarnings <- NULL [18:01:31.222] } [18:01:31.222] base::options(...future.oldOptions) [18:01:31.222] if (.Platform$OS.type == "windows") { [18:01:31.222] old_names <- names(...future.oldEnvVars) [18:01:31.222] envs <- base::Sys.getenv() [18:01:31.222] names <- names(envs) [18:01:31.222] common <- intersect(names, old_names) [18:01:31.222] added <- setdiff(names, old_names) [18:01:31.222] removed <- setdiff(old_names, names) [18:01:31.222] changed <- common[...future.oldEnvVars[common] != [18:01:31.222] envs[common]] [18:01:31.222] NAMES <- toupper(changed) [18:01:31.222] args <- list() [18:01:31.222] for (kk in seq_along(NAMES)) { [18:01:31.222] name <- changed[[kk]] [18:01:31.222] NAME <- NAMES[[kk]] [18:01:31.222] if (name != NAME && is.element(NAME, old_names)) [18:01:31.222] next [18:01:31.222] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.222] } [18:01:31.222] NAMES <- toupper(added) [18:01:31.222] for (kk in seq_along(NAMES)) { [18:01:31.222] name <- added[[kk]] [18:01:31.222] NAME <- NAMES[[kk]] [18:01:31.222] if (name != NAME && is.element(NAME, old_names)) [18:01:31.222] next [18:01:31.222] args[[name]] <- "" [18:01:31.222] } [18:01:31.222] NAMES <- toupper(removed) [18:01:31.222] for (kk in seq_along(NAMES)) { [18:01:31.222] name <- removed[[kk]] [18:01:31.222] NAME <- NAMES[[kk]] [18:01:31.222] if (name != NAME && is.element(NAME, old_names)) [18:01:31.222] next [18:01:31.222] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.222] } [18:01:31.222] if (length(args) > 0) [18:01:31.222] base::do.call(base::Sys.setenv, args = args) [18:01:31.222] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.222] } [18:01:31.222] { [18:01:31.222] if (base::length(...future.futureOptionsAdded) > [18:01:31.222] 0L) { [18:01:31.222] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.222] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.222] base::options(opts) [18:01:31.222] } [18:01:31.222] { [18:01:31.222] { [18:01:31.222] NULL [18:01:31.222] RNGkind("Mersenne-Twister") [18:01:31.222] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.222] inherits = FALSE) [18:01:31.222] } [18:01:31.222] options(future.plan = NULL) [18:01:31.222] if (is.na(NA_character_)) [18:01:31.222] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.222] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.222] future::plan(list(function (..., envir = parent.frame()) [18:01:31.222] { [18:01:31.222] future <- SequentialFuture(..., envir = envir) [18:01:31.222] if (!future$lazy) [18:01:31.222] future <- run(future) [18:01:31.222] invisible(future) [18:01:31.222] }), .cleanup = FALSE, .init = FALSE) [18:01:31.222] } [18:01:31.222] } [18:01:31.222] } [18:01:31.222] }) [18:01:31.222] if (TRUE) { [18:01:31.222] base::sink(type = "output", split = FALSE) [18:01:31.222] if (TRUE) { [18:01:31.222] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.222] } [18:01:31.222] else { [18:01:31.222] ...future.result["stdout"] <- base::list(NULL) [18:01:31.222] } [18:01:31.222] base::close(...future.stdout) [18:01:31.222] ...future.stdout <- NULL [18:01:31.222] } [18:01:31.222] ...future.result$conditions <- ...future.conditions [18:01:31.222] ...future.result$finished <- base::Sys.time() [18:01:31.222] ...future.result [18:01:31.222] } [18:01:31.258] - Condition #36: 'simpleMessage', 'message', 'condition' [18:01:31.226] plan(): Setting new future strategy stack: [18:01:31.259] - Condition #37: 'simpleMessage', 'message', 'condition' [18:01:31.226] List of future strategies: [18:01:31.226] 1. sequential: [18:01:31.226] - args: function (..., envir = parent.frame()) [18:01:31.226] - tweaked: FALSE [18:01:31.226] - call: NULL [18:01:31.259] - Condition #38: 'simpleMessage', 'message', 'condition' [18:01:31.227] plan(): nbrOfWorkers() = 1 [18:01:31.259] - Condition #39: 'simpleMessage', 'message', 'condition' [18:01:31.228] plan(): Setting new future strategy stack: [18:01:31.259] - Condition #40: 'simpleMessage', 'message', 'condition' [18:01:31.228] List of future strategies: [18:01:31.228] 1. sequential: [18:01:31.228] - args: function (..., envir = parent.frame()) [18:01:31.228] - tweaked: FALSE [18:01:31.228] - call: NULL [18:01:31.260] - Condition #41: 'simpleMessage', 'message', 'condition' [18:01:31.229] plan(): nbrOfWorkers() = 1 [18:01:31.260] - Condition #42: 'simpleMessage', 'message', 'condition' [18:01:31.229] SequentialFuture started (and completed) [18:01:31.260] - Condition #43: 'simpleMessage', 'message', 'condition' [18:01:31.229] - Launch lazy future ... done [18:01:31.260] - Condition #44: 'simpleMessage', 'message', 'condition' [18:01:31.229] run() for 'SequentialFuture' ... done [18:01:31.260] - Condition #45: 'simpleMessage', 'message', 'condition' [18:01:31.230] getGlobalsAndPackages() ... [18:01:31.261] - Condition #46: 'simpleMessage', 'message', 'condition' [18:01:31.230] Searching for globals... [18:01:31.261] - Condition #47: 'simpleMessage', 'message', 'condition' [18:01:31.230] [18:01:31.261] - Condition #48: 'simpleMessage', 'message', 'condition' [18:01:31.230] Searching for globals ... DONE [18:01:31.261] - Condition #49: 'simpleMessage', 'message', 'condition' [18:01:31.231] - globals: [0] [18:01:31.261] - Condition #50: 'simpleMessage', 'message', 'condition' [18:01:31.231] getGlobalsAndPackages() ... DONE [18:01:31.262] - Condition #51: 'simpleMessage', 'message', 'condition' [18:01:31.231] run() for 'Future' ... [18:01:31.262] - Condition #52: 'simpleMessage', 'message', 'condition' [18:01:31.231] - state: 'created' [18:01:31.262] - Condition #53: 'simpleMessage', 'message', 'condition' [18:01:31.232] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.262] - Condition #54: 'simpleMessage', 'message', 'condition' [18:01:31.232] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.262] - Condition #55: 'simpleMessage', 'message', 'condition' [18:01:31.232] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.263] - Condition #56: 'simpleMessage', 'message', 'condition' [18:01:31.232] - Field: 'label' [18:01:31.263] - Condition #57: 'simpleMessage', 'message', 'condition' [18:01:31.233] - Field: 'local' [18:01:31.263] - Condition #58: 'simpleMessage', 'message', 'condition' [18:01:31.234] - Field: 'owner' [18:01:31.263] - Condition #59: 'simpleMessage', 'message', 'condition' [18:01:31.234] - Field: 'envir' [18:01:31.264] - Condition #60: 'simpleMessage', 'message', 'condition' [18:01:31.234] - Field: 'packages' [18:01:31.264] - Condition #61: 'simpleMessage', 'message', 'condition' [18:01:31.234] - Field: 'gc' [18:01:31.264] - Condition #62: 'simpleMessage', 'message', 'condition' [18:01:31.235] - Field: 'conditions' [18:01:31.264] - Condition #63: 'simpleMessage', 'message', 'condition' [18:01:31.235] - Field: 'expr' [18:01:31.264] - Condition #64: 'simpleMessage', 'message', 'condition' [18:01:31.235] - Field: 'uuid' [18:01:31.265] - Condition #65: 'simpleMessage', 'message', 'condition' [18:01:31.235] - Field: 'seed' [18:01:31.265] - Condition #66: 'simpleMessage', 'message', 'condition' [18:01:31.235] - Field: 'version' [18:01:31.265] - Condition #67: 'simpleMessage', 'message', 'condition' [18:01:31.235] - Field: 'result' [18:01:31.265] - Condition #68: 'simpleMessage', 'message', 'condition' [18:01:31.236] - Field: 'asynchronous' [18:01:31.266] - Condition #69: 'simpleMessage', 'message', 'condition' [18:01:31.236] - Field: 'calls' [18:01:31.266] - Condition #70: 'simpleMessage', 'message', 'condition' [18:01:31.236] - Field: 'globals' [18:01:31.266] - Condition #71: 'simpleMessage', 'message', 'condition' [18:01:31.236] - Field: 'stdout' [18:01:31.266] - Condition #72: 'simpleMessage', 'message', 'condition' [18:01:31.236] - Field: 'earlySignal' [18:01:31.266] - Condition #73: 'simpleMessage', 'message', 'condition' [18:01:31.237] - Field: 'lazy' [18:01:31.267] - Condition #74: 'simpleMessage', 'message', 'condition' [18:01:31.237] - Field: 'state' [18:01:31.267] - Condition #75: 'simpleMessage', 'message', 'condition' [18:01:31.237] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.267] - Condition #76: 'simpleMessage', 'message', 'condition' [18:01:31.237] - Launch lazy future ... [18:01:31.267] - Condition #77: 'simpleMessage', 'message', 'condition' [18:01:31.237] Packages needed by the future expression (n = 0): [18:01:31.268] - Condition #78: 'simpleMessage', 'message', 'condition' [18:01:31.238] Packages needed by future strategies (n = 0): [18:01:31.268] - Condition #79: 'simpleMessage', 'message', 'condition' [18:01:31.238] { [18:01:31.238] { [18:01:31.238] { [18:01:31.238] ...future.startTime <- base::Sys.time() [18:01:31.238] { [18:01:31.238] { [18:01:31.238] { [18:01:31.238] base::local({ [18:01:31.238] has_future <- base::requireNamespace("future", [18:01:31.238] quietly = TRUE) [18:01:31.238] if (has_future) { [18:01:31.238] ns <- base::getNamespace("future") [18:01:31.238] version <- ns[[".package"]][["version"]] [18:01:31.238] if (is.null(version)) [18:01:31.238] version <- utils::packageVersion("future") [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] version <- NULL [18:01:31.238] } [18:01:31.238] if (!has_future || version < "1.8.0") { [18:01:31.238] info <- base::c(r_version = base::gsub("R version ", [18:01:31.238] "", base::R.version$version.string), [18:01:31.238] platform = base::sprintf("%s (%s-bit)", [18:01:31.238] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.238] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.238] "release", "version")], collapse = " "), [18:01:31.238] hostname = base::Sys.info()[["nodename"]]) [18:01:31.238] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.238] info) [18:01:31.238] info <- base::paste(info, collapse = "; ") [18:01:31.238] if (!has_future) { [18:01:31.238] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.238] info) [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.238] info, version) [18:01:31.238] } [18:01:31.238] base::stop(msg) [18:01:31.238] } [18:01:31.238] }) [18:01:31.238] } [18:01:31.238] options(future.plan = NULL) [18:01:31.238] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.238] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.238] } [18:01:31.238] ...future.workdir <- getwd() [18:01:31.238] } [18:01:31.238] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.238] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.238] } [18:01:31.238] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.238] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.238] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.238] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.238] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.238] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.238] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.238] base::names(...future.oldOptions)) [18:01:31.238] } [18:01:31.238] if (FALSE) { [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] if (TRUE) { [18:01:31.238] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.238] open = "w") [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.238] windows = "NUL", "/dev/null"), open = "w") [18:01:31.238] } [18:01:31.238] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.238] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.238] base::sink(type = "output", split = FALSE) [18:01:31.238] base::close(...future.stdout) [18:01:31.238] }, add = TRUE) [18:01:31.238] } [18:01:31.238] ...future.frame <- base::sys.nframe() [18:01:31.238] ...future.conditions <- base::list() [18:01:31.238] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.238] if (FALSE) { [18:01:31.238] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.238] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.238] } [18:01:31.238] ...future.result <- base::tryCatch({ [18:01:31.238] base::withCallingHandlers({ [18:01:31.238] ...future.value <- base::withVisible(base::local(4)) [18:01:31.238] future::FutureResult(value = ...future.value$value, [18:01:31.238] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.238] ...future.rng), globalenv = if (FALSE) [18:01:31.238] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.238] ...future.globalenv.names)) [18:01:31.238] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.238] }, condition = base::local({ [18:01:31.238] c <- base::c [18:01:31.238] inherits <- base::inherits [18:01:31.238] invokeRestart <- base::invokeRestart [18:01:31.238] length <- base::length [18:01:31.238] list <- base::list [18:01:31.238] seq.int <- base::seq.int [18:01:31.238] signalCondition <- base::signalCondition [18:01:31.238] sys.calls <- base::sys.calls [18:01:31.238] `[[` <- base::`[[` [18:01:31.238] `+` <- base::`+` [18:01:31.238] `<<-` <- base::`<<-` [18:01:31.238] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.238] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.238] 3L)] [18:01:31.238] } [18:01:31.238] function(cond) { [18:01:31.238] is_error <- inherits(cond, "error") [18:01:31.238] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.238] NULL) [18:01:31.238] if (is_error) { [18:01:31.238] sessionInformation <- function() { [18:01:31.238] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.238] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.238] search = base::search(), system = base::Sys.info()) [18:01:31.238] } [18:01:31.238] ...future.conditions[[length(...future.conditions) + [18:01:31.238] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.238] cond$call), session = sessionInformation(), [18:01:31.238] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.238] signalCondition(cond) [18:01:31.238] } [18:01:31.238] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.238] "immediateCondition"))) { [18:01:31.238] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.238] ...future.conditions[[length(...future.conditions) + [18:01:31.238] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.238] if (TRUE && !signal) { [18:01:31.238] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.238] { [18:01:31.238] inherits <- base::inherits [18:01:31.238] invokeRestart <- base::invokeRestart [18:01:31.238] is.null <- base::is.null [18:01:31.238] muffled <- FALSE [18:01:31.238] if (inherits(cond, "message")) { [18:01:31.238] muffled <- grepl(pattern, "muffleMessage") [18:01:31.238] if (muffled) [18:01:31.238] invokeRestart("muffleMessage") [18:01:31.238] } [18:01:31.238] else if (inherits(cond, "warning")) { [18:01:31.238] muffled <- grepl(pattern, "muffleWarning") [18:01:31.238] if (muffled) [18:01:31.238] invokeRestart("muffleWarning") [18:01:31.238] } [18:01:31.238] else if (inherits(cond, "condition")) { [18:01:31.238] if (!is.null(pattern)) { [18:01:31.238] computeRestarts <- base::computeRestarts [18:01:31.238] grepl <- base::grepl [18:01:31.238] restarts <- computeRestarts(cond) [18:01:31.238] for (restart in restarts) { [18:01:31.238] name <- restart$name [18:01:31.238] if (is.null(name)) [18:01:31.238] next [18:01:31.238] if (!grepl(pattern, name)) [18:01:31.238] next [18:01:31.238] invokeRestart(restart) [18:01:31.238] muffled <- TRUE [18:01:31.238] break [18:01:31.238] } [18:01:31.238] } [18:01:31.238] } [18:01:31.238] invisible(muffled) [18:01:31.238] } [18:01:31.238] muffleCondition(cond, pattern = "^muffle") [18:01:31.238] } [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] if (TRUE) { [18:01:31.238] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.238] { [18:01:31.238] inherits <- base::inherits [18:01:31.238] invokeRestart <- base::invokeRestart [18:01:31.238] is.null <- base::is.null [18:01:31.238] muffled <- FALSE [18:01:31.238] if (inherits(cond, "message")) { [18:01:31.238] muffled <- grepl(pattern, "muffleMessage") [18:01:31.238] if (muffled) [18:01:31.238] invokeRestart("muffleMessage") [18:01:31.238] } [18:01:31.238] else if (inherits(cond, "warning")) { [18:01:31.238] muffled <- grepl(pattern, "muffleWarning") [18:01:31.238] if (muffled) [18:01:31.238] invokeRestart("muffleWarning") [18:01:31.238] } [18:01:31.238] else if (inherits(cond, "condition")) { [18:01:31.238] if (!is.null(pattern)) { [18:01:31.238] computeRestarts <- base::computeRestarts [18:01:31.238] grepl <- base::grepl [18:01:31.238] restarts <- computeRestarts(cond) [18:01:31.238] for (restart in restarts) { [18:01:31.238] name <- restart$name [18:01:31.238] if (is.null(name)) [18:01:31.238] next [18:01:31.238] if (!grepl(pattern, name)) [18:01:31.238] next [18:01:31.238] invokeRestart(restart) [18:01:31.238] muffled <- TRUE [18:01:31.238] break [18:01:31.238] } [18:01:31.238] } [18:01:31.238] } [18:01:31.238] invisible(muffled) [18:01:31.238] } [18:01:31.238] muffleCondition(cond, pattern = "^muffle") [18:01:31.238] } [18:01:31.238] } [18:01:31.238] } [18:01:31.238] })) [18:01:31.238] }, error = function(ex) { [18:01:31.238] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.238] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.238] ...future.rng), started = ...future.startTime, [18:01:31.238] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.238] version = "1.8"), class = "FutureResult") [18:01:31.238] }, finally = { [18:01:31.238] if (!identical(...future.workdir, getwd())) [18:01:31.238] setwd(...future.workdir) [18:01:31.238] { [18:01:31.238] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.238] ...future.oldOptions$nwarnings <- NULL [18:01:31.238] } [18:01:31.238] base::options(...future.oldOptions) [18:01:31.238] if (.Platform$OS.type == "windows") { [18:01:31.238] old_names <- names(...future.oldEnvVars) [18:01:31.238] envs <- base::Sys.getenv() [18:01:31.238] names <- names(envs) [18:01:31.238] common <- intersect(names, old_names) [18:01:31.238] added <- setdiff(names, old_names) [18:01:31.238] removed <- setdiff(old_names, names) [18:01:31.238] changed <- common[...future.oldEnvVars[common] != [18:01:31.238] envs[common]] [18:01:31.238] NAMES <- toupper(changed) [18:01:31.238] args <- list() [18:01:31.238] for (kk in seq_along(NAMES)) { [18:01:31.238] name <- changed[[kk]] [18:01:31.238] NAME <- NAMES[[kk]] [18:01:31.238] if (name != NAME && is.element(NAME, old_names)) [18:01:31.238] next [18:01:31.238] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.238] } [18:01:31.238] NAMES <- toupper(added) [18:01:31.238] for (kk in seq_along(NAMES)) { [18:01:31.238] name <- added[[kk]] [18:01:31.238] NAME <- NAMES[[kk]] [18:01:31.238] if (name != NAME && is.element(NAME, old_names)) [18:01:31.238] next [18:01:31.238] args[[name]] <- "" [18:01:31.238] } [18:01:31.238] NAMES <- toupper(removed) [18:01:31.238] for (kk in seq_along(NAMES)) { [18:01:31.238] name <- removed[[kk]] [18:01:31.238] NAME <- NAMES[[kk]] [18:01:31.238] if (name != NAME && is.element(NAME, old_names)) [18:01:31.238] next [18:01:31.238] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.238] } [18:01:31.238] if (length(args) > 0) [18:01:31.238] base::do.call(base::Sys.setenv, args = args) [18:01:31.238] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.238] } [18:01:31.238] { [18:01:31.238] if (base::length(...future.futureOptionsAdded) > [18:01:31.238] 0L) { [18:01:31.238] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.238] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.238] base::options(opts) [18:01:31.238] } [18:01:31.238] { [18:01:31.238] { [18:01:31.238] NULL [18:01:31.238] RNGkind("Mersenne-Twister") [18:01:31.238] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.238] inherits = FALSE) [18:01:31.238] } [18:01:31.238] options(future.plan = NULL) [18:01:31.238] if (is.na(NA_character_)) [18:01:31.238] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.238] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.238] future::plan(list(function (..., envir = parent.frame()) [18:01:31.238] { [18:01:31.238] future <- SequentialFuture(..., envir = envir) [18:01:31.238] if (!future$lazy) [18:01:31.238] future <- run(future) [18:01:31.238] invisible(future) [18:01:31.238] }), .cleanup = FALSE, .init = FALSE) [18:01:31.238] } [18:01:31.238] } [18:01:31.238] } [18:01:31.238] }) [18:01:31.238] if (TRUE) { [18:01:31.238] base::sink(type = "output", split = FALSE) [18:01:31.238] if (TRUE) { [18:01:31.238] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.238] } [18:01:31.238] else { [18:01:31.238] ...future.result["stdout"] <- base::list(NULL) [18:01:31.238] } [18:01:31.238] base::close(...future.stdout) [18:01:31.238] ...future.stdout <- NULL [18:01:31.238] } [18:01:31.238] ...future.result$conditions <- ...future.conditions [18:01:31.238] ...future.result$finished <- base::Sys.time() [18:01:31.238] ...future.result [18:01:31.238] } [18:01:31.268] - Condition #80: 'simpleMessage', 'message', 'condition' [18:01:31.242] plan(): Setting new future strategy stack: [18:01:31.269] - Condition #81: 'simpleMessage', 'message', 'condition' [18:01:31.242] List of future strategies: [18:01:31.242] 1. sequential: [18:01:31.242] - args: function (..., envir = parent.frame()) [18:01:31.242] - tweaked: FALSE [18:01:31.242] - call: NULL [18:01:31.270] - Condition #82: 'simpleMessage', 'message', 'condition' [18:01:31.243] plan(): nbrOfWorkers() = 1 [18:01:31.270] - Condition #83: 'simpleMessage', 'message', 'condition' [18:01:31.244] plan(): Setting new future strategy stack: [18:01:31.270] - Condition #84: 'simpleMessage', 'message', 'condition' [18:01:31.244] List of future strategies: [18:01:31.244] 1. sequential: [18:01:31.244] - args: function (..., envir = parent.frame()) [18:01:31.244] - tweaked: FALSE [18:01:31.244] - call: NULL [18:01:31.270] - Condition #85: 'simpleMessage', 'message', 'condition' [18:01:31.244] plan(): nbrOfWorkers() = 1 [18:01:31.270] - Condition #86: 'simpleMessage', 'message', 'condition' [18:01:31.245] SequentialFuture started (and completed) [18:01:31.271] - Condition #87: 'simpleMessage', 'message', 'condition' [18:01:31.245] - Launch lazy future ... done [18:01:31.271] - Condition #88: 'simpleMessage', 'message', 'condition' [18:01:31.245] run() for 'SequentialFuture' ... done [18:01:31.271] signalConditions() ... done a = 10 [18:01:31.271] getGlobalsAndPackages() ... [18:01:31.272] Searching for globals... [18:01:31.273] - globals found: [3] '{', '+', 'a' [18:01:31.273] Searching for globals ... DONE [18:01:31.273] Resolving globals: FALSE [18:01:31.273] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:31.274] The total size of the 1 globals exported for future expression ('{; a + 1; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [18:01:31.274] - globals: [1] 'a' [18:01:31.274] [18:01:31.274] getGlobalsAndPackages() ... DONE [18:01:31.275] run() for 'Future' ... [18:01:31.275] - state: 'created' [18:01:31.275] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:31.275] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:31.276] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:31.276] - Field: 'label' [18:01:31.276] - Field: 'local' [18:01:31.276] - Field: 'owner' [18:01:31.276] - Field: 'envir' [18:01:31.277] - Field: 'packages' [18:01:31.277] - Field: 'gc' [18:01:31.277] - Field: 'conditions' [18:01:31.277] - Field: 'expr' [18:01:31.277] - Field: 'uuid' [18:01:31.277] - Field: 'seed' [18:01:31.278] - Field: 'version' [18:01:31.278] - Field: 'result' [18:01:31.278] - Field: 'asynchronous' [18:01:31.278] - Field: 'calls' [18:01:31.278] - Field: 'globals' [18:01:31.278] - Field: 'stdout' [18:01:31.279] - Field: 'earlySignal' [18:01:31.279] - Field: 'lazy' [18:01:31.279] - Field: 'state' [18:01:31.279] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:31.279] - Launch lazy future ... [18:01:31.280] Packages needed by the future expression (n = 0): [18:01:31.280] Packages needed by future strategies (n = 0): [18:01:31.280] { [18:01:31.280] { [18:01:31.280] { [18:01:31.280] ...future.startTime <- base::Sys.time() [18:01:31.280] { [18:01:31.280] { [18:01:31.280] { [18:01:31.280] base::local({ [18:01:31.280] has_future <- base::requireNamespace("future", [18:01:31.280] quietly = TRUE) [18:01:31.280] if (has_future) { [18:01:31.280] ns <- base::getNamespace("future") [18:01:31.280] version <- ns[[".package"]][["version"]] [18:01:31.280] if (is.null(version)) [18:01:31.280] version <- utils::packageVersion("future") [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] version <- NULL [18:01:31.280] } [18:01:31.280] if (!has_future || version < "1.8.0") { [18:01:31.280] info <- base::c(r_version = base::gsub("R version ", [18:01:31.280] "", base::R.version$version.string), [18:01:31.280] platform = base::sprintf("%s (%s-bit)", [18:01:31.280] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:31.280] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:31.280] "release", "version")], collapse = " "), [18:01:31.280] hostname = base::Sys.info()[["nodename"]]) [18:01:31.280] info <- base::sprintf("%s: %s", base::names(info), [18:01:31.280] info) [18:01:31.280] info <- base::paste(info, collapse = "; ") [18:01:31.280] if (!has_future) { [18:01:31.280] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:31.280] info) [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:31.280] info, version) [18:01:31.280] } [18:01:31.280] base::stop(msg) [18:01:31.280] } [18:01:31.280] }) [18:01:31.280] } [18:01:31.280] options(future.plan = NULL) [18:01:31.280] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.280] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:31.280] } [18:01:31.280] ...future.workdir <- getwd() [18:01:31.280] } [18:01:31.280] ...future.oldOptions <- base::as.list(base::.Options) [18:01:31.280] ...future.oldEnvVars <- base::Sys.getenv() [18:01:31.280] } [18:01:31.280] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:31.280] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:31.280] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:31.280] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:31.280] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:31.280] future.stdout.windows.reencode = NULL, width = 80L) [18:01:31.280] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:31.280] base::names(...future.oldOptions)) [18:01:31.280] } [18:01:31.280] if (FALSE) { [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] if (TRUE) { [18:01:31.280] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:31.280] open = "w") [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:31.280] windows = "NUL", "/dev/null"), open = "w") [18:01:31.280] } [18:01:31.280] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:31.280] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:31.280] base::sink(type = "output", split = FALSE) [18:01:31.280] base::close(...future.stdout) [18:01:31.280] }, add = TRUE) [18:01:31.280] } [18:01:31.280] ...future.frame <- base::sys.nframe() [18:01:31.280] ...future.conditions <- base::list() [18:01:31.280] ...future.rng <- base::globalenv()$.Random.seed [18:01:31.280] if (FALSE) { [18:01:31.280] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:31.280] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:31.280] } [18:01:31.280] ...future.result <- base::tryCatch({ [18:01:31.280] base::withCallingHandlers({ [18:01:31.280] ...future.value <- base::withVisible(base::local({ [18:01:31.280] a + 1 [18:01:31.280] })) [18:01:31.280] future::FutureResult(value = ...future.value$value, [18:01:31.280] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.280] ...future.rng), globalenv = if (FALSE) [18:01:31.280] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:31.280] ...future.globalenv.names)) [18:01:31.280] else NULL, started = ...future.startTime, version = "1.8") [18:01:31.280] }, condition = base::local({ [18:01:31.280] c <- base::c [18:01:31.280] inherits <- base::inherits [18:01:31.280] invokeRestart <- base::invokeRestart [18:01:31.280] length <- base::length [18:01:31.280] list <- base::list [18:01:31.280] seq.int <- base::seq.int [18:01:31.280] signalCondition <- base::signalCondition [18:01:31.280] sys.calls <- base::sys.calls [18:01:31.280] `[[` <- base::`[[` [18:01:31.280] `+` <- base::`+` [18:01:31.280] `<<-` <- base::`<<-` [18:01:31.280] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:31.280] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:31.280] 3L)] [18:01:31.280] } [18:01:31.280] function(cond) { [18:01:31.280] is_error <- inherits(cond, "error") [18:01:31.280] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:31.280] NULL) [18:01:31.280] if (is_error) { [18:01:31.280] sessionInformation <- function() { [18:01:31.280] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:31.280] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:31.280] search = base::search(), system = base::Sys.info()) [18:01:31.280] } [18:01:31.280] ...future.conditions[[length(...future.conditions) + [18:01:31.280] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:31.280] cond$call), session = sessionInformation(), [18:01:31.280] timestamp = base::Sys.time(), signaled = 0L) [18:01:31.280] signalCondition(cond) [18:01:31.280] } [18:01:31.280] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:31.280] "immediateCondition"))) { [18:01:31.280] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:31.280] ...future.conditions[[length(...future.conditions) + [18:01:31.280] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:31.280] if (TRUE && !signal) { [18:01:31.280] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.280] { [18:01:31.280] inherits <- base::inherits [18:01:31.280] invokeRestart <- base::invokeRestart [18:01:31.280] is.null <- base::is.null [18:01:31.280] muffled <- FALSE [18:01:31.280] if (inherits(cond, "message")) { [18:01:31.280] muffled <- grepl(pattern, "muffleMessage") [18:01:31.280] if (muffled) [18:01:31.280] invokeRestart("muffleMessage") [18:01:31.280] } [18:01:31.280] else if (inherits(cond, "warning")) { [18:01:31.280] muffled <- grepl(pattern, "muffleWarning") [18:01:31.280] if (muffled) [18:01:31.280] invokeRestart("muffleWarning") [18:01:31.280] } [18:01:31.280] else if (inherits(cond, "condition")) { [18:01:31.280] if (!is.null(pattern)) { [18:01:31.280] computeRestarts <- base::computeRestarts [18:01:31.280] grepl <- base::grepl [18:01:31.280] restarts <- computeRestarts(cond) [18:01:31.280] for (restart in restarts) { [18:01:31.280] name <- restart$name [18:01:31.280] if (is.null(name)) [18:01:31.280] next [18:01:31.280] if (!grepl(pattern, name)) [18:01:31.280] next [18:01:31.280] invokeRestart(restart) [18:01:31.280] muffled <- TRUE [18:01:31.280] break [18:01:31.280] } [18:01:31.280] } [18:01:31.280] } [18:01:31.280] invisible(muffled) [18:01:31.280] } [18:01:31.280] muffleCondition(cond, pattern = "^muffle") [18:01:31.280] } [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] if (TRUE) { [18:01:31.280] muffleCondition <- function (cond, pattern = "^muffle") [18:01:31.280] { [18:01:31.280] inherits <- base::inherits [18:01:31.280] invokeRestart <- base::invokeRestart [18:01:31.280] is.null <- base::is.null [18:01:31.280] muffled <- FALSE [18:01:31.280] if (inherits(cond, "message")) { [18:01:31.280] muffled <- grepl(pattern, "muffleMessage") [18:01:31.280] if (muffled) [18:01:31.280] invokeRestart("muffleMessage") [18:01:31.280] } [18:01:31.280] else if (inherits(cond, "warning")) { [18:01:31.280] muffled <- grepl(pattern, "muffleWarning") [18:01:31.280] if (muffled) [18:01:31.280] invokeRestart("muffleWarning") [18:01:31.280] } [18:01:31.280] else if (inherits(cond, "condition")) { [18:01:31.280] if (!is.null(pattern)) { [18:01:31.280] computeRestarts <- base::computeRestarts [18:01:31.280] grepl <- base::grepl [18:01:31.280] restarts <- computeRestarts(cond) [18:01:31.280] for (restart in restarts) { [18:01:31.280] name <- restart$name [18:01:31.280] if (is.null(name)) [18:01:31.280] next [18:01:31.280] if (!grepl(pattern, name)) [18:01:31.280] next [18:01:31.280] invokeRestart(restart) [18:01:31.280] muffled <- TRUE [18:01:31.280] break [18:01:31.280] } [18:01:31.280] } [18:01:31.280] } [18:01:31.280] invisible(muffled) [18:01:31.280] } [18:01:31.280] muffleCondition(cond, pattern = "^muffle") [18:01:31.280] } [18:01:31.280] } [18:01:31.280] } [18:01:31.280] })) [18:01:31.280] }, error = function(ex) { [18:01:31.280] base::structure(base::list(value = NULL, visible = NULL, [18:01:31.280] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:31.280] ...future.rng), started = ...future.startTime, [18:01:31.280] finished = Sys.time(), session_uuid = NA_character_, [18:01:31.280] version = "1.8"), class = "FutureResult") [18:01:31.280] }, finally = { [18:01:31.280] if (!identical(...future.workdir, getwd())) [18:01:31.280] setwd(...future.workdir) [18:01:31.280] { [18:01:31.280] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:31.280] ...future.oldOptions$nwarnings <- NULL [18:01:31.280] } [18:01:31.280] base::options(...future.oldOptions) [18:01:31.280] if (.Platform$OS.type == "windows") { [18:01:31.280] old_names <- names(...future.oldEnvVars) [18:01:31.280] envs <- base::Sys.getenv() [18:01:31.280] names <- names(envs) [18:01:31.280] common <- intersect(names, old_names) [18:01:31.280] added <- setdiff(names, old_names) [18:01:31.280] removed <- setdiff(old_names, names) [18:01:31.280] changed <- common[...future.oldEnvVars[common] != [18:01:31.280] envs[common]] [18:01:31.280] NAMES <- toupper(changed) [18:01:31.280] args <- list() [18:01:31.280] for (kk in seq_along(NAMES)) { [18:01:31.280] name <- changed[[kk]] [18:01:31.280] NAME <- NAMES[[kk]] [18:01:31.280] if (name != NAME && is.element(NAME, old_names)) [18:01:31.280] next [18:01:31.280] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.280] } [18:01:31.280] NAMES <- toupper(added) [18:01:31.280] for (kk in seq_along(NAMES)) { [18:01:31.280] name <- added[[kk]] [18:01:31.280] NAME <- NAMES[[kk]] [18:01:31.280] if (name != NAME && is.element(NAME, old_names)) [18:01:31.280] next [18:01:31.280] args[[name]] <- "" [18:01:31.280] } [18:01:31.280] NAMES <- toupper(removed) [18:01:31.280] for (kk in seq_along(NAMES)) { [18:01:31.280] name <- removed[[kk]] [18:01:31.280] NAME <- NAMES[[kk]] [18:01:31.280] if (name != NAME && is.element(NAME, old_names)) [18:01:31.280] next [18:01:31.280] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:31.280] } [18:01:31.280] if (length(args) > 0) [18:01:31.280] base::do.call(base::Sys.setenv, args = args) [18:01:31.280] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:31.280] } [18:01:31.280] { [18:01:31.280] if (base::length(...future.futureOptionsAdded) > [18:01:31.280] 0L) { [18:01:31.280] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:31.280] base::names(opts) <- ...future.futureOptionsAdded [18:01:31.280] base::options(opts) [18:01:31.280] } [18:01:31.280] { [18:01:31.280] { [18:01:31.280] NULL [18:01:31.280] RNGkind("Mersenne-Twister") [18:01:31.280] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:31.280] inherits = FALSE) [18:01:31.280] } [18:01:31.280] options(future.plan = NULL) [18:01:31.280] if (is.na(NA_character_)) [18:01:31.280] Sys.unsetenv("R_FUTURE_PLAN") [18:01:31.280] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:31.280] future::plan(list(function (..., envir = parent.frame()) [18:01:31.280] { [18:01:31.280] future <- SequentialFuture(..., envir = envir) [18:01:31.280] if (!future$lazy) [18:01:31.280] future <- run(future) [18:01:31.280] invisible(future) [18:01:31.280] }), .cleanup = FALSE, .init = FALSE) [18:01:31.280] } [18:01:31.280] } [18:01:31.280] } [18:01:31.280] }) [18:01:31.280] if (TRUE) { [18:01:31.280] base::sink(type = "output", split = FALSE) [18:01:31.280] if (TRUE) { [18:01:31.280] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:31.280] } [18:01:31.280] else { [18:01:31.280] ...future.result["stdout"] <- base::list(NULL) [18:01:31.280] } [18:01:31.280] base::close(...future.stdout) [18:01:31.280] ...future.stdout <- NULL [18:01:31.280] } [18:01:31.280] ...future.result$conditions <- ...future.conditions [18:01:31.280] ...future.result$finished <- base::Sys.time() [18:01:31.280] ...future.result [18:01:31.280] } [18:01:31.284] assign_globals() ... [18:01:31.284] List of 1 [18:01:31.284] $ a: num 10 [18:01:31.284] - attr(*, "where")=List of 1 [18:01:31.284] ..$ a: [18:01:31.284] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:31.284] - attr(*, "resolved")= logi FALSE [18:01:31.284] - attr(*, "total_size")= num 56 [18:01:31.284] - attr(*, "already-done")= logi TRUE [18:01:31.287] - copied 'a' to environment [18:01:31.287] assign_globals() ... done [18:01:31.288] plan(): Setting new future strategy stack: [18:01:31.288] List of future strategies: [18:01:31.288] 1. sequential: [18:01:31.288] - args: function (..., envir = parent.frame()) [18:01:31.288] - tweaked: FALSE [18:01:31.288] - call: NULL [18:01:31.288] plan(): nbrOfWorkers() = 1 [18:01:31.289] plan(): Setting new future strategy stack: [18:01:31.289] List of future strategies: [18:01:31.289] 1. sequential: [18:01:31.289] - args: function (..., envir = parent.frame()) [18:01:31.289] - tweaked: FALSE [18:01:31.289] - call: plan(strategy) [18:01:31.290] plan(): nbrOfWorkers() = 1 [18:01:31.290] SequentialFuture started (and completed) [18:01:31.290] - Launch lazy future ... done [18:01:31.291] run() for 'SequentialFuture' ... done b = 11 *** %<-% with 'sequential' futures ... DONE Testing with 1 cores ... DONE Testing with 2 cores ... *** %<-% with 'multisession' futures ... [18:01:31.297] plan(): Setting new future strategy stack: [18:01:31.297] List of future strategies: [18:01:31.297] 1. multisession: [18:01:31.297] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [18:01:31.297] - tweaked: FALSE [18:01:31.297] - call: plan(strategy) [18:01:31.297] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... [18:01:31.297] multisession: [18:01:31.297] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [18:01:31.297] - tweaked: FALSE [18:01:31.297] - call: plan(strategy) [18:01:31.303] getGlobalsAndPackages() ... [18:01:31.303] Not searching for globals [18:01:31.304] - globals: [0] [18:01:31.304] getGlobalsAndPackages() ... DONE [18:01:31.304] [local output] makeClusterPSOCK() ... [18:01:31.336] [local output] Workers: [n = 2] 'localhost', 'localhost' [18:01:31.342] [local output] Base port: 26541 [18:01:31.342] [local output] Getting setup options for 2 cluster nodes ... [18:01:31.343] [local output] - Node 1 of 2 ... [18:01:31.343] [local output] localMachine=TRUE => revtunnel=FALSE [18:01:31.344] Testing if worker's PID can be inferred: '"D:/RCompile/recent/R/bin/x64/Rscript" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpiEb9kz/worker.rank=1.parallelly.parent=47912.bb283f8b2f53.pid\")), silent = TRUE)" -e "file.exists(\"D:/temp/RtmpiEb9kz/worker.rank=1.parallelly.parent=47912.bb283f8b2f53.pid\")"' [18:01:31.781] - Possible to infer worker's PID: TRUE [18:01:31.781] [local output] Rscript port: 26541 [18:01:31.782] [local output] - Node 2 of 2 ... [18:01:31.783] [local output] localMachine=TRUE => revtunnel=FALSE [18:01:31.784] [local output] Rscript port: 26541 [18:01:31.784] [local output] Getting setup options for 2 cluster nodes ... done [18:01:31.785] [local output] - Parallel setup requested for some PSOCK nodes [18:01:31.785] [local output] Setting up PSOCK nodes in parallel [18:01:31.786] List of 36 [18:01:31.786] $ worker : chr "localhost" [18:01:31.786] ..- attr(*, "localhost")= logi TRUE [18:01:31.786] $ master : chr "localhost" [18:01:31.786] $ port : int 26541 [18:01:31.786] $ connectTimeout : num 120 [18:01:31.786] $ timeout : num 120 [18:01:31.786] $ rscript : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\"" [18:01:31.786] $ homogeneous : logi TRUE [18:01:31.786] $ rscript_args : chr "--default-packages=datasets,utils,grDevices,graphics,stats,methods -e \"#label=futureAssign_OP.R:47912:CRANWIN3"| __truncated__ [18:01:31.786] $ rscript_envs : NULL [18:01:31.786] $ rscript_libs : chr [1:2] "D:/temp/Rtmp67Lu9b/RLIBS_19fe819742e2c" "D:/RCompile/recent/R/library" [18:01:31.786] $ rscript_startup : NULL [18:01:31.786] $ rscript_sh : chr "cmd" [18:01:31.786] $ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [18:01:31.786] $ methods : logi TRUE [18:01:31.786] $ socketOptions : chr "no-delay" [18:01:31.786] $ useXDR : logi FALSE [18:01:31.786] $ outfile : chr "/dev/null" [18:01:31.786] $ renice : int NA [18:01:31.786] $ rshcmd : NULL [18:01:31.786] $ user : chr(0) [18:01:31.786] $ revtunnel : logi FALSE [18:01:31.786] $ rshlogfile : NULL [18:01:31.786] $ rshopts : chr(0) [18:01:31.786] $ rank : int 1 [18:01:31.786] $ manual : logi FALSE [18:01:31.786] $ dryrun : logi FALSE [18:01:31.786] $ quiet : logi FALSE [18:01:31.786] $ setup_strategy : chr "parallel" [18:01:31.786] $ local_cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [18:01:31.786] $ pidfile : chr "D:/temp/RtmpiEb9kz/worker.rank=1.parallelly.parent=47912.bb283f8b2f53.pid" [18:01:31.786] $ rshcmd_label : NULL [18:01:31.786] $ rsh_call : NULL [18:01:31.786] $ cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [18:01:31.786] $ localMachine : logi TRUE [18:01:31.786] $ make_fcn :function (worker = getOption2("parallelly.localhost.hostname", "localhost"), [18:01:31.786] master = NULL, port, connectTimeout = getOption2("parallelly.makeNodePSOCK.connectTimeout", [18:01:31.786] 2 * 60), timeout = getOption2("parallelly.makeNodePSOCK.timeout", [18:01:31.786] 30 * 24 * 60 * 60), rscript = NULL, homogeneous = NULL, rscript_args = NULL, [18:01:31.786] rscript_envs = NULL, rscript_libs = NULL, rscript_startup = NULL, rscript_sh = c("auto", [18:01:31.786] "cmd", "sh"), default_packages = c("datasets", "utils", "grDevices", [18:01:31.786] "graphics", "stats", if (methods) "methods"), methods = TRUE, socketOptions = getOption2("parallelly.makeNodePSOCK.socketOptions", [18:01:31.786] "no-delay"), useXDR = getOption2("parallelly.makeNodePSOCK.useXDR", [18:01:31.786] FALSE), outfile = "/dev/null", renice = NA_integer_, rshcmd = getOption2("parallelly.makeNodePSOCK.rshcmd", [18:01:31.786] NULL), user = NULL, revtunnel = NA, rshlogfile = NULL, rshopts = getOption2("parallelly.makeNodePSOCK.rshopts", [18:01:31.786] NULL), rank = 1L, manual = FALSE, dryrun = FALSE, quiet = FALSE, [18:01:31.786] setup_strategy = getOption2("parallelly.makeNodePSOCK.setup_strategy", [18:01:31.786] "parallel"), action = c("launch", "options"), verbose = FALSE) [18:01:31.786] $ arguments :List of 28 [18:01:31.786] ..$ worker : chr "localhost" [18:01:31.786] ..$ master : NULL [18:01:31.786] ..$ port : int 26541 [18:01:31.786] ..$ connectTimeout : num 120 [18:01:31.786] ..$ timeout : num 120 [18:01:31.786] ..$ rscript : NULL [18:01:31.786] ..$ homogeneous : NULL [18:01:31.786] ..$ rscript_args : NULL [18:01:31.786] ..$ rscript_envs : NULL [18:01:31.786] ..$ rscript_libs : chr [1:2] "D:/temp/Rtmp67Lu9b/RLIBS_19fe819742e2c" "D:/RCompile/recent/R/library" [18:01:31.786] ..$ rscript_startup : NULL [18:01:31.786] ..$ rscript_sh : chr [1:3] "auto" "cmd" "sh" [18:01:31.786] ..$ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [18:01:31.786] ..$ methods : logi TRUE [18:01:31.786] ..$ socketOptions : chr "no-delay" [18:01:31.786] ..$ useXDR : logi FALSE [18:01:31.786] ..$ outfile : chr "/dev/null" [18:01:31.786] ..$ renice : int NA [18:01:31.786] ..$ rshcmd : NULL [18:01:31.786] ..$ user : NULL [18:01:31.786] ..$ revtunnel : logi NA [18:01:31.786] ..$ rshlogfile : NULL [18:01:31.786] ..$ rshopts : NULL [18:01:31.786] ..$ rank : int 1 [18:01:31.786] ..$ manual : logi FALSE [18:01:31.786] ..$ dryrun : logi FALSE [18:01:31.786] ..$ quiet : logi FALSE [18:01:31.786] ..$ setup_strategy : chr "parallel" [18:01:31.786] - attr(*, "class")= chr [1:2] "makeNodePSOCKOptions" "makeNodeOptions" [18:01:31.808] [local output] System call to launch all workers: [18:01:31.808] [local output] "D:/RCompile/recent/R/bin/x64/Rscript" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "#label=futureAssign_OP.R:47912:CRANWIN3:CRAN" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpiEb9kz/worker.rank=1.parallelly.parent=47912.bb283f8b2f53.pid\")), silent = TRUE)" -e "options(socketOptions = \"no-delay\")" -e ".libPaths(c(\"D:/temp/Rtmp67Lu9b/RLIBS_19fe819742e2c\",\"D:/RCompile/recent/R/library\"))" -e "workRSOCK <- tryCatch(parallel:::.workRSOCK, error=function(e) parallel:::.slaveRSOCK); workRSOCK()" MASTER=localhost PORT=26541 OUT=/dev/null TIMEOUT=120 XDR=FALSE SETUPTIMEOUT=120 SETUPSTRATEGY=parallel [18:01:31.808] [local output] Starting PSOCK main server [18:01:31.819] [local output] Workers launched [18:01:31.819] [local output] Waiting for workers to connect back [18:01:31.819] - [local output] 0 workers out of 2 ready [18:01:31.990] - [local output] 0 workers out of 2 ready [18:01:31.991] - [local output] 1 workers out of 2 ready [18:01:31.991] - [local output] 2 workers out of 2 ready [18:01:31.991] [local output] Launching of workers completed [18:01:31.992] [local output] Collecting session information from workers [18:01:31.993] [local output] - Worker #1 of 2 [18:01:31.993] [local output] - Worker #2 of 2 [18:01:31.994] [local output] makeClusterPSOCK() ... done [18:01:32.006] Packages needed by the future expression (n = 0): [18:01:32.006] Packages needed by future strategies (n = 0): [18:01:32.007] { [18:01:32.007] { [18:01:32.007] { [18:01:32.007] ...future.startTime <- base::Sys.time() [18:01:32.007] { [18:01:32.007] { [18:01:32.007] { [18:01:32.007] { [18:01:32.007] base::local({ [18:01:32.007] has_future <- base::requireNamespace("future", [18:01:32.007] quietly = TRUE) [18:01:32.007] if (has_future) { [18:01:32.007] ns <- base::getNamespace("future") [18:01:32.007] version <- ns[[".package"]][["version"]] [18:01:32.007] if (is.null(version)) [18:01:32.007] version <- utils::packageVersion("future") [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] version <- NULL [18:01:32.007] } [18:01:32.007] if (!has_future || version < "1.8.0") { [18:01:32.007] info <- base::c(r_version = base::gsub("R version ", [18:01:32.007] "", base::R.version$version.string), [18:01:32.007] platform = base::sprintf("%s (%s-bit)", [18:01:32.007] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.007] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.007] "release", "version")], collapse = " "), [18:01:32.007] hostname = base::Sys.info()[["nodename"]]) [18:01:32.007] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.007] info) [18:01:32.007] info <- base::paste(info, collapse = "; ") [18:01:32.007] if (!has_future) { [18:01:32.007] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.007] info) [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.007] info, version) [18:01:32.007] } [18:01:32.007] base::stop(msg) [18:01:32.007] } [18:01:32.007] }) [18:01:32.007] } [18:01:32.007] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.007] base::options(mc.cores = 1L) [18:01:32.007] } [18:01:32.007] options(future.plan = NULL) [18:01:32.007] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.007] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.007] } [18:01:32.007] ...future.workdir <- getwd() [18:01:32.007] } [18:01:32.007] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.007] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.007] } [18:01:32.007] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.007] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.007] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.007] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.007] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.007] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.007] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.007] base::names(...future.oldOptions)) [18:01:32.007] } [18:01:32.007] if (FALSE) { [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] if (TRUE) { [18:01:32.007] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.007] open = "w") [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.007] windows = "NUL", "/dev/null"), open = "w") [18:01:32.007] } [18:01:32.007] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.007] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.007] base::sink(type = "output", split = FALSE) [18:01:32.007] base::close(...future.stdout) [18:01:32.007] }, add = TRUE) [18:01:32.007] } [18:01:32.007] ...future.frame <- base::sys.nframe() [18:01:32.007] ...future.conditions <- base::list() [18:01:32.007] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.007] if (FALSE) { [18:01:32.007] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.007] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.007] } [18:01:32.007] ...future.result <- base::tryCatch({ [18:01:32.007] base::withCallingHandlers({ [18:01:32.007] ...future.value <- base::withVisible(base::local({ [18:01:32.007] ...future.makeSendCondition <- local({ [18:01:32.007] sendCondition <- NULL [18:01:32.007] function(frame = 1L) { [18:01:32.007] if (is.function(sendCondition)) [18:01:32.007] return(sendCondition) [18:01:32.007] ns <- getNamespace("parallel") [18:01:32.007] if (exists("sendData", mode = "function", [18:01:32.007] envir = ns)) { [18:01:32.007] parallel_sendData <- get("sendData", mode = "function", [18:01:32.007] envir = ns) [18:01:32.007] envir <- sys.frame(frame) [18:01:32.007] master <- NULL [18:01:32.007] while (!identical(envir, .GlobalEnv) && [18:01:32.007] !identical(envir, emptyenv())) { [18:01:32.007] if (exists("master", mode = "list", envir = envir, [18:01:32.007] inherits = FALSE)) { [18:01:32.007] master <- get("master", mode = "list", [18:01:32.007] envir = envir, inherits = FALSE) [18:01:32.007] if (inherits(master, c("SOCKnode", [18:01:32.007] "SOCK0node"))) { [18:01:32.007] sendCondition <<- function(cond) { [18:01:32.007] data <- list(type = "VALUE", value = cond, [18:01:32.007] success = TRUE) [18:01:32.007] parallel_sendData(master, data) [18:01:32.007] } [18:01:32.007] return(sendCondition) [18:01:32.007] } [18:01:32.007] } [18:01:32.007] frame <- frame + 1L [18:01:32.007] envir <- sys.frame(frame) [18:01:32.007] } [18:01:32.007] } [18:01:32.007] sendCondition <<- function(cond) NULL [18:01:32.007] } [18:01:32.007] }) [18:01:32.007] withCallingHandlers({ [18:01:32.007] NA [18:01:32.007] }, immediateCondition = function(cond) { [18:01:32.007] sendCondition <- ...future.makeSendCondition() [18:01:32.007] sendCondition(cond) [18:01:32.007] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.007] { [18:01:32.007] inherits <- base::inherits [18:01:32.007] invokeRestart <- base::invokeRestart [18:01:32.007] is.null <- base::is.null [18:01:32.007] muffled <- FALSE [18:01:32.007] if (inherits(cond, "message")) { [18:01:32.007] muffled <- grepl(pattern, "muffleMessage") [18:01:32.007] if (muffled) [18:01:32.007] invokeRestart("muffleMessage") [18:01:32.007] } [18:01:32.007] else if (inherits(cond, "warning")) { [18:01:32.007] muffled <- grepl(pattern, "muffleWarning") [18:01:32.007] if (muffled) [18:01:32.007] invokeRestart("muffleWarning") [18:01:32.007] } [18:01:32.007] else if (inherits(cond, "condition")) { [18:01:32.007] if (!is.null(pattern)) { [18:01:32.007] computeRestarts <- base::computeRestarts [18:01:32.007] grepl <- base::grepl [18:01:32.007] restarts <- computeRestarts(cond) [18:01:32.007] for (restart in restarts) { [18:01:32.007] name <- restart$name [18:01:32.007] if (is.null(name)) [18:01:32.007] next [18:01:32.007] if (!grepl(pattern, name)) [18:01:32.007] next [18:01:32.007] invokeRestart(restart) [18:01:32.007] muffled <- TRUE [18:01:32.007] break [18:01:32.007] } [18:01:32.007] } [18:01:32.007] } [18:01:32.007] invisible(muffled) [18:01:32.007] } [18:01:32.007] muffleCondition(cond) [18:01:32.007] }) [18:01:32.007] })) [18:01:32.007] future::FutureResult(value = ...future.value$value, [18:01:32.007] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.007] ...future.rng), globalenv = if (FALSE) [18:01:32.007] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.007] ...future.globalenv.names)) [18:01:32.007] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.007] }, condition = base::local({ [18:01:32.007] c <- base::c [18:01:32.007] inherits <- base::inherits [18:01:32.007] invokeRestart <- base::invokeRestart [18:01:32.007] length <- base::length [18:01:32.007] list <- base::list [18:01:32.007] seq.int <- base::seq.int [18:01:32.007] signalCondition <- base::signalCondition [18:01:32.007] sys.calls <- base::sys.calls [18:01:32.007] `[[` <- base::`[[` [18:01:32.007] `+` <- base::`+` [18:01:32.007] `<<-` <- base::`<<-` [18:01:32.007] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.007] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.007] 3L)] [18:01:32.007] } [18:01:32.007] function(cond) { [18:01:32.007] is_error <- inherits(cond, "error") [18:01:32.007] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.007] NULL) [18:01:32.007] if (is_error) { [18:01:32.007] sessionInformation <- function() { [18:01:32.007] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.007] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.007] search = base::search(), system = base::Sys.info()) [18:01:32.007] } [18:01:32.007] ...future.conditions[[length(...future.conditions) + [18:01:32.007] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.007] cond$call), session = sessionInformation(), [18:01:32.007] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.007] signalCondition(cond) [18:01:32.007] } [18:01:32.007] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.007] "immediateCondition"))) { [18:01:32.007] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.007] ...future.conditions[[length(...future.conditions) + [18:01:32.007] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.007] if (TRUE && !signal) { [18:01:32.007] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.007] { [18:01:32.007] inherits <- base::inherits [18:01:32.007] invokeRestart <- base::invokeRestart [18:01:32.007] is.null <- base::is.null [18:01:32.007] muffled <- FALSE [18:01:32.007] if (inherits(cond, "message")) { [18:01:32.007] muffled <- grepl(pattern, "muffleMessage") [18:01:32.007] if (muffled) [18:01:32.007] invokeRestart("muffleMessage") [18:01:32.007] } [18:01:32.007] else if (inherits(cond, "warning")) { [18:01:32.007] muffled <- grepl(pattern, "muffleWarning") [18:01:32.007] if (muffled) [18:01:32.007] invokeRestart("muffleWarning") [18:01:32.007] } [18:01:32.007] else if (inherits(cond, "condition")) { [18:01:32.007] if (!is.null(pattern)) { [18:01:32.007] computeRestarts <- base::computeRestarts [18:01:32.007] grepl <- base::grepl [18:01:32.007] restarts <- computeRestarts(cond) [18:01:32.007] for (restart in restarts) { [18:01:32.007] name <- restart$name [18:01:32.007] if (is.null(name)) [18:01:32.007] next [18:01:32.007] if (!grepl(pattern, name)) [18:01:32.007] next [18:01:32.007] invokeRestart(restart) [18:01:32.007] muffled <- TRUE [18:01:32.007] break [18:01:32.007] } [18:01:32.007] } [18:01:32.007] } [18:01:32.007] invisible(muffled) [18:01:32.007] } [18:01:32.007] muffleCondition(cond, pattern = "^muffle") [18:01:32.007] } [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] if (TRUE) { [18:01:32.007] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.007] { [18:01:32.007] inherits <- base::inherits [18:01:32.007] invokeRestart <- base::invokeRestart [18:01:32.007] is.null <- base::is.null [18:01:32.007] muffled <- FALSE [18:01:32.007] if (inherits(cond, "message")) { [18:01:32.007] muffled <- grepl(pattern, "muffleMessage") [18:01:32.007] if (muffled) [18:01:32.007] invokeRestart("muffleMessage") [18:01:32.007] } [18:01:32.007] else if (inherits(cond, "warning")) { [18:01:32.007] muffled <- grepl(pattern, "muffleWarning") [18:01:32.007] if (muffled) [18:01:32.007] invokeRestart("muffleWarning") [18:01:32.007] } [18:01:32.007] else if (inherits(cond, "condition")) { [18:01:32.007] if (!is.null(pattern)) { [18:01:32.007] computeRestarts <- base::computeRestarts [18:01:32.007] grepl <- base::grepl [18:01:32.007] restarts <- computeRestarts(cond) [18:01:32.007] for (restart in restarts) { [18:01:32.007] name <- restart$name [18:01:32.007] if (is.null(name)) [18:01:32.007] next [18:01:32.007] if (!grepl(pattern, name)) [18:01:32.007] next [18:01:32.007] invokeRestart(restart) [18:01:32.007] muffled <- TRUE [18:01:32.007] break [18:01:32.007] } [18:01:32.007] } [18:01:32.007] } [18:01:32.007] invisible(muffled) [18:01:32.007] } [18:01:32.007] muffleCondition(cond, pattern = "^muffle") [18:01:32.007] } [18:01:32.007] } [18:01:32.007] } [18:01:32.007] })) [18:01:32.007] }, error = function(ex) { [18:01:32.007] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.007] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.007] ...future.rng), started = ...future.startTime, [18:01:32.007] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.007] version = "1.8"), class = "FutureResult") [18:01:32.007] }, finally = { [18:01:32.007] if (!identical(...future.workdir, getwd())) [18:01:32.007] setwd(...future.workdir) [18:01:32.007] { [18:01:32.007] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.007] ...future.oldOptions$nwarnings <- NULL [18:01:32.007] } [18:01:32.007] base::options(...future.oldOptions) [18:01:32.007] if (.Platform$OS.type == "windows") { [18:01:32.007] old_names <- names(...future.oldEnvVars) [18:01:32.007] envs <- base::Sys.getenv() [18:01:32.007] names <- names(envs) [18:01:32.007] common <- intersect(names, old_names) [18:01:32.007] added <- setdiff(names, old_names) [18:01:32.007] removed <- setdiff(old_names, names) [18:01:32.007] changed <- common[...future.oldEnvVars[common] != [18:01:32.007] envs[common]] [18:01:32.007] NAMES <- toupper(changed) [18:01:32.007] args <- list() [18:01:32.007] for (kk in seq_along(NAMES)) { [18:01:32.007] name <- changed[[kk]] [18:01:32.007] NAME <- NAMES[[kk]] [18:01:32.007] if (name != NAME && is.element(NAME, old_names)) [18:01:32.007] next [18:01:32.007] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.007] } [18:01:32.007] NAMES <- toupper(added) [18:01:32.007] for (kk in seq_along(NAMES)) { [18:01:32.007] name <- added[[kk]] [18:01:32.007] NAME <- NAMES[[kk]] [18:01:32.007] if (name != NAME && is.element(NAME, old_names)) [18:01:32.007] next [18:01:32.007] args[[name]] <- "" [18:01:32.007] } [18:01:32.007] NAMES <- toupper(removed) [18:01:32.007] for (kk in seq_along(NAMES)) { [18:01:32.007] name <- removed[[kk]] [18:01:32.007] NAME <- NAMES[[kk]] [18:01:32.007] if (name != NAME && is.element(NAME, old_names)) [18:01:32.007] next [18:01:32.007] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.007] } [18:01:32.007] if (length(args) > 0) [18:01:32.007] base::do.call(base::Sys.setenv, args = args) [18:01:32.007] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.007] } [18:01:32.007] { [18:01:32.007] if (base::length(...future.futureOptionsAdded) > [18:01:32.007] 0L) { [18:01:32.007] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.007] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.007] base::options(opts) [18:01:32.007] } [18:01:32.007] { [18:01:32.007] { [18:01:32.007] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.007] NULL [18:01:32.007] } [18:01:32.007] options(future.plan = NULL) [18:01:32.007] if (is.na(NA_character_)) [18:01:32.007] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.007] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.007] future::plan(list(function (..., workers = availableCores(), [18:01:32.007] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.007] envir = parent.frame()) [18:01:32.007] { [18:01:32.007] if (is.function(workers)) [18:01:32.007] workers <- workers() [18:01:32.007] workers <- structure(as.integer(workers), [18:01:32.007] class = class(workers)) [18:01:32.007] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.007] workers >= 1) [18:01:32.007] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.007] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.007] } [18:01:32.007] future <- MultisessionFuture(..., workers = workers, [18:01:32.007] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.007] envir = envir) [18:01:32.007] if (!future$lazy) [18:01:32.007] future <- run(future) [18:01:32.007] invisible(future) [18:01:32.007] }), .cleanup = FALSE, .init = FALSE) [18:01:32.007] } [18:01:32.007] } [18:01:32.007] } [18:01:32.007] }) [18:01:32.007] if (TRUE) { [18:01:32.007] base::sink(type = "output", split = FALSE) [18:01:32.007] if (TRUE) { [18:01:32.007] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.007] } [18:01:32.007] else { [18:01:32.007] ...future.result["stdout"] <- base::list(NULL) [18:01:32.007] } [18:01:32.007] base::close(...future.stdout) [18:01:32.007] ...future.stdout <- NULL [18:01:32.007] } [18:01:32.007] ...future.result$conditions <- ...future.conditions [18:01:32.007] ...future.result$finished <- base::Sys.time() [18:01:32.007] ...future.result [18:01:32.007] } [18:01:32.091] MultisessionFuture started [18:01:32.092] result() for ClusterFuture ... [18:01:32.092] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.093] - Validating connection of MultisessionFuture [18:01:32.149] - received message: FutureResult [18:01:32.150] - Received FutureResult [18:01:32.153] - Erased future from FutureRegistry [18:01:32.153] result() for ClusterFuture ... [18:01:32.153] - result already collected: FutureResult [18:01:32.154] result() for ClusterFuture ... done [18:01:32.154] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.154] result() for ClusterFuture ... done [18:01:32.154] result() for ClusterFuture ... [18:01:32.154] - result already collected: FutureResult [18:01:32.154] result() for ClusterFuture ... done [18:01:32.155] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... DONE [18:01:32.157] plan(): nbrOfWorkers() = 2 ** Future evaluation without globals [18:01:32.158] getGlobalsAndPackages() ... [18:01:32.158] Searching for globals... [18:01:32.159] - globals found: [2] '{', '<-' [18:01:32.160] Searching for globals ... DONE [18:01:32.160] Resolving globals: FALSE [18:01:32.160] [18:01:32.160] [18:01:32.161] getGlobalsAndPackages() ... DONE [18:01:32.161] run() for 'Future' ... [18:01:32.161] - state: 'created' [18:01:32.161] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.176] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.176] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.176] - Field: 'node' [18:01:32.176] - Field: 'label' [18:01:32.177] - Field: 'local' [18:01:32.177] - Field: 'owner' [18:01:32.177] - Field: 'envir' [18:01:32.177] - Field: 'workers' [18:01:32.177] - Field: 'packages' [18:01:32.178] - Field: 'gc' [18:01:32.178] - Field: 'conditions' [18:01:32.178] - Field: 'persistent' [18:01:32.178] - Field: 'expr' [18:01:32.178] - Field: 'uuid' [18:01:32.178] - Field: 'seed' [18:01:32.179] - Field: 'version' [18:01:32.179] - Field: 'result' [18:01:32.179] - Field: 'asynchronous' [18:01:32.179] - Field: 'calls' [18:01:32.179] - Field: 'globals' [18:01:32.180] - Field: 'stdout' [18:01:32.180] - Field: 'earlySignal' [18:01:32.180] - Field: 'lazy' [18:01:32.180] - Field: 'state' [18:01:32.180] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.181] - Launch lazy future ... [18:01:32.181] Packages needed by the future expression (n = 0): [18:01:32.181] Packages needed by future strategies (n = 0): [18:01:32.182] { [18:01:32.182] { [18:01:32.182] { [18:01:32.182] ...future.startTime <- base::Sys.time() [18:01:32.182] { [18:01:32.182] { [18:01:32.182] { [18:01:32.182] { [18:01:32.182] base::local({ [18:01:32.182] has_future <- base::requireNamespace("future", [18:01:32.182] quietly = TRUE) [18:01:32.182] if (has_future) { [18:01:32.182] ns <- base::getNamespace("future") [18:01:32.182] version <- ns[[".package"]][["version"]] [18:01:32.182] if (is.null(version)) [18:01:32.182] version <- utils::packageVersion("future") [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] version <- NULL [18:01:32.182] } [18:01:32.182] if (!has_future || version < "1.8.0") { [18:01:32.182] info <- base::c(r_version = base::gsub("R version ", [18:01:32.182] "", base::R.version$version.string), [18:01:32.182] platform = base::sprintf("%s (%s-bit)", [18:01:32.182] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.182] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.182] "release", "version")], collapse = " "), [18:01:32.182] hostname = base::Sys.info()[["nodename"]]) [18:01:32.182] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.182] info) [18:01:32.182] info <- base::paste(info, collapse = "; ") [18:01:32.182] if (!has_future) { [18:01:32.182] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.182] info) [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.182] info, version) [18:01:32.182] } [18:01:32.182] base::stop(msg) [18:01:32.182] } [18:01:32.182] }) [18:01:32.182] } [18:01:32.182] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.182] base::options(mc.cores = 1L) [18:01:32.182] } [18:01:32.182] options(future.plan = NULL) [18:01:32.182] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.182] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.182] } [18:01:32.182] ...future.workdir <- getwd() [18:01:32.182] } [18:01:32.182] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.182] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.182] } [18:01:32.182] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.182] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.182] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.182] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.182] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.182] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.182] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.182] base::names(...future.oldOptions)) [18:01:32.182] } [18:01:32.182] if (FALSE) { [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] if (TRUE) { [18:01:32.182] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.182] open = "w") [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.182] windows = "NUL", "/dev/null"), open = "w") [18:01:32.182] } [18:01:32.182] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.182] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.182] base::sink(type = "output", split = FALSE) [18:01:32.182] base::close(...future.stdout) [18:01:32.182] }, add = TRUE) [18:01:32.182] } [18:01:32.182] ...future.frame <- base::sys.nframe() [18:01:32.182] ...future.conditions <- base::list() [18:01:32.182] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.182] if (FALSE) { [18:01:32.182] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.182] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.182] } [18:01:32.182] ...future.result <- base::tryCatch({ [18:01:32.182] base::withCallingHandlers({ [18:01:32.182] ...future.value <- base::withVisible(base::local({ [18:01:32.182] ...future.makeSendCondition <- local({ [18:01:32.182] sendCondition <- NULL [18:01:32.182] function(frame = 1L) { [18:01:32.182] if (is.function(sendCondition)) [18:01:32.182] return(sendCondition) [18:01:32.182] ns <- getNamespace("parallel") [18:01:32.182] if (exists("sendData", mode = "function", [18:01:32.182] envir = ns)) { [18:01:32.182] parallel_sendData <- get("sendData", mode = "function", [18:01:32.182] envir = ns) [18:01:32.182] envir <- sys.frame(frame) [18:01:32.182] master <- NULL [18:01:32.182] while (!identical(envir, .GlobalEnv) && [18:01:32.182] !identical(envir, emptyenv())) { [18:01:32.182] if (exists("master", mode = "list", envir = envir, [18:01:32.182] inherits = FALSE)) { [18:01:32.182] master <- get("master", mode = "list", [18:01:32.182] envir = envir, inherits = FALSE) [18:01:32.182] if (inherits(master, c("SOCKnode", [18:01:32.182] "SOCK0node"))) { [18:01:32.182] sendCondition <<- function(cond) { [18:01:32.182] data <- list(type = "VALUE", value = cond, [18:01:32.182] success = TRUE) [18:01:32.182] parallel_sendData(master, data) [18:01:32.182] } [18:01:32.182] return(sendCondition) [18:01:32.182] } [18:01:32.182] } [18:01:32.182] frame <- frame + 1L [18:01:32.182] envir <- sys.frame(frame) [18:01:32.182] } [18:01:32.182] } [18:01:32.182] sendCondition <<- function(cond) NULL [18:01:32.182] } [18:01:32.182] }) [18:01:32.182] withCallingHandlers({ [18:01:32.182] { [18:01:32.182] x <- 1 [18:01:32.182] } [18:01:32.182] }, immediateCondition = function(cond) { [18:01:32.182] sendCondition <- ...future.makeSendCondition() [18:01:32.182] sendCondition(cond) [18:01:32.182] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.182] { [18:01:32.182] inherits <- base::inherits [18:01:32.182] invokeRestart <- base::invokeRestart [18:01:32.182] is.null <- base::is.null [18:01:32.182] muffled <- FALSE [18:01:32.182] if (inherits(cond, "message")) { [18:01:32.182] muffled <- grepl(pattern, "muffleMessage") [18:01:32.182] if (muffled) [18:01:32.182] invokeRestart("muffleMessage") [18:01:32.182] } [18:01:32.182] else if (inherits(cond, "warning")) { [18:01:32.182] muffled <- grepl(pattern, "muffleWarning") [18:01:32.182] if (muffled) [18:01:32.182] invokeRestart("muffleWarning") [18:01:32.182] } [18:01:32.182] else if (inherits(cond, "condition")) { [18:01:32.182] if (!is.null(pattern)) { [18:01:32.182] computeRestarts <- base::computeRestarts [18:01:32.182] grepl <- base::grepl [18:01:32.182] restarts <- computeRestarts(cond) [18:01:32.182] for (restart in restarts) { [18:01:32.182] name <- restart$name [18:01:32.182] if (is.null(name)) [18:01:32.182] next [18:01:32.182] if (!grepl(pattern, name)) [18:01:32.182] next [18:01:32.182] invokeRestart(restart) [18:01:32.182] muffled <- TRUE [18:01:32.182] break [18:01:32.182] } [18:01:32.182] } [18:01:32.182] } [18:01:32.182] invisible(muffled) [18:01:32.182] } [18:01:32.182] muffleCondition(cond) [18:01:32.182] }) [18:01:32.182] })) [18:01:32.182] future::FutureResult(value = ...future.value$value, [18:01:32.182] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.182] ...future.rng), globalenv = if (FALSE) [18:01:32.182] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.182] ...future.globalenv.names)) [18:01:32.182] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.182] }, condition = base::local({ [18:01:32.182] c <- base::c [18:01:32.182] inherits <- base::inherits [18:01:32.182] invokeRestart <- base::invokeRestart [18:01:32.182] length <- base::length [18:01:32.182] list <- base::list [18:01:32.182] seq.int <- base::seq.int [18:01:32.182] signalCondition <- base::signalCondition [18:01:32.182] sys.calls <- base::sys.calls [18:01:32.182] `[[` <- base::`[[` [18:01:32.182] `+` <- base::`+` [18:01:32.182] `<<-` <- base::`<<-` [18:01:32.182] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.182] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.182] 3L)] [18:01:32.182] } [18:01:32.182] function(cond) { [18:01:32.182] is_error <- inherits(cond, "error") [18:01:32.182] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.182] NULL) [18:01:32.182] if (is_error) { [18:01:32.182] sessionInformation <- function() { [18:01:32.182] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.182] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.182] search = base::search(), system = base::Sys.info()) [18:01:32.182] } [18:01:32.182] ...future.conditions[[length(...future.conditions) + [18:01:32.182] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.182] cond$call), session = sessionInformation(), [18:01:32.182] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.182] signalCondition(cond) [18:01:32.182] } [18:01:32.182] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.182] "immediateCondition"))) { [18:01:32.182] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.182] ...future.conditions[[length(...future.conditions) + [18:01:32.182] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.182] if (TRUE && !signal) { [18:01:32.182] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.182] { [18:01:32.182] inherits <- base::inherits [18:01:32.182] invokeRestart <- base::invokeRestart [18:01:32.182] is.null <- base::is.null [18:01:32.182] muffled <- FALSE [18:01:32.182] if (inherits(cond, "message")) { [18:01:32.182] muffled <- grepl(pattern, "muffleMessage") [18:01:32.182] if (muffled) [18:01:32.182] invokeRestart("muffleMessage") [18:01:32.182] } [18:01:32.182] else if (inherits(cond, "warning")) { [18:01:32.182] muffled <- grepl(pattern, "muffleWarning") [18:01:32.182] if (muffled) [18:01:32.182] invokeRestart("muffleWarning") [18:01:32.182] } [18:01:32.182] else if (inherits(cond, "condition")) { [18:01:32.182] if (!is.null(pattern)) { [18:01:32.182] computeRestarts <- base::computeRestarts [18:01:32.182] grepl <- base::grepl [18:01:32.182] restarts <- computeRestarts(cond) [18:01:32.182] for (restart in restarts) { [18:01:32.182] name <- restart$name [18:01:32.182] if (is.null(name)) [18:01:32.182] next [18:01:32.182] if (!grepl(pattern, name)) [18:01:32.182] next [18:01:32.182] invokeRestart(restart) [18:01:32.182] muffled <- TRUE [18:01:32.182] break [18:01:32.182] } [18:01:32.182] } [18:01:32.182] } [18:01:32.182] invisible(muffled) [18:01:32.182] } [18:01:32.182] muffleCondition(cond, pattern = "^muffle") [18:01:32.182] } [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] if (TRUE) { [18:01:32.182] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.182] { [18:01:32.182] inherits <- base::inherits [18:01:32.182] invokeRestart <- base::invokeRestart [18:01:32.182] is.null <- base::is.null [18:01:32.182] muffled <- FALSE [18:01:32.182] if (inherits(cond, "message")) { [18:01:32.182] muffled <- grepl(pattern, "muffleMessage") [18:01:32.182] if (muffled) [18:01:32.182] invokeRestart("muffleMessage") [18:01:32.182] } [18:01:32.182] else if (inherits(cond, "warning")) { [18:01:32.182] muffled <- grepl(pattern, "muffleWarning") [18:01:32.182] if (muffled) [18:01:32.182] invokeRestart("muffleWarning") [18:01:32.182] } [18:01:32.182] else if (inherits(cond, "condition")) { [18:01:32.182] if (!is.null(pattern)) { [18:01:32.182] computeRestarts <- base::computeRestarts [18:01:32.182] grepl <- base::grepl [18:01:32.182] restarts <- computeRestarts(cond) [18:01:32.182] for (restart in restarts) { [18:01:32.182] name <- restart$name [18:01:32.182] if (is.null(name)) [18:01:32.182] next [18:01:32.182] if (!grepl(pattern, name)) [18:01:32.182] next [18:01:32.182] invokeRestart(restart) [18:01:32.182] muffled <- TRUE [18:01:32.182] break [18:01:32.182] } [18:01:32.182] } [18:01:32.182] } [18:01:32.182] invisible(muffled) [18:01:32.182] } [18:01:32.182] muffleCondition(cond, pattern = "^muffle") [18:01:32.182] } [18:01:32.182] } [18:01:32.182] } [18:01:32.182] })) [18:01:32.182] }, error = function(ex) { [18:01:32.182] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.182] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.182] ...future.rng), started = ...future.startTime, [18:01:32.182] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.182] version = "1.8"), class = "FutureResult") [18:01:32.182] }, finally = { [18:01:32.182] if (!identical(...future.workdir, getwd())) [18:01:32.182] setwd(...future.workdir) [18:01:32.182] { [18:01:32.182] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.182] ...future.oldOptions$nwarnings <- NULL [18:01:32.182] } [18:01:32.182] base::options(...future.oldOptions) [18:01:32.182] if (.Platform$OS.type == "windows") { [18:01:32.182] old_names <- names(...future.oldEnvVars) [18:01:32.182] envs <- base::Sys.getenv() [18:01:32.182] names <- names(envs) [18:01:32.182] common <- intersect(names, old_names) [18:01:32.182] added <- setdiff(names, old_names) [18:01:32.182] removed <- setdiff(old_names, names) [18:01:32.182] changed <- common[...future.oldEnvVars[common] != [18:01:32.182] envs[common]] [18:01:32.182] NAMES <- toupper(changed) [18:01:32.182] args <- list() [18:01:32.182] for (kk in seq_along(NAMES)) { [18:01:32.182] name <- changed[[kk]] [18:01:32.182] NAME <- NAMES[[kk]] [18:01:32.182] if (name != NAME && is.element(NAME, old_names)) [18:01:32.182] next [18:01:32.182] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.182] } [18:01:32.182] NAMES <- toupper(added) [18:01:32.182] for (kk in seq_along(NAMES)) { [18:01:32.182] name <- added[[kk]] [18:01:32.182] NAME <- NAMES[[kk]] [18:01:32.182] if (name != NAME && is.element(NAME, old_names)) [18:01:32.182] next [18:01:32.182] args[[name]] <- "" [18:01:32.182] } [18:01:32.182] NAMES <- toupper(removed) [18:01:32.182] for (kk in seq_along(NAMES)) { [18:01:32.182] name <- removed[[kk]] [18:01:32.182] NAME <- NAMES[[kk]] [18:01:32.182] if (name != NAME && is.element(NAME, old_names)) [18:01:32.182] next [18:01:32.182] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.182] } [18:01:32.182] if (length(args) > 0) [18:01:32.182] base::do.call(base::Sys.setenv, args = args) [18:01:32.182] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.182] } [18:01:32.182] { [18:01:32.182] if (base::length(...future.futureOptionsAdded) > [18:01:32.182] 0L) { [18:01:32.182] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.182] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.182] base::options(opts) [18:01:32.182] } [18:01:32.182] { [18:01:32.182] { [18:01:32.182] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.182] NULL [18:01:32.182] } [18:01:32.182] options(future.plan = NULL) [18:01:32.182] if (is.na(NA_character_)) [18:01:32.182] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.182] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.182] future::plan(list(function (..., workers = availableCores(), [18:01:32.182] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.182] envir = parent.frame()) [18:01:32.182] { [18:01:32.182] if (is.function(workers)) [18:01:32.182] workers <- workers() [18:01:32.182] workers <- structure(as.integer(workers), [18:01:32.182] class = class(workers)) [18:01:32.182] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.182] workers >= 1) [18:01:32.182] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.182] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.182] } [18:01:32.182] future <- MultisessionFuture(..., workers = workers, [18:01:32.182] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.182] envir = envir) [18:01:32.182] if (!future$lazy) [18:01:32.182] future <- run(future) [18:01:32.182] invisible(future) [18:01:32.182] }), .cleanup = FALSE, .init = FALSE) [18:01:32.182] } [18:01:32.182] } [18:01:32.182] } [18:01:32.182] }) [18:01:32.182] if (TRUE) { [18:01:32.182] base::sink(type = "output", split = FALSE) [18:01:32.182] if (TRUE) { [18:01:32.182] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.182] } [18:01:32.182] else { [18:01:32.182] ...future.result["stdout"] <- base::list(NULL) [18:01:32.182] } [18:01:32.182] base::close(...future.stdout) [18:01:32.182] ...future.stdout <- NULL [18:01:32.182] } [18:01:32.182] ...future.result$conditions <- ...future.conditions [18:01:32.182] ...future.result$finished <- base::Sys.time() [18:01:32.182] ...future.result [18:01:32.182] } [18:01:32.188] MultisessionFuture started [18:01:32.188] - Launch lazy future ... done [18:01:32.188] run() for 'MultisessionFuture' ... done [18:01:32.189] result() for ClusterFuture ... [18:01:32.189] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.189] - Validating connection of MultisessionFuture [18:01:32.205] - received message: FutureResult [18:01:32.205] - Received FutureResult [18:01:32.205] - Erased future from FutureRegistry [18:01:32.205] result() for ClusterFuture ... [18:01:32.206] - result already collected: FutureResult [18:01:32.206] result() for ClusterFuture ... done [18:01:32.206] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.206] result() for ClusterFuture ... done [18:01:32.206] result() for ClusterFuture ... [18:01:32.206] - result already collected: FutureResult [18:01:32.207] result() for ClusterFuture ... done ** Future evaluation with globals [18:01:32.207] getGlobalsAndPackages() ... [18:01:32.207] Searching for globals... [18:01:32.209] - globals found: [3] '{', '<-', 'a' [18:01:32.209] Searching for globals ... DONE [18:01:32.209] Resolving globals: FALSE [18:01:32.210] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:32.210] The total size of the 1 globals exported for future expression ('{; x <- a; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [18:01:32.211] - globals: [1] 'a' [18:01:32.211] [18:01:32.211] getGlobalsAndPackages() ... DONE [18:01:32.211] run() for 'Future' ... [18:01:32.212] - state: 'created' [18:01:32.212] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.226] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.226] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.226] - Field: 'node' [18:01:32.226] - Field: 'label' [18:01:32.227] - Field: 'local' [18:01:32.227] - Field: 'owner' [18:01:32.227] - Field: 'envir' [18:01:32.227] - Field: 'workers' [18:01:32.227] - Field: 'packages' [18:01:32.228] - Field: 'gc' [18:01:32.228] - Field: 'conditions' [18:01:32.228] - Field: 'persistent' [18:01:32.228] - Field: 'expr' [18:01:32.228] - Field: 'uuid' [18:01:32.229] - Field: 'seed' [18:01:32.229] - Field: 'version' [18:01:32.229] - Field: 'result' [18:01:32.229] - Field: 'asynchronous' [18:01:32.229] - Field: 'calls' [18:01:32.229] - Field: 'globals' [18:01:32.230] - Field: 'stdout' [18:01:32.230] - Field: 'earlySignal' [18:01:32.230] - Field: 'lazy' [18:01:32.230] - Field: 'state' [18:01:32.231] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.231] - Launch lazy future ... [18:01:32.231] Packages needed by the future expression (n = 0): [18:01:32.231] Packages needed by future strategies (n = 0): [18:01:32.232] { [18:01:32.232] { [18:01:32.232] { [18:01:32.232] ...future.startTime <- base::Sys.time() [18:01:32.232] { [18:01:32.232] { [18:01:32.232] { [18:01:32.232] { [18:01:32.232] base::local({ [18:01:32.232] has_future <- base::requireNamespace("future", [18:01:32.232] quietly = TRUE) [18:01:32.232] if (has_future) { [18:01:32.232] ns <- base::getNamespace("future") [18:01:32.232] version <- ns[[".package"]][["version"]] [18:01:32.232] if (is.null(version)) [18:01:32.232] version <- utils::packageVersion("future") [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] version <- NULL [18:01:32.232] } [18:01:32.232] if (!has_future || version < "1.8.0") { [18:01:32.232] info <- base::c(r_version = base::gsub("R version ", [18:01:32.232] "", base::R.version$version.string), [18:01:32.232] platform = base::sprintf("%s (%s-bit)", [18:01:32.232] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.232] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.232] "release", "version")], collapse = " "), [18:01:32.232] hostname = base::Sys.info()[["nodename"]]) [18:01:32.232] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.232] info) [18:01:32.232] info <- base::paste(info, collapse = "; ") [18:01:32.232] if (!has_future) { [18:01:32.232] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.232] info) [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.232] info, version) [18:01:32.232] } [18:01:32.232] base::stop(msg) [18:01:32.232] } [18:01:32.232] }) [18:01:32.232] } [18:01:32.232] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.232] base::options(mc.cores = 1L) [18:01:32.232] } [18:01:32.232] options(future.plan = NULL) [18:01:32.232] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.232] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.232] } [18:01:32.232] ...future.workdir <- getwd() [18:01:32.232] } [18:01:32.232] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.232] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.232] } [18:01:32.232] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.232] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.232] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.232] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.232] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.232] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.232] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.232] base::names(...future.oldOptions)) [18:01:32.232] } [18:01:32.232] if (FALSE) { [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] if (TRUE) { [18:01:32.232] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.232] open = "w") [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.232] windows = "NUL", "/dev/null"), open = "w") [18:01:32.232] } [18:01:32.232] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.232] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.232] base::sink(type = "output", split = FALSE) [18:01:32.232] base::close(...future.stdout) [18:01:32.232] }, add = TRUE) [18:01:32.232] } [18:01:32.232] ...future.frame <- base::sys.nframe() [18:01:32.232] ...future.conditions <- base::list() [18:01:32.232] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.232] if (FALSE) { [18:01:32.232] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.232] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.232] } [18:01:32.232] ...future.result <- base::tryCatch({ [18:01:32.232] base::withCallingHandlers({ [18:01:32.232] ...future.value <- base::withVisible(base::local({ [18:01:32.232] ...future.makeSendCondition <- local({ [18:01:32.232] sendCondition <- NULL [18:01:32.232] function(frame = 1L) { [18:01:32.232] if (is.function(sendCondition)) [18:01:32.232] return(sendCondition) [18:01:32.232] ns <- getNamespace("parallel") [18:01:32.232] if (exists("sendData", mode = "function", [18:01:32.232] envir = ns)) { [18:01:32.232] parallel_sendData <- get("sendData", mode = "function", [18:01:32.232] envir = ns) [18:01:32.232] envir <- sys.frame(frame) [18:01:32.232] master <- NULL [18:01:32.232] while (!identical(envir, .GlobalEnv) && [18:01:32.232] !identical(envir, emptyenv())) { [18:01:32.232] if (exists("master", mode = "list", envir = envir, [18:01:32.232] inherits = FALSE)) { [18:01:32.232] master <- get("master", mode = "list", [18:01:32.232] envir = envir, inherits = FALSE) [18:01:32.232] if (inherits(master, c("SOCKnode", [18:01:32.232] "SOCK0node"))) { [18:01:32.232] sendCondition <<- function(cond) { [18:01:32.232] data <- list(type = "VALUE", value = cond, [18:01:32.232] success = TRUE) [18:01:32.232] parallel_sendData(master, data) [18:01:32.232] } [18:01:32.232] return(sendCondition) [18:01:32.232] } [18:01:32.232] } [18:01:32.232] frame <- frame + 1L [18:01:32.232] envir <- sys.frame(frame) [18:01:32.232] } [18:01:32.232] } [18:01:32.232] sendCondition <<- function(cond) NULL [18:01:32.232] } [18:01:32.232] }) [18:01:32.232] withCallingHandlers({ [18:01:32.232] { [18:01:32.232] x <- a [18:01:32.232] } [18:01:32.232] }, immediateCondition = function(cond) { [18:01:32.232] sendCondition <- ...future.makeSendCondition() [18:01:32.232] sendCondition(cond) [18:01:32.232] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.232] { [18:01:32.232] inherits <- base::inherits [18:01:32.232] invokeRestart <- base::invokeRestart [18:01:32.232] is.null <- base::is.null [18:01:32.232] muffled <- FALSE [18:01:32.232] if (inherits(cond, "message")) { [18:01:32.232] muffled <- grepl(pattern, "muffleMessage") [18:01:32.232] if (muffled) [18:01:32.232] invokeRestart("muffleMessage") [18:01:32.232] } [18:01:32.232] else if (inherits(cond, "warning")) { [18:01:32.232] muffled <- grepl(pattern, "muffleWarning") [18:01:32.232] if (muffled) [18:01:32.232] invokeRestart("muffleWarning") [18:01:32.232] } [18:01:32.232] else if (inherits(cond, "condition")) { [18:01:32.232] if (!is.null(pattern)) { [18:01:32.232] computeRestarts <- base::computeRestarts [18:01:32.232] grepl <- base::grepl [18:01:32.232] restarts <- computeRestarts(cond) [18:01:32.232] for (restart in restarts) { [18:01:32.232] name <- restart$name [18:01:32.232] if (is.null(name)) [18:01:32.232] next [18:01:32.232] if (!grepl(pattern, name)) [18:01:32.232] next [18:01:32.232] invokeRestart(restart) [18:01:32.232] muffled <- TRUE [18:01:32.232] break [18:01:32.232] } [18:01:32.232] } [18:01:32.232] } [18:01:32.232] invisible(muffled) [18:01:32.232] } [18:01:32.232] muffleCondition(cond) [18:01:32.232] }) [18:01:32.232] })) [18:01:32.232] future::FutureResult(value = ...future.value$value, [18:01:32.232] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.232] ...future.rng), globalenv = if (FALSE) [18:01:32.232] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.232] ...future.globalenv.names)) [18:01:32.232] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.232] }, condition = base::local({ [18:01:32.232] c <- base::c [18:01:32.232] inherits <- base::inherits [18:01:32.232] invokeRestart <- base::invokeRestart [18:01:32.232] length <- base::length [18:01:32.232] list <- base::list [18:01:32.232] seq.int <- base::seq.int [18:01:32.232] signalCondition <- base::signalCondition [18:01:32.232] sys.calls <- base::sys.calls [18:01:32.232] `[[` <- base::`[[` [18:01:32.232] `+` <- base::`+` [18:01:32.232] `<<-` <- base::`<<-` [18:01:32.232] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.232] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.232] 3L)] [18:01:32.232] } [18:01:32.232] function(cond) { [18:01:32.232] is_error <- inherits(cond, "error") [18:01:32.232] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.232] NULL) [18:01:32.232] if (is_error) { [18:01:32.232] sessionInformation <- function() { [18:01:32.232] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.232] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.232] search = base::search(), system = base::Sys.info()) [18:01:32.232] } [18:01:32.232] ...future.conditions[[length(...future.conditions) + [18:01:32.232] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.232] cond$call), session = sessionInformation(), [18:01:32.232] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.232] signalCondition(cond) [18:01:32.232] } [18:01:32.232] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.232] "immediateCondition"))) { [18:01:32.232] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.232] ...future.conditions[[length(...future.conditions) + [18:01:32.232] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.232] if (TRUE && !signal) { [18:01:32.232] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.232] { [18:01:32.232] inherits <- base::inherits [18:01:32.232] invokeRestart <- base::invokeRestart [18:01:32.232] is.null <- base::is.null [18:01:32.232] muffled <- FALSE [18:01:32.232] if (inherits(cond, "message")) { [18:01:32.232] muffled <- grepl(pattern, "muffleMessage") [18:01:32.232] if (muffled) [18:01:32.232] invokeRestart("muffleMessage") [18:01:32.232] } [18:01:32.232] else if (inherits(cond, "warning")) { [18:01:32.232] muffled <- grepl(pattern, "muffleWarning") [18:01:32.232] if (muffled) [18:01:32.232] invokeRestart("muffleWarning") [18:01:32.232] } [18:01:32.232] else if (inherits(cond, "condition")) { [18:01:32.232] if (!is.null(pattern)) { [18:01:32.232] computeRestarts <- base::computeRestarts [18:01:32.232] grepl <- base::grepl [18:01:32.232] restarts <- computeRestarts(cond) [18:01:32.232] for (restart in restarts) { [18:01:32.232] name <- restart$name [18:01:32.232] if (is.null(name)) [18:01:32.232] next [18:01:32.232] if (!grepl(pattern, name)) [18:01:32.232] next [18:01:32.232] invokeRestart(restart) [18:01:32.232] muffled <- TRUE [18:01:32.232] break [18:01:32.232] } [18:01:32.232] } [18:01:32.232] } [18:01:32.232] invisible(muffled) [18:01:32.232] } [18:01:32.232] muffleCondition(cond, pattern = "^muffle") [18:01:32.232] } [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] if (TRUE) { [18:01:32.232] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.232] { [18:01:32.232] inherits <- base::inherits [18:01:32.232] invokeRestart <- base::invokeRestart [18:01:32.232] is.null <- base::is.null [18:01:32.232] muffled <- FALSE [18:01:32.232] if (inherits(cond, "message")) { [18:01:32.232] muffled <- grepl(pattern, "muffleMessage") [18:01:32.232] if (muffled) [18:01:32.232] invokeRestart("muffleMessage") [18:01:32.232] } [18:01:32.232] else if (inherits(cond, "warning")) { [18:01:32.232] muffled <- grepl(pattern, "muffleWarning") [18:01:32.232] if (muffled) [18:01:32.232] invokeRestart("muffleWarning") [18:01:32.232] } [18:01:32.232] else if (inherits(cond, "condition")) { [18:01:32.232] if (!is.null(pattern)) { [18:01:32.232] computeRestarts <- base::computeRestarts [18:01:32.232] grepl <- base::grepl [18:01:32.232] restarts <- computeRestarts(cond) [18:01:32.232] for (restart in restarts) { [18:01:32.232] name <- restart$name [18:01:32.232] if (is.null(name)) [18:01:32.232] next [18:01:32.232] if (!grepl(pattern, name)) [18:01:32.232] next [18:01:32.232] invokeRestart(restart) [18:01:32.232] muffled <- TRUE [18:01:32.232] break [18:01:32.232] } [18:01:32.232] } [18:01:32.232] } [18:01:32.232] invisible(muffled) [18:01:32.232] } [18:01:32.232] muffleCondition(cond, pattern = "^muffle") [18:01:32.232] } [18:01:32.232] } [18:01:32.232] } [18:01:32.232] })) [18:01:32.232] }, error = function(ex) { [18:01:32.232] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.232] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.232] ...future.rng), started = ...future.startTime, [18:01:32.232] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.232] version = "1.8"), class = "FutureResult") [18:01:32.232] }, finally = { [18:01:32.232] if (!identical(...future.workdir, getwd())) [18:01:32.232] setwd(...future.workdir) [18:01:32.232] { [18:01:32.232] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.232] ...future.oldOptions$nwarnings <- NULL [18:01:32.232] } [18:01:32.232] base::options(...future.oldOptions) [18:01:32.232] if (.Platform$OS.type == "windows") { [18:01:32.232] old_names <- names(...future.oldEnvVars) [18:01:32.232] envs <- base::Sys.getenv() [18:01:32.232] names <- names(envs) [18:01:32.232] common <- intersect(names, old_names) [18:01:32.232] added <- setdiff(names, old_names) [18:01:32.232] removed <- setdiff(old_names, names) [18:01:32.232] changed <- common[...future.oldEnvVars[common] != [18:01:32.232] envs[common]] [18:01:32.232] NAMES <- toupper(changed) [18:01:32.232] args <- list() [18:01:32.232] for (kk in seq_along(NAMES)) { [18:01:32.232] name <- changed[[kk]] [18:01:32.232] NAME <- NAMES[[kk]] [18:01:32.232] if (name != NAME && is.element(NAME, old_names)) [18:01:32.232] next [18:01:32.232] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.232] } [18:01:32.232] NAMES <- toupper(added) [18:01:32.232] for (kk in seq_along(NAMES)) { [18:01:32.232] name <- added[[kk]] [18:01:32.232] NAME <- NAMES[[kk]] [18:01:32.232] if (name != NAME && is.element(NAME, old_names)) [18:01:32.232] next [18:01:32.232] args[[name]] <- "" [18:01:32.232] } [18:01:32.232] NAMES <- toupper(removed) [18:01:32.232] for (kk in seq_along(NAMES)) { [18:01:32.232] name <- removed[[kk]] [18:01:32.232] NAME <- NAMES[[kk]] [18:01:32.232] if (name != NAME && is.element(NAME, old_names)) [18:01:32.232] next [18:01:32.232] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.232] } [18:01:32.232] if (length(args) > 0) [18:01:32.232] base::do.call(base::Sys.setenv, args = args) [18:01:32.232] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.232] } [18:01:32.232] { [18:01:32.232] if (base::length(...future.futureOptionsAdded) > [18:01:32.232] 0L) { [18:01:32.232] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.232] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.232] base::options(opts) [18:01:32.232] } [18:01:32.232] { [18:01:32.232] { [18:01:32.232] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.232] NULL [18:01:32.232] } [18:01:32.232] options(future.plan = NULL) [18:01:32.232] if (is.na(NA_character_)) [18:01:32.232] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.232] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.232] future::plan(list(function (..., workers = availableCores(), [18:01:32.232] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.232] envir = parent.frame()) [18:01:32.232] { [18:01:32.232] if (is.function(workers)) [18:01:32.232] workers <- workers() [18:01:32.232] workers <- structure(as.integer(workers), [18:01:32.232] class = class(workers)) [18:01:32.232] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.232] workers >= 1) [18:01:32.232] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.232] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.232] } [18:01:32.232] future <- MultisessionFuture(..., workers = workers, [18:01:32.232] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.232] envir = envir) [18:01:32.232] if (!future$lazy) [18:01:32.232] future <- run(future) [18:01:32.232] invisible(future) [18:01:32.232] }), .cleanup = FALSE, .init = FALSE) [18:01:32.232] } [18:01:32.232] } [18:01:32.232] } [18:01:32.232] }) [18:01:32.232] if (TRUE) { [18:01:32.232] base::sink(type = "output", split = FALSE) [18:01:32.232] if (TRUE) { [18:01:32.232] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.232] } [18:01:32.232] else { [18:01:32.232] ...future.result["stdout"] <- base::list(NULL) [18:01:32.232] } [18:01:32.232] base::close(...future.stdout) [18:01:32.232] ...future.stdout <- NULL [18:01:32.232] } [18:01:32.232] ...future.result$conditions <- ...future.conditions [18:01:32.232] ...future.result$finished <- base::Sys.time() [18:01:32.232] ...future.result [18:01:32.232] } [18:01:32.237] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:32.238] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:32.238] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:32.239] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:32.239] MultisessionFuture started [18:01:32.240] - Launch lazy future ... done [18:01:32.240] run() for 'MultisessionFuture' ... done [18:01:32.240] result() for ClusterFuture ... [18:01:32.241] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.241] - Validating connection of MultisessionFuture [18:01:32.255] - received message: FutureResult [18:01:32.255] - Received FutureResult [18:01:32.256] - Erased future from FutureRegistry [18:01:32.256] result() for ClusterFuture ... [18:01:32.256] - result already collected: FutureResult [18:01:32.256] result() for ClusterFuture ... done [18:01:32.256] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.256] result() for ClusterFuture ... done [18:01:32.257] result() for ClusterFuture ... [18:01:32.257] - result already collected: FutureResult [18:01:32.257] result() for ClusterFuture ... done ** Future evaluation with errors [18:01:32.258] getGlobalsAndPackages() ... [18:01:32.258] Searching for globals... [18:01:32.260] - globals found: [3] '{', '<-', 'stop' [18:01:32.260] Searching for globals ... DONE [18:01:32.260] Resolving globals: FALSE [18:01:32.261] [18:01:32.261] [18:01:32.261] getGlobalsAndPackages() ... DONE [18:01:32.261] run() for 'Future' ... [18:01:32.262] - state: 'created' [18:01:32.262] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.276] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.276] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.276] - Field: 'node' [18:01:32.276] - Field: 'label' [18:01:32.277] - Field: 'local' [18:01:32.277] - Field: 'owner' [18:01:32.277] - Field: 'envir' [18:01:32.277] - Field: 'workers' [18:01:32.277] - Field: 'packages' [18:01:32.278] - Field: 'gc' [18:01:32.278] - Field: 'conditions' [18:01:32.278] - Field: 'persistent' [18:01:32.278] - Field: 'expr' [18:01:32.278] - Field: 'uuid' [18:01:32.279] - Field: 'seed' [18:01:32.279] - Field: 'version' [18:01:32.279] - Field: 'result' [18:01:32.279] - Field: 'asynchronous' [18:01:32.279] - Field: 'calls' [18:01:32.280] - Field: 'globals' [18:01:32.280] - Field: 'stdout' [18:01:32.280] - Field: 'earlySignal' [18:01:32.280] - Field: 'lazy' [18:01:32.280] - Field: 'state' [18:01:32.281] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.281] - Launch lazy future ... [18:01:32.281] Packages needed by the future expression (n = 0): [18:01:32.281] Packages needed by future strategies (n = 0): [18:01:32.282] { [18:01:32.282] { [18:01:32.282] { [18:01:32.282] ...future.startTime <- base::Sys.time() [18:01:32.282] { [18:01:32.282] { [18:01:32.282] { [18:01:32.282] { [18:01:32.282] base::local({ [18:01:32.282] has_future <- base::requireNamespace("future", [18:01:32.282] quietly = TRUE) [18:01:32.282] if (has_future) { [18:01:32.282] ns <- base::getNamespace("future") [18:01:32.282] version <- ns[[".package"]][["version"]] [18:01:32.282] if (is.null(version)) [18:01:32.282] version <- utils::packageVersion("future") [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] version <- NULL [18:01:32.282] } [18:01:32.282] if (!has_future || version < "1.8.0") { [18:01:32.282] info <- base::c(r_version = base::gsub("R version ", [18:01:32.282] "", base::R.version$version.string), [18:01:32.282] platform = base::sprintf("%s (%s-bit)", [18:01:32.282] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.282] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.282] "release", "version")], collapse = " "), [18:01:32.282] hostname = base::Sys.info()[["nodename"]]) [18:01:32.282] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.282] info) [18:01:32.282] info <- base::paste(info, collapse = "; ") [18:01:32.282] if (!has_future) { [18:01:32.282] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.282] info) [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.282] info, version) [18:01:32.282] } [18:01:32.282] base::stop(msg) [18:01:32.282] } [18:01:32.282] }) [18:01:32.282] } [18:01:32.282] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.282] base::options(mc.cores = 1L) [18:01:32.282] } [18:01:32.282] options(future.plan = NULL) [18:01:32.282] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.282] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.282] } [18:01:32.282] ...future.workdir <- getwd() [18:01:32.282] } [18:01:32.282] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.282] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.282] } [18:01:32.282] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.282] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.282] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.282] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.282] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.282] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.282] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.282] base::names(...future.oldOptions)) [18:01:32.282] } [18:01:32.282] if (FALSE) { [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] if (TRUE) { [18:01:32.282] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.282] open = "w") [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.282] windows = "NUL", "/dev/null"), open = "w") [18:01:32.282] } [18:01:32.282] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.282] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.282] base::sink(type = "output", split = FALSE) [18:01:32.282] base::close(...future.stdout) [18:01:32.282] }, add = TRUE) [18:01:32.282] } [18:01:32.282] ...future.frame <- base::sys.nframe() [18:01:32.282] ...future.conditions <- base::list() [18:01:32.282] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.282] if (FALSE) { [18:01:32.282] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.282] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.282] } [18:01:32.282] ...future.result <- base::tryCatch({ [18:01:32.282] base::withCallingHandlers({ [18:01:32.282] ...future.value <- base::withVisible(base::local({ [18:01:32.282] ...future.makeSendCondition <- local({ [18:01:32.282] sendCondition <- NULL [18:01:32.282] function(frame = 1L) { [18:01:32.282] if (is.function(sendCondition)) [18:01:32.282] return(sendCondition) [18:01:32.282] ns <- getNamespace("parallel") [18:01:32.282] if (exists("sendData", mode = "function", [18:01:32.282] envir = ns)) { [18:01:32.282] parallel_sendData <- get("sendData", mode = "function", [18:01:32.282] envir = ns) [18:01:32.282] envir <- sys.frame(frame) [18:01:32.282] master <- NULL [18:01:32.282] while (!identical(envir, .GlobalEnv) && [18:01:32.282] !identical(envir, emptyenv())) { [18:01:32.282] if (exists("master", mode = "list", envir = envir, [18:01:32.282] inherits = FALSE)) { [18:01:32.282] master <- get("master", mode = "list", [18:01:32.282] envir = envir, inherits = FALSE) [18:01:32.282] if (inherits(master, c("SOCKnode", [18:01:32.282] "SOCK0node"))) { [18:01:32.282] sendCondition <<- function(cond) { [18:01:32.282] data <- list(type = "VALUE", value = cond, [18:01:32.282] success = TRUE) [18:01:32.282] parallel_sendData(master, data) [18:01:32.282] } [18:01:32.282] return(sendCondition) [18:01:32.282] } [18:01:32.282] } [18:01:32.282] frame <- frame + 1L [18:01:32.282] envir <- sys.frame(frame) [18:01:32.282] } [18:01:32.282] } [18:01:32.282] sendCondition <<- function(cond) NULL [18:01:32.282] } [18:01:32.282] }) [18:01:32.282] withCallingHandlers({ [18:01:32.282] { [18:01:32.282] x <- 3 [18:01:32.282] stop("Woops!") [18:01:32.282] x [18:01:32.282] } [18:01:32.282] }, immediateCondition = function(cond) { [18:01:32.282] sendCondition <- ...future.makeSendCondition() [18:01:32.282] sendCondition(cond) [18:01:32.282] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.282] { [18:01:32.282] inherits <- base::inherits [18:01:32.282] invokeRestart <- base::invokeRestart [18:01:32.282] is.null <- base::is.null [18:01:32.282] muffled <- FALSE [18:01:32.282] if (inherits(cond, "message")) { [18:01:32.282] muffled <- grepl(pattern, "muffleMessage") [18:01:32.282] if (muffled) [18:01:32.282] invokeRestart("muffleMessage") [18:01:32.282] } [18:01:32.282] else if (inherits(cond, "warning")) { [18:01:32.282] muffled <- grepl(pattern, "muffleWarning") [18:01:32.282] if (muffled) [18:01:32.282] invokeRestart("muffleWarning") [18:01:32.282] } [18:01:32.282] else if (inherits(cond, "condition")) { [18:01:32.282] if (!is.null(pattern)) { [18:01:32.282] computeRestarts <- base::computeRestarts [18:01:32.282] grepl <- base::grepl [18:01:32.282] restarts <- computeRestarts(cond) [18:01:32.282] for (restart in restarts) { [18:01:32.282] name <- restart$name [18:01:32.282] if (is.null(name)) [18:01:32.282] next [18:01:32.282] if (!grepl(pattern, name)) [18:01:32.282] next [18:01:32.282] invokeRestart(restart) [18:01:32.282] muffled <- TRUE [18:01:32.282] break [18:01:32.282] } [18:01:32.282] } [18:01:32.282] } [18:01:32.282] invisible(muffled) [18:01:32.282] } [18:01:32.282] muffleCondition(cond) [18:01:32.282] }) [18:01:32.282] })) [18:01:32.282] future::FutureResult(value = ...future.value$value, [18:01:32.282] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.282] ...future.rng), globalenv = if (FALSE) [18:01:32.282] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.282] ...future.globalenv.names)) [18:01:32.282] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.282] }, condition = base::local({ [18:01:32.282] c <- base::c [18:01:32.282] inherits <- base::inherits [18:01:32.282] invokeRestart <- base::invokeRestart [18:01:32.282] length <- base::length [18:01:32.282] list <- base::list [18:01:32.282] seq.int <- base::seq.int [18:01:32.282] signalCondition <- base::signalCondition [18:01:32.282] sys.calls <- base::sys.calls [18:01:32.282] `[[` <- base::`[[` [18:01:32.282] `+` <- base::`+` [18:01:32.282] `<<-` <- base::`<<-` [18:01:32.282] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.282] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.282] 3L)] [18:01:32.282] } [18:01:32.282] function(cond) { [18:01:32.282] is_error <- inherits(cond, "error") [18:01:32.282] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.282] NULL) [18:01:32.282] if (is_error) { [18:01:32.282] sessionInformation <- function() { [18:01:32.282] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.282] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.282] search = base::search(), system = base::Sys.info()) [18:01:32.282] } [18:01:32.282] ...future.conditions[[length(...future.conditions) + [18:01:32.282] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.282] cond$call), session = sessionInformation(), [18:01:32.282] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.282] signalCondition(cond) [18:01:32.282] } [18:01:32.282] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.282] "immediateCondition"))) { [18:01:32.282] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.282] ...future.conditions[[length(...future.conditions) + [18:01:32.282] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.282] if (TRUE && !signal) { [18:01:32.282] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.282] { [18:01:32.282] inherits <- base::inherits [18:01:32.282] invokeRestart <- base::invokeRestart [18:01:32.282] is.null <- base::is.null [18:01:32.282] muffled <- FALSE [18:01:32.282] if (inherits(cond, "message")) { [18:01:32.282] muffled <- grepl(pattern, "muffleMessage") [18:01:32.282] if (muffled) [18:01:32.282] invokeRestart("muffleMessage") [18:01:32.282] } [18:01:32.282] else if (inherits(cond, "warning")) { [18:01:32.282] muffled <- grepl(pattern, "muffleWarning") [18:01:32.282] if (muffled) [18:01:32.282] invokeRestart("muffleWarning") [18:01:32.282] } [18:01:32.282] else if (inherits(cond, "condition")) { [18:01:32.282] if (!is.null(pattern)) { [18:01:32.282] computeRestarts <- base::computeRestarts [18:01:32.282] grepl <- base::grepl [18:01:32.282] restarts <- computeRestarts(cond) [18:01:32.282] for (restart in restarts) { [18:01:32.282] name <- restart$name [18:01:32.282] if (is.null(name)) [18:01:32.282] next [18:01:32.282] if (!grepl(pattern, name)) [18:01:32.282] next [18:01:32.282] invokeRestart(restart) [18:01:32.282] muffled <- TRUE [18:01:32.282] break [18:01:32.282] } [18:01:32.282] } [18:01:32.282] } [18:01:32.282] invisible(muffled) [18:01:32.282] } [18:01:32.282] muffleCondition(cond, pattern = "^muffle") [18:01:32.282] } [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] if (TRUE) { [18:01:32.282] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.282] { [18:01:32.282] inherits <- base::inherits [18:01:32.282] invokeRestart <- base::invokeRestart [18:01:32.282] is.null <- base::is.null [18:01:32.282] muffled <- FALSE [18:01:32.282] if (inherits(cond, "message")) { [18:01:32.282] muffled <- grepl(pattern, "muffleMessage") [18:01:32.282] if (muffled) [18:01:32.282] invokeRestart("muffleMessage") [18:01:32.282] } [18:01:32.282] else if (inherits(cond, "warning")) { [18:01:32.282] muffled <- grepl(pattern, "muffleWarning") [18:01:32.282] if (muffled) [18:01:32.282] invokeRestart("muffleWarning") [18:01:32.282] } [18:01:32.282] else if (inherits(cond, "condition")) { [18:01:32.282] if (!is.null(pattern)) { [18:01:32.282] computeRestarts <- base::computeRestarts [18:01:32.282] grepl <- base::grepl [18:01:32.282] restarts <- computeRestarts(cond) [18:01:32.282] for (restart in restarts) { [18:01:32.282] name <- restart$name [18:01:32.282] if (is.null(name)) [18:01:32.282] next [18:01:32.282] if (!grepl(pattern, name)) [18:01:32.282] next [18:01:32.282] invokeRestart(restart) [18:01:32.282] muffled <- TRUE [18:01:32.282] break [18:01:32.282] } [18:01:32.282] } [18:01:32.282] } [18:01:32.282] invisible(muffled) [18:01:32.282] } [18:01:32.282] muffleCondition(cond, pattern = "^muffle") [18:01:32.282] } [18:01:32.282] } [18:01:32.282] } [18:01:32.282] })) [18:01:32.282] }, error = function(ex) { [18:01:32.282] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.282] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.282] ...future.rng), started = ...future.startTime, [18:01:32.282] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.282] version = "1.8"), class = "FutureResult") [18:01:32.282] }, finally = { [18:01:32.282] if (!identical(...future.workdir, getwd())) [18:01:32.282] setwd(...future.workdir) [18:01:32.282] { [18:01:32.282] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.282] ...future.oldOptions$nwarnings <- NULL [18:01:32.282] } [18:01:32.282] base::options(...future.oldOptions) [18:01:32.282] if (.Platform$OS.type == "windows") { [18:01:32.282] old_names <- names(...future.oldEnvVars) [18:01:32.282] envs <- base::Sys.getenv() [18:01:32.282] names <- names(envs) [18:01:32.282] common <- intersect(names, old_names) [18:01:32.282] added <- setdiff(names, old_names) [18:01:32.282] removed <- setdiff(old_names, names) [18:01:32.282] changed <- common[...future.oldEnvVars[common] != [18:01:32.282] envs[common]] [18:01:32.282] NAMES <- toupper(changed) [18:01:32.282] args <- list() [18:01:32.282] for (kk in seq_along(NAMES)) { [18:01:32.282] name <- changed[[kk]] [18:01:32.282] NAME <- NAMES[[kk]] [18:01:32.282] if (name != NAME && is.element(NAME, old_names)) [18:01:32.282] next [18:01:32.282] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.282] } [18:01:32.282] NAMES <- toupper(added) [18:01:32.282] for (kk in seq_along(NAMES)) { [18:01:32.282] name <- added[[kk]] [18:01:32.282] NAME <- NAMES[[kk]] [18:01:32.282] if (name != NAME && is.element(NAME, old_names)) [18:01:32.282] next [18:01:32.282] args[[name]] <- "" [18:01:32.282] } [18:01:32.282] NAMES <- toupper(removed) [18:01:32.282] for (kk in seq_along(NAMES)) { [18:01:32.282] name <- removed[[kk]] [18:01:32.282] NAME <- NAMES[[kk]] [18:01:32.282] if (name != NAME && is.element(NAME, old_names)) [18:01:32.282] next [18:01:32.282] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.282] } [18:01:32.282] if (length(args) > 0) [18:01:32.282] base::do.call(base::Sys.setenv, args = args) [18:01:32.282] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.282] } [18:01:32.282] { [18:01:32.282] if (base::length(...future.futureOptionsAdded) > [18:01:32.282] 0L) { [18:01:32.282] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.282] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.282] base::options(opts) [18:01:32.282] } [18:01:32.282] { [18:01:32.282] { [18:01:32.282] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.282] NULL [18:01:32.282] } [18:01:32.282] options(future.plan = NULL) [18:01:32.282] if (is.na(NA_character_)) [18:01:32.282] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.282] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.282] future::plan(list(function (..., workers = availableCores(), [18:01:32.282] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.282] envir = parent.frame()) [18:01:32.282] { [18:01:32.282] if (is.function(workers)) [18:01:32.282] workers <- workers() [18:01:32.282] workers <- structure(as.integer(workers), [18:01:32.282] class = class(workers)) [18:01:32.282] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.282] workers >= 1) [18:01:32.282] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.282] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.282] } [18:01:32.282] future <- MultisessionFuture(..., workers = workers, [18:01:32.282] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.282] envir = envir) [18:01:32.282] if (!future$lazy) [18:01:32.282] future <- run(future) [18:01:32.282] invisible(future) [18:01:32.282] }), .cleanup = FALSE, .init = FALSE) [18:01:32.282] } [18:01:32.282] } [18:01:32.282] } [18:01:32.282] }) [18:01:32.282] if (TRUE) { [18:01:32.282] base::sink(type = "output", split = FALSE) [18:01:32.282] if (TRUE) { [18:01:32.282] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.282] } [18:01:32.282] else { [18:01:32.282] ...future.result["stdout"] <- base::list(NULL) [18:01:32.282] } [18:01:32.282] base::close(...future.stdout) [18:01:32.282] ...future.stdout <- NULL [18:01:32.282] } [18:01:32.282] ...future.result$conditions <- ...future.conditions [18:01:32.282] ...future.result$finished <- base::Sys.time() [18:01:32.282] ...future.result [18:01:32.282] } [18:01:32.288] MultisessionFuture started [18:01:32.288] - Launch lazy future ... done [18:01:32.288] run() for 'MultisessionFuture' ... done [18:01:32.289] result() for ClusterFuture ... [18:01:32.289] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.289] - Validating connection of MultisessionFuture [18:01:32.308] - received message: FutureResult [18:01:32.308] - Received FutureResult [18:01:32.308] - Erased future from FutureRegistry [18:01:32.308] result() for ClusterFuture ... [18:01:32.309] - result already collected: FutureResult [18:01:32.309] result() for ClusterFuture ... done [18:01:32.309] signalConditions() ... [18:01:32.309] - include = 'immediateCondition' [18:01:32.309] - exclude = [18:01:32.309] - resignal = FALSE [18:01:32.309] - Number of conditions: 1 [18:01:32.310] signalConditions() ... done [18:01:32.310] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.310] result() for ClusterFuture ... done [18:01:32.310] result() for ClusterFuture ... [18:01:32.310] - result already collected: FutureResult [18:01:32.310] result() for ClusterFuture ... done [18:01:32.311] signalConditions() ... [18:01:32.311] - include = 'immediateCondition' [18:01:32.311] - exclude = [18:01:32.311] - resignal = FALSE [18:01:32.311] - Number of conditions: 1 [18:01:32.311] signalConditions() ... done [18:01:32.312] Future state: 'finished' [18:01:32.312] result() for ClusterFuture ... [18:01:32.312] - result already collected: FutureResult [18:01:32.312] result() for ClusterFuture ... done [18:01:32.312] signalConditions() ... [18:01:32.313] - include = 'condition' [18:01:32.313] - exclude = 'immediateCondition' [18:01:32.313] - resignal = TRUE [18:01:32.313] - Number of conditions: 1 [18:01:32.313] - Condition #1: 'simpleError', 'error', 'condition' [18:01:32.313] signalConditions() ... done [18:01:32.314] getGlobalsAndPackages() ... [18:01:32.314] Searching for globals... [18:01:32.316] - globals found: [6] '{', 'if', '==', '%%', 'ii', 'stop' [18:01:32.316] Searching for globals ... DONE [18:01:32.316] Resolving globals: FALSE [18:01:32.317] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:32.317] The total size of the 1 globals exported for future expression ('{; if (ii%%2 == 0); stop("Woops!"); ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [18:01:32.318] - globals: [1] 'ii' [18:01:32.318] [18:01:32.318] getGlobalsAndPackages() ... DONE [18:01:32.318] run() for 'Future' ... [18:01:32.318] - state: 'created' [18:01:32.319] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.332] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.333] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.333] - Field: 'node' [18:01:32.333] - Field: 'label' [18:01:32.333] - Field: 'local' [18:01:32.333] - Field: 'owner' [18:01:32.334] - Field: 'envir' [18:01:32.334] - Field: 'workers' [18:01:32.334] - Field: 'packages' [18:01:32.334] - Field: 'gc' [18:01:32.334] - Field: 'conditions' [18:01:32.334] - Field: 'persistent' [18:01:32.335] - Field: 'expr' [18:01:32.335] - Field: 'uuid' [18:01:32.335] - Field: 'seed' [18:01:32.335] - Field: 'version' [18:01:32.335] - Field: 'result' [18:01:32.335] - Field: 'asynchronous' [18:01:32.336] - Field: 'calls' [18:01:32.336] - Field: 'globals' [18:01:32.336] - Field: 'stdout' [18:01:32.336] - Field: 'earlySignal' [18:01:32.336] - Field: 'lazy' [18:01:32.337] - Field: 'state' [18:01:32.337] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.337] - Launch lazy future ... [18:01:32.337] Packages needed by the future expression (n = 0): [18:01:32.337] Packages needed by future strategies (n = 0): [18:01:32.338] { [18:01:32.338] { [18:01:32.338] { [18:01:32.338] ...future.startTime <- base::Sys.time() [18:01:32.338] { [18:01:32.338] { [18:01:32.338] { [18:01:32.338] { [18:01:32.338] base::local({ [18:01:32.338] has_future <- base::requireNamespace("future", [18:01:32.338] quietly = TRUE) [18:01:32.338] if (has_future) { [18:01:32.338] ns <- base::getNamespace("future") [18:01:32.338] version <- ns[[".package"]][["version"]] [18:01:32.338] if (is.null(version)) [18:01:32.338] version <- utils::packageVersion("future") [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] version <- NULL [18:01:32.338] } [18:01:32.338] if (!has_future || version < "1.8.0") { [18:01:32.338] info <- base::c(r_version = base::gsub("R version ", [18:01:32.338] "", base::R.version$version.string), [18:01:32.338] platform = base::sprintf("%s (%s-bit)", [18:01:32.338] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.338] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.338] "release", "version")], collapse = " "), [18:01:32.338] hostname = base::Sys.info()[["nodename"]]) [18:01:32.338] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.338] info) [18:01:32.338] info <- base::paste(info, collapse = "; ") [18:01:32.338] if (!has_future) { [18:01:32.338] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.338] info) [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.338] info, version) [18:01:32.338] } [18:01:32.338] base::stop(msg) [18:01:32.338] } [18:01:32.338] }) [18:01:32.338] } [18:01:32.338] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.338] base::options(mc.cores = 1L) [18:01:32.338] } [18:01:32.338] options(future.plan = NULL) [18:01:32.338] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.338] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.338] } [18:01:32.338] ...future.workdir <- getwd() [18:01:32.338] } [18:01:32.338] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.338] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.338] } [18:01:32.338] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.338] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.338] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.338] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.338] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.338] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.338] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.338] base::names(...future.oldOptions)) [18:01:32.338] } [18:01:32.338] if (FALSE) { [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] if (TRUE) { [18:01:32.338] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.338] open = "w") [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.338] windows = "NUL", "/dev/null"), open = "w") [18:01:32.338] } [18:01:32.338] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.338] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.338] base::sink(type = "output", split = FALSE) [18:01:32.338] base::close(...future.stdout) [18:01:32.338] }, add = TRUE) [18:01:32.338] } [18:01:32.338] ...future.frame <- base::sys.nframe() [18:01:32.338] ...future.conditions <- base::list() [18:01:32.338] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.338] if (FALSE) { [18:01:32.338] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.338] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.338] } [18:01:32.338] ...future.result <- base::tryCatch({ [18:01:32.338] base::withCallingHandlers({ [18:01:32.338] ...future.value <- base::withVisible(base::local({ [18:01:32.338] ...future.makeSendCondition <- local({ [18:01:32.338] sendCondition <- NULL [18:01:32.338] function(frame = 1L) { [18:01:32.338] if (is.function(sendCondition)) [18:01:32.338] return(sendCondition) [18:01:32.338] ns <- getNamespace("parallel") [18:01:32.338] if (exists("sendData", mode = "function", [18:01:32.338] envir = ns)) { [18:01:32.338] parallel_sendData <- get("sendData", mode = "function", [18:01:32.338] envir = ns) [18:01:32.338] envir <- sys.frame(frame) [18:01:32.338] master <- NULL [18:01:32.338] while (!identical(envir, .GlobalEnv) && [18:01:32.338] !identical(envir, emptyenv())) { [18:01:32.338] if (exists("master", mode = "list", envir = envir, [18:01:32.338] inherits = FALSE)) { [18:01:32.338] master <- get("master", mode = "list", [18:01:32.338] envir = envir, inherits = FALSE) [18:01:32.338] if (inherits(master, c("SOCKnode", [18:01:32.338] "SOCK0node"))) { [18:01:32.338] sendCondition <<- function(cond) { [18:01:32.338] data <- list(type = "VALUE", value = cond, [18:01:32.338] success = TRUE) [18:01:32.338] parallel_sendData(master, data) [18:01:32.338] } [18:01:32.338] return(sendCondition) [18:01:32.338] } [18:01:32.338] } [18:01:32.338] frame <- frame + 1L [18:01:32.338] envir <- sys.frame(frame) [18:01:32.338] } [18:01:32.338] } [18:01:32.338] sendCondition <<- function(cond) NULL [18:01:32.338] } [18:01:32.338] }) [18:01:32.338] withCallingHandlers({ [18:01:32.338] { [18:01:32.338] if (ii%%2 == 0) [18:01:32.338] stop("Woops!") [18:01:32.338] ii [18:01:32.338] } [18:01:32.338] }, immediateCondition = function(cond) { [18:01:32.338] sendCondition <- ...future.makeSendCondition() [18:01:32.338] sendCondition(cond) [18:01:32.338] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.338] { [18:01:32.338] inherits <- base::inherits [18:01:32.338] invokeRestart <- base::invokeRestart [18:01:32.338] is.null <- base::is.null [18:01:32.338] muffled <- FALSE [18:01:32.338] if (inherits(cond, "message")) { [18:01:32.338] muffled <- grepl(pattern, "muffleMessage") [18:01:32.338] if (muffled) [18:01:32.338] invokeRestart("muffleMessage") [18:01:32.338] } [18:01:32.338] else if (inherits(cond, "warning")) { [18:01:32.338] muffled <- grepl(pattern, "muffleWarning") [18:01:32.338] if (muffled) [18:01:32.338] invokeRestart("muffleWarning") [18:01:32.338] } [18:01:32.338] else if (inherits(cond, "condition")) { [18:01:32.338] if (!is.null(pattern)) { [18:01:32.338] computeRestarts <- base::computeRestarts [18:01:32.338] grepl <- base::grepl [18:01:32.338] restarts <- computeRestarts(cond) [18:01:32.338] for (restart in restarts) { [18:01:32.338] name <- restart$name [18:01:32.338] if (is.null(name)) [18:01:32.338] next [18:01:32.338] if (!grepl(pattern, name)) [18:01:32.338] next [18:01:32.338] invokeRestart(restart) [18:01:32.338] muffled <- TRUE [18:01:32.338] break [18:01:32.338] } [18:01:32.338] } [18:01:32.338] } [18:01:32.338] invisible(muffled) [18:01:32.338] } [18:01:32.338] muffleCondition(cond) [18:01:32.338] }) [18:01:32.338] })) [18:01:32.338] future::FutureResult(value = ...future.value$value, [18:01:32.338] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.338] ...future.rng), globalenv = if (FALSE) [18:01:32.338] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.338] ...future.globalenv.names)) [18:01:32.338] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.338] }, condition = base::local({ [18:01:32.338] c <- base::c [18:01:32.338] inherits <- base::inherits [18:01:32.338] invokeRestart <- base::invokeRestart [18:01:32.338] length <- base::length [18:01:32.338] list <- base::list [18:01:32.338] seq.int <- base::seq.int [18:01:32.338] signalCondition <- base::signalCondition [18:01:32.338] sys.calls <- base::sys.calls [18:01:32.338] `[[` <- base::`[[` [18:01:32.338] `+` <- base::`+` [18:01:32.338] `<<-` <- base::`<<-` [18:01:32.338] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.338] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.338] 3L)] [18:01:32.338] } [18:01:32.338] function(cond) { [18:01:32.338] is_error <- inherits(cond, "error") [18:01:32.338] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.338] NULL) [18:01:32.338] if (is_error) { [18:01:32.338] sessionInformation <- function() { [18:01:32.338] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.338] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.338] search = base::search(), system = base::Sys.info()) [18:01:32.338] } [18:01:32.338] ...future.conditions[[length(...future.conditions) + [18:01:32.338] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.338] cond$call), session = sessionInformation(), [18:01:32.338] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.338] signalCondition(cond) [18:01:32.338] } [18:01:32.338] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.338] "immediateCondition"))) { [18:01:32.338] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.338] ...future.conditions[[length(...future.conditions) + [18:01:32.338] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.338] if (TRUE && !signal) { [18:01:32.338] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.338] { [18:01:32.338] inherits <- base::inherits [18:01:32.338] invokeRestart <- base::invokeRestart [18:01:32.338] is.null <- base::is.null [18:01:32.338] muffled <- FALSE [18:01:32.338] if (inherits(cond, "message")) { [18:01:32.338] muffled <- grepl(pattern, "muffleMessage") [18:01:32.338] if (muffled) [18:01:32.338] invokeRestart("muffleMessage") [18:01:32.338] } [18:01:32.338] else if (inherits(cond, "warning")) { [18:01:32.338] muffled <- grepl(pattern, "muffleWarning") [18:01:32.338] if (muffled) [18:01:32.338] invokeRestart("muffleWarning") [18:01:32.338] } [18:01:32.338] else if (inherits(cond, "condition")) { [18:01:32.338] if (!is.null(pattern)) { [18:01:32.338] computeRestarts <- base::computeRestarts [18:01:32.338] grepl <- base::grepl [18:01:32.338] restarts <- computeRestarts(cond) [18:01:32.338] for (restart in restarts) { [18:01:32.338] name <- restart$name [18:01:32.338] if (is.null(name)) [18:01:32.338] next [18:01:32.338] if (!grepl(pattern, name)) [18:01:32.338] next [18:01:32.338] invokeRestart(restart) [18:01:32.338] muffled <- TRUE [18:01:32.338] break [18:01:32.338] } [18:01:32.338] } [18:01:32.338] } [18:01:32.338] invisible(muffled) [18:01:32.338] } [18:01:32.338] muffleCondition(cond, pattern = "^muffle") [18:01:32.338] } [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] if (TRUE) { [18:01:32.338] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.338] { [18:01:32.338] inherits <- base::inherits [18:01:32.338] invokeRestart <- base::invokeRestart [18:01:32.338] is.null <- base::is.null [18:01:32.338] muffled <- FALSE [18:01:32.338] if (inherits(cond, "message")) { [18:01:32.338] muffled <- grepl(pattern, "muffleMessage") [18:01:32.338] if (muffled) [18:01:32.338] invokeRestart("muffleMessage") [18:01:32.338] } [18:01:32.338] else if (inherits(cond, "warning")) { [18:01:32.338] muffled <- grepl(pattern, "muffleWarning") [18:01:32.338] if (muffled) [18:01:32.338] invokeRestart("muffleWarning") [18:01:32.338] } [18:01:32.338] else if (inherits(cond, "condition")) { [18:01:32.338] if (!is.null(pattern)) { [18:01:32.338] computeRestarts <- base::computeRestarts [18:01:32.338] grepl <- base::grepl [18:01:32.338] restarts <- computeRestarts(cond) [18:01:32.338] for (restart in restarts) { [18:01:32.338] name <- restart$name [18:01:32.338] if (is.null(name)) [18:01:32.338] next [18:01:32.338] if (!grepl(pattern, name)) [18:01:32.338] next [18:01:32.338] invokeRestart(restart) [18:01:32.338] muffled <- TRUE [18:01:32.338] break [18:01:32.338] } [18:01:32.338] } [18:01:32.338] } [18:01:32.338] invisible(muffled) [18:01:32.338] } [18:01:32.338] muffleCondition(cond, pattern = "^muffle") [18:01:32.338] } [18:01:32.338] } [18:01:32.338] } [18:01:32.338] })) [18:01:32.338] }, error = function(ex) { [18:01:32.338] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.338] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.338] ...future.rng), started = ...future.startTime, [18:01:32.338] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.338] version = "1.8"), class = "FutureResult") [18:01:32.338] }, finally = { [18:01:32.338] if (!identical(...future.workdir, getwd())) [18:01:32.338] setwd(...future.workdir) [18:01:32.338] { [18:01:32.338] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.338] ...future.oldOptions$nwarnings <- NULL [18:01:32.338] } [18:01:32.338] base::options(...future.oldOptions) [18:01:32.338] if (.Platform$OS.type == "windows") { [18:01:32.338] old_names <- names(...future.oldEnvVars) [18:01:32.338] envs <- base::Sys.getenv() [18:01:32.338] names <- names(envs) [18:01:32.338] common <- intersect(names, old_names) [18:01:32.338] added <- setdiff(names, old_names) [18:01:32.338] removed <- setdiff(old_names, names) [18:01:32.338] changed <- common[...future.oldEnvVars[common] != [18:01:32.338] envs[common]] [18:01:32.338] NAMES <- toupper(changed) [18:01:32.338] args <- list() [18:01:32.338] for (kk in seq_along(NAMES)) { [18:01:32.338] name <- changed[[kk]] [18:01:32.338] NAME <- NAMES[[kk]] [18:01:32.338] if (name != NAME && is.element(NAME, old_names)) [18:01:32.338] next [18:01:32.338] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.338] } [18:01:32.338] NAMES <- toupper(added) [18:01:32.338] for (kk in seq_along(NAMES)) { [18:01:32.338] name <- added[[kk]] [18:01:32.338] NAME <- NAMES[[kk]] [18:01:32.338] if (name != NAME && is.element(NAME, old_names)) [18:01:32.338] next [18:01:32.338] args[[name]] <- "" [18:01:32.338] } [18:01:32.338] NAMES <- toupper(removed) [18:01:32.338] for (kk in seq_along(NAMES)) { [18:01:32.338] name <- removed[[kk]] [18:01:32.338] NAME <- NAMES[[kk]] [18:01:32.338] if (name != NAME && is.element(NAME, old_names)) [18:01:32.338] next [18:01:32.338] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.338] } [18:01:32.338] if (length(args) > 0) [18:01:32.338] base::do.call(base::Sys.setenv, args = args) [18:01:32.338] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.338] } [18:01:32.338] { [18:01:32.338] if (base::length(...future.futureOptionsAdded) > [18:01:32.338] 0L) { [18:01:32.338] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.338] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.338] base::options(opts) [18:01:32.338] } [18:01:32.338] { [18:01:32.338] { [18:01:32.338] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.338] NULL [18:01:32.338] } [18:01:32.338] options(future.plan = NULL) [18:01:32.338] if (is.na(NA_character_)) [18:01:32.338] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.338] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.338] future::plan(list(function (..., workers = availableCores(), [18:01:32.338] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.338] envir = parent.frame()) [18:01:32.338] { [18:01:32.338] if (is.function(workers)) [18:01:32.338] workers <- workers() [18:01:32.338] workers <- structure(as.integer(workers), [18:01:32.338] class = class(workers)) [18:01:32.338] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.338] workers >= 1) [18:01:32.338] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.338] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.338] } [18:01:32.338] future <- MultisessionFuture(..., workers = workers, [18:01:32.338] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.338] envir = envir) [18:01:32.338] if (!future$lazy) [18:01:32.338] future <- run(future) [18:01:32.338] invisible(future) [18:01:32.338] }), .cleanup = FALSE, .init = FALSE) [18:01:32.338] } [18:01:32.338] } [18:01:32.338] } [18:01:32.338] }) [18:01:32.338] if (TRUE) { [18:01:32.338] base::sink(type = "output", split = FALSE) [18:01:32.338] if (TRUE) { [18:01:32.338] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.338] } [18:01:32.338] else { [18:01:32.338] ...future.result["stdout"] <- base::list(NULL) [18:01:32.338] } [18:01:32.338] base::close(...future.stdout) [18:01:32.338] ...future.stdout <- NULL [18:01:32.338] } [18:01:32.338] ...future.result$conditions <- ...future.conditions [18:01:32.338] ...future.result$finished <- base::Sys.time() [18:01:32.338] ...future.result [18:01:32.338] } [18:01:32.343] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:32.343] Exporting 'ii' (56 bytes) to cluster node #1 ... [18:01:32.344] Exporting 'ii' (56 bytes) to cluster node #1 ... DONE [18:01:32.344] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:32.345] MultisessionFuture started [18:01:32.345] - Launch lazy future ... done [18:01:32.345] run() for 'MultisessionFuture' ... done [18:01:32.346] getGlobalsAndPackages() ... [18:01:32.346] Searching for globals... [18:01:32.348] - globals found: [6] '{', 'if', '==', '%%', 'ii', 'stop' [18:01:32.348] Searching for globals ... DONE [18:01:32.348] Resolving globals: FALSE [18:01:32.349] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:32.349] The total size of the 1 globals exported for future expression ('{; if (ii%%2 == 0); stop("Woops!"); ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [18:01:32.349] - globals: [1] 'ii' [18:01:32.349] [18:01:32.350] getGlobalsAndPackages() ... DONE [18:01:32.350] run() for 'Future' ... [18:01:32.350] - state: 'created' [18:01:32.350] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.365] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.365] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.365] - Field: 'node' [18:01:32.365] - Field: 'label' [18:01:32.366] - Field: 'local' [18:01:32.366] - Field: 'owner' [18:01:32.366] - Field: 'envir' [18:01:32.366] - Field: 'workers' [18:01:32.366] - Field: 'packages' [18:01:32.366] - Field: 'gc' [18:01:32.367] - Field: 'conditions' [18:01:32.367] - Field: 'persistent' [18:01:32.367] - Field: 'expr' [18:01:32.367] - Field: 'uuid' [18:01:32.367] - Field: 'seed' [18:01:32.368] - Field: 'version' [18:01:32.368] - Field: 'result' [18:01:32.368] - Field: 'asynchronous' [18:01:32.368] - Field: 'calls' [18:01:32.368] - Field: 'globals' [18:01:32.368] - Field: 'stdout' [18:01:32.369] - Field: 'earlySignal' [18:01:32.369] - Field: 'lazy' [18:01:32.369] - Field: 'state' [18:01:32.369] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.369] - Launch lazy future ... [18:01:32.370] Packages needed by the future expression (n = 0): [18:01:32.370] Packages needed by future strategies (n = 0): [18:01:32.370] { [18:01:32.370] { [18:01:32.370] { [18:01:32.370] ...future.startTime <- base::Sys.time() [18:01:32.370] { [18:01:32.370] { [18:01:32.370] { [18:01:32.370] { [18:01:32.370] base::local({ [18:01:32.370] has_future <- base::requireNamespace("future", [18:01:32.370] quietly = TRUE) [18:01:32.370] if (has_future) { [18:01:32.370] ns <- base::getNamespace("future") [18:01:32.370] version <- ns[[".package"]][["version"]] [18:01:32.370] if (is.null(version)) [18:01:32.370] version <- utils::packageVersion("future") [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] version <- NULL [18:01:32.370] } [18:01:32.370] if (!has_future || version < "1.8.0") { [18:01:32.370] info <- base::c(r_version = base::gsub("R version ", [18:01:32.370] "", base::R.version$version.string), [18:01:32.370] platform = base::sprintf("%s (%s-bit)", [18:01:32.370] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.370] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.370] "release", "version")], collapse = " "), [18:01:32.370] hostname = base::Sys.info()[["nodename"]]) [18:01:32.370] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.370] info) [18:01:32.370] info <- base::paste(info, collapse = "; ") [18:01:32.370] if (!has_future) { [18:01:32.370] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.370] info) [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.370] info, version) [18:01:32.370] } [18:01:32.370] base::stop(msg) [18:01:32.370] } [18:01:32.370] }) [18:01:32.370] } [18:01:32.370] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.370] base::options(mc.cores = 1L) [18:01:32.370] } [18:01:32.370] options(future.plan = NULL) [18:01:32.370] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.370] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.370] } [18:01:32.370] ...future.workdir <- getwd() [18:01:32.370] } [18:01:32.370] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.370] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.370] } [18:01:32.370] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.370] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.370] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.370] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.370] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.370] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.370] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.370] base::names(...future.oldOptions)) [18:01:32.370] } [18:01:32.370] if (FALSE) { [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] if (TRUE) { [18:01:32.370] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.370] open = "w") [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.370] windows = "NUL", "/dev/null"), open = "w") [18:01:32.370] } [18:01:32.370] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.370] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.370] base::sink(type = "output", split = FALSE) [18:01:32.370] base::close(...future.stdout) [18:01:32.370] }, add = TRUE) [18:01:32.370] } [18:01:32.370] ...future.frame <- base::sys.nframe() [18:01:32.370] ...future.conditions <- base::list() [18:01:32.370] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.370] if (FALSE) { [18:01:32.370] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.370] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.370] } [18:01:32.370] ...future.result <- base::tryCatch({ [18:01:32.370] base::withCallingHandlers({ [18:01:32.370] ...future.value <- base::withVisible(base::local({ [18:01:32.370] ...future.makeSendCondition <- local({ [18:01:32.370] sendCondition <- NULL [18:01:32.370] function(frame = 1L) { [18:01:32.370] if (is.function(sendCondition)) [18:01:32.370] return(sendCondition) [18:01:32.370] ns <- getNamespace("parallel") [18:01:32.370] if (exists("sendData", mode = "function", [18:01:32.370] envir = ns)) { [18:01:32.370] parallel_sendData <- get("sendData", mode = "function", [18:01:32.370] envir = ns) [18:01:32.370] envir <- sys.frame(frame) [18:01:32.370] master <- NULL [18:01:32.370] while (!identical(envir, .GlobalEnv) && [18:01:32.370] !identical(envir, emptyenv())) { [18:01:32.370] if (exists("master", mode = "list", envir = envir, [18:01:32.370] inherits = FALSE)) { [18:01:32.370] master <- get("master", mode = "list", [18:01:32.370] envir = envir, inherits = FALSE) [18:01:32.370] if (inherits(master, c("SOCKnode", [18:01:32.370] "SOCK0node"))) { [18:01:32.370] sendCondition <<- function(cond) { [18:01:32.370] data <- list(type = "VALUE", value = cond, [18:01:32.370] success = TRUE) [18:01:32.370] parallel_sendData(master, data) [18:01:32.370] } [18:01:32.370] return(sendCondition) [18:01:32.370] } [18:01:32.370] } [18:01:32.370] frame <- frame + 1L [18:01:32.370] envir <- sys.frame(frame) [18:01:32.370] } [18:01:32.370] } [18:01:32.370] sendCondition <<- function(cond) NULL [18:01:32.370] } [18:01:32.370] }) [18:01:32.370] withCallingHandlers({ [18:01:32.370] { [18:01:32.370] if (ii%%2 == 0) [18:01:32.370] stop("Woops!") [18:01:32.370] ii [18:01:32.370] } [18:01:32.370] }, immediateCondition = function(cond) { [18:01:32.370] sendCondition <- ...future.makeSendCondition() [18:01:32.370] sendCondition(cond) [18:01:32.370] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.370] { [18:01:32.370] inherits <- base::inherits [18:01:32.370] invokeRestart <- base::invokeRestart [18:01:32.370] is.null <- base::is.null [18:01:32.370] muffled <- FALSE [18:01:32.370] if (inherits(cond, "message")) { [18:01:32.370] muffled <- grepl(pattern, "muffleMessage") [18:01:32.370] if (muffled) [18:01:32.370] invokeRestart("muffleMessage") [18:01:32.370] } [18:01:32.370] else if (inherits(cond, "warning")) { [18:01:32.370] muffled <- grepl(pattern, "muffleWarning") [18:01:32.370] if (muffled) [18:01:32.370] invokeRestart("muffleWarning") [18:01:32.370] } [18:01:32.370] else if (inherits(cond, "condition")) { [18:01:32.370] if (!is.null(pattern)) { [18:01:32.370] computeRestarts <- base::computeRestarts [18:01:32.370] grepl <- base::grepl [18:01:32.370] restarts <- computeRestarts(cond) [18:01:32.370] for (restart in restarts) { [18:01:32.370] name <- restart$name [18:01:32.370] if (is.null(name)) [18:01:32.370] next [18:01:32.370] if (!grepl(pattern, name)) [18:01:32.370] next [18:01:32.370] invokeRestart(restart) [18:01:32.370] muffled <- TRUE [18:01:32.370] break [18:01:32.370] } [18:01:32.370] } [18:01:32.370] } [18:01:32.370] invisible(muffled) [18:01:32.370] } [18:01:32.370] muffleCondition(cond) [18:01:32.370] }) [18:01:32.370] })) [18:01:32.370] future::FutureResult(value = ...future.value$value, [18:01:32.370] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.370] ...future.rng), globalenv = if (FALSE) [18:01:32.370] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.370] ...future.globalenv.names)) [18:01:32.370] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.370] }, condition = base::local({ [18:01:32.370] c <- base::c [18:01:32.370] inherits <- base::inherits [18:01:32.370] invokeRestart <- base::invokeRestart [18:01:32.370] length <- base::length [18:01:32.370] list <- base::list [18:01:32.370] seq.int <- base::seq.int [18:01:32.370] signalCondition <- base::signalCondition [18:01:32.370] sys.calls <- base::sys.calls [18:01:32.370] `[[` <- base::`[[` [18:01:32.370] `+` <- base::`+` [18:01:32.370] `<<-` <- base::`<<-` [18:01:32.370] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.370] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.370] 3L)] [18:01:32.370] } [18:01:32.370] function(cond) { [18:01:32.370] is_error <- inherits(cond, "error") [18:01:32.370] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.370] NULL) [18:01:32.370] if (is_error) { [18:01:32.370] sessionInformation <- function() { [18:01:32.370] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.370] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.370] search = base::search(), system = base::Sys.info()) [18:01:32.370] } [18:01:32.370] ...future.conditions[[length(...future.conditions) + [18:01:32.370] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.370] cond$call), session = sessionInformation(), [18:01:32.370] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.370] signalCondition(cond) [18:01:32.370] } [18:01:32.370] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.370] "immediateCondition"))) { [18:01:32.370] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.370] ...future.conditions[[length(...future.conditions) + [18:01:32.370] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.370] if (TRUE && !signal) { [18:01:32.370] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.370] { [18:01:32.370] inherits <- base::inherits [18:01:32.370] invokeRestart <- base::invokeRestart [18:01:32.370] is.null <- base::is.null [18:01:32.370] muffled <- FALSE [18:01:32.370] if (inherits(cond, "message")) { [18:01:32.370] muffled <- grepl(pattern, "muffleMessage") [18:01:32.370] if (muffled) [18:01:32.370] invokeRestart("muffleMessage") [18:01:32.370] } [18:01:32.370] else if (inherits(cond, "warning")) { [18:01:32.370] muffled <- grepl(pattern, "muffleWarning") [18:01:32.370] if (muffled) [18:01:32.370] invokeRestart("muffleWarning") [18:01:32.370] } [18:01:32.370] else if (inherits(cond, "condition")) { [18:01:32.370] if (!is.null(pattern)) { [18:01:32.370] computeRestarts <- base::computeRestarts [18:01:32.370] grepl <- base::grepl [18:01:32.370] restarts <- computeRestarts(cond) [18:01:32.370] for (restart in restarts) { [18:01:32.370] name <- restart$name [18:01:32.370] if (is.null(name)) [18:01:32.370] next [18:01:32.370] if (!grepl(pattern, name)) [18:01:32.370] next [18:01:32.370] invokeRestart(restart) [18:01:32.370] muffled <- TRUE [18:01:32.370] break [18:01:32.370] } [18:01:32.370] } [18:01:32.370] } [18:01:32.370] invisible(muffled) [18:01:32.370] } [18:01:32.370] muffleCondition(cond, pattern = "^muffle") [18:01:32.370] } [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] if (TRUE) { [18:01:32.370] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.370] { [18:01:32.370] inherits <- base::inherits [18:01:32.370] invokeRestart <- base::invokeRestart [18:01:32.370] is.null <- base::is.null [18:01:32.370] muffled <- FALSE [18:01:32.370] if (inherits(cond, "message")) { [18:01:32.370] muffled <- grepl(pattern, "muffleMessage") [18:01:32.370] if (muffled) [18:01:32.370] invokeRestart("muffleMessage") [18:01:32.370] } [18:01:32.370] else if (inherits(cond, "warning")) { [18:01:32.370] muffled <- grepl(pattern, "muffleWarning") [18:01:32.370] if (muffled) [18:01:32.370] invokeRestart("muffleWarning") [18:01:32.370] } [18:01:32.370] else if (inherits(cond, "condition")) { [18:01:32.370] if (!is.null(pattern)) { [18:01:32.370] computeRestarts <- base::computeRestarts [18:01:32.370] grepl <- base::grepl [18:01:32.370] restarts <- computeRestarts(cond) [18:01:32.370] for (restart in restarts) { [18:01:32.370] name <- restart$name [18:01:32.370] if (is.null(name)) [18:01:32.370] next [18:01:32.370] if (!grepl(pattern, name)) [18:01:32.370] next [18:01:32.370] invokeRestart(restart) [18:01:32.370] muffled <- TRUE [18:01:32.370] break [18:01:32.370] } [18:01:32.370] } [18:01:32.370] } [18:01:32.370] invisible(muffled) [18:01:32.370] } [18:01:32.370] muffleCondition(cond, pattern = "^muffle") [18:01:32.370] } [18:01:32.370] } [18:01:32.370] } [18:01:32.370] })) [18:01:32.370] }, error = function(ex) { [18:01:32.370] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.370] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.370] ...future.rng), started = ...future.startTime, [18:01:32.370] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.370] version = "1.8"), class = "FutureResult") [18:01:32.370] }, finally = { [18:01:32.370] if (!identical(...future.workdir, getwd())) [18:01:32.370] setwd(...future.workdir) [18:01:32.370] { [18:01:32.370] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.370] ...future.oldOptions$nwarnings <- NULL [18:01:32.370] } [18:01:32.370] base::options(...future.oldOptions) [18:01:32.370] if (.Platform$OS.type == "windows") { [18:01:32.370] old_names <- names(...future.oldEnvVars) [18:01:32.370] envs <- base::Sys.getenv() [18:01:32.370] names <- names(envs) [18:01:32.370] common <- intersect(names, old_names) [18:01:32.370] added <- setdiff(names, old_names) [18:01:32.370] removed <- setdiff(old_names, names) [18:01:32.370] changed <- common[...future.oldEnvVars[common] != [18:01:32.370] envs[common]] [18:01:32.370] NAMES <- toupper(changed) [18:01:32.370] args <- list() [18:01:32.370] for (kk in seq_along(NAMES)) { [18:01:32.370] name <- changed[[kk]] [18:01:32.370] NAME <- NAMES[[kk]] [18:01:32.370] if (name != NAME && is.element(NAME, old_names)) [18:01:32.370] next [18:01:32.370] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.370] } [18:01:32.370] NAMES <- toupper(added) [18:01:32.370] for (kk in seq_along(NAMES)) { [18:01:32.370] name <- added[[kk]] [18:01:32.370] NAME <- NAMES[[kk]] [18:01:32.370] if (name != NAME && is.element(NAME, old_names)) [18:01:32.370] next [18:01:32.370] args[[name]] <- "" [18:01:32.370] } [18:01:32.370] NAMES <- toupper(removed) [18:01:32.370] for (kk in seq_along(NAMES)) { [18:01:32.370] name <- removed[[kk]] [18:01:32.370] NAME <- NAMES[[kk]] [18:01:32.370] if (name != NAME && is.element(NAME, old_names)) [18:01:32.370] next [18:01:32.370] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.370] } [18:01:32.370] if (length(args) > 0) [18:01:32.370] base::do.call(base::Sys.setenv, args = args) [18:01:32.370] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.370] } [18:01:32.370] { [18:01:32.370] if (base::length(...future.futureOptionsAdded) > [18:01:32.370] 0L) { [18:01:32.370] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.370] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.370] base::options(opts) [18:01:32.370] } [18:01:32.370] { [18:01:32.370] { [18:01:32.370] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.370] NULL [18:01:32.370] } [18:01:32.370] options(future.plan = NULL) [18:01:32.370] if (is.na(NA_character_)) [18:01:32.370] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.370] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.370] future::plan(list(function (..., workers = availableCores(), [18:01:32.370] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.370] envir = parent.frame()) [18:01:32.370] { [18:01:32.370] if (is.function(workers)) [18:01:32.370] workers <- workers() [18:01:32.370] workers <- structure(as.integer(workers), [18:01:32.370] class = class(workers)) [18:01:32.370] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.370] workers >= 1) [18:01:32.370] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.370] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.370] } [18:01:32.370] future <- MultisessionFuture(..., workers = workers, [18:01:32.370] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.370] envir = envir) [18:01:32.370] if (!future$lazy) [18:01:32.370] future <- run(future) [18:01:32.370] invisible(future) [18:01:32.370] }), .cleanup = FALSE, .init = FALSE) [18:01:32.370] } [18:01:32.370] } [18:01:32.370] } [18:01:32.370] }) [18:01:32.370] if (TRUE) { [18:01:32.370] base::sink(type = "output", split = FALSE) [18:01:32.370] if (TRUE) { [18:01:32.370] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.370] } [18:01:32.370] else { [18:01:32.370] ...future.result["stdout"] <- base::list(NULL) [18:01:32.370] } [18:01:32.370] base::close(...future.stdout) [18:01:32.370] ...future.stdout <- NULL [18:01:32.370] } [18:01:32.370] ...future.result$conditions <- ...future.conditions [18:01:32.370] ...future.result$finished <- base::Sys.time() [18:01:32.370] ...future.result [18:01:32.370] } [18:01:32.458] Exporting 1 global objects (56 bytes) to cluster node #2 ... [18:01:32.458] Exporting 'ii' (56 bytes) to cluster node #2 ... [18:01:32.459] Exporting 'ii' (56 bytes) to cluster node #2 ... DONE [18:01:32.459] Exporting 1 global objects (56 bytes) to cluster node #2 ... DONE [18:01:32.460] MultisessionFuture started [18:01:32.460] - Launch lazy future ... done [18:01:32.460] run() for 'MultisessionFuture' ... done [18:01:32.460] getGlobalsAndPackages() ... [18:01:32.461] Searching for globals... [18:01:32.462] - globals found: [6] '{', 'if', '==', '%%', 'ii', 'stop' [18:01:32.463] Searching for globals ... DONE [18:01:32.463] Resolving globals: FALSE [18:01:32.463] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:32.464] The total size of the 1 globals exported for future expression ('{; if (ii%%2 == 0); stop("Woops!"); ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [18:01:32.464] - globals: [1] 'ii' [18:01:32.464] [18:01:32.464] getGlobalsAndPackages() ... DONE [18:01:32.465] run() for 'Future' ... [18:01:32.465] - state: 'created' [18:01:32.465] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.478] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.479] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.479] - Field: 'node' [18:01:32.479] - Field: 'label' [18:01:32.479] - Field: 'local' [18:01:32.479] - Field: 'owner' [18:01:32.480] - Field: 'envir' [18:01:32.480] - Field: 'workers' [18:01:32.480] - Field: 'packages' [18:01:32.480] - Field: 'gc' [18:01:32.480] - Field: 'conditions' [18:01:32.481] - Field: 'persistent' [18:01:32.481] - Field: 'expr' [18:01:32.481] - Field: 'uuid' [18:01:32.481] - Field: 'seed' [18:01:32.481] - Field: 'version' [18:01:32.481] - Field: 'result' [18:01:32.482] - Field: 'asynchronous' [18:01:32.482] - Field: 'calls' [18:01:32.482] - Field: 'globals' [18:01:32.482] - Field: 'stdout' [18:01:32.482] - Field: 'earlySignal' [18:01:32.483] - Field: 'lazy' [18:01:32.483] - Field: 'state' [18:01:32.483] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.483] - Launch lazy future ... [18:01:32.483] Packages needed by the future expression (n = 0): [18:01:32.484] Packages needed by future strategies (n = 0): [18:01:32.484] { [18:01:32.484] { [18:01:32.484] { [18:01:32.484] ...future.startTime <- base::Sys.time() [18:01:32.484] { [18:01:32.484] { [18:01:32.484] { [18:01:32.484] { [18:01:32.484] base::local({ [18:01:32.484] has_future <- base::requireNamespace("future", [18:01:32.484] quietly = TRUE) [18:01:32.484] if (has_future) { [18:01:32.484] ns <- base::getNamespace("future") [18:01:32.484] version <- ns[[".package"]][["version"]] [18:01:32.484] if (is.null(version)) [18:01:32.484] version <- utils::packageVersion("future") [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] version <- NULL [18:01:32.484] } [18:01:32.484] if (!has_future || version < "1.8.0") { [18:01:32.484] info <- base::c(r_version = base::gsub("R version ", [18:01:32.484] "", base::R.version$version.string), [18:01:32.484] platform = base::sprintf("%s (%s-bit)", [18:01:32.484] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.484] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.484] "release", "version")], collapse = " "), [18:01:32.484] hostname = base::Sys.info()[["nodename"]]) [18:01:32.484] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.484] info) [18:01:32.484] info <- base::paste(info, collapse = "; ") [18:01:32.484] if (!has_future) { [18:01:32.484] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.484] info) [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.484] info, version) [18:01:32.484] } [18:01:32.484] base::stop(msg) [18:01:32.484] } [18:01:32.484] }) [18:01:32.484] } [18:01:32.484] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.484] base::options(mc.cores = 1L) [18:01:32.484] } [18:01:32.484] options(future.plan = NULL) [18:01:32.484] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.484] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.484] } [18:01:32.484] ...future.workdir <- getwd() [18:01:32.484] } [18:01:32.484] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.484] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.484] } [18:01:32.484] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.484] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.484] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.484] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.484] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.484] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.484] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.484] base::names(...future.oldOptions)) [18:01:32.484] } [18:01:32.484] if (FALSE) { [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] if (TRUE) { [18:01:32.484] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.484] open = "w") [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.484] windows = "NUL", "/dev/null"), open = "w") [18:01:32.484] } [18:01:32.484] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.484] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.484] base::sink(type = "output", split = FALSE) [18:01:32.484] base::close(...future.stdout) [18:01:32.484] }, add = TRUE) [18:01:32.484] } [18:01:32.484] ...future.frame <- base::sys.nframe() [18:01:32.484] ...future.conditions <- base::list() [18:01:32.484] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.484] if (FALSE) { [18:01:32.484] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.484] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.484] } [18:01:32.484] ...future.result <- base::tryCatch({ [18:01:32.484] base::withCallingHandlers({ [18:01:32.484] ...future.value <- base::withVisible(base::local({ [18:01:32.484] ...future.makeSendCondition <- local({ [18:01:32.484] sendCondition <- NULL [18:01:32.484] function(frame = 1L) { [18:01:32.484] if (is.function(sendCondition)) [18:01:32.484] return(sendCondition) [18:01:32.484] ns <- getNamespace("parallel") [18:01:32.484] if (exists("sendData", mode = "function", [18:01:32.484] envir = ns)) { [18:01:32.484] parallel_sendData <- get("sendData", mode = "function", [18:01:32.484] envir = ns) [18:01:32.484] envir <- sys.frame(frame) [18:01:32.484] master <- NULL [18:01:32.484] while (!identical(envir, .GlobalEnv) && [18:01:32.484] !identical(envir, emptyenv())) { [18:01:32.484] if (exists("master", mode = "list", envir = envir, [18:01:32.484] inherits = FALSE)) { [18:01:32.484] master <- get("master", mode = "list", [18:01:32.484] envir = envir, inherits = FALSE) [18:01:32.484] if (inherits(master, c("SOCKnode", [18:01:32.484] "SOCK0node"))) { [18:01:32.484] sendCondition <<- function(cond) { [18:01:32.484] data <- list(type = "VALUE", value = cond, [18:01:32.484] success = TRUE) [18:01:32.484] parallel_sendData(master, data) [18:01:32.484] } [18:01:32.484] return(sendCondition) [18:01:32.484] } [18:01:32.484] } [18:01:32.484] frame <- frame + 1L [18:01:32.484] envir <- sys.frame(frame) [18:01:32.484] } [18:01:32.484] } [18:01:32.484] sendCondition <<- function(cond) NULL [18:01:32.484] } [18:01:32.484] }) [18:01:32.484] withCallingHandlers({ [18:01:32.484] { [18:01:32.484] if (ii%%2 == 0) [18:01:32.484] stop("Woops!") [18:01:32.484] ii [18:01:32.484] } [18:01:32.484] }, immediateCondition = function(cond) { [18:01:32.484] sendCondition <- ...future.makeSendCondition() [18:01:32.484] sendCondition(cond) [18:01:32.484] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.484] { [18:01:32.484] inherits <- base::inherits [18:01:32.484] invokeRestart <- base::invokeRestart [18:01:32.484] is.null <- base::is.null [18:01:32.484] muffled <- FALSE [18:01:32.484] if (inherits(cond, "message")) { [18:01:32.484] muffled <- grepl(pattern, "muffleMessage") [18:01:32.484] if (muffled) [18:01:32.484] invokeRestart("muffleMessage") [18:01:32.484] } [18:01:32.484] else if (inherits(cond, "warning")) { [18:01:32.484] muffled <- grepl(pattern, "muffleWarning") [18:01:32.484] if (muffled) [18:01:32.484] invokeRestart("muffleWarning") [18:01:32.484] } [18:01:32.484] else if (inherits(cond, "condition")) { [18:01:32.484] if (!is.null(pattern)) { [18:01:32.484] computeRestarts <- base::computeRestarts [18:01:32.484] grepl <- base::grepl [18:01:32.484] restarts <- computeRestarts(cond) [18:01:32.484] for (restart in restarts) { [18:01:32.484] name <- restart$name [18:01:32.484] if (is.null(name)) [18:01:32.484] next [18:01:32.484] if (!grepl(pattern, name)) [18:01:32.484] next [18:01:32.484] invokeRestart(restart) [18:01:32.484] muffled <- TRUE [18:01:32.484] break [18:01:32.484] } [18:01:32.484] } [18:01:32.484] } [18:01:32.484] invisible(muffled) [18:01:32.484] } [18:01:32.484] muffleCondition(cond) [18:01:32.484] }) [18:01:32.484] })) [18:01:32.484] future::FutureResult(value = ...future.value$value, [18:01:32.484] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.484] ...future.rng), globalenv = if (FALSE) [18:01:32.484] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.484] ...future.globalenv.names)) [18:01:32.484] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.484] }, condition = base::local({ [18:01:32.484] c <- base::c [18:01:32.484] inherits <- base::inherits [18:01:32.484] invokeRestart <- base::invokeRestart [18:01:32.484] length <- base::length [18:01:32.484] list <- base::list [18:01:32.484] seq.int <- base::seq.int [18:01:32.484] signalCondition <- base::signalCondition [18:01:32.484] sys.calls <- base::sys.calls [18:01:32.484] `[[` <- base::`[[` [18:01:32.484] `+` <- base::`+` [18:01:32.484] `<<-` <- base::`<<-` [18:01:32.484] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.484] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.484] 3L)] [18:01:32.484] } [18:01:32.484] function(cond) { [18:01:32.484] is_error <- inherits(cond, "error") [18:01:32.484] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.484] NULL) [18:01:32.484] if (is_error) { [18:01:32.484] sessionInformation <- function() { [18:01:32.484] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.484] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.484] search = base::search(), system = base::Sys.info()) [18:01:32.484] } [18:01:32.484] ...future.conditions[[length(...future.conditions) + [18:01:32.484] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.484] cond$call), session = sessionInformation(), [18:01:32.484] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.484] signalCondition(cond) [18:01:32.484] } [18:01:32.484] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.484] "immediateCondition"))) { [18:01:32.484] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.484] ...future.conditions[[length(...future.conditions) + [18:01:32.484] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.484] if (TRUE && !signal) { [18:01:32.484] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.484] { [18:01:32.484] inherits <- base::inherits [18:01:32.484] invokeRestart <- base::invokeRestart [18:01:32.484] is.null <- base::is.null [18:01:32.484] muffled <- FALSE [18:01:32.484] if (inherits(cond, "message")) { [18:01:32.484] muffled <- grepl(pattern, "muffleMessage") [18:01:32.484] if (muffled) [18:01:32.484] invokeRestart("muffleMessage") [18:01:32.484] } [18:01:32.484] else if (inherits(cond, "warning")) { [18:01:32.484] muffled <- grepl(pattern, "muffleWarning") [18:01:32.484] if (muffled) [18:01:32.484] invokeRestart("muffleWarning") [18:01:32.484] } [18:01:32.484] else if (inherits(cond, "condition")) { [18:01:32.484] if (!is.null(pattern)) { [18:01:32.484] computeRestarts <- base::computeRestarts [18:01:32.484] grepl <- base::grepl [18:01:32.484] restarts <- computeRestarts(cond) [18:01:32.484] for (restart in restarts) { [18:01:32.484] name <- restart$name [18:01:32.484] if (is.null(name)) [18:01:32.484] next [18:01:32.484] if (!grepl(pattern, name)) [18:01:32.484] next [18:01:32.484] invokeRestart(restart) [18:01:32.484] muffled <- TRUE [18:01:32.484] break [18:01:32.484] } [18:01:32.484] } [18:01:32.484] } [18:01:32.484] invisible(muffled) [18:01:32.484] } [18:01:32.484] muffleCondition(cond, pattern = "^muffle") [18:01:32.484] } [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] if (TRUE) { [18:01:32.484] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.484] { [18:01:32.484] inherits <- base::inherits [18:01:32.484] invokeRestart <- base::invokeRestart [18:01:32.484] is.null <- base::is.null [18:01:32.484] muffled <- FALSE [18:01:32.484] if (inherits(cond, "message")) { [18:01:32.484] muffled <- grepl(pattern, "muffleMessage") [18:01:32.484] if (muffled) [18:01:32.484] invokeRestart("muffleMessage") [18:01:32.484] } [18:01:32.484] else if (inherits(cond, "warning")) { [18:01:32.484] muffled <- grepl(pattern, "muffleWarning") [18:01:32.484] if (muffled) [18:01:32.484] invokeRestart("muffleWarning") [18:01:32.484] } [18:01:32.484] else if (inherits(cond, "condition")) { [18:01:32.484] if (!is.null(pattern)) { [18:01:32.484] computeRestarts <- base::computeRestarts [18:01:32.484] grepl <- base::grepl [18:01:32.484] restarts <- computeRestarts(cond) [18:01:32.484] for (restart in restarts) { [18:01:32.484] name <- restart$name [18:01:32.484] if (is.null(name)) [18:01:32.484] next [18:01:32.484] if (!grepl(pattern, name)) [18:01:32.484] next [18:01:32.484] invokeRestart(restart) [18:01:32.484] muffled <- TRUE [18:01:32.484] break [18:01:32.484] } [18:01:32.484] } [18:01:32.484] } [18:01:32.484] invisible(muffled) [18:01:32.484] } [18:01:32.484] muffleCondition(cond, pattern = "^muffle") [18:01:32.484] } [18:01:32.484] } [18:01:32.484] } [18:01:32.484] })) [18:01:32.484] }, error = function(ex) { [18:01:32.484] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.484] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.484] ...future.rng), started = ...future.startTime, [18:01:32.484] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.484] version = "1.8"), class = "FutureResult") [18:01:32.484] }, finally = { [18:01:32.484] if (!identical(...future.workdir, getwd())) [18:01:32.484] setwd(...future.workdir) [18:01:32.484] { [18:01:32.484] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.484] ...future.oldOptions$nwarnings <- NULL [18:01:32.484] } [18:01:32.484] base::options(...future.oldOptions) [18:01:32.484] if (.Platform$OS.type == "windows") { [18:01:32.484] old_names <- names(...future.oldEnvVars) [18:01:32.484] envs <- base::Sys.getenv() [18:01:32.484] names <- names(envs) [18:01:32.484] common <- intersect(names, old_names) [18:01:32.484] added <- setdiff(names, old_names) [18:01:32.484] removed <- setdiff(old_names, names) [18:01:32.484] changed <- common[...future.oldEnvVars[common] != [18:01:32.484] envs[common]] [18:01:32.484] NAMES <- toupper(changed) [18:01:32.484] args <- list() [18:01:32.484] for (kk in seq_along(NAMES)) { [18:01:32.484] name <- changed[[kk]] [18:01:32.484] NAME <- NAMES[[kk]] [18:01:32.484] if (name != NAME && is.element(NAME, old_names)) [18:01:32.484] next [18:01:32.484] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.484] } [18:01:32.484] NAMES <- toupper(added) [18:01:32.484] for (kk in seq_along(NAMES)) { [18:01:32.484] name <- added[[kk]] [18:01:32.484] NAME <- NAMES[[kk]] [18:01:32.484] if (name != NAME && is.element(NAME, old_names)) [18:01:32.484] next [18:01:32.484] args[[name]] <- "" [18:01:32.484] } [18:01:32.484] NAMES <- toupper(removed) [18:01:32.484] for (kk in seq_along(NAMES)) { [18:01:32.484] name <- removed[[kk]] [18:01:32.484] NAME <- NAMES[[kk]] [18:01:32.484] if (name != NAME && is.element(NAME, old_names)) [18:01:32.484] next [18:01:32.484] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.484] } [18:01:32.484] if (length(args) > 0) [18:01:32.484] base::do.call(base::Sys.setenv, args = args) [18:01:32.484] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.484] } [18:01:32.484] { [18:01:32.484] if (base::length(...future.futureOptionsAdded) > [18:01:32.484] 0L) { [18:01:32.484] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.484] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.484] base::options(opts) [18:01:32.484] } [18:01:32.484] { [18:01:32.484] { [18:01:32.484] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.484] NULL [18:01:32.484] } [18:01:32.484] options(future.plan = NULL) [18:01:32.484] if (is.na(NA_character_)) [18:01:32.484] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.484] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.484] future::plan(list(function (..., workers = availableCores(), [18:01:32.484] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.484] envir = parent.frame()) [18:01:32.484] { [18:01:32.484] if (is.function(workers)) [18:01:32.484] workers <- workers() [18:01:32.484] workers <- structure(as.integer(workers), [18:01:32.484] class = class(workers)) [18:01:32.484] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.484] workers >= 1) [18:01:32.484] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.484] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.484] } [18:01:32.484] future <- MultisessionFuture(..., workers = workers, [18:01:32.484] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.484] envir = envir) [18:01:32.484] if (!future$lazy) [18:01:32.484] future <- run(future) [18:01:32.484] invisible(future) [18:01:32.484] }), .cleanup = FALSE, .init = FALSE) [18:01:32.484] } [18:01:32.484] } [18:01:32.484] } [18:01:32.484] }) [18:01:32.484] if (TRUE) { [18:01:32.484] base::sink(type = "output", split = FALSE) [18:01:32.484] if (TRUE) { [18:01:32.484] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.484] } [18:01:32.484] else { [18:01:32.484] ...future.result["stdout"] <- base::list(NULL) [18:01:32.484] } [18:01:32.484] base::close(...future.stdout) [18:01:32.484] ...future.stdout <- NULL [18:01:32.484] } [18:01:32.484] ...future.result$conditions <- ...future.conditions [18:01:32.484] ...future.result$finished <- base::Sys.time() [18:01:32.484] ...future.result [18:01:32.484] } [18:01:32.489] Poll #1 (0): usedNodes() = 2, workers = 2 [18:01:32.515] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.516] - Validating connection of MultisessionFuture [18:01:32.516] - received message: FutureResult [18:01:32.516] - Received FutureResult [18:01:32.516] - Erased future from FutureRegistry [18:01:32.516] result() for ClusterFuture ... [18:01:32.517] - result already collected: FutureResult [18:01:32.517] result() for ClusterFuture ... done [18:01:32.517] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.517] result() for ClusterFuture ... [18:01:32.517] - result already collected: FutureResult [18:01:32.517] result() for ClusterFuture ... done [18:01:32.518] result() for ClusterFuture ... [18:01:32.518] - result already collected: FutureResult [18:01:32.518] result() for ClusterFuture ... done [18:01:32.519] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:32.519] Exporting 'ii' (56 bytes) to cluster node #1 ... [18:01:32.519] Exporting 'ii' (56 bytes) to cluster node #1 ... DONE [18:01:32.519] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:32.520] MultisessionFuture started [18:01:32.520] - Launch lazy future ... done [18:01:32.521] run() for 'MultisessionFuture' ... done [18:01:32.521] result() for ClusterFuture ... [18:01:32.521] - result already collected: FutureResult [18:01:32.521] result() for ClusterFuture ... done [18:01:32.521] result() for ClusterFuture ... [18:01:32.521] - result already collected: FutureResult [18:01:32.522] result() for ClusterFuture ... done [18:01:32.522] result() for ClusterFuture ... [18:01:32.522] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.522] - Validating connection of MultisessionFuture [18:01:32.523] - received message: FutureResult [18:01:32.523] - Received FutureResult [18:01:32.523] - Erased future from FutureRegistry [18:01:32.523] result() for ClusterFuture ... [18:01:32.523] - result already collected: FutureResult [18:01:32.524] result() for ClusterFuture ... done [18:01:32.524] signalConditions() ... [18:01:32.524] - include = 'immediateCondition' [18:01:32.524] - exclude = [18:01:32.524] - resignal = FALSE [18:01:32.524] - Number of conditions: 1 [18:01:32.525] signalConditions() ... done [18:01:32.525] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.525] result() for ClusterFuture ... done [18:01:32.525] result() for ClusterFuture ... [18:01:32.525] - result already collected: FutureResult [18:01:32.525] result() for ClusterFuture ... done [18:01:32.526] signalConditions() ... [18:01:32.526] - include = 'immediateCondition' [18:01:32.526] - exclude = [18:01:32.526] - resignal = FALSE [18:01:32.526] - Number of conditions: 1 [18:01:32.526] signalConditions() ... done [18:01:32.527] Future state: 'finished' [18:01:32.527] result() for ClusterFuture ... [18:01:32.527] - result already collected: FutureResult [18:01:32.527] result() for ClusterFuture ... done [18:01:32.527] signalConditions() ... [18:01:32.527] - include = 'condition' [18:01:32.528] - exclude = 'immediateCondition' [18:01:32.528] - resignal = TRUE [18:01:32.528] - Number of conditions: 1 [18:01:32.528] - Condition #1: 'simpleError', 'error', 'condition' [18:01:32.528] signalConditions() ... done [18:01:32.529] result() for ClusterFuture ... [18:01:32.529] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.529] - Validating connection of MultisessionFuture [18:01:32.539] - received message: FutureResult [18:01:32.539] - Received FutureResult [18:01:32.539] - Erased future from FutureRegistry [18:01:32.540] result() for ClusterFuture ... [18:01:32.540] - result already collected: FutureResult [18:01:32.540] result() for ClusterFuture ... done [18:01:32.540] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.540] result() for ClusterFuture ... done [18:01:32.540] result() for ClusterFuture ... [18:01:32.541] - result already collected: FutureResult [18:01:32.541] result() for ClusterFuture ... done Warning in get(var, envir = x, inherits = FALSE) : restarting interrupted promise evaluation [18:01:32.541] result() for ClusterFuture ... [18:01:32.541] - result already collected: FutureResult [18:01:32.541] result() for ClusterFuture ... done [18:01:32.542] result() for ClusterFuture ... [18:01:32.542] - result already collected: FutureResult [18:01:32.542] result() for ClusterFuture ... done [18:01:32.542] signalConditions() ... [18:01:32.542] - include = 'immediateCondition' [18:01:32.542] - exclude = [18:01:32.543] - resignal = FALSE [18:01:32.543] - Number of conditions: 1 [18:01:32.543] signalConditions() ... done [18:01:32.543] Future state: 'finished' [18:01:32.543] result() for ClusterFuture ... [18:01:32.543] - result already collected: FutureResult [18:01:32.544] result() for ClusterFuture ... done [18:01:32.544] signalConditions() ... [18:01:32.544] - include = 'condition' [18:01:32.544] - exclude = 'immediateCondition' [18:01:32.544] - resignal = TRUE [18:01:32.544] - Number of conditions: 1 [18:01:32.545] - Condition #1: 'simpleError', 'error', 'condition' [18:01:32.545] signalConditions() ... done Warning in get(var, envir = x, inherits = FALSE) : restarting interrupted promise evaluation [18:01:32.545] result() for ClusterFuture ... [18:01:32.545] - result already collected: FutureResult [18:01:32.546] result() for ClusterFuture ... done [18:01:32.546] result() for ClusterFuture ... [18:01:32.546] - result already collected: FutureResult [18:01:32.546] result() for ClusterFuture ... done [18:01:32.546] signalConditions() ... [18:01:32.546] - include = 'immediateCondition' [18:01:32.547] - exclude = [18:01:32.547] - resignal = FALSE [18:01:32.547] - Number of conditions: 1 [18:01:32.547] signalConditions() ... done [18:01:32.547] Future state: 'finished' [18:01:32.547] result() for ClusterFuture ... [18:01:32.548] - result already collected: FutureResult [18:01:32.548] result() for ClusterFuture ... done [18:01:32.548] signalConditions() ... [18:01:32.548] - include = 'condition' [18:01:32.548] - exclude = 'immediateCondition' [18:01:32.548] - resignal = TRUE [18:01:32.549] - Number of conditions: 1 [18:01:32.549] - Condition #1: 'simpleError', 'error', 'condition' [18:01:32.549] signalConditions() ... done ** Future evaluation with a poor-man's "progress bar" [18:01:32.549] getGlobalsAndPackages() ... [18:01:32.550] Searching for globals... [18:01:32.552] - globals found: [4] '{', 'cat', 'for', ':' [18:01:32.552] Searching for globals ... DONE [18:01:32.552] Resolving globals: FALSE [18:01:32.553] [18:01:32.553] [18:01:32.553] getGlobalsAndPackages() ... DONE [18:01:32.553] run() for 'Future' ... [18:01:32.553] - state: 'created' [18:01:32.554] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.567] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.567] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.568] - Field: 'node' [18:01:32.568] - Field: 'label' [18:01:32.568] - Field: 'local' [18:01:32.568] - Field: 'owner' [18:01:32.568] - Field: 'envir' [18:01:32.569] - Field: 'workers' [18:01:32.569] - Field: 'packages' [18:01:32.569] - Field: 'gc' [18:01:32.569] - Field: 'conditions' [18:01:32.569] - Field: 'persistent' [18:01:32.569] - Field: 'expr' [18:01:32.570] - Field: 'uuid' [18:01:32.570] - Field: 'seed' [18:01:32.570] - Field: 'version' [18:01:32.570] - Field: 'result' [18:01:32.570] - Field: 'asynchronous' [18:01:32.570] - Field: 'calls' [18:01:32.571] - Field: 'globals' [18:01:32.571] - Field: 'stdout' [18:01:32.571] - Field: 'earlySignal' [18:01:32.571] - Field: 'lazy' [18:01:32.571] - Field: 'state' [18:01:32.572] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.572] - Launch lazy future ... [18:01:32.572] Packages needed by the future expression (n = 0): [18:01:32.572] Packages needed by future strategies (n = 0): [18:01:32.573] { [18:01:32.573] { [18:01:32.573] { [18:01:32.573] ...future.startTime <- base::Sys.time() [18:01:32.573] { [18:01:32.573] { [18:01:32.573] { [18:01:32.573] { [18:01:32.573] base::local({ [18:01:32.573] has_future <- base::requireNamespace("future", [18:01:32.573] quietly = TRUE) [18:01:32.573] if (has_future) { [18:01:32.573] ns <- base::getNamespace("future") [18:01:32.573] version <- ns[[".package"]][["version"]] [18:01:32.573] if (is.null(version)) [18:01:32.573] version <- utils::packageVersion("future") [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] version <- NULL [18:01:32.573] } [18:01:32.573] if (!has_future || version < "1.8.0") { [18:01:32.573] info <- base::c(r_version = base::gsub("R version ", [18:01:32.573] "", base::R.version$version.string), [18:01:32.573] platform = base::sprintf("%s (%s-bit)", [18:01:32.573] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.573] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.573] "release", "version")], collapse = " "), [18:01:32.573] hostname = base::Sys.info()[["nodename"]]) [18:01:32.573] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.573] info) [18:01:32.573] info <- base::paste(info, collapse = "; ") [18:01:32.573] if (!has_future) { [18:01:32.573] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.573] info) [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.573] info, version) [18:01:32.573] } [18:01:32.573] base::stop(msg) [18:01:32.573] } [18:01:32.573] }) [18:01:32.573] } [18:01:32.573] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.573] base::options(mc.cores = 1L) [18:01:32.573] } [18:01:32.573] options(future.plan = NULL) [18:01:32.573] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.573] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.573] } [18:01:32.573] ...future.workdir <- getwd() [18:01:32.573] } [18:01:32.573] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.573] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.573] } [18:01:32.573] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.573] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.573] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.573] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.573] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.573] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.573] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.573] base::names(...future.oldOptions)) [18:01:32.573] } [18:01:32.573] if (FALSE) { [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] if (TRUE) { [18:01:32.573] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.573] open = "w") [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.573] windows = "NUL", "/dev/null"), open = "w") [18:01:32.573] } [18:01:32.573] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.573] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.573] base::sink(type = "output", split = FALSE) [18:01:32.573] base::close(...future.stdout) [18:01:32.573] }, add = TRUE) [18:01:32.573] } [18:01:32.573] ...future.frame <- base::sys.nframe() [18:01:32.573] ...future.conditions <- base::list() [18:01:32.573] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.573] if (FALSE) { [18:01:32.573] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.573] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.573] } [18:01:32.573] ...future.result <- base::tryCatch({ [18:01:32.573] base::withCallingHandlers({ [18:01:32.573] ...future.value <- base::withVisible(base::local({ [18:01:32.573] ...future.makeSendCondition <- local({ [18:01:32.573] sendCondition <- NULL [18:01:32.573] function(frame = 1L) { [18:01:32.573] if (is.function(sendCondition)) [18:01:32.573] return(sendCondition) [18:01:32.573] ns <- getNamespace("parallel") [18:01:32.573] if (exists("sendData", mode = "function", [18:01:32.573] envir = ns)) { [18:01:32.573] parallel_sendData <- get("sendData", mode = "function", [18:01:32.573] envir = ns) [18:01:32.573] envir <- sys.frame(frame) [18:01:32.573] master <- NULL [18:01:32.573] while (!identical(envir, .GlobalEnv) && [18:01:32.573] !identical(envir, emptyenv())) { [18:01:32.573] if (exists("master", mode = "list", envir = envir, [18:01:32.573] inherits = FALSE)) { [18:01:32.573] master <- get("master", mode = "list", [18:01:32.573] envir = envir, inherits = FALSE) [18:01:32.573] if (inherits(master, c("SOCKnode", [18:01:32.573] "SOCK0node"))) { [18:01:32.573] sendCondition <<- function(cond) { [18:01:32.573] data <- list(type = "VALUE", value = cond, [18:01:32.573] success = TRUE) [18:01:32.573] parallel_sendData(master, data) [18:01:32.573] } [18:01:32.573] return(sendCondition) [18:01:32.573] } [18:01:32.573] } [18:01:32.573] frame <- frame + 1L [18:01:32.573] envir <- sys.frame(frame) [18:01:32.573] } [18:01:32.573] } [18:01:32.573] sendCondition <<- function(cond) NULL [18:01:32.573] } [18:01:32.573] }) [18:01:32.573] withCallingHandlers({ [18:01:32.573] { [18:01:32.573] cat("Processing: ") [18:01:32.573] for (ii in 1:10) { [18:01:32.573] cat(".") [18:01:32.573] } [18:01:32.573] cat(" [100%]\n") [18:01:32.573] 4 [18:01:32.573] } [18:01:32.573] }, immediateCondition = function(cond) { [18:01:32.573] sendCondition <- ...future.makeSendCondition() [18:01:32.573] sendCondition(cond) [18:01:32.573] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.573] { [18:01:32.573] inherits <- base::inherits [18:01:32.573] invokeRestart <- base::invokeRestart [18:01:32.573] is.null <- base::is.null [18:01:32.573] muffled <- FALSE [18:01:32.573] if (inherits(cond, "message")) { [18:01:32.573] muffled <- grepl(pattern, "muffleMessage") [18:01:32.573] if (muffled) [18:01:32.573] invokeRestart("muffleMessage") [18:01:32.573] } [18:01:32.573] else if (inherits(cond, "warning")) { [18:01:32.573] muffled <- grepl(pattern, "muffleWarning") [18:01:32.573] if (muffled) [18:01:32.573] invokeRestart("muffleWarning") [18:01:32.573] } [18:01:32.573] else if (inherits(cond, "condition")) { [18:01:32.573] if (!is.null(pattern)) { [18:01:32.573] computeRestarts <- base::computeRestarts [18:01:32.573] grepl <- base::grepl [18:01:32.573] restarts <- computeRestarts(cond) [18:01:32.573] for (restart in restarts) { [18:01:32.573] name <- restart$name [18:01:32.573] if (is.null(name)) [18:01:32.573] next [18:01:32.573] if (!grepl(pattern, name)) [18:01:32.573] next [18:01:32.573] invokeRestart(restart) [18:01:32.573] muffled <- TRUE [18:01:32.573] break [18:01:32.573] } [18:01:32.573] } [18:01:32.573] } [18:01:32.573] invisible(muffled) [18:01:32.573] } [18:01:32.573] muffleCondition(cond) [18:01:32.573] }) [18:01:32.573] })) [18:01:32.573] future::FutureResult(value = ...future.value$value, [18:01:32.573] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.573] ...future.rng), globalenv = if (FALSE) [18:01:32.573] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.573] ...future.globalenv.names)) [18:01:32.573] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.573] }, condition = base::local({ [18:01:32.573] c <- base::c [18:01:32.573] inherits <- base::inherits [18:01:32.573] invokeRestart <- base::invokeRestart [18:01:32.573] length <- base::length [18:01:32.573] list <- base::list [18:01:32.573] seq.int <- base::seq.int [18:01:32.573] signalCondition <- base::signalCondition [18:01:32.573] sys.calls <- base::sys.calls [18:01:32.573] `[[` <- base::`[[` [18:01:32.573] `+` <- base::`+` [18:01:32.573] `<<-` <- base::`<<-` [18:01:32.573] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.573] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.573] 3L)] [18:01:32.573] } [18:01:32.573] function(cond) { [18:01:32.573] is_error <- inherits(cond, "error") [18:01:32.573] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.573] NULL) [18:01:32.573] if (is_error) { [18:01:32.573] sessionInformation <- function() { [18:01:32.573] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.573] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.573] search = base::search(), system = base::Sys.info()) [18:01:32.573] } [18:01:32.573] ...future.conditions[[length(...future.conditions) + [18:01:32.573] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.573] cond$call), session = sessionInformation(), [18:01:32.573] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.573] signalCondition(cond) [18:01:32.573] } [18:01:32.573] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.573] "immediateCondition"))) { [18:01:32.573] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.573] ...future.conditions[[length(...future.conditions) + [18:01:32.573] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.573] if (TRUE && !signal) { [18:01:32.573] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.573] { [18:01:32.573] inherits <- base::inherits [18:01:32.573] invokeRestart <- base::invokeRestart [18:01:32.573] is.null <- base::is.null [18:01:32.573] muffled <- FALSE [18:01:32.573] if (inherits(cond, "message")) { [18:01:32.573] muffled <- grepl(pattern, "muffleMessage") [18:01:32.573] if (muffled) [18:01:32.573] invokeRestart("muffleMessage") [18:01:32.573] } [18:01:32.573] else if (inherits(cond, "warning")) { [18:01:32.573] muffled <- grepl(pattern, "muffleWarning") [18:01:32.573] if (muffled) [18:01:32.573] invokeRestart("muffleWarning") [18:01:32.573] } [18:01:32.573] else if (inherits(cond, "condition")) { [18:01:32.573] if (!is.null(pattern)) { [18:01:32.573] computeRestarts <- base::computeRestarts [18:01:32.573] grepl <- base::grepl [18:01:32.573] restarts <- computeRestarts(cond) [18:01:32.573] for (restart in restarts) { [18:01:32.573] name <- restart$name [18:01:32.573] if (is.null(name)) [18:01:32.573] next [18:01:32.573] if (!grepl(pattern, name)) [18:01:32.573] next [18:01:32.573] invokeRestart(restart) [18:01:32.573] muffled <- TRUE [18:01:32.573] break [18:01:32.573] } [18:01:32.573] } [18:01:32.573] } [18:01:32.573] invisible(muffled) [18:01:32.573] } [18:01:32.573] muffleCondition(cond, pattern = "^muffle") [18:01:32.573] } [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] if (TRUE) { [18:01:32.573] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.573] { [18:01:32.573] inherits <- base::inherits [18:01:32.573] invokeRestart <- base::invokeRestart [18:01:32.573] is.null <- base::is.null [18:01:32.573] muffled <- FALSE [18:01:32.573] if (inherits(cond, "message")) { [18:01:32.573] muffled <- grepl(pattern, "muffleMessage") [18:01:32.573] if (muffled) [18:01:32.573] invokeRestart("muffleMessage") [18:01:32.573] } [18:01:32.573] else if (inherits(cond, "warning")) { [18:01:32.573] muffled <- grepl(pattern, "muffleWarning") [18:01:32.573] if (muffled) [18:01:32.573] invokeRestart("muffleWarning") [18:01:32.573] } [18:01:32.573] else if (inherits(cond, "condition")) { [18:01:32.573] if (!is.null(pattern)) { [18:01:32.573] computeRestarts <- base::computeRestarts [18:01:32.573] grepl <- base::grepl [18:01:32.573] restarts <- computeRestarts(cond) [18:01:32.573] for (restart in restarts) { [18:01:32.573] name <- restart$name [18:01:32.573] if (is.null(name)) [18:01:32.573] next [18:01:32.573] if (!grepl(pattern, name)) [18:01:32.573] next [18:01:32.573] invokeRestart(restart) [18:01:32.573] muffled <- TRUE [18:01:32.573] break [18:01:32.573] } [18:01:32.573] } [18:01:32.573] } [18:01:32.573] invisible(muffled) [18:01:32.573] } [18:01:32.573] muffleCondition(cond, pattern = "^muffle") [18:01:32.573] } [18:01:32.573] } [18:01:32.573] } [18:01:32.573] })) [18:01:32.573] }, error = function(ex) { [18:01:32.573] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.573] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.573] ...future.rng), started = ...future.startTime, [18:01:32.573] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.573] version = "1.8"), class = "FutureResult") [18:01:32.573] }, finally = { [18:01:32.573] if (!identical(...future.workdir, getwd())) [18:01:32.573] setwd(...future.workdir) [18:01:32.573] { [18:01:32.573] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.573] ...future.oldOptions$nwarnings <- NULL [18:01:32.573] } [18:01:32.573] base::options(...future.oldOptions) [18:01:32.573] if (.Platform$OS.type == "windows") { [18:01:32.573] old_names <- names(...future.oldEnvVars) [18:01:32.573] envs <- base::Sys.getenv() [18:01:32.573] names <- names(envs) [18:01:32.573] common <- intersect(names, old_names) [18:01:32.573] added <- setdiff(names, old_names) [18:01:32.573] removed <- setdiff(old_names, names) [18:01:32.573] changed <- common[...future.oldEnvVars[common] != [18:01:32.573] envs[common]] [18:01:32.573] NAMES <- toupper(changed) [18:01:32.573] args <- list() [18:01:32.573] for (kk in seq_along(NAMES)) { [18:01:32.573] name <- changed[[kk]] [18:01:32.573] NAME <- NAMES[[kk]] [18:01:32.573] if (name != NAME && is.element(NAME, old_names)) [18:01:32.573] next [18:01:32.573] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.573] } [18:01:32.573] NAMES <- toupper(added) [18:01:32.573] for (kk in seq_along(NAMES)) { [18:01:32.573] name <- added[[kk]] [18:01:32.573] NAME <- NAMES[[kk]] [18:01:32.573] if (name != NAME && is.element(NAME, old_names)) [18:01:32.573] next [18:01:32.573] args[[name]] <- "" [18:01:32.573] } [18:01:32.573] NAMES <- toupper(removed) [18:01:32.573] for (kk in seq_along(NAMES)) { [18:01:32.573] name <- removed[[kk]] [18:01:32.573] NAME <- NAMES[[kk]] [18:01:32.573] if (name != NAME && is.element(NAME, old_names)) [18:01:32.573] next [18:01:32.573] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.573] } [18:01:32.573] if (length(args) > 0) [18:01:32.573] base::do.call(base::Sys.setenv, args = args) [18:01:32.573] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.573] } [18:01:32.573] { [18:01:32.573] if (base::length(...future.futureOptionsAdded) > [18:01:32.573] 0L) { [18:01:32.573] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.573] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.573] base::options(opts) [18:01:32.573] } [18:01:32.573] { [18:01:32.573] { [18:01:32.573] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.573] NULL [18:01:32.573] } [18:01:32.573] options(future.plan = NULL) [18:01:32.573] if (is.na(NA_character_)) [18:01:32.573] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.573] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.573] future::plan(list(function (..., workers = availableCores(), [18:01:32.573] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.573] envir = parent.frame()) [18:01:32.573] { [18:01:32.573] if (is.function(workers)) [18:01:32.573] workers <- workers() [18:01:32.573] workers <- structure(as.integer(workers), [18:01:32.573] class = class(workers)) [18:01:32.573] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.573] workers >= 1) [18:01:32.573] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.573] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.573] } [18:01:32.573] future <- MultisessionFuture(..., workers = workers, [18:01:32.573] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.573] envir = envir) [18:01:32.573] if (!future$lazy) [18:01:32.573] future <- run(future) [18:01:32.573] invisible(future) [18:01:32.573] }), .cleanup = FALSE, .init = FALSE) [18:01:32.573] } [18:01:32.573] } [18:01:32.573] } [18:01:32.573] }) [18:01:32.573] if (TRUE) { [18:01:32.573] base::sink(type = "output", split = FALSE) [18:01:32.573] if (TRUE) { [18:01:32.573] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.573] } [18:01:32.573] else { [18:01:32.573] ...future.result["stdout"] <- base::list(NULL) [18:01:32.573] } [18:01:32.573] base::close(...future.stdout) [18:01:32.573] ...future.stdout <- NULL [18:01:32.573] } [18:01:32.573] ...future.result$conditions <- ...future.conditions [18:01:32.573] ...future.result$finished <- base::Sys.time() [18:01:32.573] ...future.result [18:01:32.573] } [18:01:32.579] MultisessionFuture started [18:01:32.579] - Launch lazy future ... done [18:01:32.579] run() for 'MultisessionFuture' ... done ** Collecting results v1 = 1 v2 = 2 Warning in sprintf(...) : restarting interrupted promise evaluation [18:01:32.580] result() for ClusterFuture ... [18:01:32.580] - result already collected: FutureResult [18:01:32.580] result() for ClusterFuture ... done [18:01:32.580] result() for ClusterFuture ... [18:01:32.580] - result already collected: FutureResult [18:01:32.580] result() for ClusterFuture ... done [18:01:32.581] signalConditions() ... [18:01:32.581] - include = 'immediateCondition' [18:01:32.581] - exclude = [18:01:32.581] - resignal = FALSE [18:01:32.581] - Number of conditions: 1 [18:01:32.581] signalConditions() ... done [18:01:32.582] Future state: 'finished' [18:01:32.582] result() for ClusterFuture ... [18:01:32.582] - result already collected: FutureResult [18:01:32.582] result() for ClusterFuture ... done [18:01:32.582] signalConditions() ... [18:01:32.582] - include = 'condition' [18:01:32.583] - exclude = 'immediateCondition' [18:01:32.583] - resignal = TRUE [18:01:32.583] - Number of conditions: 1 [18:01:32.583] - Condition #1: 'simpleError', 'error', 'condition' [18:01:32.583] signalConditions() ... done v3: (as expect) [18:01:32.584] result() for ClusterFuture ... [18:01:32.584] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.584] - Validating connection of MultisessionFuture [18:01:32.596] - received message: FutureResult [18:01:32.596] - Received FutureResult [18:01:32.596] - Erased future from FutureRegistry [18:01:32.597] result() for ClusterFuture ... [18:01:32.597] - result already collected: FutureResult [18:01:32.597] result() for ClusterFuture ... done [18:01:32.597] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.597] result() for ClusterFuture ... done [18:01:32.597] result() for ClusterFuture ... [18:01:32.598] - result already collected: FutureResult [18:01:32.598] result() for ClusterFuture ... done Processing: .......... [100%] v4 = 4 ** Left-to-right and right-to-left future assignments [18:01:32.598] getGlobalsAndPackages() ... [18:01:32.598] Searching for globals... [18:01:32.599] [18:01:32.599] Searching for globals ... DONE [18:01:32.599] - globals: [0] [18:01:32.599] getGlobalsAndPackages() ... DONE [18:01:32.600] run() for 'Future' ... [18:01:32.600] - state: 'created' [18:01:32.600] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.615] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.615] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.615] - Field: 'node' [18:01:32.616] - Field: 'label' [18:01:32.616] - Field: 'local' [18:01:32.616] - Field: 'owner' [18:01:32.616] - Field: 'envir' [18:01:32.616] - Field: 'workers' [18:01:32.617] - Field: 'packages' [18:01:32.617] - Field: 'gc' [18:01:32.617] - Field: 'conditions' [18:01:32.617] - Field: 'persistent' [18:01:32.617] - Field: 'expr' [18:01:32.617] - Field: 'uuid' [18:01:32.618] - Field: 'seed' [18:01:32.618] - Field: 'version' [18:01:32.618] - Field: 'result' [18:01:32.618] - Field: 'asynchronous' [18:01:32.618] - Field: 'calls' [18:01:32.618] - Field: 'globals' [18:01:32.619] - Field: 'stdout' [18:01:32.619] - Field: 'earlySignal' [18:01:32.619] - Field: 'lazy' [18:01:32.619] - Field: 'state' [18:01:32.619] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.620] - Launch lazy future ... [18:01:32.620] Packages needed by the future expression (n = 0): [18:01:32.620] Packages needed by future strategies (n = 0): [18:01:32.621] { [18:01:32.621] { [18:01:32.621] { [18:01:32.621] ...future.startTime <- base::Sys.time() [18:01:32.621] { [18:01:32.621] { [18:01:32.621] { [18:01:32.621] { [18:01:32.621] base::local({ [18:01:32.621] has_future <- base::requireNamespace("future", [18:01:32.621] quietly = TRUE) [18:01:32.621] if (has_future) { [18:01:32.621] ns <- base::getNamespace("future") [18:01:32.621] version <- ns[[".package"]][["version"]] [18:01:32.621] if (is.null(version)) [18:01:32.621] version <- utils::packageVersion("future") [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] version <- NULL [18:01:32.621] } [18:01:32.621] if (!has_future || version < "1.8.0") { [18:01:32.621] info <- base::c(r_version = base::gsub("R version ", [18:01:32.621] "", base::R.version$version.string), [18:01:32.621] platform = base::sprintf("%s (%s-bit)", [18:01:32.621] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.621] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.621] "release", "version")], collapse = " "), [18:01:32.621] hostname = base::Sys.info()[["nodename"]]) [18:01:32.621] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.621] info) [18:01:32.621] info <- base::paste(info, collapse = "; ") [18:01:32.621] if (!has_future) { [18:01:32.621] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.621] info) [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.621] info, version) [18:01:32.621] } [18:01:32.621] base::stop(msg) [18:01:32.621] } [18:01:32.621] }) [18:01:32.621] } [18:01:32.621] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.621] base::options(mc.cores = 1L) [18:01:32.621] } [18:01:32.621] options(future.plan = NULL) [18:01:32.621] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.621] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.621] } [18:01:32.621] ...future.workdir <- getwd() [18:01:32.621] } [18:01:32.621] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.621] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.621] } [18:01:32.621] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.621] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.621] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.621] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.621] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.621] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.621] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.621] base::names(...future.oldOptions)) [18:01:32.621] } [18:01:32.621] if (FALSE) { [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] if (TRUE) { [18:01:32.621] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.621] open = "w") [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.621] windows = "NUL", "/dev/null"), open = "w") [18:01:32.621] } [18:01:32.621] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.621] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.621] base::sink(type = "output", split = FALSE) [18:01:32.621] base::close(...future.stdout) [18:01:32.621] }, add = TRUE) [18:01:32.621] } [18:01:32.621] ...future.frame <- base::sys.nframe() [18:01:32.621] ...future.conditions <- base::list() [18:01:32.621] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.621] if (FALSE) { [18:01:32.621] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.621] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.621] } [18:01:32.621] ...future.result <- base::tryCatch({ [18:01:32.621] base::withCallingHandlers({ [18:01:32.621] ...future.value <- base::withVisible(base::local({ [18:01:32.621] ...future.makeSendCondition <- local({ [18:01:32.621] sendCondition <- NULL [18:01:32.621] function(frame = 1L) { [18:01:32.621] if (is.function(sendCondition)) [18:01:32.621] return(sendCondition) [18:01:32.621] ns <- getNamespace("parallel") [18:01:32.621] if (exists("sendData", mode = "function", [18:01:32.621] envir = ns)) { [18:01:32.621] parallel_sendData <- get("sendData", mode = "function", [18:01:32.621] envir = ns) [18:01:32.621] envir <- sys.frame(frame) [18:01:32.621] master <- NULL [18:01:32.621] while (!identical(envir, .GlobalEnv) && [18:01:32.621] !identical(envir, emptyenv())) { [18:01:32.621] if (exists("master", mode = "list", envir = envir, [18:01:32.621] inherits = FALSE)) { [18:01:32.621] master <- get("master", mode = "list", [18:01:32.621] envir = envir, inherits = FALSE) [18:01:32.621] if (inherits(master, c("SOCKnode", [18:01:32.621] "SOCK0node"))) { [18:01:32.621] sendCondition <<- function(cond) { [18:01:32.621] data <- list(type = "VALUE", value = cond, [18:01:32.621] success = TRUE) [18:01:32.621] parallel_sendData(master, data) [18:01:32.621] } [18:01:32.621] return(sendCondition) [18:01:32.621] } [18:01:32.621] } [18:01:32.621] frame <- frame + 1L [18:01:32.621] envir <- sys.frame(frame) [18:01:32.621] } [18:01:32.621] } [18:01:32.621] sendCondition <<- function(cond) NULL [18:01:32.621] } [18:01:32.621] }) [18:01:32.621] withCallingHandlers({ [18:01:32.621] 1 [18:01:32.621] }, immediateCondition = function(cond) { [18:01:32.621] sendCondition <- ...future.makeSendCondition() [18:01:32.621] sendCondition(cond) [18:01:32.621] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.621] { [18:01:32.621] inherits <- base::inherits [18:01:32.621] invokeRestart <- base::invokeRestart [18:01:32.621] is.null <- base::is.null [18:01:32.621] muffled <- FALSE [18:01:32.621] if (inherits(cond, "message")) { [18:01:32.621] muffled <- grepl(pattern, "muffleMessage") [18:01:32.621] if (muffled) [18:01:32.621] invokeRestart("muffleMessage") [18:01:32.621] } [18:01:32.621] else if (inherits(cond, "warning")) { [18:01:32.621] muffled <- grepl(pattern, "muffleWarning") [18:01:32.621] if (muffled) [18:01:32.621] invokeRestart("muffleWarning") [18:01:32.621] } [18:01:32.621] else if (inherits(cond, "condition")) { [18:01:32.621] if (!is.null(pattern)) { [18:01:32.621] computeRestarts <- base::computeRestarts [18:01:32.621] grepl <- base::grepl [18:01:32.621] restarts <- computeRestarts(cond) [18:01:32.621] for (restart in restarts) { [18:01:32.621] name <- restart$name [18:01:32.621] if (is.null(name)) [18:01:32.621] next [18:01:32.621] if (!grepl(pattern, name)) [18:01:32.621] next [18:01:32.621] invokeRestart(restart) [18:01:32.621] muffled <- TRUE [18:01:32.621] break [18:01:32.621] } [18:01:32.621] } [18:01:32.621] } [18:01:32.621] invisible(muffled) [18:01:32.621] } [18:01:32.621] muffleCondition(cond) [18:01:32.621] }) [18:01:32.621] })) [18:01:32.621] future::FutureResult(value = ...future.value$value, [18:01:32.621] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.621] ...future.rng), globalenv = if (FALSE) [18:01:32.621] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.621] ...future.globalenv.names)) [18:01:32.621] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.621] }, condition = base::local({ [18:01:32.621] c <- base::c [18:01:32.621] inherits <- base::inherits [18:01:32.621] invokeRestart <- base::invokeRestart [18:01:32.621] length <- base::length [18:01:32.621] list <- base::list [18:01:32.621] seq.int <- base::seq.int [18:01:32.621] signalCondition <- base::signalCondition [18:01:32.621] sys.calls <- base::sys.calls [18:01:32.621] `[[` <- base::`[[` [18:01:32.621] `+` <- base::`+` [18:01:32.621] `<<-` <- base::`<<-` [18:01:32.621] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.621] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.621] 3L)] [18:01:32.621] } [18:01:32.621] function(cond) { [18:01:32.621] is_error <- inherits(cond, "error") [18:01:32.621] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.621] NULL) [18:01:32.621] if (is_error) { [18:01:32.621] sessionInformation <- function() { [18:01:32.621] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.621] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.621] search = base::search(), system = base::Sys.info()) [18:01:32.621] } [18:01:32.621] ...future.conditions[[length(...future.conditions) + [18:01:32.621] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.621] cond$call), session = sessionInformation(), [18:01:32.621] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.621] signalCondition(cond) [18:01:32.621] } [18:01:32.621] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.621] "immediateCondition"))) { [18:01:32.621] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.621] ...future.conditions[[length(...future.conditions) + [18:01:32.621] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.621] if (TRUE && !signal) { [18:01:32.621] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.621] { [18:01:32.621] inherits <- base::inherits [18:01:32.621] invokeRestart <- base::invokeRestart [18:01:32.621] is.null <- base::is.null [18:01:32.621] muffled <- FALSE [18:01:32.621] if (inherits(cond, "message")) { [18:01:32.621] muffled <- grepl(pattern, "muffleMessage") [18:01:32.621] if (muffled) [18:01:32.621] invokeRestart("muffleMessage") [18:01:32.621] } [18:01:32.621] else if (inherits(cond, "warning")) { [18:01:32.621] muffled <- grepl(pattern, "muffleWarning") [18:01:32.621] if (muffled) [18:01:32.621] invokeRestart("muffleWarning") [18:01:32.621] } [18:01:32.621] else if (inherits(cond, "condition")) { [18:01:32.621] if (!is.null(pattern)) { [18:01:32.621] computeRestarts <- base::computeRestarts [18:01:32.621] grepl <- base::grepl [18:01:32.621] restarts <- computeRestarts(cond) [18:01:32.621] for (restart in restarts) { [18:01:32.621] name <- restart$name [18:01:32.621] if (is.null(name)) [18:01:32.621] next [18:01:32.621] if (!grepl(pattern, name)) [18:01:32.621] next [18:01:32.621] invokeRestart(restart) [18:01:32.621] muffled <- TRUE [18:01:32.621] break [18:01:32.621] } [18:01:32.621] } [18:01:32.621] } [18:01:32.621] invisible(muffled) [18:01:32.621] } [18:01:32.621] muffleCondition(cond, pattern = "^muffle") [18:01:32.621] } [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] if (TRUE) { [18:01:32.621] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.621] { [18:01:32.621] inherits <- base::inherits [18:01:32.621] invokeRestart <- base::invokeRestart [18:01:32.621] is.null <- base::is.null [18:01:32.621] muffled <- FALSE [18:01:32.621] if (inherits(cond, "message")) { [18:01:32.621] muffled <- grepl(pattern, "muffleMessage") [18:01:32.621] if (muffled) [18:01:32.621] invokeRestart("muffleMessage") [18:01:32.621] } [18:01:32.621] else if (inherits(cond, "warning")) { [18:01:32.621] muffled <- grepl(pattern, "muffleWarning") [18:01:32.621] if (muffled) [18:01:32.621] invokeRestart("muffleWarning") [18:01:32.621] } [18:01:32.621] else if (inherits(cond, "condition")) { [18:01:32.621] if (!is.null(pattern)) { [18:01:32.621] computeRestarts <- base::computeRestarts [18:01:32.621] grepl <- base::grepl [18:01:32.621] restarts <- computeRestarts(cond) [18:01:32.621] for (restart in restarts) { [18:01:32.621] name <- restart$name [18:01:32.621] if (is.null(name)) [18:01:32.621] next [18:01:32.621] if (!grepl(pattern, name)) [18:01:32.621] next [18:01:32.621] invokeRestart(restart) [18:01:32.621] muffled <- TRUE [18:01:32.621] break [18:01:32.621] } [18:01:32.621] } [18:01:32.621] } [18:01:32.621] invisible(muffled) [18:01:32.621] } [18:01:32.621] muffleCondition(cond, pattern = "^muffle") [18:01:32.621] } [18:01:32.621] } [18:01:32.621] } [18:01:32.621] })) [18:01:32.621] }, error = function(ex) { [18:01:32.621] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.621] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.621] ...future.rng), started = ...future.startTime, [18:01:32.621] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.621] version = "1.8"), class = "FutureResult") [18:01:32.621] }, finally = { [18:01:32.621] if (!identical(...future.workdir, getwd())) [18:01:32.621] setwd(...future.workdir) [18:01:32.621] { [18:01:32.621] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.621] ...future.oldOptions$nwarnings <- NULL [18:01:32.621] } [18:01:32.621] base::options(...future.oldOptions) [18:01:32.621] if (.Platform$OS.type == "windows") { [18:01:32.621] old_names <- names(...future.oldEnvVars) [18:01:32.621] envs <- base::Sys.getenv() [18:01:32.621] names <- names(envs) [18:01:32.621] common <- intersect(names, old_names) [18:01:32.621] added <- setdiff(names, old_names) [18:01:32.621] removed <- setdiff(old_names, names) [18:01:32.621] changed <- common[...future.oldEnvVars[common] != [18:01:32.621] envs[common]] [18:01:32.621] NAMES <- toupper(changed) [18:01:32.621] args <- list() [18:01:32.621] for (kk in seq_along(NAMES)) { [18:01:32.621] name <- changed[[kk]] [18:01:32.621] NAME <- NAMES[[kk]] [18:01:32.621] if (name != NAME && is.element(NAME, old_names)) [18:01:32.621] next [18:01:32.621] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.621] } [18:01:32.621] NAMES <- toupper(added) [18:01:32.621] for (kk in seq_along(NAMES)) { [18:01:32.621] name <- added[[kk]] [18:01:32.621] NAME <- NAMES[[kk]] [18:01:32.621] if (name != NAME && is.element(NAME, old_names)) [18:01:32.621] next [18:01:32.621] args[[name]] <- "" [18:01:32.621] } [18:01:32.621] NAMES <- toupper(removed) [18:01:32.621] for (kk in seq_along(NAMES)) { [18:01:32.621] name <- removed[[kk]] [18:01:32.621] NAME <- NAMES[[kk]] [18:01:32.621] if (name != NAME && is.element(NAME, old_names)) [18:01:32.621] next [18:01:32.621] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.621] } [18:01:32.621] if (length(args) > 0) [18:01:32.621] base::do.call(base::Sys.setenv, args = args) [18:01:32.621] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.621] } [18:01:32.621] { [18:01:32.621] if (base::length(...future.futureOptionsAdded) > [18:01:32.621] 0L) { [18:01:32.621] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.621] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.621] base::options(opts) [18:01:32.621] } [18:01:32.621] { [18:01:32.621] { [18:01:32.621] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.621] NULL [18:01:32.621] } [18:01:32.621] options(future.plan = NULL) [18:01:32.621] if (is.na(NA_character_)) [18:01:32.621] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.621] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.621] future::plan(list(function (..., workers = availableCores(), [18:01:32.621] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.621] envir = parent.frame()) [18:01:32.621] { [18:01:32.621] if (is.function(workers)) [18:01:32.621] workers <- workers() [18:01:32.621] workers <- structure(as.integer(workers), [18:01:32.621] class = class(workers)) [18:01:32.621] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.621] workers >= 1) [18:01:32.621] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.621] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.621] } [18:01:32.621] future <- MultisessionFuture(..., workers = workers, [18:01:32.621] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.621] envir = envir) [18:01:32.621] if (!future$lazy) [18:01:32.621] future <- run(future) [18:01:32.621] invisible(future) [18:01:32.621] }), .cleanup = FALSE, .init = FALSE) [18:01:32.621] } [18:01:32.621] } [18:01:32.621] } [18:01:32.621] }) [18:01:32.621] if (TRUE) { [18:01:32.621] base::sink(type = "output", split = FALSE) [18:01:32.621] if (TRUE) { [18:01:32.621] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.621] } [18:01:32.621] else { [18:01:32.621] ...future.result["stdout"] <- base::list(NULL) [18:01:32.621] } [18:01:32.621] base::close(...future.stdout) [18:01:32.621] ...future.stdout <- NULL [18:01:32.621] } [18:01:32.621] ...future.result$conditions <- ...future.conditions [18:01:32.621] ...future.result$finished <- base::Sys.time() [18:01:32.621] ...future.result [18:01:32.621] } [18:01:32.626] MultisessionFuture started [18:01:32.626] - Launch lazy future ... done [18:01:32.627] run() for 'MultisessionFuture' ... done [18:01:32.627] result() for ClusterFuture ... [18:01:32.627] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.627] - Validating connection of MultisessionFuture [18:01:32.642] - received message: FutureResult [18:01:32.642] - Received FutureResult [18:01:32.642] - Erased future from FutureRegistry [18:01:32.643] result() for ClusterFuture ... [18:01:32.643] - result already collected: FutureResult [18:01:32.643] result() for ClusterFuture ... done [18:01:32.643] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.643] result() for ClusterFuture ... done [18:01:32.643] result() for ClusterFuture ... [18:01:32.644] - result already collected: FutureResult [18:01:32.644] result() for ClusterFuture ... done c = 1 [18:01:32.644] getGlobalsAndPackages() ... [18:01:32.644] Searching for globals... [18:01:32.645] [18:01:32.645] Searching for globals ... DONE [18:01:32.645] - globals: [0] [18:01:32.645] getGlobalsAndPackages() ... DONE [18:01:32.645] run() for 'Future' ... [18:01:32.646] - state: 'created' [18:01:32.646] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.659] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.659] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.660] - Field: 'node' [18:01:32.660] - Field: 'label' [18:01:32.660] - Field: 'local' [18:01:32.660] - Field: 'owner' [18:01:32.660] - Field: 'envir' [18:01:32.660] - Field: 'workers' [18:01:32.661] - Field: 'packages' [18:01:32.661] - Field: 'gc' [18:01:32.661] - Field: 'conditions' [18:01:32.661] - Field: 'persistent' [18:01:32.661] - Field: 'expr' [18:01:32.661] - Field: 'uuid' [18:01:32.662] - Field: 'seed' [18:01:32.662] - Field: 'version' [18:01:32.662] - Field: 'result' [18:01:32.662] - Field: 'asynchronous' [18:01:32.662] - Field: 'calls' [18:01:32.663] - Field: 'globals' [18:01:32.663] - Field: 'stdout' [18:01:32.663] - Field: 'earlySignal' [18:01:32.663] - Field: 'lazy' [18:01:32.663] - Field: 'state' [18:01:32.663] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.664] - Launch lazy future ... [18:01:32.664] Packages needed by the future expression (n = 0): [18:01:32.664] Packages needed by future strategies (n = 0): [18:01:32.665] { [18:01:32.665] { [18:01:32.665] { [18:01:32.665] ...future.startTime <- base::Sys.time() [18:01:32.665] { [18:01:32.665] { [18:01:32.665] { [18:01:32.665] { [18:01:32.665] base::local({ [18:01:32.665] has_future <- base::requireNamespace("future", [18:01:32.665] quietly = TRUE) [18:01:32.665] if (has_future) { [18:01:32.665] ns <- base::getNamespace("future") [18:01:32.665] version <- ns[[".package"]][["version"]] [18:01:32.665] if (is.null(version)) [18:01:32.665] version <- utils::packageVersion("future") [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] version <- NULL [18:01:32.665] } [18:01:32.665] if (!has_future || version < "1.8.0") { [18:01:32.665] info <- base::c(r_version = base::gsub("R version ", [18:01:32.665] "", base::R.version$version.string), [18:01:32.665] platform = base::sprintf("%s (%s-bit)", [18:01:32.665] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.665] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.665] "release", "version")], collapse = " "), [18:01:32.665] hostname = base::Sys.info()[["nodename"]]) [18:01:32.665] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.665] info) [18:01:32.665] info <- base::paste(info, collapse = "; ") [18:01:32.665] if (!has_future) { [18:01:32.665] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.665] info) [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.665] info, version) [18:01:32.665] } [18:01:32.665] base::stop(msg) [18:01:32.665] } [18:01:32.665] }) [18:01:32.665] } [18:01:32.665] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.665] base::options(mc.cores = 1L) [18:01:32.665] } [18:01:32.665] options(future.plan = NULL) [18:01:32.665] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.665] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.665] } [18:01:32.665] ...future.workdir <- getwd() [18:01:32.665] } [18:01:32.665] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.665] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.665] } [18:01:32.665] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.665] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.665] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.665] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.665] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.665] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.665] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.665] base::names(...future.oldOptions)) [18:01:32.665] } [18:01:32.665] if (FALSE) { [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] if (TRUE) { [18:01:32.665] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.665] open = "w") [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.665] windows = "NUL", "/dev/null"), open = "w") [18:01:32.665] } [18:01:32.665] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.665] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.665] base::sink(type = "output", split = FALSE) [18:01:32.665] base::close(...future.stdout) [18:01:32.665] }, add = TRUE) [18:01:32.665] } [18:01:32.665] ...future.frame <- base::sys.nframe() [18:01:32.665] ...future.conditions <- base::list() [18:01:32.665] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.665] if (FALSE) { [18:01:32.665] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.665] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.665] } [18:01:32.665] ...future.result <- base::tryCatch({ [18:01:32.665] base::withCallingHandlers({ [18:01:32.665] ...future.value <- base::withVisible(base::local({ [18:01:32.665] ...future.makeSendCondition <- local({ [18:01:32.665] sendCondition <- NULL [18:01:32.665] function(frame = 1L) { [18:01:32.665] if (is.function(sendCondition)) [18:01:32.665] return(sendCondition) [18:01:32.665] ns <- getNamespace("parallel") [18:01:32.665] if (exists("sendData", mode = "function", [18:01:32.665] envir = ns)) { [18:01:32.665] parallel_sendData <- get("sendData", mode = "function", [18:01:32.665] envir = ns) [18:01:32.665] envir <- sys.frame(frame) [18:01:32.665] master <- NULL [18:01:32.665] while (!identical(envir, .GlobalEnv) && [18:01:32.665] !identical(envir, emptyenv())) { [18:01:32.665] if (exists("master", mode = "list", envir = envir, [18:01:32.665] inherits = FALSE)) { [18:01:32.665] master <- get("master", mode = "list", [18:01:32.665] envir = envir, inherits = FALSE) [18:01:32.665] if (inherits(master, c("SOCKnode", [18:01:32.665] "SOCK0node"))) { [18:01:32.665] sendCondition <<- function(cond) { [18:01:32.665] data <- list(type = "VALUE", value = cond, [18:01:32.665] success = TRUE) [18:01:32.665] parallel_sendData(master, data) [18:01:32.665] } [18:01:32.665] return(sendCondition) [18:01:32.665] } [18:01:32.665] } [18:01:32.665] frame <- frame + 1L [18:01:32.665] envir <- sys.frame(frame) [18:01:32.665] } [18:01:32.665] } [18:01:32.665] sendCondition <<- function(cond) NULL [18:01:32.665] } [18:01:32.665] }) [18:01:32.665] withCallingHandlers({ [18:01:32.665] 1 [18:01:32.665] }, immediateCondition = function(cond) { [18:01:32.665] sendCondition <- ...future.makeSendCondition() [18:01:32.665] sendCondition(cond) [18:01:32.665] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.665] { [18:01:32.665] inherits <- base::inherits [18:01:32.665] invokeRestart <- base::invokeRestart [18:01:32.665] is.null <- base::is.null [18:01:32.665] muffled <- FALSE [18:01:32.665] if (inherits(cond, "message")) { [18:01:32.665] muffled <- grepl(pattern, "muffleMessage") [18:01:32.665] if (muffled) [18:01:32.665] invokeRestart("muffleMessage") [18:01:32.665] } [18:01:32.665] else if (inherits(cond, "warning")) { [18:01:32.665] muffled <- grepl(pattern, "muffleWarning") [18:01:32.665] if (muffled) [18:01:32.665] invokeRestart("muffleWarning") [18:01:32.665] } [18:01:32.665] else if (inherits(cond, "condition")) { [18:01:32.665] if (!is.null(pattern)) { [18:01:32.665] computeRestarts <- base::computeRestarts [18:01:32.665] grepl <- base::grepl [18:01:32.665] restarts <- computeRestarts(cond) [18:01:32.665] for (restart in restarts) { [18:01:32.665] name <- restart$name [18:01:32.665] if (is.null(name)) [18:01:32.665] next [18:01:32.665] if (!grepl(pattern, name)) [18:01:32.665] next [18:01:32.665] invokeRestart(restart) [18:01:32.665] muffled <- TRUE [18:01:32.665] break [18:01:32.665] } [18:01:32.665] } [18:01:32.665] } [18:01:32.665] invisible(muffled) [18:01:32.665] } [18:01:32.665] muffleCondition(cond) [18:01:32.665] }) [18:01:32.665] })) [18:01:32.665] future::FutureResult(value = ...future.value$value, [18:01:32.665] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.665] ...future.rng), globalenv = if (FALSE) [18:01:32.665] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.665] ...future.globalenv.names)) [18:01:32.665] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.665] }, condition = base::local({ [18:01:32.665] c <- base::c [18:01:32.665] inherits <- base::inherits [18:01:32.665] invokeRestart <- base::invokeRestart [18:01:32.665] length <- base::length [18:01:32.665] list <- base::list [18:01:32.665] seq.int <- base::seq.int [18:01:32.665] signalCondition <- base::signalCondition [18:01:32.665] sys.calls <- base::sys.calls [18:01:32.665] `[[` <- base::`[[` [18:01:32.665] `+` <- base::`+` [18:01:32.665] `<<-` <- base::`<<-` [18:01:32.665] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.665] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.665] 3L)] [18:01:32.665] } [18:01:32.665] function(cond) { [18:01:32.665] is_error <- inherits(cond, "error") [18:01:32.665] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.665] NULL) [18:01:32.665] if (is_error) { [18:01:32.665] sessionInformation <- function() { [18:01:32.665] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.665] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.665] search = base::search(), system = base::Sys.info()) [18:01:32.665] } [18:01:32.665] ...future.conditions[[length(...future.conditions) + [18:01:32.665] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.665] cond$call), session = sessionInformation(), [18:01:32.665] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.665] signalCondition(cond) [18:01:32.665] } [18:01:32.665] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.665] "immediateCondition"))) { [18:01:32.665] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.665] ...future.conditions[[length(...future.conditions) + [18:01:32.665] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.665] if (TRUE && !signal) { [18:01:32.665] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.665] { [18:01:32.665] inherits <- base::inherits [18:01:32.665] invokeRestart <- base::invokeRestart [18:01:32.665] is.null <- base::is.null [18:01:32.665] muffled <- FALSE [18:01:32.665] if (inherits(cond, "message")) { [18:01:32.665] muffled <- grepl(pattern, "muffleMessage") [18:01:32.665] if (muffled) [18:01:32.665] invokeRestart("muffleMessage") [18:01:32.665] } [18:01:32.665] else if (inherits(cond, "warning")) { [18:01:32.665] muffled <- grepl(pattern, "muffleWarning") [18:01:32.665] if (muffled) [18:01:32.665] invokeRestart("muffleWarning") [18:01:32.665] } [18:01:32.665] else if (inherits(cond, "condition")) { [18:01:32.665] if (!is.null(pattern)) { [18:01:32.665] computeRestarts <- base::computeRestarts [18:01:32.665] grepl <- base::grepl [18:01:32.665] restarts <- computeRestarts(cond) [18:01:32.665] for (restart in restarts) { [18:01:32.665] name <- restart$name [18:01:32.665] if (is.null(name)) [18:01:32.665] next [18:01:32.665] if (!grepl(pattern, name)) [18:01:32.665] next [18:01:32.665] invokeRestart(restart) [18:01:32.665] muffled <- TRUE [18:01:32.665] break [18:01:32.665] } [18:01:32.665] } [18:01:32.665] } [18:01:32.665] invisible(muffled) [18:01:32.665] } [18:01:32.665] muffleCondition(cond, pattern = "^muffle") [18:01:32.665] } [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] if (TRUE) { [18:01:32.665] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.665] { [18:01:32.665] inherits <- base::inherits [18:01:32.665] invokeRestart <- base::invokeRestart [18:01:32.665] is.null <- base::is.null [18:01:32.665] muffled <- FALSE [18:01:32.665] if (inherits(cond, "message")) { [18:01:32.665] muffled <- grepl(pattern, "muffleMessage") [18:01:32.665] if (muffled) [18:01:32.665] invokeRestart("muffleMessage") [18:01:32.665] } [18:01:32.665] else if (inherits(cond, "warning")) { [18:01:32.665] muffled <- grepl(pattern, "muffleWarning") [18:01:32.665] if (muffled) [18:01:32.665] invokeRestart("muffleWarning") [18:01:32.665] } [18:01:32.665] else if (inherits(cond, "condition")) { [18:01:32.665] if (!is.null(pattern)) { [18:01:32.665] computeRestarts <- base::computeRestarts [18:01:32.665] grepl <- base::grepl [18:01:32.665] restarts <- computeRestarts(cond) [18:01:32.665] for (restart in restarts) { [18:01:32.665] name <- restart$name [18:01:32.665] if (is.null(name)) [18:01:32.665] next [18:01:32.665] if (!grepl(pattern, name)) [18:01:32.665] next [18:01:32.665] invokeRestart(restart) [18:01:32.665] muffled <- TRUE [18:01:32.665] break [18:01:32.665] } [18:01:32.665] } [18:01:32.665] } [18:01:32.665] invisible(muffled) [18:01:32.665] } [18:01:32.665] muffleCondition(cond, pattern = "^muffle") [18:01:32.665] } [18:01:32.665] } [18:01:32.665] } [18:01:32.665] })) [18:01:32.665] }, error = function(ex) { [18:01:32.665] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.665] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.665] ...future.rng), started = ...future.startTime, [18:01:32.665] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.665] version = "1.8"), class = "FutureResult") [18:01:32.665] }, finally = { [18:01:32.665] if (!identical(...future.workdir, getwd())) [18:01:32.665] setwd(...future.workdir) [18:01:32.665] { [18:01:32.665] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.665] ...future.oldOptions$nwarnings <- NULL [18:01:32.665] } [18:01:32.665] base::options(...future.oldOptions) [18:01:32.665] if (.Platform$OS.type == "windows") { [18:01:32.665] old_names <- names(...future.oldEnvVars) [18:01:32.665] envs <- base::Sys.getenv() [18:01:32.665] names <- names(envs) [18:01:32.665] common <- intersect(names, old_names) [18:01:32.665] added <- setdiff(names, old_names) [18:01:32.665] removed <- setdiff(old_names, names) [18:01:32.665] changed <- common[...future.oldEnvVars[common] != [18:01:32.665] envs[common]] [18:01:32.665] NAMES <- toupper(changed) [18:01:32.665] args <- list() [18:01:32.665] for (kk in seq_along(NAMES)) { [18:01:32.665] name <- changed[[kk]] [18:01:32.665] NAME <- NAMES[[kk]] [18:01:32.665] if (name != NAME && is.element(NAME, old_names)) [18:01:32.665] next [18:01:32.665] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.665] } [18:01:32.665] NAMES <- toupper(added) [18:01:32.665] for (kk in seq_along(NAMES)) { [18:01:32.665] name <- added[[kk]] [18:01:32.665] NAME <- NAMES[[kk]] [18:01:32.665] if (name != NAME && is.element(NAME, old_names)) [18:01:32.665] next [18:01:32.665] args[[name]] <- "" [18:01:32.665] } [18:01:32.665] NAMES <- toupper(removed) [18:01:32.665] for (kk in seq_along(NAMES)) { [18:01:32.665] name <- removed[[kk]] [18:01:32.665] NAME <- NAMES[[kk]] [18:01:32.665] if (name != NAME && is.element(NAME, old_names)) [18:01:32.665] next [18:01:32.665] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.665] } [18:01:32.665] if (length(args) > 0) [18:01:32.665] base::do.call(base::Sys.setenv, args = args) [18:01:32.665] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.665] } [18:01:32.665] { [18:01:32.665] if (base::length(...future.futureOptionsAdded) > [18:01:32.665] 0L) { [18:01:32.665] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.665] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.665] base::options(opts) [18:01:32.665] } [18:01:32.665] { [18:01:32.665] { [18:01:32.665] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.665] NULL [18:01:32.665] } [18:01:32.665] options(future.plan = NULL) [18:01:32.665] if (is.na(NA_character_)) [18:01:32.665] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.665] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.665] future::plan(list(function (..., workers = availableCores(), [18:01:32.665] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.665] envir = parent.frame()) [18:01:32.665] { [18:01:32.665] if (is.function(workers)) [18:01:32.665] workers <- workers() [18:01:32.665] workers <- structure(as.integer(workers), [18:01:32.665] class = class(workers)) [18:01:32.665] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.665] workers >= 1) [18:01:32.665] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.665] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.665] } [18:01:32.665] future <- MultisessionFuture(..., workers = workers, [18:01:32.665] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.665] envir = envir) [18:01:32.665] if (!future$lazy) [18:01:32.665] future <- run(future) [18:01:32.665] invisible(future) [18:01:32.665] }), .cleanup = FALSE, .init = FALSE) [18:01:32.665] } [18:01:32.665] } [18:01:32.665] } [18:01:32.665] }) [18:01:32.665] if (TRUE) { [18:01:32.665] base::sink(type = "output", split = FALSE) [18:01:32.665] if (TRUE) { [18:01:32.665] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.665] } [18:01:32.665] else { [18:01:32.665] ...future.result["stdout"] <- base::list(NULL) [18:01:32.665] } [18:01:32.665] base::close(...future.stdout) [18:01:32.665] ...future.stdout <- NULL [18:01:32.665] } [18:01:32.665] ...future.result$conditions <- ...future.conditions [18:01:32.665] ...future.result$finished <- base::Sys.time() [18:01:32.665] ...future.result [18:01:32.665] } [18:01:32.670] MultisessionFuture started [18:01:32.671] - Launch lazy future ... done [18:01:32.671] run() for 'MultisessionFuture' ... done [18:01:32.671] result() for ClusterFuture ... [18:01:32.671] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.672] - Validating connection of MultisessionFuture [18:01:32.687] - received message: FutureResult [18:01:32.687] - Received FutureResult [18:01:32.688] - Erased future from FutureRegistry [18:01:32.688] result() for ClusterFuture ... [18:01:32.688] - result already collected: FutureResult [18:01:32.688] result() for ClusterFuture ... done [18:01:32.688] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.688] result() for ClusterFuture ... done [18:01:32.689] result() for ClusterFuture ... [18:01:32.689] - result already collected: FutureResult [18:01:32.689] result() for ClusterFuture ... done d = 1 ** Nested future assignments [18:01:32.689] getGlobalsAndPackages() ... [18:01:32.690] Searching for globals... [18:01:32.694] - globals found: [5] '{', '<-', '%<-%', '%->%', '+' [18:01:32.694] Searching for globals ... DONE [18:01:32.695] Resolving globals: FALSE [18:01:32.695] [18:01:32.695] - packages: [1] 'future' [18:01:32.695] getGlobalsAndPackages() ... DONE [18:01:32.696] run() for 'Future' ... [18:01:32.696] - state: 'created' [18:01:32.696] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.711] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.712] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.712] - Field: 'node' [18:01:32.712] - Field: 'label' [18:01:32.712] - Field: 'local' [18:01:32.712] - Field: 'owner' [18:01:32.713] - Field: 'envir' [18:01:32.713] - Field: 'workers' [18:01:32.713] - Field: 'packages' [18:01:32.713] - Field: 'gc' [18:01:32.713] - Field: 'conditions' [18:01:32.713] - Field: 'persistent' [18:01:32.714] - Field: 'expr' [18:01:32.714] - Field: 'uuid' [18:01:32.714] - Field: 'seed' [18:01:32.714] - Field: 'version' [18:01:32.714] - Field: 'result' [18:01:32.715] - Field: 'asynchronous' [18:01:32.715] - Field: 'calls' [18:01:32.715] - Field: 'globals' [18:01:32.715] - Field: 'stdout' [18:01:32.715] - Field: 'earlySignal' [18:01:32.715] - Field: 'lazy' [18:01:32.716] - Field: 'state' [18:01:32.716] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.716] - Launch lazy future ... [18:01:32.716] Packages needed by the future expression (n = 1): 'future' [18:01:32.716] Packages needed by future strategies (n = 0): [18:01:32.717] { [18:01:32.717] { [18:01:32.717] { [18:01:32.717] ...future.startTime <- base::Sys.time() [18:01:32.717] { [18:01:32.717] { [18:01:32.717] { [18:01:32.717] { [18:01:32.717] { [18:01:32.717] base::local({ [18:01:32.717] has_future <- base::requireNamespace("future", [18:01:32.717] quietly = TRUE) [18:01:32.717] if (has_future) { [18:01:32.717] ns <- base::getNamespace("future") [18:01:32.717] version <- ns[[".package"]][["version"]] [18:01:32.717] if (is.null(version)) [18:01:32.717] version <- utils::packageVersion("future") [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] version <- NULL [18:01:32.717] } [18:01:32.717] if (!has_future || version < "1.8.0") { [18:01:32.717] info <- base::c(r_version = base::gsub("R version ", [18:01:32.717] "", base::R.version$version.string), [18:01:32.717] platform = base::sprintf("%s (%s-bit)", [18:01:32.717] base::R.version$platform, 8 * [18:01:32.717] base::.Machine$sizeof.pointer), [18:01:32.717] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.717] "release", "version")], collapse = " "), [18:01:32.717] hostname = base::Sys.info()[["nodename"]]) [18:01:32.717] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.717] info) [18:01:32.717] info <- base::paste(info, collapse = "; ") [18:01:32.717] if (!has_future) { [18:01:32.717] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.717] info) [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.717] info, version) [18:01:32.717] } [18:01:32.717] base::stop(msg) [18:01:32.717] } [18:01:32.717] }) [18:01:32.717] } [18:01:32.717] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.717] base::options(mc.cores = 1L) [18:01:32.717] } [18:01:32.717] base::local({ [18:01:32.717] for (pkg in "future") { [18:01:32.717] base::loadNamespace(pkg) [18:01:32.717] base::library(pkg, character.only = TRUE) [18:01:32.717] } [18:01:32.717] }) [18:01:32.717] } [18:01:32.717] options(future.plan = NULL) [18:01:32.717] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.717] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.717] } [18:01:32.717] ...future.workdir <- getwd() [18:01:32.717] } [18:01:32.717] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.717] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.717] } [18:01:32.717] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.717] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.717] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.717] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.717] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.717] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.717] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.717] base::names(...future.oldOptions)) [18:01:32.717] } [18:01:32.717] if (FALSE) { [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] if (TRUE) { [18:01:32.717] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.717] open = "w") [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.717] windows = "NUL", "/dev/null"), open = "w") [18:01:32.717] } [18:01:32.717] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.717] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.717] base::sink(type = "output", split = FALSE) [18:01:32.717] base::close(...future.stdout) [18:01:32.717] }, add = TRUE) [18:01:32.717] } [18:01:32.717] ...future.frame <- base::sys.nframe() [18:01:32.717] ...future.conditions <- base::list() [18:01:32.717] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.717] if (FALSE) { [18:01:32.717] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.717] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.717] } [18:01:32.717] ...future.result <- base::tryCatch({ [18:01:32.717] base::withCallingHandlers({ [18:01:32.717] ...future.value <- base::withVisible(base::local({ [18:01:32.717] ...future.makeSendCondition <- local({ [18:01:32.717] sendCondition <- NULL [18:01:32.717] function(frame = 1L) { [18:01:32.717] if (is.function(sendCondition)) [18:01:32.717] return(sendCondition) [18:01:32.717] ns <- getNamespace("parallel") [18:01:32.717] if (exists("sendData", mode = "function", [18:01:32.717] envir = ns)) { [18:01:32.717] parallel_sendData <- get("sendData", mode = "function", [18:01:32.717] envir = ns) [18:01:32.717] envir <- sys.frame(frame) [18:01:32.717] master <- NULL [18:01:32.717] while (!identical(envir, .GlobalEnv) && [18:01:32.717] !identical(envir, emptyenv())) { [18:01:32.717] if (exists("master", mode = "list", envir = envir, [18:01:32.717] inherits = FALSE)) { [18:01:32.717] master <- get("master", mode = "list", [18:01:32.717] envir = envir, inherits = FALSE) [18:01:32.717] if (inherits(master, c("SOCKnode", [18:01:32.717] "SOCK0node"))) { [18:01:32.717] sendCondition <<- function(cond) { [18:01:32.717] data <- list(type = "VALUE", value = cond, [18:01:32.717] success = TRUE) [18:01:32.717] parallel_sendData(master, data) [18:01:32.717] } [18:01:32.717] return(sendCondition) [18:01:32.717] } [18:01:32.717] } [18:01:32.717] frame <- frame + 1L [18:01:32.717] envir <- sys.frame(frame) [18:01:32.717] } [18:01:32.717] } [18:01:32.717] sendCondition <<- function(cond) NULL [18:01:32.717] } [18:01:32.717] }) [18:01:32.717] withCallingHandlers({ [18:01:32.717] { [18:01:32.717] b <- 1 [18:01:32.717] c %<-% 2 [18:01:32.717] d <- 3 [18:01:32.717] 4 %->% e [18:01:32.717] b + c + d + e [18:01:32.717] } [18:01:32.717] }, immediateCondition = function(cond) { [18:01:32.717] sendCondition <- ...future.makeSendCondition() [18:01:32.717] sendCondition(cond) [18:01:32.717] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.717] { [18:01:32.717] inherits <- base::inherits [18:01:32.717] invokeRestart <- base::invokeRestart [18:01:32.717] is.null <- base::is.null [18:01:32.717] muffled <- FALSE [18:01:32.717] if (inherits(cond, "message")) { [18:01:32.717] muffled <- grepl(pattern, "muffleMessage") [18:01:32.717] if (muffled) [18:01:32.717] invokeRestart("muffleMessage") [18:01:32.717] } [18:01:32.717] else if (inherits(cond, "warning")) { [18:01:32.717] muffled <- grepl(pattern, "muffleWarning") [18:01:32.717] if (muffled) [18:01:32.717] invokeRestart("muffleWarning") [18:01:32.717] } [18:01:32.717] else if (inherits(cond, "condition")) { [18:01:32.717] if (!is.null(pattern)) { [18:01:32.717] computeRestarts <- base::computeRestarts [18:01:32.717] grepl <- base::grepl [18:01:32.717] restarts <- computeRestarts(cond) [18:01:32.717] for (restart in restarts) { [18:01:32.717] name <- restart$name [18:01:32.717] if (is.null(name)) [18:01:32.717] next [18:01:32.717] if (!grepl(pattern, name)) [18:01:32.717] next [18:01:32.717] invokeRestart(restart) [18:01:32.717] muffled <- TRUE [18:01:32.717] break [18:01:32.717] } [18:01:32.717] } [18:01:32.717] } [18:01:32.717] invisible(muffled) [18:01:32.717] } [18:01:32.717] muffleCondition(cond) [18:01:32.717] }) [18:01:32.717] })) [18:01:32.717] future::FutureResult(value = ...future.value$value, [18:01:32.717] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.717] ...future.rng), globalenv = if (FALSE) [18:01:32.717] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.717] ...future.globalenv.names)) [18:01:32.717] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.717] }, condition = base::local({ [18:01:32.717] c <- base::c [18:01:32.717] inherits <- base::inherits [18:01:32.717] invokeRestart <- base::invokeRestart [18:01:32.717] length <- base::length [18:01:32.717] list <- base::list [18:01:32.717] seq.int <- base::seq.int [18:01:32.717] signalCondition <- base::signalCondition [18:01:32.717] sys.calls <- base::sys.calls [18:01:32.717] `[[` <- base::`[[` [18:01:32.717] `+` <- base::`+` [18:01:32.717] `<<-` <- base::`<<-` [18:01:32.717] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.717] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.717] 3L)] [18:01:32.717] } [18:01:32.717] function(cond) { [18:01:32.717] is_error <- inherits(cond, "error") [18:01:32.717] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.717] NULL) [18:01:32.717] if (is_error) { [18:01:32.717] sessionInformation <- function() { [18:01:32.717] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.717] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.717] search = base::search(), system = base::Sys.info()) [18:01:32.717] } [18:01:32.717] ...future.conditions[[length(...future.conditions) + [18:01:32.717] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.717] cond$call), session = sessionInformation(), [18:01:32.717] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.717] signalCondition(cond) [18:01:32.717] } [18:01:32.717] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.717] "immediateCondition"))) { [18:01:32.717] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.717] ...future.conditions[[length(...future.conditions) + [18:01:32.717] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.717] if (TRUE && !signal) { [18:01:32.717] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.717] { [18:01:32.717] inherits <- base::inherits [18:01:32.717] invokeRestart <- base::invokeRestart [18:01:32.717] is.null <- base::is.null [18:01:32.717] muffled <- FALSE [18:01:32.717] if (inherits(cond, "message")) { [18:01:32.717] muffled <- grepl(pattern, "muffleMessage") [18:01:32.717] if (muffled) [18:01:32.717] invokeRestart("muffleMessage") [18:01:32.717] } [18:01:32.717] else if (inherits(cond, "warning")) { [18:01:32.717] muffled <- grepl(pattern, "muffleWarning") [18:01:32.717] if (muffled) [18:01:32.717] invokeRestart("muffleWarning") [18:01:32.717] } [18:01:32.717] else if (inherits(cond, "condition")) { [18:01:32.717] if (!is.null(pattern)) { [18:01:32.717] computeRestarts <- base::computeRestarts [18:01:32.717] grepl <- base::grepl [18:01:32.717] restarts <- computeRestarts(cond) [18:01:32.717] for (restart in restarts) { [18:01:32.717] name <- restart$name [18:01:32.717] if (is.null(name)) [18:01:32.717] next [18:01:32.717] if (!grepl(pattern, name)) [18:01:32.717] next [18:01:32.717] invokeRestart(restart) [18:01:32.717] muffled <- TRUE [18:01:32.717] break [18:01:32.717] } [18:01:32.717] } [18:01:32.717] } [18:01:32.717] invisible(muffled) [18:01:32.717] } [18:01:32.717] muffleCondition(cond, pattern = "^muffle") [18:01:32.717] } [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] if (TRUE) { [18:01:32.717] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.717] { [18:01:32.717] inherits <- base::inherits [18:01:32.717] invokeRestart <- base::invokeRestart [18:01:32.717] is.null <- base::is.null [18:01:32.717] muffled <- FALSE [18:01:32.717] if (inherits(cond, "message")) { [18:01:32.717] muffled <- grepl(pattern, "muffleMessage") [18:01:32.717] if (muffled) [18:01:32.717] invokeRestart("muffleMessage") [18:01:32.717] } [18:01:32.717] else if (inherits(cond, "warning")) { [18:01:32.717] muffled <- grepl(pattern, "muffleWarning") [18:01:32.717] if (muffled) [18:01:32.717] invokeRestart("muffleWarning") [18:01:32.717] } [18:01:32.717] else if (inherits(cond, "condition")) { [18:01:32.717] if (!is.null(pattern)) { [18:01:32.717] computeRestarts <- base::computeRestarts [18:01:32.717] grepl <- base::grepl [18:01:32.717] restarts <- computeRestarts(cond) [18:01:32.717] for (restart in restarts) { [18:01:32.717] name <- restart$name [18:01:32.717] if (is.null(name)) [18:01:32.717] next [18:01:32.717] if (!grepl(pattern, name)) [18:01:32.717] next [18:01:32.717] invokeRestart(restart) [18:01:32.717] muffled <- TRUE [18:01:32.717] break [18:01:32.717] } [18:01:32.717] } [18:01:32.717] } [18:01:32.717] invisible(muffled) [18:01:32.717] } [18:01:32.717] muffleCondition(cond, pattern = "^muffle") [18:01:32.717] } [18:01:32.717] } [18:01:32.717] } [18:01:32.717] })) [18:01:32.717] }, error = function(ex) { [18:01:32.717] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.717] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.717] ...future.rng), started = ...future.startTime, [18:01:32.717] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.717] version = "1.8"), class = "FutureResult") [18:01:32.717] }, finally = { [18:01:32.717] if (!identical(...future.workdir, getwd())) [18:01:32.717] setwd(...future.workdir) [18:01:32.717] { [18:01:32.717] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.717] ...future.oldOptions$nwarnings <- NULL [18:01:32.717] } [18:01:32.717] base::options(...future.oldOptions) [18:01:32.717] if (.Platform$OS.type == "windows") { [18:01:32.717] old_names <- names(...future.oldEnvVars) [18:01:32.717] envs <- base::Sys.getenv() [18:01:32.717] names <- names(envs) [18:01:32.717] common <- intersect(names, old_names) [18:01:32.717] added <- setdiff(names, old_names) [18:01:32.717] removed <- setdiff(old_names, names) [18:01:32.717] changed <- common[...future.oldEnvVars[common] != [18:01:32.717] envs[common]] [18:01:32.717] NAMES <- toupper(changed) [18:01:32.717] args <- list() [18:01:32.717] for (kk in seq_along(NAMES)) { [18:01:32.717] name <- changed[[kk]] [18:01:32.717] NAME <- NAMES[[kk]] [18:01:32.717] if (name != NAME && is.element(NAME, old_names)) [18:01:32.717] next [18:01:32.717] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.717] } [18:01:32.717] NAMES <- toupper(added) [18:01:32.717] for (kk in seq_along(NAMES)) { [18:01:32.717] name <- added[[kk]] [18:01:32.717] NAME <- NAMES[[kk]] [18:01:32.717] if (name != NAME && is.element(NAME, old_names)) [18:01:32.717] next [18:01:32.717] args[[name]] <- "" [18:01:32.717] } [18:01:32.717] NAMES <- toupper(removed) [18:01:32.717] for (kk in seq_along(NAMES)) { [18:01:32.717] name <- removed[[kk]] [18:01:32.717] NAME <- NAMES[[kk]] [18:01:32.717] if (name != NAME && is.element(NAME, old_names)) [18:01:32.717] next [18:01:32.717] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.717] } [18:01:32.717] if (length(args) > 0) [18:01:32.717] base::do.call(base::Sys.setenv, args = args) [18:01:32.717] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.717] } [18:01:32.717] { [18:01:32.717] if (base::length(...future.futureOptionsAdded) > [18:01:32.717] 0L) { [18:01:32.717] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.717] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.717] base::options(opts) [18:01:32.717] } [18:01:32.717] { [18:01:32.717] { [18:01:32.717] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.717] NULL [18:01:32.717] } [18:01:32.717] options(future.plan = NULL) [18:01:32.717] if (is.na(NA_character_)) [18:01:32.717] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.717] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.717] future::plan(list(function (..., workers = availableCores(), [18:01:32.717] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.717] envir = parent.frame()) [18:01:32.717] { [18:01:32.717] if (is.function(workers)) [18:01:32.717] workers <- workers() [18:01:32.717] workers <- structure(as.integer(workers), [18:01:32.717] class = class(workers)) [18:01:32.717] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.717] workers >= 1) [18:01:32.717] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.717] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.717] } [18:01:32.717] future <- MultisessionFuture(..., workers = workers, [18:01:32.717] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.717] envir = envir) [18:01:32.717] if (!future$lazy) [18:01:32.717] future <- run(future) [18:01:32.717] invisible(future) [18:01:32.717] }), .cleanup = FALSE, .init = FALSE) [18:01:32.717] } [18:01:32.717] } [18:01:32.717] } [18:01:32.717] }) [18:01:32.717] if (TRUE) { [18:01:32.717] base::sink(type = "output", split = FALSE) [18:01:32.717] if (TRUE) { [18:01:32.717] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.717] } [18:01:32.717] else { [18:01:32.717] ...future.result["stdout"] <- base::list(NULL) [18:01:32.717] } [18:01:32.717] base::close(...future.stdout) [18:01:32.717] ...future.stdout <- NULL [18:01:32.717] } [18:01:32.717] ...future.result$conditions <- ...future.conditions [18:01:32.717] ...future.result$finished <- base::Sys.time() [18:01:32.717] ...future.result [18:01:32.717] } [18:01:32.723] MultisessionFuture started [18:01:32.723] - Launch lazy future ... done [18:01:32.723] run() for 'MultisessionFuture' ... done [18:01:32.724] result() for ClusterFuture ... [18:01:32.724] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.724] - Validating connection of MultisessionFuture [18:01:32.758] - received message: FutureResult [18:01:32.758] - Received FutureResult [18:01:32.758] - Erased future from FutureRegistry [18:01:32.758] result() for ClusterFuture ... [18:01:32.759] - result already collected: FutureResult [18:01:32.759] result() for ClusterFuture ... done [18:01:32.759] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.759] result() for ClusterFuture ... done [18:01:32.759] result() for ClusterFuture ... [18:01:32.759] - result already collected: FutureResult [18:01:32.759] result() for ClusterFuture ... done a = 10 [18:01:32.760] getGlobalsAndPackages() ... [18:01:32.760] Searching for globals... [18:01:32.761] - globals found: [3] '{', '+', 'a' [18:01:32.761] Searching for globals ... DONE [18:01:32.761] Resolving globals: FALSE [18:01:32.762] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:32.762] The total size of the 1 globals exported for future expression ('{; a + 1; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [18:01:32.763] - globals: [1] 'a' [18:01:32.763] [18:01:32.763] getGlobalsAndPackages() ... DONE [18:01:32.763] run() for 'Future' ... [18:01:32.763] - state: 'created' [18:01:32.764] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:32.778] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:32.778] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:32.778] - Field: 'node' [18:01:32.778] - Field: 'label' [18:01:32.778] - Field: 'local' [18:01:32.779] - Field: 'owner' [18:01:32.779] - Field: 'envir' [18:01:32.779] - Field: 'workers' [18:01:32.779] - Field: 'packages' [18:01:32.779] - Field: 'gc' [18:01:32.779] - Field: 'conditions' [18:01:32.780] - Field: 'persistent' [18:01:32.780] - Field: 'expr' [18:01:32.780] - Field: 'uuid' [18:01:32.780] - Field: 'seed' [18:01:32.780] - Field: 'version' [18:01:32.780] - Field: 'result' [18:01:32.781] - Field: 'asynchronous' [18:01:32.781] - Field: 'calls' [18:01:32.781] - Field: 'globals' [18:01:32.781] - Field: 'stdout' [18:01:32.781] - Field: 'earlySignal' [18:01:32.782] - Field: 'lazy' [18:01:32.782] - Field: 'state' [18:01:32.782] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:32.782] - Launch lazy future ... [18:01:32.782] Packages needed by the future expression (n = 0): [18:01:32.783] Packages needed by future strategies (n = 0): [18:01:32.783] { [18:01:32.783] { [18:01:32.783] { [18:01:32.783] ...future.startTime <- base::Sys.time() [18:01:32.783] { [18:01:32.783] { [18:01:32.783] { [18:01:32.783] { [18:01:32.783] base::local({ [18:01:32.783] has_future <- base::requireNamespace("future", [18:01:32.783] quietly = TRUE) [18:01:32.783] if (has_future) { [18:01:32.783] ns <- base::getNamespace("future") [18:01:32.783] version <- ns[[".package"]][["version"]] [18:01:32.783] if (is.null(version)) [18:01:32.783] version <- utils::packageVersion("future") [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] version <- NULL [18:01:32.783] } [18:01:32.783] if (!has_future || version < "1.8.0") { [18:01:32.783] info <- base::c(r_version = base::gsub("R version ", [18:01:32.783] "", base::R.version$version.string), [18:01:32.783] platform = base::sprintf("%s (%s-bit)", [18:01:32.783] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:32.783] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:32.783] "release", "version")], collapse = " "), [18:01:32.783] hostname = base::Sys.info()[["nodename"]]) [18:01:32.783] info <- base::sprintf("%s: %s", base::names(info), [18:01:32.783] info) [18:01:32.783] info <- base::paste(info, collapse = "; ") [18:01:32.783] if (!has_future) { [18:01:32.783] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:32.783] info) [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:32.783] info, version) [18:01:32.783] } [18:01:32.783] base::stop(msg) [18:01:32.783] } [18:01:32.783] }) [18:01:32.783] } [18:01:32.783] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:32.783] base::options(mc.cores = 1L) [18:01:32.783] } [18:01:32.783] options(future.plan = NULL) [18:01:32.783] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.783] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:32.783] } [18:01:32.783] ...future.workdir <- getwd() [18:01:32.783] } [18:01:32.783] ...future.oldOptions <- base::as.list(base::.Options) [18:01:32.783] ...future.oldEnvVars <- base::Sys.getenv() [18:01:32.783] } [18:01:32.783] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:32.783] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:32.783] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:32.783] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:32.783] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:32.783] future.stdout.windows.reencode = NULL, width = 80L) [18:01:32.783] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:32.783] base::names(...future.oldOptions)) [18:01:32.783] } [18:01:32.783] if (FALSE) { [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] if (TRUE) { [18:01:32.783] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:32.783] open = "w") [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:32.783] windows = "NUL", "/dev/null"), open = "w") [18:01:32.783] } [18:01:32.783] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:32.783] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:32.783] base::sink(type = "output", split = FALSE) [18:01:32.783] base::close(...future.stdout) [18:01:32.783] }, add = TRUE) [18:01:32.783] } [18:01:32.783] ...future.frame <- base::sys.nframe() [18:01:32.783] ...future.conditions <- base::list() [18:01:32.783] ...future.rng <- base::globalenv()$.Random.seed [18:01:32.783] if (FALSE) { [18:01:32.783] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:32.783] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:32.783] } [18:01:32.783] ...future.result <- base::tryCatch({ [18:01:32.783] base::withCallingHandlers({ [18:01:32.783] ...future.value <- base::withVisible(base::local({ [18:01:32.783] ...future.makeSendCondition <- local({ [18:01:32.783] sendCondition <- NULL [18:01:32.783] function(frame = 1L) { [18:01:32.783] if (is.function(sendCondition)) [18:01:32.783] return(sendCondition) [18:01:32.783] ns <- getNamespace("parallel") [18:01:32.783] if (exists("sendData", mode = "function", [18:01:32.783] envir = ns)) { [18:01:32.783] parallel_sendData <- get("sendData", mode = "function", [18:01:32.783] envir = ns) [18:01:32.783] envir <- sys.frame(frame) [18:01:32.783] master <- NULL [18:01:32.783] while (!identical(envir, .GlobalEnv) && [18:01:32.783] !identical(envir, emptyenv())) { [18:01:32.783] if (exists("master", mode = "list", envir = envir, [18:01:32.783] inherits = FALSE)) { [18:01:32.783] master <- get("master", mode = "list", [18:01:32.783] envir = envir, inherits = FALSE) [18:01:32.783] if (inherits(master, c("SOCKnode", [18:01:32.783] "SOCK0node"))) { [18:01:32.783] sendCondition <<- function(cond) { [18:01:32.783] data <- list(type = "VALUE", value = cond, [18:01:32.783] success = TRUE) [18:01:32.783] parallel_sendData(master, data) [18:01:32.783] } [18:01:32.783] return(sendCondition) [18:01:32.783] } [18:01:32.783] } [18:01:32.783] frame <- frame + 1L [18:01:32.783] envir <- sys.frame(frame) [18:01:32.783] } [18:01:32.783] } [18:01:32.783] sendCondition <<- function(cond) NULL [18:01:32.783] } [18:01:32.783] }) [18:01:32.783] withCallingHandlers({ [18:01:32.783] { [18:01:32.783] a + 1 [18:01:32.783] } [18:01:32.783] }, immediateCondition = function(cond) { [18:01:32.783] sendCondition <- ...future.makeSendCondition() [18:01:32.783] sendCondition(cond) [18:01:32.783] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.783] { [18:01:32.783] inherits <- base::inherits [18:01:32.783] invokeRestart <- base::invokeRestart [18:01:32.783] is.null <- base::is.null [18:01:32.783] muffled <- FALSE [18:01:32.783] if (inherits(cond, "message")) { [18:01:32.783] muffled <- grepl(pattern, "muffleMessage") [18:01:32.783] if (muffled) [18:01:32.783] invokeRestart("muffleMessage") [18:01:32.783] } [18:01:32.783] else if (inherits(cond, "warning")) { [18:01:32.783] muffled <- grepl(pattern, "muffleWarning") [18:01:32.783] if (muffled) [18:01:32.783] invokeRestart("muffleWarning") [18:01:32.783] } [18:01:32.783] else if (inherits(cond, "condition")) { [18:01:32.783] if (!is.null(pattern)) { [18:01:32.783] computeRestarts <- base::computeRestarts [18:01:32.783] grepl <- base::grepl [18:01:32.783] restarts <- computeRestarts(cond) [18:01:32.783] for (restart in restarts) { [18:01:32.783] name <- restart$name [18:01:32.783] if (is.null(name)) [18:01:32.783] next [18:01:32.783] if (!grepl(pattern, name)) [18:01:32.783] next [18:01:32.783] invokeRestart(restart) [18:01:32.783] muffled <- TRUE [18:01:32.783] break [18:01:32.783] } [18:01:32.783] } [18:01:32.783] } [18:01:32.783] invisible(muffled) [18:01:32.783] } [18:01:32.783] muffleCondition(cond) [18:01:32.783] }) [18:01:32.783] })) [18:01:32.783] future::FutureResult(value = ...future.value$value, [18:01:32.783] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.783] ...future.rng), globalenv = if (FALSE) [18:01:32.783] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:32.783] ...future.globalenv.names)) [18:01:32.783] else NULL, started = ...future.startTime, version = "1.8") [18:01:32.783] }, condition = base::local({ [18:01:32.783] c <- base::c [18:01:32.783] inherits <- base::inherits [18:01:32.783] invokeRestart <- base::invokeRestart [18:01:32.783] length <- base::length [18:01:32.783] list <- base::list [18:01:32.783] seq.int <- base::seq.int [18:01:32.783] signalCondition <- base::signalCondition [18:01:32.783] sys.calls <- base::sys.calls [18:01:32.783] `[[` <- base::`[[` [18:01:32.783] `+` <- base::`+` [18:01:32.783] `<<-` <- base::`<<-` [18:01:32.783] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:32.783] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:32.783] 3L)] [18:01:32.783] } [18:01:32.783] function(cond) { [18:01:32.783] is_error <- inherits(cond, "error") [18:01:32.783] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:32.783] NULL) [18:01:32.783] if (is_error) { [18:01:32.783] sessionInformation <- function() { [18:01:32.783] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:32.783] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:32.783] search = base::search(), system = base::Sys.info()) [18:01:32.783] } [18:01:32.783] ...future.conditions[[length(...future.conditions) + [18:01:32.783] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:32.783] cond$call), session = sessionInformation(), [18:01:32.783] timestamp = base::Sys.time(), signaled = 0L) [18:01:32.783] signalCondition(cond) [18:01:32.783] } [18:01:32.783] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:32.783] "immediateCondition"))) { [18:01:32.783] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:32.783] ...future.conditions[[length(...future.conditions) + [18:01:32.783] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:32.783] if (TRUE && !signal) { [18:01:32.783] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.783] { [18:01:32.783] inherits <- base::inherits [18:01:32.783] invokeRestart <- base::invokeRestart [18:01:32.783] is.null <- base::is.null [18:01:32.783] muffled <- FALSE [18:01:32.783] if (inherits(cond, "message")) { [18:01:32.783] muffled <- grepl(pattern, "muffleMessage") [18:01:32.783] if (muffled) [18:01:32.783] invokeRestart("muffleMessage") [18:01:32.783] } [18:01:32.783] else if (inherits(cond, "warning")) { [18:01:32.783] muffled <- grepl(pattern, "muffleWarning") [18:01:32.783] if (muffled) [18:01:32.783] invokeRestart("muffleWarning") [18:01:32.783] } [18:01:32.783] else if (inherits(cond, "condition")) { [18:01:32.783] if (!is.null(pattern)) { [18:01:32.783] computeRestarts <- base::computeRestarts [18:01:32.783] grepl <- base::grepl [18:01:32.783] restarts <- computeRestarts(cond) [18:01:32.783] for (restart in restarts) { [18:01:32.783] name <- restart$name [18:01:32.783] if (is.null(name)) [18:01:32.783] next [18:01:32.783] if (!grepl(pattern, name)) [18:01:32.783] next [18:01:32.783] invokeRestart(restart) [18:01:32.783] muffled <- TRUE [18:01:32.783] break [18:01:32.783] } [18:01:32.783] } [18:01:32.783] } [18:01:32.783] invisible(muffled) [18:01:32.783] } [18:01:32.783] muffleCondition(cond, pattern = "^muffle") [18:01:32.783] } [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] if (TRUE) { [18:01:32.783] muffleCondition <- function (cond, pattern = "^muffle") [18:01:32.783] { [18:01:32.783] inherits <- base::inherits [18:01:32.783] invokeRestart <- base::invokeRestart [18:01:32.783] is.null <- base::is.null [18:01:32.783] muffled <- FALSE [18:01:32.783] if (inherits(cond, "message")) { [18:01:32.783] muffled <- grepl(pattern, "muffleMessage") [18:01:32.783] if (muffled) [18:01:32.783] invokeRestart("muffleMessage") [18:01:32.783] } [18:01:32.783] else if (inherits(cond, "warning")) { [18:01:32.783] muffled <- grepl(pattern, "muffleWarning") [18:01:32.783] if (muffled) [18:01:32.783] invokeRestart("muffleWarning") [18:01:32.783] } [18:01:32.783] else if (inherits(cond, "condition")) { [18:01:32.783] if (!is.null(pattern)) { [18:01:32.783] computeRestarts <- base::computeRestarts [18:01:32.783] grepl <- base::grepl [18:01:32.783] restarts <- computeRestarts(cond) [18:01:32.783] for (restart in restarts) { [18:01:32.783] name <- restart$name [18:01:32.783] if (is.null(name)) [18:01:32.783] next [18:01:32.783] if (!grepl(pattern, name)) [18:01:32.783] next [18:01:32.783] invokeRestart(restart) [18:01:32.783] muffled <- TRUE [18:01:32.783] break [18:01:32.783] } [18:01:32.783] } [18:01:32.783] } [18:01:32.783] invisible(muffled) [18:01:32.783] } [18:01:32.783] muffleCondition(cond, pattern = "^muffle") [18:01:32.783] } [18:01:32.783] } [18:01:32.783] } [18:01:32.783] })) [18:01:32.783] }, error = function(ex) { [18:01:32.783] base::structure(base::list(value = NULL, visible = NULL, [18:01:32.783] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:32.783] ...future.rng), started = ...future.startTime, [18:01:32.783] finished = Sys.time(), session_uuid = NA_character_, [18:01:32.783] version = "1.8"), class = "FutureResult") [18:01:32.783] }, finally = { [18:01:32.783] if (!identical(...future.workdir, getwd())) [18:01:32.783] setwd(...future.workdir) [18:01:32.783] { [18:01:32.783] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:32.783] ...future.oldOptions$nwarnings <- NULL [18:01:32.783] } [18:01:32.783] base::options(...future.oldOptions) [18:01:32.783] if (.Platform$OS.type == "windows") { [18:01:32.783] old_names <- names(...future.oldEnvVars) [18:01:32.783] envs <- base::Sys.getenv() [18:01:32.783] names <- names(envs) [18:01:32.783] common <- intersect(names, old_names) [18:01:32.783] added <- setdiff(names, old_names) [18:01:32.783] removed <- setdiff(old_names, names) [18:01:32.783] changed <- common[...future.oldEnvVars[common] != [18:01:32.783] envs[common]] [18:01:32.783] NAMES <- toupper(changed) [18:01:32.783] args <- list() [18:01:32.783] for (kk in seq_along(NAMES)) { [18:01:32.783] name <- changed[[kk]] [18:01:32.783] NAME <- NAMES[[kk]] [18:01:32.783] if (name != NAME && is.element(NAME, old_names)) [18:01:32.783] next [18:01:32.783] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.783] } [18:01:32.783] NAMES <- toupper(added) [18:01:32.783] for (kk in seq_along(NAMES)) { [18:01:32.783] name <- added[[kk]] [18:01:32.783] NAME <- NAMES[[kk]] [18:01:32.783] if (name != NAME && is.element(NAME, old_names)) [18:01:32.783] next [18:01:32.783] args[[name]] <- "" [18:01:32.783] } [18:01:32.783] NAMES <- toupper(removed) [18:01:32.783] for (kk in seq_along(NAMES)) { [18:01:32.783] name <- removed[[kk]] [18:01:32.783] NAME <- NAMES[[kk]] [18:01:32.783] if (name != NAME && is.element(NAME, old_names)) [18:01:32.783] next [18:01:32.783] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:32.783] } [18:01:32.783] if (length(args) > 0) [18:01:32.783] base::do.call(base::Sys.setenv, args = args) [18:01:32.783] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:32.783] } [18:01:32.783] { [18:01:32.783] if (base::length(...future.futureOptionsAdded) > [18:01:32.783] 0L) { [18:01:32.783] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:32.783] base::names(opts) <- ...future.futureOptionsAdded [18:01:32.783] base::options(opts) [18:01:32.783] } [18:01:32.783] { [18:01:32.783] { [18:01:32.783] base::options(mc.cores = ...future.mc.cores.old) [18:01:32.783] NULL [18:01:32.783] } [18:01:32.783] options(future.plan = NULL) [18:01:32.783] if (is.na(NA_character_)) [18:01:32.783] Sys.unsetenv("R_FUTURE_PLAN") [18:01:32.783] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:32.783] future::plan(list(function (..., workers = availableCores(), [18:01:32.783] lazy = FALSE, rscript_libs = .libPaths(), [18:01:32.783] envir = parent.frame()) [18:01:32.783] { [18:01:32.783] if (is.function(workers)) [18:01:32.783] workers <- workers() [18:01:32.783] workers <- structure(as.integer(workers), [18:01:32.783] class = class(workers)) [18:01:32.783] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:32.783] workers >= 1) [18:01:32.783] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:32.783] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:32.783] } [18:01:32.783] future <- MultisessionFuture(..., workers = workers, [18:01:32.783] lazy = lazy, rscript_libs = rscript_libs, [18:01:32.783] envir = envir) [18:01:32.783] if (!future$lazy) [18:01:32.783] future <- run(future) [18:01:32.783] invisible(future) [18:01:32.783] }), .cleanup = FALSE, .init = FALSE) [18:01:32.783] } [18:01:32.783] } [18:01:32.783] } [18:01:32.783] }) [18:01:32.783] if (TRUE) { [18:01:32.783] base::sink(type = "output", split = FALSE) [18:01:32.783] if (TRUE) { [18:01:32.783] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:32.783] } [18:01:32.783] else { [18:01:32.783] ...future.result["stdout"] <- base::list(NULL) [18:01:32.783] } [18:01:32.783] base::close(...future.stdout) [18:01:32.783] ...future.stdout <- NULL [18:01:32.783] } [18:01:32.783] ...future.result$conditions <- ...future.conditions [18:01:32.783] ...future.result$finished <- base::Sys.time() [18:01:32.783] ...future.result [18:01:32.783] } [18:01:32.788] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:32.789] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:32.789] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:32.789] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:32.790] MultisessionFuture started [18:01:32.790] - Launch lazy future ... done [18:01:32.790] run() for 'MultisessionFuture' ... done [18:01:32.790] result() for ClusterFuture ... [18:01:32.791] receiveMessageFromWorker() for ClusterFuture ... [18:01:32.791] - Validating connection of MultisessionFuture [18:01:32.806] - received message: FutureResult [18:01:32.806] - Received FutureResult [18:01:32.806] - Erased future from FutureRegistry [18:01:32.806] result() for ClusterFuture ... [18:01:32.806] - result already collected: FutureResult [18:01:32.806] result() for ClusterFuture ... done [18:01:32.807] receiveMessageFromWorker() for ClusterFuture ... done [18:01:32.807] result() for ClusterFuture ... done [18:01:32.807] result() for ClusterFuture ... [18:01:32.807] - result already collected: FutureResult [18:01:32.807] result() for ClusterFuture ... done b = 11 *** %<-% with 'multisession' futures ... DONE Testing with 2 cores ... DONE > > message("*** %<-% ... DONE") *** %<-% ... DONE > > source("incl/end.R") [18:01:32.808] plan(): Setting new future strategy stack: [18:01:32.809] List of future strategies: [18:01:32.809] 1. FutureStrategy: [18:01:32.809] - args: function (..., envir = parent.frame()) [18:01:32.809] - tweaked: FALSE [18:01:32.809] - call: future::plan(oplan) [18:01:32.810] plan(): nbrOfWorkers() = 1 Failed to undo environment variables: - Expected environment variables: [n=201] '!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', 'OMP_THREAD_LIMIT', 'OS', 'PATH', 'PATHEXT', 'PROCESSOR_ARCHITECTURE', 'PROCESSOR_IDENTIFIER', 'PROCESSOR_LEVEL', 'PROCESSOR_REVISION', 'PROGRAMFILES', 'PROMPT', 'PSModulePath', 'PUBLIC', 'PWD', 'ProgramData', 'ProgramFiles(x86)', 'ProgramW6432', 'RETICULATE_AUTOCONFIGURE', 'RTOOLS43_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_RTOOLS43_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_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_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_SUBDIRS_STRICT_', '_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_INSTALL_TIME_PATCHES_', '_R_S3_METHOD_LOOKUP_BASEENV_AFTER_GLOBALENV_', '_R_SHLIB_BUILD_OBJECTS_SYMBOL_TABLES_', '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 1.10 0.12 2.23