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:28.962] plan(): Setting new future strategy stack: [18:01:28.964] List of future strategies: [18:01:28.964] 1. sequential: [18:01:28.964] - args: function (..., envir = parent.frame()) [18:01:28.964] - tweaked: FALSE [18:01:28.964] - call: future::plan("sequential") [18:01:28.980] plan(): nbrOfWorkers() = 1 > > message("*** futureAssign() ...") *** futureAssign() ... > > message("*** futureAssign() - sequential w/ lazy evaluation ...") *** futureAssign() - sequential w/ lazy evaluation ... > > delayedAssign("a", { + cat("Delayed assignment evaluated\n") + 1 + }) > > futureAssign("b", { + cat("Future assignment evaluated\n") + 2 + }, lazy = TRUE) [18:01:28.987] getGlobalsAndPackages() ... [18:01:28.988] Searching for globals... [18:01:28.995] - globals found: [2] '{', 'cat' [18:01:28.995] Searching for globals ... DONE [18:01:28.995] Resolving globals: FALSE [18:01:28.996] [18:01:28.996] [18:01:28.996] getGlobalsAndPackages() ... DONE > > ## Because "lazy future" is used, the expression/value > ## for 'b' will not be resolved at the point. For other > ## types of futures, it may already have been resolved > cat(sprintf("b = %s\n", b)) [18:01:28.998] run() for 'Future' ... [18:01:28.998] - state: 'created' [18:01:28.998] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:28.999] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:28.999] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:28.999] - Field: 'label' [18:01:28.999] - Field: 'local' [18:01:28.999] - Field: 'owner' [18:01:29.000] - Field: 'envir' [18:01:29.000] - Field: 'packages' [18:01:29.000] - Field: 'gc' [18:01:29.000] - Field: 'conditions' [18:01:29.000] - Field: 'expr' [18:01:29.000] - Field: 'uuid' [18:01:29.001] - Field: 'seed' [18:01:29.001] - Field: 'version' [18:01:29.001] - Field: 'result' [18:01:29.001] - Field: 'asynchronous' [18:01:29.001] - Field: 'calls' [18:01:29.002] - Field: 'globals' [18:01:29.002] - Field: 'stdout' [18:01:29.002] - Field: 'earlySignal' [18:01:29.002] - Field: 'lazy' [18:01:29.002] - Field: 'state' [18:01:29.002] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.003] - Launch lazy future ... [18:01:29.004] Packages needed by the future expression (n = 0): [18:01:29.004] Packages needed by future strategies (n = 0): [18:01:29.005] { [18:01:29.005] { [18:01:29.005] { [18:01:29.005] ...future.startTime <- base::Sys.time() [18:01:29.005] { [18:01:29.005] { [18:01:29.005] { [18:01:29.005] base::local({ [18:01:29.005] has_future <- base::requireNamespace("future", [18:01:29.005] quietly = TRUE) [18:01:29.005] if (has_future) { [18:01:29.005] ns <- base::getNamespace("future") [18:01:29.005] version <- ns[[".package"]][["version"]] [18:01:29.005] if (is.null(version)) [18:01:29.005] version <- utils::packageVersion("future") [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] version <- NULL [18:01:29.005] } [18:01:29.005] if (!has_future || version < "1.8.0") { [18:01:29.005] info <- base::c(r_version = base::gsub("R version ", [18:01:29.005] "", base::R.version$version.string), [18:01:29.005] platform = base::sprintf("%s (%s-bit)", [18:01:29.005] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.005] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.005] "release", "version")], collapse = " "), [18:01:29.005] hostname = base::Sys.info()[["nodename"]]) [18:01:29.005] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.005] info) [18:01:29.005] info <- base::paste(info, collapse = "; ") [18:01:29.005] if (!has_future) { [18:01:29.005] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.005] info) [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.005] info, version) [18:01:29.005] } [18:01:29.005] base::stop(msg) [18:01:29.005] } [18:01:29.005] }) [18:01:29.005] } [18:01:29.005] options(future.plan = NULL) [18:01:29.005] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.005] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.005] } [18:01:29.005] ...future.workdir <- getwd() [18:01:29.005] } [18:01:29.005] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.005] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.005] } [18:01:29.005] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.005] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.005] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.005] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.005] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.005] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.005] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.005] base::names(...future.oldOptions)) [18:01:29.005] } [18:01:29.005] if (FALSE) { [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] if (TRUE) { [18:01:29.005] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.005] open = "w") [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.005] windows = "NUL", "/dev/null"), open = "w") [18:01:29.005] } [18:01:29.005] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.005] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.005] base::sink(type = "output", split = FALSE) [18:01:29.005] base::close(...future.stdout) [18:01:29.005] }, add = TRUE) [18:01:29.005] } [18:01:29.005] ...future.frame <- base::sys.nframe() [18:01:29.005] ...future.conditions <- base::list() [18:01:29.005] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.005] if (FALSE) { [18:01:29.005] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.005] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.005] } [18:01:29.005] ...future.result <- base::tryCatch({ [18:01:29.005] base::withCallingHandlers({ [18:01:29.005] ...future.value <- base::withVisible(base::local({ [18:01:29.005] cat("Future assignment evaluated\n") [18:01:29.005] 2 [18:01:29.005] })) [18:01:29.005] future::FutureResult(value = ...future.value$value, [18:01:29.005] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.005] ...future.rng), globalenv = if (FALSE) [18:01:29.005] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.005] ...future.globalenv.names)) [18:01:29.005] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.005] }, condition = base::local({ [18:01:29.005] c <- base::c [18:01:29.005] inherits <- base::inherits [18:01:29.005] invokeRestart <- base::invokeRestart [18:01:29.005] length <- base::length [18:01:29.005] list <- base::list [18:01:29.005] seq.int <- base::seq.int [18:01:29.005] signalCondition <- base::signalCondition [18:01:29.005] sys.calls <- base::sys.calls [18:01:29.005] `[[` <- base::`[[` [18:01:29.005] `+` <- base::`+` [18:01:29.005] `<<-` <- base::`<<-` [18:01:29.005] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.005] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.005] 3L)] [18:01:29.005] } [18:01:29.005] function(cond) { [18:01:29.005] is_error <- inherits(cond, "error") [18:01:29.005] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.005] NULL) [18:01:29.005] if (is_error) { [18:01:29.005] sessionInformation <- function() { [18:01:29.005] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.005] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.005] search = base::search(), system = base::Sys.info()) [18:01:29.005] } [18:01:29.005] ...future.conditions[[length(...future.conditions) + [18:01:29.005] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.005] cond$call), session = sessionInformation(), [18:01:29.005] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.005] signalCondition(cond) [18:01:29.005] } [18:01:29.005] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.005] "immediateCondition"))) { [18:01:29.005] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.005] ...future.conditions[[length(...future.conditions) + [18:01:29.005] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.005] if (TRUE && !signal) { [18:01:29.005] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.005] { [18:01:29.005] inherits <- base::inherits [18:01:29.005] invokeRestart <- base::invokeRestart [18:01:29.005] is.null <- base::is.null [18:01:29.005] muffled <- FALSE [18:01:29.005] if (inherits(cond, "message")) { [18:01:29.005] muffled <- grepl(pattern, "muffleMessage") [18:01:29.005] if (muffled) [18:01:29.005] invokeRestart("muffleMessage") [18:01:29.005] } [18:01:29.005] else if (inherits(cond, "warning")) { [18:01:29.005] muffled <- grepl(pattern, "muffleWarning") [18:01:29.005] if (muffled) [18:01:29.005] invokeRestart("muffleWarning") [18:01:29.005] } [18:01:29.005] else if (inherits(cond, "condition")) { [18:01:29.005] if (!is.null(pattern)) { [18:01:29.005] computeRestarts <- base::computeRestarts [18:01:29.005] grepl <- base::grepl [18:01:29.005] restarts <- computeRestarts(cond) [18:01:29.005] for (restart in restarts) { [18:01:29.005] name <- restart$name [18:01:29.005] if (is.null(name)) [18:01:29.005] next [18:01:29.005] if (!grepl(pattern, name)) [18:01:29.005] next [18:01:29.005] invokeRestart(restart) [18:01:29.005] muffled <- TRUE [18:01:29.005] break [18:01:29.005] } [18:01:29.005] } [18:01:29.005] } [18:01:29.005] invisible(muffled) [18:01:29.005] } [18:01:29.005] muffleCondition(cond, pattern = "^muffle") [18:01:29.005] } [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] if (TRUE) { [18:01:29.005] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.005] { [18:01:29.005] inherits <- base::inherits [18:01:29.005] invokeRestart <- base::invokeRestart [18:01:29.005] is.null <- base::is.null [18:01:29.005] muffled <- FALSE [18:01:29.005] if (inherits(cond, "message")) { [18:01:29.005] muffled <- grepl(pattern, "muffleMessage") [18:01:29.005] if (muffled) [18:01:29.005] invokeRestart("muffleMessage") [18:01:29.005] } [18:01:29.005] else if (inherits(cond, "warning")) { [18:01:29.005] muffled <- grepl(pattern, "muffleWarning") [18:01:29.005] if (muffled) [18:01:29.005] invokeRestart("muffleWarning") [18:01:29.005] } [18:01:29.005] else if (inherits(cond, "condition")) { [18:01:29.005] if (!is.null(pattern)) { [18:01:29.005] computeRestarts <- base::computeRestarts [18:01:29.005] grepl <- base::grepl [18:01:29.005] restarts <- computeRestarts(cond) [18:01:29.005] for (restart in restarts) { [18:01:29.005] name <- restart$name [18:01:29.005] if (is.null(name)) [18:01:29.005] next [18:01:29.005] if (!grepl(pattern, name)) [18:01:29.005] next [18:01:29.005] invokeRestart(restart) [18:01:29.005] muffled <- TRUE [18:01:29.005] break [18:01:29.005] } [18:01:29.005] } [18:01:29.005] } [18:01:29.005] invisible(muffled) [18:01:29.005] } [18:01:29.005] muffleCondition(cond, pattern = "^muffle") [18:01:29.005] } [18:01:29.005] } [18:01:29.005] } [18:01:29.005] })) [18:01:29.005] }, error = function(ex) { [18:01:29.005] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.005] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.005] ...future.rng), started = ...future.startTime, [18:01:29.005] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.005] version = "1.8"), class = "FutureResult") [18:01:29.005] }, finally = { [18:01:29.005] if (!identical(...future.workdir, getwd())) [18:01:29.005] setwd(...future.workdir) [18:01:29.005] { [18:01:29.005] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.005] ...future.oldOptions$nwarnings <- NULL [18:01:29.005] } [18:01:29.005] base::options(...future.oldOptions) [18:01:29.005] if (.Platform$OS.type == "windows") { [18:01:29.005] old_names <- names(...future.oldEnvVars) [18:01:29.005] envs <- base::Sys.getenv() [18:01:29.005] names <- names(envs) [18:01:29.005] common <- intersect(names, old_names) [18:01:29.005] added <- setdiff(names, old_names) [18:01:29.005] removed <- setdiff(old_names, names) [18:01:29.005] changed <- common[...future.oldEnvVars[common] != [18:01:29.005] envs[common]] [18:01:29.005] NAMES <- toupper(changed) [18:01:29.005] args <- list() [18:01:29.005] for (kk in seq_along(NAMES)) { [18:01:29.005] name <- changed[[kk]] [18:01:29.005] NAME <- NAMES[[kk]] [18:01:29.005] if (name != NAME && is.element(NAME, old_names)) [18:01:29.005] next [18:01:29.005] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.005] } [18:01:29.005] NAMES <- toupper(added) [18:01:29.005] for (kk in seq_along(NAMES)) { [18:01:29.005] name <- added[[kk]] [18:01:29.005] NAME <- NAMES[[kk]] [18:01:29.005] if (name != NAME && is.element(NAME, old_names)) [18:01:29.005] next [18:01:29.005] args[[name]] <- "" [18:01:29.005] } [18:01:29.005] NAMES <- toupper(removed) [18:01:29.005] for (kk in seq_along(NAMES)) { [18:01:29.005] name <- removed[[kk]] [18:01:29.005] NAME <- NAMES[[kk]] [18:01:29.005] if (name != NAME && is.element(NAME, old_names)) [18:01:29.005] next [18:01:29.005] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.005] } [18:01:29.005] if (length(args) > 0) [18:01:29.005] base::do.call(base::Sys.setenv, args = args) [18:01:29.005] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.005] } [18:01:29.005] { [18:01:29.005] if (base::length(...future.futureOptionsAdded) > [18:01:29.005] 0L) { [18:01:29.005] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.005] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.005] base::options(opts) [18:01:29.005] } [18:01:29.005] { [18:01:29.005] { [18:01:29.005] NULL [18:01:29.005] RNGkind("Mersenne-Twister") [18:01:29.005] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.005] inherits = FALSE) [18:01:29.005] } [18:01:29.005] options(future.plan = NULL) [18:01:29.005] if (is.na(NA_character_)) [18:01:29.005] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.005] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.005] future::plan(list(function (..., envir = parent.frame()) [18:01:29.005] { [18:01:29.005] future <- SequentialFuture(..., envir = envir) [18:01:29.005] if (!future$lazy) [18:01:29.005] future <- run(future) [18:01:29.005] invisible(future) [18:01:29.005] }), .cleanup = FALSE, .init = FALSE) [18:01:29.005] } [18:01:29.005] } [18:01:29.005] } [18:01:29.005] }) [18:01:29.005] if (TRUE) { [18:01:29.005] base::sink(type = "output", split = FALSE) [18:01:29.005] if (TRUE) { [18:01:29.005] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.005] } [18:01:29.005] else { [18:01:29.005] ...future.result["stdout"] <- base::list(NULL) [18:01:29.005] } [18:01:29.005] base::close(...future.stdout) [18:01:29.005] ...future.stdout <- NULL [18:01:29.005] } [18:01:29.005] ...future.result$conditions <- ...future.conditions [18:01:29.005] ...future.result$finished <- base::Sys.time() [18:01:29.005] ...future.result [18:01:29.005] } [18:01:29.009] plan(): Setting new future strategy stack: [18:01:29.009] List of future strategies: [18:01:29.009] 1. sequential: [18:01:29.009] - args: function (..., envir = parent.frame()) [18:01:29.009] - tweaked: FALSE [18:01:29.009] - call: NULL [18:01:29.010] plan(): nbrOfWorkers() = 1 [18:01:29.012] plan(): Setting new future strategy stack: [18:01:29.012] List of future strategies: [18:01:29.012] 1. sequential: [18:01:29.012] - args: function (..., envir = parent.frame()) [18:01:29.012] - tweaked: FALSE [18:01:29.012] - call: future::plan("sequential") [18:01:29.013] plan(): nbrOfWorkers() = 1 [18:01:29.013] SequentialFuture started (and completed) [18:01:29.014] - Launch lazy future ... done [18:01:29.014] run() for 'SequentialFuture' ... done Future assignment evaluated b = 2 > > ## The expression/value of 'a' is resolved at this point, > ## because a delayed assignment (promise) was used. > cat(sprintf("a = %s\n", a)) Delayed assignment evaluated a = 1 > > stopifnot(identical(a, 1)) > stopifnot(identical(b, 2)) > > message("*** futureAssign() - sequential w/ lazy evaluation ... DONE") *** futureAssign() - sequential w/ lazy evaluation ... DONE > > > message("*** futureAssign() - lazy = TRUE / FALSE ...") *** futureAssign() - lazy = TRUE / FALSE ... > > 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("*** futureAssign() with %s futures ...", sQuote(strategy))) + plan(strategy) + + ## Potential task name clashes + u <- new.env() + v <- new.env() + futureAssign("a", { 2 }, assign.env = u) + futureAssign("a", { 4 }, assign.env = v) + + cat(sprintf("u$a = %s\n", u$a)) + cat(sprintf("v$a = %s\n", v$a)) + + stopifnot(identical(u$a, 2)) + stopifnot(identical(v$a, 4)) + + + ## Global variables + a <- 1 + futureAssign("b", { 2 * a }) + a <- 2 + stopifnot(b == 2) + + ## Explicit lazy evaluation + for (lazy in c(FALSE, TRUE)) { + a <- 1 + f <- futureAssign("b", { 2 * a }, lazy = lazy) + a <- 2 + stopifnot(b == 2) + stopifnot(f$lazy == lazy || (strategy %in% c("multisession", "multicore") && cores == 1L)) + + ## Set 'lazy' via disposable option + options(future.disposable = list(lazy = lazy)) + a <- 1 + f <- futureAssign("b", { 2 * a }) + a <- 2 + stopifnot(b == 2) + stopifnot(f$lazy == lazy || (strategy %in% c("multisession", "multicore") && cores == 1L)) + } + + message(sprintf("*** futureAssign() with %s futures ... DONE", sQuote(strategy))) + } # for (strategy in ...) + + message(sprintf("Testing with %d cores ... DONE", cores)) + } ## for (cores ...) Testing with 1 cores ... *** futureAssign() with 'sequential' futures ... [18:01:29.046] plan(): Setting new future strategy stack: [18:01:29.046] List of future strategies: [18:01:29.046] 1. sequential: [18:01:29.046] - args: function (..., envir = parent.frame()) [18:01:29.046] - tweaked: FALSE [18:01:29.046] - call: plan(strategy) [18:01:29.060] plan(): nbrOfWorkers() = 1 [18:01:29.060] getGlobalsAndPackages() ... [18:01:29.060] Searching for globals... [18:01:29.061] - globals found: [1] '{' [18:01:29.061] Searching for globals ... DONE [18:01:29.061] Resolving globals: FALSE [18:01:29.061] [18:01:29.062] [18:01:29.062] getGlobalsAndPackages() ... DONE [18:01:29.062] run() for 'Future' ... [18:01:29.062] - state: 'created' [18:01:29.062] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.063] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.063] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.063] - Field: 'label' [18:01:29.063] - Field: 'local' [18:01:29.064] - Field: 'owner' [18:01:29.064] - Field: 'envir' [18:01:29.064] - Field: 'packages' [18:01:29.064] - Field: 'gc' [18:01:29.064] - Field: 'conditions' [18:01:29.064] - Field: 'expr' [18:01:29.065] - Field: 'uuid' [18:01:29.065] - Field: 'seed' [18:01:29.065] - Field: 'version' [18:01:29.065] - Field: 'result' [18:01:29.065] - Field: 'asynchronous' [18:01:29.065] - Field: 'calls' [18:01:29.066] - Field: 'globals' [18:01:29.066] - Field: 'stdout' [18:01:29.066] - Field: 'earlySignal' [18:01:29.066] - Field: 'lazy' [18:01:29.066] - Field: 'state' [18:01:29.067] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.067] - Launch lazy future ... [18:01:29.067] Packages needed by the future expression (n = 0): [18:01:29.067] Packages needed by future strategies (n = 0): [18:01:29.068] { [18:01:29.068] { [18:01:29.068] { [18:01:29.068] ...future.startTime <- base::Sys.time() [18:01:29.068] { [18:01:29.068] { [18:01:29.068] { [18:01:29.068] base::local({ [18:01:29.068] has_future <- base::requireNamespace("future", [18:01:29.068] quietly = TRUE) [18:01:29.068] if (has_future) { [18:01:29.068] ns <- base::getNamespace("future") [18:01:29.068] version <- ns[[".package"]][["version"]] [18:01:29.068] if (is.null(version)) [18:01:29.068] version <- utils::packageVersion("future") [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] version <- NULL [18:01:29.068] } [18:01:29.068] if (!has_future || version < "1.8.0") { [18:01:29.068] info <- base::c(r_version = base::gsub("R version ", [18:01:29.068] "", base::R.version$version.string), [18:01:29.068] platform = base::sprintf("%s (%s-bit)", [18:01:29.068] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.068] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.068] "release", "version")], collapse = " "), [18:01:29.068] hostname = base::Sys.info()[["nodename"]]) [18:01:29.068] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.068] info) [18:01:29.068] info <- base::paste(info, collapse = "; ") [18:01:29.068] if (!has_future) { [18:01:29.068] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.068] info) [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.068] info, version) [18:01:29.068] } [18:01:29.068] base::stop(msg) [18:01:29.068] } [18:01:29.068] }) [18:01:29.068] } [18:01:29.068] options(future.plan = NULL) [18:01:29.068] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.068] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.068] } [18:01:29.068] ...future.workdir <- getwd() [18:01:29.068] } [18:01:29.068] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.068] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.068] } [18:01:29.068] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.068] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.068] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.068] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.068] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.068] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.068] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.068] base::names(...future.oldOptions)) [18:01:29.068] } [18:01:29.068] if (FALSE) { [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] if (TRUE) { [18:01:29.068] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.068] open = "w") [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.068] windows = "NUL", "/dev/null"), open = "w") [18:01:29.068] } [18:01:29.068] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.068] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.068] base::sink(type = "output", split = FALSE) [18:01:29.068] base::close(...future.stdout) [18:01:29.068] }, add = TRUE) [18:01:29.068] } [18:01:29.068] ...future.frame <- base::sys.nframe() [18:01:29.068] ...future.conditions <- base::list() [18:01:29.068] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.068] if (FALSE) { [18:01:29.068] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.068] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.068] } [18:01:29.068] ...future.result <- base::tryCatch({ [18:01:29.068] base::withCallingHandlers({ [18:01:29.068] ...future.value <- base::withVisible(base::local({ [18:01:29.068] 2 [18:01:29.068] })) [18:01:29.068] future::FutureResult(value = ...future.value$value, [18:01:29.068] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.068] ...future.rng), globalenv = if (FALSE) [18:01:29.068] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.068] ...future.globalenv.names)) [18:01:29.068] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.068] }, condition = base::local({ [18:01:29.068] c <- base::c [18:01:29.068] inherits <- base::inherits [18:01:29.068] invokeRestart <- base::invokeRestart [18:01:29.068] length <- base::length [18:01:29.068] list <- base::list [18:01:29.068] seq.int <- base::seq.int [18:01:29.068] signalCondition <- base::signalCondition [18:01:29.068] sys.calls <- base::sys.calls [18:01:29.068] `[[` <- base::`[[` [18:01:29.068] `+` <- base::`+` [18:01:29.068] `<<-` <- base::`<<-` [18:01:29.068] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.068] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.068] 3L)] [18:01:29.068] } [18:01:29.068] function(cond) { [18:01:29.068] is_error <- inherits(cond, "error") [18:01:29.068] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.068] NULL) [18:01:29.068] if (is_error) { [18:01:29.068] sessionInformation <- function() { [18:01:29.068] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.068] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.068] search = base::search(), system = base::Sys.info()) [18:01:29.068] } [18:01:29.068] ...future.conditions[[length(...future.conditions) + [18:01:29.068] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.068] cond$call), session = sessionInformation(), [18:01:29.068] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.068] signalCondition(cond) [18:01:29.068] } [18:01:29.068] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.068] "immediateCondition"))) { [18:01:29.068] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.068] ...future.conditions[[length(...future.conditions) + [18:01:29.068] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.068] if (TRUE && !signal) { [18:01:29.068] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.068] { [18:01:29.068] inherits <- base::inherits [18:01:29.068] invokeRestart <- base::invokeRestart [18:01:29.068] is.null <- base::is.null [18:01:29.068] muffled <- FALSE [18:01:29.068] if (inherits(cond, "message")) { [18:01:29.068] muffled <- grepl(pattern, "muffleMessage") [18:01:29.068] if (muffled) [18:01:29.068] invokeRestart("muffleMessage") [18:01:29.068] } [18:01:29.068] else if (inherits(cond, "warning")) { [18:01:29.068] muffled <- grepl(pattern, "muffleWarning") [18:01:29.068] if (muffled) [18:01:29.068] invokeRestart("muffleWarning") [18:01:29.068] } [18:01:29.068] else if (inherits(cond, "condition")) { [18:01:29.068] if (!is.null(pattern)) { [18:01:29.068] computeRestarts <- base::computeRestarts [18:01:29.068] grepl <- base::grepl [18:01:29.068] restarts <- computeRestarts(cond) [18:01:29.068] for (restart in restarts) { [18:01:29.068] name <- restart$name [18:01:29.068] if (is.null(name)) [18:01:29.068] next [18:01:29.068] if (!grepl(pattern, name)) [18:01:29.068] next [18:01:29.068] invokeRestart(restart) [18:01:29.068] muffled <- TRUE [18:01:29.068] break [18:01:29.068] } [18:01:29.068] } [18:01:29.068] } [18:01:29.068] invisible(muffled) [18:01:29.068] } [18:01:29.068] muffleCondition(cond, pattern = "^muffle") [18:01:29.068] } [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] if (TRUE) { [18:01:29.068] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.068] { [18:01:29.068] inherits <- base::inherits [18:01:29.068] invokeRestart <- base::invokeRestart [18:01:29.068] is.null <- base::is.null [18:01:29.068] muffled <- FALSE [18:01:29.068] if (inherits(cond, "message")) { [18:01:29.068] muffled <- grepl(pattern, "muffleMessage") [18:01:29.068] if (muffled) [18:01:29.068] invokeRestart("muffleMessage") [18:01:29.068] } [18:01:29.068] else if (inherits(cond, "warning")) { [18:01:29.068] muffled <- grepl(pattern, "muffleWarning") [18:01:29.068] if (muffled) [18:01:29.068] invokeRestart("muffleWarning") [18:01:29.068] } [18:01:29.068] else if (inherits(cond, "condition")) { [18:01:29.068] if (!is.null(pattern)) { [18:01:29.068] computeRestarts <- base::computeRestarts [18:01:29.068] grepl <- base::grepl [18:01:29.068] restarts <- computeRestarts(cond) [18:01:29.068] for (restart in restarts) { [18:01:29.068] name <- restart$name [18:01:29.068] if (is.null(name)) [18:01:29.068] next [18:01:29.068] if (!grepl(pattern, name)) [18:01:29.068] next [18:01:29.068] invokeRestart(restart) [18:01:29.068] muffled <- TRUE [18:01:29.068] break [18:01:29.068] } [18:01:29.068] } [18:01:29.068] } [18:01:29.068] invisible(muffled) [18:01:29.068] } [18:01:29.068] muffleCondition(cond, pattern = "^muffle") [18:01:29.068] } [18:01:29.068] } [18:01:29.068] } [18:01:29.068] })) [18:01:29.068] }, error = function(ex) { [18:01:29.068] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.068] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.068] ...future.rng), started = ...future.startTime, [18:01:29.068] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.068] version = "1.8"), class = "FutureResult") [18:01:29.068] }, finally = { [18:01:29.068] if (!identical(...future.workdir, getwd())) [18:01:29.068] setwd(...future.workdir) [18:01:29.068] { [18:01:29.068] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.068] ...future.oldOptions$nwarnings <- NULL [18:01:29.068] } [18:01:29.068] base::options(...future.oldOptions) [18:01:29.068] if (.Platform$OS.type == "windows") { [18:01:29.068] old_names <- names(...future.oldEnvVars) [18:01:29.068] envs <- base::Sys.getenv() [18:01:29.068] names <- names(envs) [18:01:29.068] common <- intersect(names, old_names) [18:01:29.068] added <- setdiff(names, old_names) [18:01:29.068] removed <- setdiff(old_names, names) [18:01:29.068] changed <- common[...future.oldEnvVars[common] != [18:01:29.068] envs[common]] [18:01:29.068] NAMES <- toupper(changed) [18:01:29.068] args <- list() [18:01:29.068] for (kk in seq_along(NAMES)) { [18:01:29.068] name <- changed[[kk]] [18:01:29.068] NAME <- NAMES[[kk]] [18:01:29.068] if (name != NAME && is.element(NAME, old_names)) [18:01:29.068] next [18:01:29.068] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.068] } [18:01:29.068] NAMES <- toupper(added) [18:01:29.068] for (kk in seq_along(NAMES)) { [18:01:29.068] name <- added[[kk]] [18:01:29.068] NAME <- NAMES[[kk]] [18:01:29.068] if (name != NAME && is.element(NAME, old_names)) [18:01:29.068] next [18:01:29.068] args[[name]] <- "" [18:01:29.068] } [18:01:29.068] NAMES <- toupper(removed) [18:01:29.068] for (kk in seq_along(NAMES)) { [18:01:29.068] name <- removed[[kk]] [18:01:29.068] NAME <- NAMES[[kk]] [18:01:29.068] if (name != NAME && is.element(NAME, old_names)) [18:01:29.068] next [18:01:29.068] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.068] } [18:01:29.068] if (length(args) > 0) [18:01:29.068] base::do.call(base::Sys.setenv, args = args) [18:01:29.068] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.068] } [18:01:29.068] { [18:01:29.068] if (base::length(...future.futureOptionsAdded) > [18:01:29.068] 0L) { [18:01:29.068] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.068] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.068] base::options(opts) [18:01:29.068] } [18:01:29.068] { [18:01:29.068] { [18:01:29.068] NULL [18:01:29.068] RNGkind("Mersenne-Twister") [18:01:29.068] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.068] inherits = FALSE) [18:01:29.068] } [18:01:29.068] options(future.plan = NULL) [18:01:29.068] if (is.na(NA_character_)) [18:01:29.068] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.068] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.068] future::plan(list(function (..., envir = parent.frame()) [18:01:29.068] { [18:01:29.068] future <- SequentialFuture(..., envir = envir) [18:01:29.068] if (!future$lazy) [18:01:29.068] future <- run(future) [18:01:29.068] invisible(future) [18:01:29.068] }), .cleanup = FALSE, .init = FALSE) [18:01:29.068] } [18:01:29.068] } [18:01:29.068] } [18:01:29.068] }) [18:01:29.068] if (TRUE) { [18:01:29.068] base::sink(type = "output", split = FALSE) [18:01:29.068] if (TRUE) { [18:01:29.068] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.068] } [18:01:29.068] else { [18:01:29.068] ...future.result["stdout"] <- base::list(NULL) [18:01:29.068] } [18:01:29.068] base::close(...future.stdout) [18:01:29.068] ...future.stdout <- NULL [18:01:29.068] } [18:01:29.068] ...future.result$conditions <- ...future.conditions [18:01:29.068] ...future.result$finished <- base::Sys.time() [18:01:29.068] ...future.result [18:01:29.068] } [18:01:29.072] plan(): Setting new future strategy stack: [18:01:29.072] List of future strategies: [18:01:29.072] 1. sequential: [18:01:29.072] - args: function (..., envir = parent.frame()) [18:01:29.072] - tweaked: FALSE [18:01:29.072] - call: NULL [18:01:29.072] plan(): nbrOfWorkers() = 1 [18:01:29.074] plan(): Setting new future strategy stack: [18:01:29.074] List of future strategies: [18:01:29.074] 1. sequential: [18:01:29.074] - args: function (..., envir = parent.frame()) [18:01:29.074] - tweaked: FALSE [18:01:29.074] - call: plan(strategy) [18:01:29.074] plan(): nbrOfWorkers() = 1 [18:01:29.074] SequentialFuture started (and completed) [18:01:29.075] - Launch lazy future ... done [18:01:29.075] run() for 'SequentialFuture' ... done [18:01:29.075] getGlobalsAndPackages() ... [18:01:29.075] Searching for globals... [18:01:29.076] - globals found: [1] '{' [18:01:29.076] Searching for globals ... DONE [18:01:29.076] Resolving globals: FALSE [18:01:29.077] [18:01:29.077] [18:01:29.077] getGlobalsAndPackages() ... DONE [18:01:29.077] run() for 'Future' ... [18:01:29.077] - state: 'created' [18:01:29.078] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.078] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.078] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.078] - Field: 'label' [18:01:29.079] - Field: 'local' [18:01:29.079] - Field: 'owner' [18:01:29.079] - Field: 'envir' [18:01:29.079] - Field: 'packages' [18:01:29.079] - Field: 'gc' [18:01:29.079] - Field: 'conditions' [18:01:29.080] - Field: 'expr' [18:01:29.080] - Field: 'uuid' [18:01:29.080] - Field: 'seed' [18:01:29.080] - Field: 'version' [18:01:29.080] - Field: 'result' [18:01:29.080] - Field: 'asynchronous' [18:01:29.081] - Field: 'calls' [18:01:29.081] - Field: 'globals' [18:01:29.081] - Field: 'stdout' [18:01:29.081] - Field: 'earlySignal' [18:01:29.081] - Field: 'lazy' [18:01:29.082] - Field: 'state' [18:01:29.082] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.082] - Launch lazy future ... [18:01:29.082] Packages needed by the future expression (n = 0): [18:01:29.082] Packages needed by future strategies (n = 0): [18:01:29.083] { [18:01:29.083] { [18:01:29.083] { [18:01:29.083] ...future.startTime <- base::Sys.time() [18:01:29.083] { [18:01:29.083] { [18:01:29.083] { [18:01:29.083] base::local({ [18:01:29.083] has_future <- base::requireNamespace("future", [18:01:29.083] quietly = TRUE) [18:01:29.083] if (has_future) { [18:01:29.083] ns <- base::getNamespace("future") [18:01:29.083] version <- ns[[".package"]][["version"]] [18:01:29.083] if (is.null(version)) [18:01:29.083] version <- utils::packageVersion("future") [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] version <- NULL [18:01:29.083] } [18:01:29.083] if (!has_future || version < "1.8.0") { [18:01:29.083] info <- base::c(r_version = base::gsub("R version ", [18:01:29.083] "", base::R.version$version.string), [18:01:29.083] platform = base::sprintf("%s (%s-bit)", [18:01:29.083] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.083] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.083] "release", "version")], collapse = " "), [18:01:29.083] hostname = base::Sys.info()[["nodename"]]) [18:01:29.083] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.083] info) [18:01:29.083] info <- base::paste(info, collapse = "; ") [18:01:29.083] if (!has_future) { [18:01:29.083] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.083] info) [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.083] info, version) [18:01:29.083] } [18:01:29.083] base::stop(msg) [18:01:29.083] } [18:01:29.083] }) [18:01:29.083] } [18:01:29.083] options(future.plan = NULL) [18:01:29.083] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.083] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.083] } [18:01:29.083] ...future.workdir <- getwd() [18:01:29.083] } [18:01:29.083] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.083] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.083] } [18:01:29.083] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.083] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.083] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.083] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.083] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.083] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.083] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.083] base::names(...future.oldOptions)) [18:01:29.083] } [18:01:29.083] if (FALSE) { [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] if (TRUE) { [18:01:29.083] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.083] open = "w") [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.083] windows = "NUL", "/dev/null"), open = "w") [18:01:29.083] } [18:01:29.083] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.083] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.083] base::sink(type = "output", split = FALSE) [18:01:29.083] base::close(...future.stdout) [18:01:29.083] }, add = TRUE) [18:01:29.083] } [18:01:29.083] ...future.frame <- base::sys.nframe() [18:01:29.083] ...future.conditions <- base::list() [18:01:29.083] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.083] if (FALSE) { [18:01:29.083] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.083] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.083] } [18:01:29.083] ...future.result <- base::tryCatch({ [18:01:29.083] base::withCallingHandlers({ [18:01:29.083] ...future.value <- base::withVisible(base::local({ [18:01:29.083] 4 [18:01:29.083] })) [18:01:29.083] future::FutureResult(value = ...future.value$value, [18:01:29.083] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.083] ...future.rng), globalenv = if (FALSE) [18:01:29.083] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.083] ...future.globalenv.names)) [18:01:29.083] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.083] }, condition = base::local({ [18:01:29.083] c <- base::c [18:01:29.083] inherits <- base::inherits [18:01:29.083] invokeRestart <- base::invokeRestart [18:01:29.083] length <- base::length [18:01:29.083] list <- base::list [18:01:29.083] seq.int <- base::seq.int [18:01:29.083] signalCondition <- base::signalCondition [18:01:29.083] sys.calls <- base::sys.calls [18:01:29.083] `[[` <- base::`[[` [18:01:29.083] `+` <- base::`+` [18:01:29.083] `<<-` <- base::`<<-` [18:01:29.083] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.083] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.083] 3L)] [18:01:29.083] } [18:01:29.083] function(cond) { [18:01:29.083] is_error <- inherits(cond, "error") [18:01:29.083] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.083] NULL) [18:01:29.083] if (is_error) { [18:01:29.083] sessionInformation <- function() { [18:01:29.083] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.083] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.083] search = base::search(), system = base::Sys.info()) [18:01:29.083] } [18:01:29.083] ...future.conditions[[length(...future.conditions) + [18:01:29.083] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.083] cond$call), session = sessionInformation(), [18:01:29.083] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.083] signalCondition(cond) [18:01:29.083] } [18:01:29.083] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.083] "immediateCondition"))) { [18:01:29.083] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.083] ...future.conditions[[length(...future.conditions) + [18:01:29.083] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.083] if (TRUE && !signal) { [18:01:29.083] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.083] { [18:01:29.083] inherits <- base::inherits [18:01:29.083] invokeRestart <- base::invokeRestart [18:01:29.083] is.null <- base::is.null [18:01:29.083] muffled <- FALSE [18:01:29.083] if (inherits(cond, "message")) { [18:01:29.083] muffled <- grepl(pattern, "muffleMessage") [18:01:29.083] if (muffled) [18:01:29.083] invokeRestart("muffleMessage") [18:01:29.083] } [18:01:29.083] else if (inherits(cond, "warning")) { [18:01:29.083] muffled <- grepl(pattern, "muffleWarning") [18:01:29.083] if (muffled) [18:01:29.083] invokeRestart("muffleWarning") [18:01:29.083] } [18:01:29.083] else if (inherits(cond, "condition")) { [18:01:29.083] if (!is.null(pattern)) { [18:01:29.083] computeRestarts <- base::computeRestarts [18:01:29.083] grepl <- base::grepl [18:01:29.083] restarts <- computeRestarts(cond) [18:01:29.083] for (restart in restarts) { [18:01:29.083] name <- restart$name [18:01:29.083] if (is.null(name)) [18:01:29.083] next [18:01:29.083] if (!grepl(pattern, name)) [18:01:29.083] next [18:01:29.083] invokeRestart(restart) [18:01:29.083] muffled <- TRUE [18:01:29.083] break [18:01:29.083] } [18:01:29.083] } [18:01:29.083] } [18:01:29.083] invisible(muffled) [18:01:29.083] } [18:01:29.083] muffleCondition(cond, pattern = "^muffle") [18:01:29.083] } [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] if (TRUE) { [18:01:29.083] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.083] { [18:01:29.083] inherits <- base::inherits [18:01:29.083] invokeRestart <- base::invokeRestart [18:01:29.083] is.null <- base::is.null [18:01:29.083] muffled <- FALSE [18:01:29.083] if (inherits(cond, "message")) { [18:01:29.083] muffled <- grepl(pattern, "muffleMessage") [18:01:29.083] if (muffled) [18:01:29.083] invokeRestart("muffleMessage") [18:01:29.083] } [18:01:29.083] else if (inherits(cond, "warning")) { [18:01:29.083] muffled <- grepl(pattern, "muffleWarning") [18:01:29.083] if (muffled) [18:01:29.083] invokeRestart("muffleWarning") [18:01:29.083] } [18:01:29.083] else if (inherits(cond, "condition")) { [18:01:29.083] if (!is.null(pattern)) { [18:01:29.083] computeRestarts <- base::computeRestarts [18:01:29.083] grepl <- base::grepl [18:01:29.083] restarts <- computeRestarts(cond) [18:01:29.083] for (restart in restarts) { [18:01:29.083] name <- restart$name [18:01:29.083] if (is.null(name)) [18:01:29.083] next [18:01:29.083] if (!grepl(pattern, name)) [18:01:29.083] next [18:01:29.083] invokeRestart(restart) [18:01:29.083] muffled <- TRUE [18:01:29.083] break [18:01:29.083] } [18:01:29.083] } [18:01:29.083] } [18:01:29.083] invisible(muffled) [18:01:29.083] } [18:01:29.083] muffleCondition(cond, pattern = "^muffle") [18:01:29.083] } [18:01:29.083] } [18:01:29.083] } [18:01:29.083] })) [18:01:29.083] }, error = function(ex) { [18:01:29.083] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.083] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.083] ...future.rng), started = ...future.startTime, [18:01:29.083] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.083] version = "1.8"), class = "FutureResult") [18:01:29.083] }, finally = { [18:01:29.083] if (!identical(...future.workdir, getwd())) [18:01:29.083] setwd(...future.workdir) [18:01:29.083] { [18:01:29.083] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.083] ...future.oldOptions$nwarnings <- NULL [18:01:29.083] } [18:01:29.083] base::options(...future.oldOptions) [18:01:29.083] if (.Platform$OS.type == "windows") { [18:01:29.083] old_names <- names(...future.oldEnvVars) [18:01:29.083] envs <- base::Sys.getenv() [18:01:29.083] names <- names(envs) [18:01:29.083] common <- intersect(names, old_names) [18:01:29.083] added <- setdiff(names, old_names) [18:01:29.083] removed <- setdiff(old_names, names) [18:01:29.083] changed <- common[...future.oldEnvVars[common] != [18:01:29.083] envs[common]] [18:01:29.083] NAMES <- toupper(changed) [18:01:29.083] args <- list() [18:01:29.083] for (kk in seq_along(NAMES)) { [18:01:29.083] name <- changed[[kk]] [18:01:29.083] NAME <- NAMES[[kk]] [18:01:29.083] if (name != NAME && is.element(NAME, old_names)) [18:01:29.083] next [18:01:29.083] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.083] } [18:01:29.083] NAMES <- toupper(added) [18:01:29.083] for (kk in seq_along(NAMES)) { [18:01:29.083] name <- added[[kk]] [18:01:29.083] NAME <- NAMES[[kk]] [18:01:29.083] if (name != NAME && is.element(NAME, old_names)) [18:01:29.083] next [18:01:29.083] args[[name]] <- "" [18:01:29.083] } [18:01:29.083] NAMES <- toupper(removed) [18:01:29.083] for (kk in seq_along(NAMES)) { [18:01:29.083] name <- removed[[kk]] [18:01:29.083] NAME <- NAMES[[kk]] [18:01:29.083] if (name != NAME && is.element(NAME, old_names)) [18:01:29.083] next [18:01:29.083] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.083] } [18:01:29.083] if (length(args) > 0) [18:01:29.083] base::do.call(base::Sys.setenv, args = args) [18:01:29.083] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.083] } [18:01:29.083] { [18:01:29.083] if (base::length(...future.futureOptionsAdded) > [18:01:29.083] 0L) { [18:01:29.083] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.083] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.083] base::options(opts) [18:01:29.083] } [18:01:29.083] { [18:01:29.083] { [18:01:29.083] NULL [18:01:29.083] RNGkind("Mersenne-Twister") [18:01:29.083] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.083] inherits = FALSE) [18:01:29.083] } [18:01:29.083] options(future.plan = NULL) [18:01:29.083] if (is.na(NA_character_)) [18:01:29.083] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.083] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.083] future::plan(list(function (..., envir = parent.frame()) [18:01:29.083] { [18:01:29.083] future <- SequentialFuture(..., envir = envir) [18:01:29.083] if (!future$lazy) [18:01:29.083] future <- run(future) [18:01:29.083] invisible(future) [18:01:29.083] }), .cleanup = FALSE, .init = FALSE) [18:01:29.083] } [18:01:29.083] } [18:01:29.083] } [18:01:29.083] }) [18:01:29.083] if (TRUE) { [18:01:29.083] base::sink(type = "output", split = FALSE) [18:01:29.083] if (TRUE) { [18:01:29.083] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.083] } [18:01:29.083] else { [18:01:29.083] ...future.result["stdout"] <- base::list(NULL) [18:01:29.083] } [18:01:29.083] base::close(...future.stdout) [18:01:29.083] ...future.stdout <- NULL [18:01:29.083] } [18:01:29.083] ...future.result$conditions <- ...future.conditions [18:01:29.083] ...future.result$finished <- base::Sys.time() [18:01:29.083] ...future.result [18:01:29.083] } [18:01:29.087] plan(): Setting new future strategy stack: [18:01:29.087] List of future strategies: [18:01:29.087] 1. sequential: [18:01:29.087] - args: function (..., envir = parent.frame()) [18:01:29.087] - tweaked: FALSE [18:01:29.087] - call: NULL [18:01:29.088] plan(): nbrOfWorkers() = 1 [18:01:29.089] plan(): Setting new future strategy stack: [18:01:29.089] List of future strategies: [18:01:29.089] 1. sequential: [18:01:29.089] - args: function (..., envir = parent.frame()) [18:01:29.089] - tweaked: FALSE [18:01:29.089] - call: plan(strategy) [18:01:29.090] plan(): nbrOfWorkers() = 1 [18:01:29.091] SequentialFuture started (and completed) [18:01:29.091] - Launch lazy future ... done [18:01:29.091] run() for 'SequentialFuture' ... done u$a = 2 v$a = 4 [18:01:29.091] getGlobalsAndPackages() ... [18:01:29.092] Searching for globals... [18:01:29.093] - globals found: [3] '{', '*', 'a' [18:01:29.093] Searching for globals ... DONE [18:01:29.093] Resolving globals: FALSE [18:01:29.094] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:29.095] The total size of the 1 globals exported for future expression ('{; 2 * 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:29.095] - globals: [1] 'a' [18:01:29.095] [18:01:29.095] getGlobalsAndPackages() ... DONE [18:01:29.095] run() for 'Future' ... [18:01:29.096] - state: 'created' [18:01:29.096] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.096] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.096] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.096] - Field: 'label' [18:01:29.097] - Field: 'local' [18:01:29.097] - Field: 'owner' [18:01:29.097] - Field: 'envir' [18:01:29.097] - Field: 'packages' [18:01:29.097] - Field: 'gc' [18:01:29.098] - Field: 'conditions' [18:01:29.098] - Field: 'expr' [18:01:29.098] - Field: 'uuid' [18:01:29.098] - Field: 'seed' [18:01:29.098] - Field: 'version' [18:01:29.098] - Field: 'result' [18:01:29.099] - Field: 'asynchronous' [18:01:29.099] - Field: 'calls' [18:01:29.099] - Field: 'globals' [18:01:29.099] - Field: 'stdout' [18:01:29.099] - Field: 'earlySignal' [18:01:29.099] - Field: 'lazy' [18:01:29.100] - Field: 'state' [18:01:29.100] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.100] - Launch lazy future ... [18:01:29.100] Packages needed by the future expression (n = 0): [18:01:29.100] Packages needed by future strategies (n = 0): [18:01:29.101] { [18:01:29.101] { [18:01:29.101] { [18:01:29.101] ...future.startTime <- base::Sys.time() [18:01:29.101] { [18:01:29.101] { [18:01:29.101] { [18:01:29.101] base::local({ [18:01:29.101] has_future <- base::requireNamespace("future", [18:01:29.101] quietly = TRUE) [18:01:29.101] if (has_future) { [18:01:29.101] ns <- base::getNamespace("future") [18:01:29.101] version <- ns[[".package"]][["version"]] [18:01:29.101] if (is.null(version)) [18:01:29.101] version <- utils::packageVersion("future") [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] version <- NULL [18:01:29.101] } [18:01:29.101] if (!has_future || version < "1.8.0") { [18:01:29.101] info <- base::c(r_version = base::gsub("R version ", [18:01:29.101] "", base::R.version$version.string), [18:01:29.101] platform = base::sprintf("%s (%s-bit)", [18:01:29.101] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.101] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.101] "release", "version")], collapse = " "), [18:01:29.101] hostname = base::Sys.info()[["nodename"]]) [18:01:29.101] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.101] info) [18:01:29.101] info <- base::paste(info, collapse = "; ") [18:01:29.101] if (!has_future) { [18:01:29.101] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.101] info) [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.101] info, version) [18:01:29.101] } [18:01:29.101] base::stop(msg) [18:01:29.101] } [18:01:29.101] }) [18:01:29.101] } [18:01:29.101] options(future.plan = NULL) [18:01:29.101] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.101] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.101] } [18:01:29.101] ...future.workdir <- getwd() [18:01:29.101] } [18:01:29.101] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.101] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.101] } [18:01:29.101] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.101] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.101] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.101] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.101] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.101] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.101] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.101] base::names(...future.oldOptions)) [18:01:29.101] } [18:01:29.101] if (FALSE) { [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] if (TRUE) { [18:01:29.101] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.101] open = "w") [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.101] windows = "NUL", "/dev/null"), open = "w") [18:01:29.101] } [18:01:29.101] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.101] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.101] base::sink(type = "output", split = FALSE) [18:01:29.101] base::close(...future.stdout) [18:01:29.101] }, add = TRUE) [18:01:29.101] } [18:01:29.101] ...future.frame <- base::sys.nframe() [18:01:29.101] ...future.conditions <- base::list() [18:01:29.101] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.101] if (FALSE) { [18:01:29.101] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.101] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.101] } [18:01:29.101] ...future.result <- base::tryCatch({ [18:01:29.101] base::withCallingHandlers({ [18:01:29.101] ...future.value <- base::withVisible(base::local({ [18:01:29.101] 2 * a [18:01:29.101] })) [18:01:29.101] future::FutureResult(value = ...future.value$value, [18:01:29.101] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.101] ...future.rng), globalenv = if (FALSE) [18:01:29.101] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.101] ...future.globalenv.names)) [18:01:29.101] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.101] }, condition = base::local({ [18:01:29.101] c <- base::c [18:01:29.101] inherits <- base::inherits [18:01:29.101] invokeRestart <- base::invokeRestart [18:01:29.101] length <- base::length [18:01:29.101] list <- base::list [18:01:29.101] seq.int <- base::seq.int [18:01:29.101] signalCondition <- base::signalCondition [18:01:29.101] sys.calls <- base::sys.calls [18:01:29.101] `[[` <- base::`[[` [18:01:29.101] `+` <- base::`+` [18:01:29.101] `<<-` <- base::`<<-` [18:01:29.101] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.101] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.101] 3L)] [18:01:29.101] } [18:01:29.101] function(cond) { [18:01:29.101] is_error <- inherits(cond, "error") [18:01:29.101] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.101] NULL) [18:01:29.101] if (is_error) { [18:01:29.101] sessionInformation <- function() { [18:01:29.101] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.101] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.101] search = base::search(), system = base::Sys.info()) [18:01:29.101] } [18:01:29.101] ...future.conditions[[length(...future.conditions) + [18:01:29.101] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.101] cond$call), session = sessionInformation(), [18:01:29.101] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.101] signalCondition(cond) [18:01:29.101] } [18:01:29.101] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.101] "immediateCondition"))) { [18:01:29.101] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.101] ...future.conditions[[length(...future.conditions) + [18:01:29.101] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.101] if (TRUE && !signal) { [18:01:29.101] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.101] { [18:01:29.101] inherits <- base::inherits [18:01:29.101] invokeRestart <- base::invokeRestart [18:01:29.101] is.null <- base::is.null [18:01:29.101] muffled <- FALSE [18:01:29.101] if (inherits(cond, "message")) { [18:01:29.101] muffled <- grepl(pattern, "muffleMessage") [18:01:29.101] if (muffled) [18:01:29.101] invokeRestart("muffleMessage") [18:01:29.101] } [18:01:29.101] else if (inherits(cond, "warning")) { [18:01:29.101] muffled <- grepl(pattern, "muffleWarning") [18:01:29.101] if (muffled) [18:01:29.101] invokeRestart("muffleWarning") [18:01:29.101] } [18:01:29.101] else if (inherits(cond, "condition")) { [18:01:29.101] if (!is.null(pattern)) { [18:01:29.101] computeRestarts <- base::computeRestarts [18:01:29.101] grepl <- base::grepl [18:01:29.101] restarts <- computeRestarts(cond) [18:01:29.101] for (restart in restarts) { [18:01:29.101] name <- restart$name [18:01:29.101] if (is.null(name)) [18:01:29.101] next [18:01:29.101] if (!grepl(pattern, name)) [18:01:29.101] next [18:01:29.101] invokeRestart(restart) [18:01:29.101] muffled <- TRUE [18:01:29.101] break [18:01:29.101] } [18:01:29.101] } [18:01:29.101] } [18:01:29.101] invisible(muffled) [18:01:29.101] } [18:01:29.101] muffleCondition(cond, pattern = "^muffle") [18:01:29.101] } [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] if (TRUE) { [18:01:29.101] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.101] { [18:01:29.101] inherits <- base::inherits [18:01:29.101] invokeRestart <- base::invokeRestart [18:01:29.101] is.null <- base::is.null [18:01:29.101] muffled <- FALSE [18:01:29.101] if (inherits(cond, "message")) { [18:01:29.101] muffled <- grepl(pattern, "muffleMessage") [18:01:29.101] if (muffled) [18:01:29.101] invokeRestart("muffleMessage") [18:01:29.101] } [18:01:29.101] else if (inherits(cond, "warning")) { [18:01:29.101] muffled <- grepl(pattern, "muffleWarning") [18:01:29.101] if (muffled) [18:01:29.101] invokeRestart("muffleWarning") [18:01:29.101] } [18:01:29.101] else if (inherits(cond, "condition")) { [18:01:29.101] if (!is.null(pattern)) { [18:01:29.101] computeRestarts <- base::computeRestarts [18:01:29.101] grepl <- base::grepl [18:01:29.101] restarts <- computeRestarts(cond) [18:01:29.101] for (restart in restarts) { [18:01:29.101] name <- restart$name [18:01:29.101] if (is.null(name)) [18:01:29.101] next [18:01:29.101] if (!grepl(pattern, name)) [18:01:29.101] next [18:01:29.101] invokeRestart(restart) [18:01:29.101] muffled <- TRUE [18:01:29.101] break [18:01:29.101] } [18:01:29.101] } [18:01:29.101] } [18:01:29.101] invisible(muffled) [18:01:29.101] } [18:01:29.101] muffleCondition(cond, pattern = "^muffle") [18:01:29.101] } [18:01:29.101] } [18:01:29.101] } [18:01:29.101] })) [18:01:29.101] }, error = function(ex) { [18:01:29.101] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.101] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.101] ...future.rng), started = ...future.startTime, [18:01:29.101] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.101] version = "1.8"), class = "FutureResult") [18:01:29.101] }, finally = { [18:01:29.101] if (!identical(...future.workdir, getwd())) [18:01:29.101] setwd(...future.workdir) [18:01:29.101] { [18:01:29.101] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.101] ...future.oldOptions$nwarnings <- NULL [18:01:29.101] } [18:01:29.101] base::options(...future.oldOptions) [18:01:29.101] if (.Platform$OS.type == "windows") { [18:01:29.101] old_names <- names(...future.oldEnvVars) [18:01:29.101] envs <- base::Sys.getenv() [18:01:29.101] names <- names(envs) [18:01:29.101] common <- intersect(names, old_names) [18:01:29.101] added <- setdiff(names, old_names) [18:01:29.101] removed <- setdiff(old_names, names) [18:01:29.101] changed <- common[...future.oldEnvVars[common] != [18:01:29.101] envs[common]] [18:01:29.101] NAMES <- toupper(changed) [18:01:29.101] args <- list() [18:01:29.101] for (kk in seq_along(NAMES)) { [18:01:29.101] name <- changed[[kk]] [18:01:29.101] NAME <- NAMES[[kk]] [18:01:29.101] if (name != NAME && is.element(NAME, old_names)) [18:01:29.101] next [18:01:29.101] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.101] } [18:01:29.101] NAMES <- toupper(added) [18:01:29.101] for (kk in seq_along(NAMES)) { [18:01:29.101] name <- added[[kk]] [18:01:29.101] NAME <- NAMES[[kk]] [18:01:29.101] if (name != NAME && is.element(NAME, old_names)) [18:01:29.101] next [18:01:29.101] args[[name]] <- "" [18:01:29.101] } [18:01:29.101] NAMES <- toupper(removed) [18:01:29.101] for (kk in seq_along(NAMES)) { [18:01:29.101] name <- removed[[kk]] [18:01:29.101] NAME <- NAMES[[kk]] [18:01:29.101] if (name != NAME && is.element(NAME, old_names)) [18:01:29.101] next [18:01:29.101] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.101] } [18:01:29.101] if (length(args) > 0) [18:01:29.101] base::do.call(base::Sys.setenv, args = args) [18:01:29.101] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.101] } [18:01:29.101] { [18:01:29.101] if (base::length(...future.futureOptionsAdded) > [18:01:29.101] 0L) { [18:01:29.101] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.101] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.101] base::options(opts) [18:01:29.101] } [18:01:29.101] { [18:01:29.101] { [18:01:29.101] NULL [18:01:29.101] RNGkind("Mersenne-Twister") [18:01:29.101] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.101] inherits = FALSE) [18:01:29.101] } [18:01:29.101] options(future.plan = NULL) [18:01:29.101] if (is.na(NA_character_)) [18:01:29.101] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.101] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.101] future::plan(list(function (..., envir = parent.frame()) [18:01:29.101] { [18:01:29.101] future <- SequentialFuture(..., envir = envir) [18:01:29.101] if (!future$lazy) [18:01:29.101] future <- run(future) [18:01:29.101] invisible(future) [18:01:29.101] }), .cleanup = FALSE, .init = FALSE) [18:01:29.101] } [18:01:29.101] } [18:01:29.101] } [18:01:29.101] }) [18:01:29.101] if (TRUE) { [18:01:29.101] base::sink(type = "output", split = FALSE) [18:01:29.101] if (TRUE) { [18:01:29.101] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.101] } [18:01:29.101] else { [18:01:29.101] ...future.result["stdout"] <- base::list(NULL) [18:01:29.101] } [18:01:29.101] base::close(...future.stdout) [18:01:29.101] ...future.stdout <- NULL [18:01:29.101] } [18:01:29.101] ...future.result$conditions <- ...future.conditions [18:01:29.101] ...future.result$finished <- base::Sys.time() [18:01:29.101] ...future.result [18:01:29.101] } [18:01:29.105] assign_globals() ... [18:01:29.105] List of 1 [18:01:29.105] $ a: num 1 [18:01:29.105] - attr(*, "where")=List of 1 [18:01:29.105] ..$ a: [18:01:29.105] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:29.105] - attr(*, "resolved")= logi FALSE [18:01:29.105] - attr(*, "total_size")= num 56 [18:01:29.105] - attr(*, "already-done")= logi TRUE [18:01:29.111] - copied 'a' to environment [18:01:29.111] assign_globals() ... done [18:01:29.111] plan(): Setting new future strategy stack: [18:01:29.111] List of future strategies: [18:01:29.111] 1. sequential: [18:01:29.111] - args: function (..., envir = parent.frame()) [18:01:29.111] - tweaked: FALSE [18:01:29.111] - call: NULL [18:01:29.112] plan(): nbrOfWorkers() = 1 [18:01:29.113] plan(): Setting new future strategy stack: [18:01:29.113] List of future strategies: [18:01:29.113] 1. sequential: [18:01:29.113] - args: function (..., envir = parent.frame()) [18:01:29.113] - tweaked: FALSE [18:01:29.113] - call: plan(strategy) [18:01:29.113] plan(): nbrOfWorkers() = 1 [18:01:29.114] SequentialFuture started (and completed) [18:01:29.114] - Launch lazy future ... done [18:01:29.114] run() for 'SequentialFuture' ... done [18:01:29.114] getGlobalsAndPackages() ... [18:01:29.115] Searching for globals... [18:01:29.116] - globals found: [3] '{', '*', 'a' [18:01:29.116] Searching for globals ... DONE [18:01:29.116] Resolving globals: FALSE [18:01:29.116] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:29.117] The total size of the 1 globals exported for future expression ('{; 2 * 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:29.117] - globals: [1] 'a' [18:01:29.117] [18:01:29.117] getGlobalsAndPackages() ... DONE [18:01:29.118] run() for 'Future' ... [18:01:29.118] - state: 'created' [18:01:29.118] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.119] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.119] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.119] - Field: 'label' [18:01:29.119] - Field: 'local' [18:01:29.119] - Field: 'owner' [18:01:29.119] - Field: 'envir' [18:01:29.120] - Field: 'packages' [18:01:29.120] - Field: 'gc' [18:01:29.120] - Field: 'conditions' [18:01:29.120] - Field: 'expr' [18:01:29.120] - Field: 'uuid' [18:01:29.121] - Field: 'seed' [18:01:29.121] - Field: 'version' [18:01:29.121] - Field: 'result' [18:01:29.121] - Field: 'asynchronous' [18:01:29.121] - Field: 'calls' [18:01:29.121] - Field: 'globals' [18:01:29.122] - Field: 'stdout' [18:01:29.122] - Field: 'earlySignal' [18:01:29.122] - Field: 'lazy' [18:01:29.122] - Field: 'state' [18:01:29.122] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.122] - Launch lazy future ... [18:01:29.123] Packages needed by the future expression (n = 0): [18:01:29.123] Packages needed by future strategies (n = 0): [18:01:29.123] { [18:01:29.123] { [18:01:29.123] { [18:01:29.123] ...future.startTime <- base::Sys.time() [18:01:29.123] { [18:01:29.123] { [18:01:29.123] { [18:01:29.123] base::local({ [18:01:29.123] has_future <- base::requireNamespace("future", [18:01:29.123] quietly = TRUE) [18:01:29.123] if (has_future) { [18:01:29.123] ns <- base::getNamespace("future") [18:01:29.123] version <- ns[[".package"]][["version"]] [18:01:29.123] if (is.null(version)) [18:01:29.123] version <- utils::packageVersion("future") [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] version <- NULL [18:01:29.123] } [18:01:29.123] if (!has_future || version < "1.8.0") { [18:01:29.123] info <- base::c(r_version = base::gsub("R version ", [18:01:29.123] "", base::R.version$version.string), [18:01:29.123] platform = base::sprintf("%s (%s-bit)", [18:01:29.123] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.123] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.123] "release", "version")], collapse = " "), [18:01:29.123] hostname = base::Sys.info()[["nodename"]]) [18:01:29.123] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.123] info) [18:01:29.123] info <- base::paste(info, collapse = "; ") [18:01:29.123] if (!has_future) { [18:01:29.123] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.123] info) [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.123] info, version) [18:01:29.123] } [18:01:29.123] base::stop(msg) [18:01:29.123] } [18:01:29.123] }) [18:01:29.123] } [18:01:29.123] options(future.plan = NULL) [18:01:29.123] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.123] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.123] } [18:01:29.123] ...future.workdir <- getwd() [18:01:29.123] } [18:01:29.123] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.123] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.123] } [18:01:29.123] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.123] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.123] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.123] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.123] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.123] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.123] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.123] base::names(...future.oldOptions)) [18:01:29.123] } [18:01:29.123] if (FALSE) { [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] if (TRUE) { [18:01:29.123] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.123] open = "w") [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.123] windows = "NUL", "/dev/null"), open = "w") [18:01:29.123] } [18:01:29.123] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.123] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.123] base::sink(type = "output", split = FALSE) [18:01:29.123] base::close(...future.stdout) [18:01:29.123] }, add = TRUE) [18:01:29.123] } [18:01:29.123] ...future.frame <- base::sys.nframe() [18:01:29.123] ...future.conditions <- base::list() [18:01:29.123] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.123] if (FALSE) { [18:01:29.123] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.123] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.123] } [18:01:29.123] ...future.result <- base::tryCatch({ [18:01:29.123] base::withCallingHandlers({ [18:01:29.123] ...future.value <- base::withVisible(base::local({ [18:01:29.123] 2 * a [18:01:29.123] })) [18:01:29.123] future::FutureResult(value = ...future.value$value, [18:01:29.123] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.123] ...future.rng), globalenv = if (FALSE) [18:01:29.123] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.123] ...future.globalenv.names)) [18:01:29.123] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.123] }, condition = base::local({ [18:01:29.123] c <- base::c [18:01:29.123] inherits <- base::inherits [18:01:29.123] invokeRestart <- base::invokeRestart [18:01:29.123] length <- base::length [18:01:29.123] list <- base::list [18:01:29.123] seq.int <- base::seq.int [18:01:29.123] signalCondition <- base::signalCondition [18:01:29.123] sys.calls <- base::sys.calls [18:01:29.123] `[[` <- base::`[[` [18:01:29.123] `+` <- base::`+` [18:01:29.123] `<<-` <- base::`<<-` [18:01:29.123] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.123] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.123] 3L)] [18:01:29.123] } [18:01:29.123] function(cond) { [18:01:29.123] is_error <- inherits(cond, "error") [18:01:29.123] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.123] NULL) [18:01:29.123] if (is_error) { [18:01:29.123] sessionInformation <- function() { [18:01:29.123] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.123] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.123] search = base::search(), system = base::Sys.info()) [18:01:29.123] } [18:01:29.123] ...future.conditions[[length(...future.conditions) + [18:01:29.123] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.123] cond$call), session = sessionInformation(), [18:01:29.123] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.123] signalCondition(cond) [18:01:29.123] } [18:01:29.123] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.123] "immediateCondition"))) { [18:01:29.123] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.123] ...future.conditions[[length(...future.conditions) + [18:01:29.123] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.123] if (TRUE && !signal) { [18:01:29.123] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.123] { [18:01:29.123] inherits <- base::inherits [18:01:29.123] invokeRestart <- base::invokeRestart [18:01:29.123] is.null <- base::is.null [18:01:29.123] muffled <- FALSE [18:01:29.123] if (inherits(cond, "message")) { [18:01:29.123] muffled <- grepl(pattern, "muffleMessage") [18:01:29.123] if (muffled) [18:01:29.123] invokeRestart("muffleMessage") [18:01:29.123] } [18:01:29.123] else if (inherits(cond, "warning")) { [18:01:29.123] muffled <- grepl(pattern, "muffleWarning") [18:01:29.123] if (muffled) [18:01:29.123] invokeRestart("muffleWarning") [18:01:29.123] } [18:01:29.123] else if (inherits(cond, "condition")) { [18:01:29.123] if (!is.null(pattern)) { [18:01:29.123] computeRestarts <- base::computeRestarts [18:01:29.123] grepl <- base::grepl [18:01:29.123] restarts <- computeRestarts(cond) [18:01:29.123] for (restart in restarts) { [18:01:29.123] name <- restart$name [18:01:29.123] if (is.null(name)) [18:01:29.123] next [18:01:29.123] if (!grepl(pattern, name)) [18:01:29.123] next [18:01:29.123] invokeRestart(restart) [18:01:29.123] muffled <- TRUE [18:01:29.123] break [18:01:29.123] } [18:01:29.123] } [18:01:29.123] } [18:01:29.123] invisible(muffled) [18:01:29.123] } [18:01:29.123] muffleCondition(cond, pattern = "^muffle") [18:01:29.123] } [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] if (TRUE) { [18:01:29.123] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.123] { [18:01:29.123] inherits <- base::inherits [18:01:29.123] invokeRestart <- base::invokeRestart [18:01:29.123] is.null <- base::is.null [18:01:29.123] muffled <- FALSE [18:01:29.123] if (inherits(cond, "message")) { [18:01:29.123] muffled <- grepl(pattern, "muffleMessage") [18:01:29.123] if (muffled) [18:01:29.123] invokeRestart("muffleMessage") [18:01:29.123] } [18:01:29.123] else if (inherits(cond, "warning")) { [18:01:29.123] muffled <- grepl(pattern, "muffleWarning") [18:01:29.123] if (muffled) [18:01:29.123] invokeRestart("muffleWarning") [18:01:29.123] } [18:01:29.123] else if (inherits(cond, "condition")) { [18:01:29.123] if (!is.null(pattern)) { [18:01:29.123] computeRestarts <- base::computeRestarts [18:01:29.123] grepl <- base::grepl [18:01:29.123] restarts <- computeRestarts(cond) [18:01:29.123] for (restart in restarts) { [18:01:29.123] name <- restart$name [18:01:29.123] if (is.null(name)) [18:01:29.123] next [18:01:29.123] if (!grepl(pattern, name)) [18:01:29.123] next [18:01:29.123] invokeRestart(restart) [18:01:29.123] muffled <- TRUE [18:01:29.123] break [18:01:29.123] } [18:01:29.123] } [18:01:29.123] } [18:01:29.123] invisible(muffled) [18:01:29.123] } [18:01:29.123] muffleCondition(cond, pattern = "^muffle") [18:01:29.123] } [18:01:29.123] } [18:01:29.123] } [18:01:29.123] })) [18:01:29.123] }, error = function(ex) { [18:01:29.123] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.123] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.123] ...future.rng), started = ...future.startTime, [18:01:29.123] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.123] version = "1.8"), class = "FutureResult") [18:01:29.123] }, finally = { [18:01:29.123] if (!identical(...future.workdir, getwd())) [18:01:29.123] setwd(...future.workdir) [18:01:29.123] { [18:01:29.123] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.123] ...future.oldOptions$nwarnings <- NULL [18:01:29.123] } [18:01:29.123] base::options(...future.oldOptions) [18:01:29.123] if (.Platform$OS.type == "windows") { [18:01:29.123] old_names <- names(...future.oldEnvVars) [18:01:29.123] envs <- base::Sys.getenv() [18:01:29.123] names <- names(envs) [18:01:29.123] common <- intersect(names, old_names) [18:01:29.123] added <- setdiff(names, old_names) [18:01:29.123] removed <- setdiff(old_names, names) [18:01:29.123] changed <- common[...future.oldEnvVars[common] != [18:01:29.123] envs[common]] [18:01:29.123] NAMES <- toupper(changed) [18:01:29.123] args <- list() [18:01:29.123] for (kk in seq_along(NAMES)) { [18:01:29.123] name <- changed[[kk]] [18:01:29.123] NAME <- NAMES[[kk]] [18:01:29.123] if (name != NAME && is.element(NAME, old_names)) [18:01:29.123] next [18:01:29.123] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.123] } [18:01:29.123] NAMES <- toupper(added) [18:01:29.123] for (kk in seq_along(NAMES)) { [18:01:29.123] name <- added[[kk]] [18:01:29.123] NAME <- NAMES[[kk]] [18:01:29.123] if (name != NAME && is.element(NAME, old_names)) [18:01:29.123] next [18:01:29.123] args[[name]] <- "" [18:01:29.123] } [18:01:29.123] NAMES <- toupper(removed) [18:01:29.123] for (kk in seq_along(NAMES)) { [18:01:29.123] name <- removed[[kk]] [18:01:29.123] NAME <- NAMES[[kk]] [18:01:29.123] if (name != NAME && is.element(NAME, old_names)) [18:01:29.123] next [18:01:29.123] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.123] } [18:01:29.123] if (length(args) > 0) [18:01:29.123] base::do.call(base::Sys.setenv, args = args) [18:01:29.123] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.123] } [18:01:29.123] { [18:01:29.123] if (base::length(...future.futureOptionsAdded) > [18:01:29.123] 0L) { [18:01:29.123] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.123] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.123] base::options(opts) [18:01:29.123] } [18:01:29.123] { [18:01:29.123] { [18:01:29.123] NULL [18:01:29.123] RNGkind("Mersenne-Twister") [18:01:29.123] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.123] inherits = FALSE) [18:01:29.123] } [18:01:29.123] options(future.plan = NULL) [18:01:29.123] if (is.na(NA_character_)) [18:01:29.123] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.123] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.123] future::plan(list(function (..., envir = parent.frame()) [18:01:29.123] { [18:01:29.123] future <- SequentialFuture(..., envir = envir) [18:01:29.123] if (!future$lazy) [18:01:29.123] future <- run(future) [18:01:29.123] invisible(future) [18:01:29.123] }), .cleanup = FALSE, .init = FALSE) [18:01:29.123] } [18:01:29.123] } [18:01:29.123] } [18:01:29.123] }) [18:01:29.123] if (TRUE) { [18:01:29.123] base::sink(type = "output", split = FALSE) [18:01:29.123] if (TRUE) { [18:01:29.123] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.123] } [18:01:29.123] else { [18:01:29.123] ...future.result["stdout"] <- base::list(NULL) [18:01:29.123] } [18:01:29.123] base::close(...future.stdout) [18:01:29.123] ...future.stdout <- NULL [18:01:29.123] } [18:01:29.123] ...future.result$conditions <- ...future.conditions [18:01:29.123] ...future.result$finished <- base::Sys.time() [18:01:29.123] ...future.result [18:01:29.123] } [18:01:29.127] assign_globals() ... [18:01:29.127] List of 1 [18:01:29.127] $ a: num 1 [18:01:29.127] - attr(*, "where")=List of 1 [18:01:29.127] ..$ a: [18:01:29.127] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:29.127] - attr(*, "resolved")= logi FALSE [18:01:29.127] - attr(*, "total_size")= num 56 [18:01:29.127] - attr(*, "already-done")= logi TRUE [18:01:29.131] - copied 'a' to environment [18:01:29.131] assign_globals() ... done [18:01:29.131] plan(): Setting new future strategy stack: [18:01:29.131] List of future strategies: [18:01:29.131] 1. sequential: [18:01:29.131] - args: function (..., envir = parent.frame()) [18:01:29.131] - tweaked: FALSE [18:01:29.131] - call: NULL [18:01:29.132] plan(): nbrOfWorkers() = 1 [18:01:29.133] plan(): Setting new future strategy stack: [18:01:29.133] List of future strategies: [18:01:29.133] 1. sequential: [18:01:29.133] - args: function (..., envir = parent.frame()) [18:01:29.133] - tweaked: FALSE [18:01:29.133] - call: plan(strategy) [18:01:29.134] plan(): nbrOfWorkers() = 1 [18:01:29.134] SequentialFuture started (and completed) [18:01:29.134] - Launch lazy future ... done [18:01:29.134] run() for 'SequentialFuture' ... done [18:01:29.135] getGlobalsAndPackages() ... [18:01:29.135] Searching for globals... [18:01:29.137] - globals found: [3] '{', '*', 'a' [18:01:29.137] Searching for globals ... DONE [18:01:29.137] Resolving globals: FALSE [18:01:29.138] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:29.138] The total size of the 1 globals exported for future expression ('{; 2 * 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:29.138] - globals: [1] 'a' [18:01:29.139] [18:01:29.139] getGlobalsAndPackages() ... DONE [18:01:29.139] run() for 'Future' ... [18:01:29.139] - state: 'created' [18:01:29.139] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.140] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.140] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.140] - Field: 'label' [18:01:29.140] - Field: 'local' [18:01:29.140] - Field: 'owner' [18:01:29.141] - Field: 'envir' [18:01:29.141] - Field: 'packages' [18:01:29.141] - Field: 'gc' [18:01:29.141] - Field: 'conditions' [18:01:29.141] - Field: 'expr' [18:01:29.142] - Field: 'uuid' [18:01:29.142] - Field: 'seed' [18:01:29.142] - Field: 'version' [18:01:29.142] - Field: 'result' [18:01:29.142] - Field: 'asynchronous' [18:01:29.142] - Field: 'calls' [18:01:29.143] - Field: 'globals' [18:01:29.143] - Field: 'stdout' [18:01:29.143] - Field: 'earlySignal' [18:01:29.143] - Field: 'lazy' [18:01:29.143] - Field: 'state' [18:01:29.143] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.144] - Launch lazy future ... [18:01:29.144] Packages needed by the future expression (n = 0): [18:01:29.144] Packages needed by future strategies (n = 0): [18:01:29.145] { [18:01:29.145] { [18:01:29.145] { [18:01:29.145] ...future.startTime <- base::Sys.time() [18:01:29.145] { [18:01:29.145] { [18:01:29.145] { [18:01:29.145] base::local({ [18:01:29.145] has_future <- base::requireNamespace("future", [18:01:29.145] quietly = TRUE) [18:01:29.145] if (has_future) { [18:01:29.145] ns <- base::getNamespace("future") [18:01:29.145] version <- ns[[".package"]][["version"]] [18:01:29.145] if (is.null(version)) [18:01:29.145] version <- utils::packageVersion("future") [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] version <- NULL [18:01:29.145] } [18:01:29.145] if (!has_future || version < "1.8.0") { [18:01:29.145] info <- base::c(r_version = base::gsub("R version ", [18:01:29.145] "", base::R.version$version.string), [18:01:29.145] platform = base::sprintf("%s (%s-bit)", [18:01:29.145] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.145] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.145] "release", "version")], collapse = " "), [18:01:29.145] hostname = base::Sys.info()[["nodename"]]) [18:01:29.145] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.145] info) [18:01:29.145] info <- base::paste(info, collapse = "; ") [18:01:29.145] if (!has_future) { [18:01:29.145] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.145] info) [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.145] info, version) [18:01:29.145] } [18:01:29.145] base::stop(msg) [18:01:29.145] } [18:01:29.145] }) [18:01:29.145] } [18:01:29.145] options(future.plan = NULL) [18:01:29.145] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.145] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.145] } [18:01:29.145] ...future.workdir <- getwd() [18:01:29.145] } [18:01:29.145] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.145] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.145] } [18:01:29.145] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.145] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.145] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.145] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.145] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.145] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.145] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.145] base::names(...future.oldOptions)) [18:01:29.145] } [18:01:29.145] if (FALSE) { [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] if (TRUE) { [18:01:29.145] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.145] open = "w") [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.145] windows = "NUL", "/dev/null"), open = "w") [18:01:29.145] } [18:01:29.145] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.145] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.145] base::sink(type = "output", split = FALSE) [18:01:29.145] base::close(...future.stdout) [18:01:29.145] }, add = TRUE) [18:01:29.145] } [18:01:29.145] ...future.frame <- base::sys.nframe() [18:01:29.145] ...future.conditions <- base::list() [18:01:29.145] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.145] if (FALSE) { [18:01:29.145] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.145] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.145] } [18:01:29.145] ...future.result <- base::tryCatch({ [18:01:29.145] base::withCallingHandlers({ [18:01:29.145] ...future.value <- base::withVisible(base::local({ [18:01:29.145] 2 * a [18:01:29.145] })) [18:01:29.145] future::FutureResult(value = ...future.value$value, [18:01:29.145] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.145] ...future.rng), globalenv = if (FALSE) [18:01:29.145] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.145] ...future.globalenv.names)) [18:01:29.145] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.145] }, condition = base::local({ [18:01:29.145] c <- base::c [18:01:29.145] inherits <- base::inherits [18:01:29.145] invokeRestart <- base::invokeRestart [18:01:29.145] length <- base::length [18:01:29.145] list <- base::list [18:01:29.145] seq.int <- base::seq.int [18:01:29.145] signalCondition <- base::signalCondition [18:01:29.145] sys.calls <- base::sys.calls [18:01:29.145] `[[` <- base::`[[` [18:01:29.145] `+` <- base::`+` [18:01:29.145] `<<-` <- base::`<<-` [18:01:29.145] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.145] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.145] 3L)] [18:01:29.145] } [18:01:29.145] function(cond) { [18:01:29.145] is_error <- inherits(cond, "error") [18:01:29.145] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.145] NULL) [18:01:29.145] if (is_error) { [18:01:29.145] sessionInformation <- function() { [18:01:29.145] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.145] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.145] search = base::search(), system = base::Sys.info()) [18:01:29.145] } [18:01:29.145] ...future.conditions[[length(...future.conditions) + [18:01:29.145] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.145] cond$call), session = sessionInformation(), [18:01:29.145] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.145] signalCondition(cond) [18:01:29.145] } [18:01:29.145] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.145] "immediateCondition"))) { [18:01:29.145] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.145] ...future.conditions[[length(...future.conditions) + [18:01:29.145] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.145] if (TRUE && !signal) { [18:01:29.145] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.145] { [18:01:29.145] inherits <- base::inherits [18:01:29.145] invokeRestart <- base::invokeRestart [18:01:29.145] is.null <- base::is.null [18:01:29.145] muffled <- FALSE [18:01:29.145] if (inherits(cond, "message")) { [18:01:29.145] muffled <- grepl(pattern, "muffleMessage") [18:01:29.145] if (muffled) [18:01:29.145] invokeRestart("muffleMessage") [18:01:29.145] } [18:01:29.145] else if (inherits(cond, "warning")) { [18:01:29.145] muffled <- grepl(pattern, "muffleWarning") [18:01:29.145] if (muffled) [18:01:29.145] invokeRestart("muffleWarning") [18:01:29.145] } [18:01:29.145] else if (inherits(cond, "condition")) { [18:01:29.145] if (!is.null(pattern)) { [18:01:29.145] computeRestarts <- base::computeRestarts [18:01:29.145] grepl <- base::grepl [18:01:29.145] restarts <- computeRestarts(cond) [18:01:29.145] for (restart in restarts) { [18:01:29.145] name <- restart$name [18:01:29.145] if (is.null(name)) [18:01:29.145] next [18:01:29.145] if (!grepl(pattern, name)) [18:01:29.145] next [18:01:29.145] invokeRestart(restart) [18:01:29.145] muffled <- TRUE [18:01:29.145] break [18:01:29.145] } [18:01:29.145] } [18:01:29.145] } [18:01:29.145] invisible(muffled) [18:01:29.145] } [18:01:29.145] muffleCondition(cond, pattern = "^muffle") [18:01:29.145] } [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] if (TRUE) { [18:01:29.145] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.145] { [18:01:29.145] inherits <- base::inherits [18:01:29.145] invokeRestart <- base::invokeRestart [18:01:29.145] is.null <- base::is.null [18:01:29.145] muffled <- FALSE [18:01:29.145] if (inherits(cond, "message")) { [18:01:29.145] muffled <- grepl(pattern, "muffleMessage") [18:01:29.145] if (muffled) [18:01:29.145] invokeRestart("muffleMessage") [18:01:29.145] } [18:01:29.145] else if (inherits(cond, "warning")) { [18:01:29.145] muffled <- grepl(pattern, "muffleWarning") [18:01:29.145] if (muffled) [18:01:29.145] invokeRestart("muffleWarning") [18:01:29.145] } [18:01:29.145] else if (inherits(cond, "condition")) { [18:01:29.145] if (!is.null(pattern)) { [18:01:29.145] computeRestarts <- base::computeRestarts [18:01:29.145] grepl <- base::grepl [18:01:29.145] restarts <- computeRestarts(cond) [18:01:29.145] for (restart in restarts) { [18:01:29.145] name <- restart$name [18:01:29.145] if (is.null(name)) [18:01:29.145] next [18:01:29.145] if (!grepl(pattern, name)) [18:01:29.145] next [18:01:29.145] invokeRestart(restart) [18:01:29.145] muffled <- TRUE [18:01:29.145] break [18:01:29.145] } [18:01:29.145] } [18:01:29.145] } [18:01:29.145] invisible(muffled) [18:01:29.145] } [18:01:29.145] muffleCondition(cond, pattern = "^muffle") [18:01:29.145] } [18:01:29.145] } [18:01:29.145] } [18:01:29.145] })) [18:01:29.145] }, error = function(ex) { [18:01:29.145] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.145] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.145] ...future.rng), started = ...future.startTime, [18:01:29.145] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.145] version = "1.8"), class = "FutureResult") [18:01:29.145] }, finally = { [18:01:29.145] if (!identical(...future.workdir, getwd())) [18:01:29.145] setwd(...future.workdir) [18:01:29.145] { [18:01:29.145] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.145] ...future.oldOptions$nwarnings <- NULL [18:01:29.145] } [18:01:29.145] base::options(...future.oldOptions) [18:01:29.145] if (.Platform$OS.type == "windows") { [18:01:29.145] old_names <- names(...future.oldEnvVars) [18:01:29.145] envs <- base::Sys.getenv() [18:01:29.145] names <- names(envs) [18:01:29.145] common <- intersect(names, old_names) [18:01:29.145] added <- setdiff(names, old_names) [18:01:29.145] removed <- setdiff(old_names, names) [18:01:29.145] changed <- common[...future.oldEnvVars[common] != [18:01:29.145] envs[common]] [18:01:29.145] NAMES <- toupper(changed) [18:01:29.145] args <- list() [18:01:29.145] for (kk in seq_along(NAMES)) { [18:01:29.145] name <- changed[[kk]] [18:01:29.145] NAME <- NAMES[[kk]] [18:01:29.145] if (name != NAME && is.element(NAME, old_names)) [18:01:29.145] next [18:01:29.145] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.145] } [18:01:29.145] NAMES <- toupper(added) [18:01:29.145] for (kk in seq_along(NAMES)) { [18:01:29.145] name <- added[[kk]] [18:01:29.145] NAME <- NAMES[[kk]] [18:01:29.145] if (name != NAME && is.element(NAME, old_names)) [18:01:29.145] next [18:01:29.145] args[[name]] <- "" [18:01:29.145] } [18:01:29.145] NAMES <- toupper(removed) [18:01:29.145] for (kk in seq_along(NAMES)) { [18:01:29.145] name <- removed[[kk]] [18:01:29.145] NAME <- NAMES[[kk]] [18:01:29.145] if (name != NAME && is.element(NAME, old_names)) [18:01:29.145] next [18:01:29.145] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.145] } [18:01:29.145] if (length(args) > 0) [18:01:29.145] base::do.call(base::Sys.setenv, args = args) [18:01:29.145] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.145] } [18:01:29.145] { [18:01:29.145] if (base::length(...future.futureOptionsAdded) > [18:01:29.145] 0L) { [18:01:29.145] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.145] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.145] base::options(opts) [18:01:29.145] } [18:01:29.145] { [18:01:29.145] { [18:01:29.145] NULL [18:01:29.145] RNGkind("Mersenne-Twister") [18:01:29.145] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.145] inherits = FALSE) [18:01:29.145] } [18:01:29.145] options(future.plan = NULL) [18:01:29.145] if (is.na(NA_character_)) [18:01:29.145] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.145] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.145] future::plan(list(function (..., envir = parent.frame()) [18:01:29.145] { [18:01:29.145] future <- SequentialFuture(..., envir = envir) [18:01:29.145] if (!future$lazy) [18:01:29.145] future <- run(future) [18:01:29.145] invisible(future) [18:01:29.145] }), .cleanup = FALSE, .init = FALSE) [18:01:29.145] } [18:01:29.145] } [18:01:29.145] } [18:01:29.145] }) [18:01:29.145] if (TRUE) { [18:01:29.145] base::sink(type = "output", split = FALSE) [18:01:29.145] if (TRUE) { [18:01:29.145] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.145] } [18:01:29.145] else { [18:01:29.145] ...future.result["stdout"] <- base::list(NULL) [18:01:29.145] } [18:01:29.145] base::close(...future.stdout) [18:01:29.145] ...future.stdout <- NULL [18:01:29.145] } [18:01:29.145] ...future.result$conditions <- ...future.conditions [18:01:29.145] ...future.result$finished <- base::Sys.time() [18:01:29.145] ...future.result [18:01:29.145] } [18:01:29.148] assign_globals() ... [18:01:29.148] List of 1 [18:01:29.148] $ a: num 1 [18:01:29.148] - attr(*, "where")=List of 1 [18:01:29.148] ..$ a: [18:01:29.148] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:29.148] - attr(*, "resolved")= logi FALSE [18:01:29.148] - attr(*, "total_size")= num 56 [18:01:29.148] - attr(*, "already-done")= logi TRUE [18:01:29.151] - copied 'a' to environment [18:01:29.152] assign_globals() ... done [18:01:29.152] plan(): Setting new future strategy stack: [18:01:29.152] List of future strategies: [18:01:29.152] 1. sequential: [18:01:29.152] - args: function (..., envir = parent.frame()) [18:01:29.152] - tweaked: FALSE [18:01:29.152] - call: NULL [18:01:29.153] plan(): nbrOfWorkers() = 1 [18:01:29.154] plan(): Setting new future strategy stack: [18:01:29.154] List of future strategies: [18:01:29.154] 1. sequential: [18:01:29.154] - args: function (..., envir = parent.frame()) [18:01:29.154] - tweaked: FALSE [18:01:29.154] - call: plan(strategy) [18:01:29.154] plan(): nbrOfWorkers() = 1 [18:01:29.155] SequentialFuture started (and completed) [18:01:29.155] - Launch lazy future ... done [18:01:29.155] run() for 'SequentialFuture' ... done [18:01:29.155] getGlobalsAndPackages() ... [18:01:29.155] Searching for globals... [18:01:29.156] - globals found: [3] '{', '*', 'a' [18:01:29.157] Searching for globals ... DONE [18:01:29.157] Resolving globals: FALSE [18:01:29.157] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:29.158] The total size of the 1 globals exported for future expression ('{; 2 * 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:29.158] - globals: [1] 'a' [18:01:29.158] [18:01:29.158] getGlobalsAndPackages() ... DONE [18:01:29.159] run() for 'Future' ... [18:01:29.159] - state: 'created' [18:01:29.159] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.159] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.160] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.160] - Field: 'label' [18:01:29.160] - Field: 'local' [18:01:29.160] - Field: 'owner' [18:01:29.160] - Field: 'envir' [18:01:29.160] - Field: 'packages' [18:01:29.161] - Field: 'gc' [18:01:29.161] - Field: 'conditions' [18:01:29.161] - Field: 'expr' [18:01:29.161] - Field: 'uuid' [18:01:29.161] - Field: 'seed' [18:01:29.161] - Field: 'version' [18:01:29.162] - Field: 'result' [18:01:29.162] - Field: 'asynchronous' [18:01:29.162] - Field: 'calls' [18:01:29.162] - Field: 'globals' [18:01:29.162] - Field: 'stdout' [18:01:29.162] - Field: 'earlySignal' [18:01:29.163] - Field: 'lazy' [18:01:29.163] - Field: 'state' [18:01:29.163] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.163] - Launch lazy future ... [18:01:29.163] Packages needed by the future expression (n = 0): [18:01:29.164] Packages needed by future strategies (n = 0): [18:01:29.164] { [18:01:29.164] { [18:01:29.164] { [18:01:29.164] ...future.startTime <- base::Sys.time() [18:01:29.164] { [18:01:29.164] { [18:01:29.164] { [18:01:29.164] base::local({ [18:01:29.164] has_future <- base::requireNamespace("future", [18:01:29.164] quietly = TRUE) [18:01:29.164] if (has_future) { [18:01:29.164] ns <- base::getNamespace("future") [18:01:29.164] version <- ns[[".package"]][["version"]] [18:01:29.164] if (is.null(version)) [18:01:29.164] version <- utils::packageVersion("future") [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] version <- NULL [18:01:29.164] } [18:01:29.164] if (!has_future || version < "1.8.0") { [18:01:29.164] info <- base::c(r_version = base::gsub("R version ", [18:01:29.164] "", base::R.version$version.string), [18:01:29.164] platform = base::sprintf("%s (%s-bit)", [18:01:29.164] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.164] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.164] "release", "version")], collapse = " "), [18:01:29.164] hostname = base::Sys.info()[["nodename"]]) [18:01:29.164] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.164] info) [18:01:29.164] info <- base::paste(info, collapse = "; ") [18:01:29.164] if (!has_future) { [18:01:29.164] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.164] info) [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.164] info, version) [18:01:29.164] } [18:01:29.164] base::stop(msg) [18:01:29.164] } [18:01:29.164] }) [18:01:29.164] } [18:01:29.164] options(future.plan = NULL) [18:01:29.164] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.164] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.164] } [18:01:29.164] ...future.workdir <- getwd() [18:01:29.164] } [18:01:29.164] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.164] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.164] } [18:01:29.164] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.164] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.164] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.164] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.164] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.164] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.164] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.164] base::names(...future.oldOptions)) [18:01:29.164] } [18:01:29.164] if (FALSE) { [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] if (TRUE) { [18:01:29.164] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.164] open = "w") [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.164] windows = "NUL", "/dev/null"), open = "w") [18:01:29.164] } [18:01:29.164] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.164] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.164] base::sink(type = "output", split = FALSE) [18:01:29.164] base::close(...future.stdout) [18:01:29.164] }, add = TRUE) [18:01:29.164] } [18:01:29.164] ...future.frame <- base::sys.nframe() [18:01:29.164] ...future.conditions <- base::list() [18:01:29.164] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.164] if (FALSE) { [18:01:29.164] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.164] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.164] } [18:01:29.164] ...future.result <- base::tryCatch({ [18:01:29.164] base::withCallingHandlers({ [18:01:29.164] ...future.value <- base::withVisible(base::local({ [18:01:29.164] 2 * a [18:01:29.164] })) [18:01:29.164] future::FutureResult(value = ...future.value$value, [18:01:29.164] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.164] ...future.rng), globalenv = if (FALSE) [18:01:29.164] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.164] ...future.globalenv.names)) [18:01:29.164] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.164] }, condition = base::local({ [18:01:29.164] c <- base::c [18:01:29.164] inherits <- base::inherits [18:01:29.164] invokeRestart <- base::invokeRestart [18:01:29.164] length <- base::length [18:01:29.164] list <- base::list [18:01:29.164] seq.int <- base::seq.int [18:01:29.164] signalCondition <- base::signalCondition [18:01:29.164] sys.calls <- base::sys.calls [18:01:29.164] `[[` <- base::`[[` [18:01:29.164] `+` <- base::`+` [18:01:29.164] `<<-` <- base::`<<-` [18:01:29.164] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.164] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.164] 3L)] [18:01:29.164] } [18:01:29.164] function(cond) { [18:01:29.164] is_error <- inherits(cond, "error") [18:01:29.164] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.164] NULL) [18:01:29.164] if (is_error) { [18:01:29.164] sessionInformation <- function() { [18:01:29.164] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.164] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.164] search = base::search(), system = base::Sys.info()) [18:01:29.164] } [18:01:29.164] ...future.conditions[[length(...future.conditions) + [18:01:29.164] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.164] cond$call), session = sessionInformation(), [18:01:29.164] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.164] signalCondition(cond) [18:01:29.164] } [18:01:29.164] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.164] "immediateCondition"))) { [18:01:29.164] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.164] ...future.conditions[[length(...future.conditions) + [18:01:29.164] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.164] if (TRUE && !signal) { [18:01:29.164] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.164] { [18:01:29.164] inherits <- base::inherits [18:01:29.164] invokeRestart <- base::invokeRestart [18:01:29.164] is.null <- base::is.null [18:01:29.164] muffled <- FALSE [18:01:29.164] if (inherits(cond, "message")) { [18:01:29.164] muffled <- grepl(pattern, "muffleMessage") [18:01:29.164] if (muffled) [18:01:29.164] invokeRestart("muffleMessage") [18:01:29.164] } [18:01:29.164] else if (inherits(cond, "warning")) { [18:01:29.164] muffled <- grepl(pattern, "muffleWarning") [18:01:29.164] if (muffled) [18:01:29.164] invokeRestart("muffleWarning") [18:01:29.164] } [18:01:29.164] else if (inherits(cond, "condition")) { [18:01:29.164] if (!is.null(pattern)) { [18:01:29.164] computeRestarts <- base::computeRestarts [18:01:29.164] grepl <- base::grepl [18:01:29.164] restarts <- computeRestarts(cond) [18:01:29.164] for (restart in restarts) { [18:01:29.164] name <- restart$name [18:01:29.164] if (is.null(name)) [18:01:29.164] next [18:01:29.164] if (!grepl(pattern, name)) [18:01:29.164] next [18:01:29.164] invokeRestart(restart) [18:01:29.164] muffled <- TRUE [18:01:29.164] break [18:01:29.164] } [18:01:29.164] } [18:01:29.164] } [18:01:29.164] invisible(muffled) [18:01:29.164] } [18:01:29.164] muffleCondition(cond, pattern = "^muffle") [18:01:29.164] } [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] if (TRUE) { [18:01:29.164] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.164] { [18:01:29.164] inherits <- base::inherits [18:01:29.164] invokeRestart <- base::invokeRestart [18:01:29.164] is.null <- base::is.null [18:01:29.164] muffled <- FALSE [18:01:29.164] if (inherits(cond, "message")) { [18:01:29.164] muffled <- grepl(pattern, "muffleMessage") [18:01:29.164] if (muffled) [18:01:29.164] invokeRestart("muffleMessage") [18:01:29.164] } [18:01:29.164] else if (inherits(cond, "warning")) { [18:01:29.164] muffled <- grepl(pattern, "muffleWarning") [18:01:29.164] if (muffled) [18:01:29.164] invokeRestart("muffleWarning") [18:01:29.164] } [18:01:29.164] else if (inherits(cond, "condition")) { [18:01:29.164] if (!is.null(pattern)) { [18:01:29.164] computeRestarts <- base::computeRestarts [18:01:29.164] grepl <- base::grepl [18:01:29.164] restarts <- computeRestarts(cond) [18:01:29.164] for (restart in restarts) { [18:01:29.164] name <- restart$name [18:01:29.164] if (is.null(name)) [18:01:29.164] next [18:01:29.164] if (!grepl(pattern, name)) [18:01:29.164] next [18:01:29.164] invokeRestart(restart) [18:01:29.164] muffled <- TRUE [18:01:29.164] break [18:01:29.164] } [18:01:29.164] } [18:01:29.164] } [18:01:29.164] invisible(muffled) [18:01:29.164] } [18:01:29.164] muffleCondition(cond, pattern = "^muffle") [18:01:29.164] } [18:01:29.164] } [18:01:29.164] } [18:01:29.164] })) [18:01:29.164] }, error = function(ex) { [18:01:29.164] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.164] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.164] ...future.rng), started = ...future.startTime, [18:01:29.164] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.164] version = "1.8"), class = "FutureResult") [18:01:29.164] }, finally = { [18:01:29.164] if (!identical(...future.workdir, getwd())) [18:01:29.164] setwd(...future.workdir) [18:01:29.164] { [18:01:29.164] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.164] ...future.oldOptions$nwarnings <- NULL [18:01:29.164] } [18:01:29.164] base::options(...future.oldOptions) [18:01:29.164] if (.Platform$OS.type == "windows") { [18:01:29.164] old_names <- names(...future.oldEnvVars) [18:01:29.164] envs <- base::Sys.getenv() [18:01:29.164] names <- names(envs) [18:01:29.164] common <- intersect(names, old_names) [18:01:29.164] added <- setdiff(names, old_names) [18:01:29.164] removed <- setdiff(old_names, names) [18:01:29.164] changed <- common[...future.oldEnvVars[common] != [18:01:29.164] envs[common]] [18:01:29.164] NAMES <- toupper(changed) [18:01:29.164] args <- list() [18:01:29.164] for (kk in seq_along(NAMES)) { [18:01:29.164] name <- changed[[kk]] [18:01:29.164] NAME <- NAMES[[kk]] [18:01:29.164] if (name != NAME && is.element(NAME, old_names)) [18:01:29.164] next [18:01:29.164] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.164] } [18:01:29.164] NAMES <- toupper(added) [18:01:29.164] for (kk in seq_along(NAMES)) { [18:01:29.164] name <- added[[kk]] [18:01:29.164] NAME <- NAMES[[kk]] [18:01:29.164] if (name != NAME && is.element(NAME, old_names)) [18:01:29.164] next [18:01:29.164] args[[name]] <- "" [18:01:29.164] } [18:01:29.164] NAMES <- toupper(removed) [18:01:29.164] for (kk in seq_along(NAMES)) { [18:01:29.164] name <- removed[[kk]] [18:01:29.164] NAME <- NAMES[[kk]] [18:01:29.164] if (name != NAME && is.element(NAME, old_names)) [18:01:29.164] next [18:01:29.164] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.164] } [18:01:29.164] if (length(args) > 0) [18:01:29.164] base::do.call(base::Sys.setenv, args = args) [18:01:29.164] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.164] } [18:01:29.164] { [18:01:29.164] if (base::length(...future.futureOptionsAdded) > [18:01:29.164] 0L) { [18:01:29.164] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.164] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.164] base::options(opts) [18:01:29.164] } [18:01:29.164] { [18:01:29.164] { [18:01:29.164] NULL [18:01:29.164] RNGkind("Mersenne-Twister") [18:01:29.164] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.164] inherits = FALSE) [18:01:29.164] } [18:01:29.164] options(future.plan = NULL) [18:01:29.164] if (is.na(NA_character_)) [18:01:29.164] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.164] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.164] future::plan(list(function (..., envir = parent.frame()) [18:01:29.164] { [18:01:29.164] future <- SequentialFuture(..., envir = envir) [18:01:29.164] if (!future$lazy) [18:01:29.164] future <- run(future) [18:01:29.164] invisible(future) [18:01:29.164] }), .cleanup = FALSE, .init = FALSE) [18:01:29.164] } [18:01:29.164] } [18:01:29.164] } [18:01:29.164] }) [18:01:29.164] if (TRUE) { [18:01:29.164] base::sink(type = "output", split = FALSE) [18:01:29.164] if (TRUE) { [18:01:29.164] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.164] } [18:01:29.164] else { [18:01:29.164] ...future.result["stdout"] <- base::list(NULL) [18:01:29.164] } [18:01:29.164] base::close(...future.stdout) [18:01:29.164] ...future.stdout <- NULL [18:01:29.164] } [18:01:29.164] ...future.result$conditions <- ...future.conditions [18:01:29.164] ...future.result$finished <- base::Sys.time() [18:01:29.164] ...future.result [18:01:29.164] } [18:01:29.168] assign_globals() ... [18:01:29.168] List of 1 [18:01:29.168] $ a: num 1 [18:01:29.168] - attr(*, "where")=List of 1 [18:01:29.168] ..$ a: [18:01:29.168] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:29.168] - attr(*, "resolved")= logi FALSE [18:01:29.168] - attr(*, "total_size")= num 56 [18:01:29.168] - attr(*, "already-done")= logi TRUE [18:01:29.171] - copied 'a' to environment [18:01:29.171] assign_globals() ... done [18:01:29.172] plan(): Setting new future strategy stack: [18:01:29.172] List of future strategies: [18:01:29.172] 1. sequential: [18:01:29.172] - args: function (..., envir = parent.frame()) [18:01:29.172] - tweaked: FALSE [18:01:29.172] - call: NULL [18:01:29.172] plan(): nbrOfWorkers() = 1 [18:01:29.173] plan(): Setting new future strategy stack: [18:01:29.173] List of future strategies: [18:01:29.173] 1. sequential: [18:01:29.173] - args: function (..., envir = parent.frame()) [18:01:29.173] - tweaked: FALSE [18:01:29.173] - call: plan(strategy) [18:01:29.174] plan(): nbrOfWorkers() = 1 [18:01:29.174] SequentialFuture started (and completed) [18:01:29.174] - Launch lazy future ... done [18:01:29.175] run() for 'SequentialFuture' ... done [18:01:29.175] getGlobalsAndPackages() ... [18:01:29.175] Searching for globals... [18:01:29.176] - globals found: [3] '{', '*', 'a' [18:01:29.176] Searching for globals ... DONE [18:01:29.176] Resolving globals: FALSE [18:01:29.178] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:29.178] The total size of the 1 globals exported for future expression ('{; 2 * 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:29.178] - globals: [1] 'a' [18:01:29.179] [18:01:29.179] getGlobalsAndPackages() ... DONE [18:01:29.179] run() for 'Future' ... [18:01:29.179] - state: 'created' [18:01:29.180] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:01:29.180] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:01:29.180] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:01:29.180] - Field: 'label' [18:01:29.180] - Field: 'local' [18:01:29.181] - Field: 'owner' [18:01:29.181] - Field: 'envir' [18:01:29.181] - Field: 'packages' [18:01:29.181] - Field: 'gc' [18:01:29.181] - Field: 'conditions' [18:01:29.182] - Field: 'expr' [18:01:29.182] - Field: 'uuid' [18:01:29.182] - Field: 'seed' [18:01:29.182] - Field: 'version' [18:01:29.182] - Field: 'result' [18:01:29.182] - Field: 'asynchronous' [18:01:29.183] - Field: 'calls' [18:01:29.183] - Field: 'globals' [18:01:29.183] - Field: 'stdout' [18:01:29.183] - Field: 'earlySignal' [18:01:29.183] - Field: 'lazy' [18:01:29.183] - Field: 'state' [18:01:29.184] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:01:29.184] - Launch lazy future ... [18:01:29.184] Packages needed by the future expression (n = 0): [18:01:29.184] Packages needed by future strategies (n = 0): [18:01:29.185] { [18:01:29.185] { [18:01:29.185] { [18:01:29.185] ...future.startTime <- base::Sys.time() [18:01:29.185] { [18:01:29.185] { [18:01:29.185] { [18:01:29.185] base::local({ [18:01:29.185] has_future <- base::requireNamespace("future", [18:01:29.185] quietly = TRUE) [18:01:29.185] if (has_future) { [18:01:29.185] ns <- base::getNamespace("future") [18:01:29.185] version <- ns[[".package"]][["version"]] [18:01:29.185] if (is.null(version)) [18:01:29.185] version <- utils::packageVersion("future") [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] version <- NULL [18:01:29.185] } [18:01:29.185] if (!has_future || version < "1.8.0") { [18:01:29.185] info <- base::c(r_version = base::gsub("R version ", [18:01:29.185] "", base::R.version$version.string), [18:01:29.185] platform = base::sprintf("%s (%s-bit)", [18:01:29.185] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.185] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.185] "release", "version")], collapse = " "), [18:01:29.185] hostname = base::Sys.info()[["nodename"]]) [18:01:29.185] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.185] info) [18:01:29.185] info <- base::paste(info, collapse = "; ") [18:01:29.185] if (!has_future) { [18:01:29.185] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.185] info) [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.185] info, version) [18:01:29.185] } [18:01:29.185] base::stop(msg) [18:01:29.185] } [18:01:29.185] }) [18:01:29.185] } [18:01:29.185] options(future.plan = NULL) [18:01:29.185] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.185] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.185] } [18:01:29.185] ...future.workdir <- getwd() [18:01:29.185] } [18:01:29.185] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.185] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.185] } [18:01:29.185] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.185] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.185] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.185] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.185] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.185] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.185] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.185] base::names(...future.oldOptions)) [18:01:29.185] } [18:01:29.185] if (FALSE) { [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] if (TRUE) { [18:01:29.185] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.185] open = "w") [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.185] windows = "NUL", "/dev/null"), open = "w") [18:01:29.185] } [18:01:29.185] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.185] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.185] base::sink(type = "output", split = FALSE) [18:01:29.185] base::close(...future.stdout) [18:01:29.185] }, add = TRUE) [18:01:29.185] } [18:01:29.185] ...future.frame <- base::sys.nframe() [18:01:29.185] ...future.conditions <- base::list() [18:01:29.185] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.185] if (FALSE) { [18:01:29.185] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.185] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.185] } [18:01:29.185] ...future.result <- base::tryCatch({ [18:01:29.185] base::withCallingHandlers({ [18:01:29.185] ...future.value <- base::withVisible(base::local({ [18:01:29.185] 2 * a [18:01:29.185] })) [18:01:29.185] future::FutureResult(value = ...future.value$value, [18:01:29.185] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.185] ...future.rng), globalenv = if (FALSE) [18:01:29.185] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.185] ...future.globalenv.names)) [18:01:29.185] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.185] }, condition = base::local({ [18:01:29.185] c <- base::c [18:01:29.185] inherits <- base::inherits [18:01:29.185] invokeRestart <- base::invokeRestart [18:01:29.185] length <- base::length [18:01:29.185] list <- base::list [18:01:29.185] seq.int <- base::seq.int [18:01:29.185] signalCondition <- base::signalCondition [18:01:29.185] sys.calls <- base::sys.calls [18:01:29.185] `[[` <- base::`[[` [18:01:29.185] `+` <- base::`+` [18:01:29.185] `<<-` <- base::`<<-` [18:01:29.185] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.185] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.185] 3L)] [18:01:29.185] } [18:01:29.185] function(cond) { [18:01:29.185] is_error <- inherits(cond, "error") [18:01:29.185] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.185] NULL) [18:01:29.185] if (is_error) { [18:01:29.185] sessionInformation <- function() { [18:01:29.185] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.185] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.185] search = base::search(), system = base::Sys.info()) [18:01:29.185] } [18:01:29.185] ...future.conditions[[length(...future.conditions) + [18:01:29.185] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.185] cond$call), session = sessionInformation(), [18:01:29.185] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.185] signalCondition(cond) [18:01:29.185] } [18:01:29.185] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.185] "immediateCondition"))) { [18:01:29.185] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.185] ...future.conditions[[length(...future.conditions) + [18:01:29.185] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.185] if (TRUE && !signal) { [18:01:29.185] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.185] { [18:01:29.185] inherits <- base::inherits [18:01:29.185] invokeRestart <- base::invokeRestart [18:01:29.185] is.null <- base::is.null [18:01:29.185] muffled <- FALSE [18:01:29.185] if (inherits(cond, "message")) { [18:01:29.185] muffled <- grepl(pattern, "muffleMessage") [18:01:29.185] if (muffled) [18:01:29.185] invokeRestart("muffleMessage") [18:01:29.185] } [18:01:29.185] else if (inherits(cond, "warning")) { [18:01:29.185] muffled <- grepl(pattern, "muffleWarning") [18:01:29.185] if (muffled) [18:01:29.185] invokeRestart("muffleWarning") [18:01:29.185] } [18:01:29.185] else if (inherits(cond, "condition")) { [18:01:29.185] if (!is.null(pattern)) { [18:01:29.185] computeRestarts <- base::computeRestarts [18:01:29.185] grepl <- base::grepl [18:01:29.185] restarts <- computeRestarts(cond) [18:01:29.185] for (restart in restarts) { [18:01:29.185] name <- restart$name [18:01:29.185] if (is.null(name)) [18:01:29.185] next [18:01:29.185] if (!grepl(pattern, name)) [18:01:29.185] next [18:01:29.185] invokeRestart(restart) [18:01:29.185] muffled <- TRUE [18:01:29.185] break [18:01:29.185] } [18:01:29.185] } [18:01:29.185] } [18:01:29.185] invisible(muffled) [18:01:29.185] } [18:01:29.185] muffleCondition(cond, pattern = "^muffle") [18:01:29.185] } [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] if (TRUE) { [18:01:29.185] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.185] { [18:01:29.185] inherits <- base::inherits [18:01:29.185] invokeRestart <- base::invokeRestart [18:01:29.185] is.null <- base::is.null [18:01:29.185] muffled <- FALSE [18:01:29.185] if (inherits(cond, "message")) { [18:01:29.185] muffled <- grepl(pattern, "muffleMessage") [18:01:29.185] if (muffled) [18:01:29.185] invokeRestart("muffleMessage") [18:01:29.185] } [18:01:29.185] else if (inherits(cond, "warning")) { [18:01:29.185] muffled <- grepl(pattern, "muffleWarning") [18:01:29.185] if (muffled) [18:01:29.185] invokeRestart("muffleWarning") [18:01:29.185] } [18:01:29.185] else if (inherits(cond, "condition")) { [18:01:29.185] if (!is.null(pattern)) { [18:01:29.185] computeRestarts <- base::computeRestarts [18:01:29.185] grepl <- base::grepl [18:01:29.185] restarts <- computeRestarts(cond) [18:01:29.185] for (restart in restarts) { [18:01:29.185] name <- restart$name [18:01:29.185] if (is.null(name)) [18:01:29.185] next [18:01:29.185] if (!grepl(pattern, name)) [18:01:29.185] next [18:01:29.185] invokeRestart(restart) [18:01:29.185] muffled <- TRUE [18:01:29.185] break [18:01:29.185] } [18:01:29.185] } [18:01:29.185] } [18:01:29.185] invisible(muffled) [18:01:29.185] } [18:01:29.185] muffleCondition(cond, pattern = "^muffle") [18:01:29.185] } [18:01:29.185] } [18:01:29.185] } [18:01:29.185] })) [18:01:29.185] }, error = function(ex) { [18:01:29.185] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.185] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.185] ...future.rng), started = ...future.startTime, [18:01:29.185] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.185] version = "1.8"), class = "FutureResult") [18:01:29.185] }, finally = { [18:01:29.185] if (!identical(...future.workdir, getwd())) [18:01:29.185] setwd(...future.workdir) [18:01:29.185] { [18:01:29.185] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.185] ...future.oldOptions$nwarnings <- NULL [18:01:29.185] } [18:01:29.185] base::options(...future.oldOptions) [18:01:29.185] if (.Platform$OS.type == "windows") { [18:01:29.185] old_names <- names(...future.oldEnvVars) [18:01:29.185] envs <- base::Sys.getenv() [18:01:29.185] names <- names(envs) [18:01:29.185] common <- intersect(names, old_names) [18:01:29.185] added <- setdiff(names, old_names) [18:01:29.185] removed <- setdiff(old_names, names) [18:01:29.185] changed <- common[...future.oldEnvVars[common] != [18:01:29.185] envs[common]] [18:01:29.185] NAMES <- toupper(changed) [18:01:29.185] args <- list() [18:01:29.185] for (kk in seq_along(NAMES)) { [18:01:29.185] name <- changed[[kk]] [18:01:29.185] NAME <- NAMES[[kk]] [18:01:29.185] if (name != NAME && is.element(NAME, old_names)) [18:01:29.185] next [18:01:29.185] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.185] } [18:01:29.185] NAMES <- toupper(added) [18:01:29.185] for (kk in seq_along(NAMES)) { [18:01:29.185] name <- added[[kk]] [18:01:29.185] NAME <- NAMES[[kk]] [18:01:29.185] if (name != NAME && is.element(NAME, old_names)) [18:01:29.185] next [18:01:29.185] args[[name]] <- "" [18:01:29.185] } [18:01:29.185] NAMES <- toupper(removed) [18:01:29.185] for (kk in seq_along(NAMES)) { [18:01:29.185] name <- removed[[kk]] [18:01:29.185] NAME <- NAMES[[kk]] [18:01:29.185] if (name != NAME && is.element(NAME, old_names)) [18:01:29.185] next [18:01:29.185] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.185] } [18:01:29.185] if (length(args) > 0) [18:01:29.185] base::do.call(base::Sys.setenv, args = args) [18:01:29.185] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.185] } [18:01:29.185] { [18:01:29.185] if (base::length(...future.futureOptionsAdded) > [18:01:29.185] 0L) { [18:01:29.185] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.185] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.185] base::options(opts) [18:01:29.185] } [18:01:29.185] { [18:01:29.185] { [18:01:29.185] NULL [18:01:29.185] RNGkind("Mersenne-Twister") [18:01:29.185] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:01:29.185] inherits = FALSE) [18:01:29.185] } [18:01:29.185] options(future.plan = NULL) [18:01:29.185] if (is.na(NA_character_)) [18:01:29.185] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.185] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.185] future::plan(list(function (..., envir = parent.frame()) [18:01:29.185] { [18:01:29.185] future <- SequentialFuture(..., envir = envir) [18:01:29.185] if (!future$lazy) [18:01:29.185] future <- run(future) [18:01:29.185] invisible(future) [18:01:29.185] }), .cleanup = FALSE, .init = FALSE) [18:01:29.185] } [18:01:29.185] } [18:01:29.185] } [18:01:29.185] }) [18:01:29.185] if (TRUE) { [18:01:29.185] base::sink(type = "output", split = FALSE) [18:01:29.185] if (TRUE) { [18:01:29.185] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.185] } [18:01:29.185] else { [18:01:29.185] ...future.result["stdout"] <- base::list(NULL) [18:01:29.185] } [18:01:29.185] base::close(...future.stdout) [18:01:29.185] ...future.stdout <- NULL [18:01:29.185] } [18:01:29.185] ...future.result$conditions <- ...future.conditions [18:01:29.185] ...future.result$finished <- base::Sys.time() [18:01:29.185] ...future.result [18:01:29.185] } [18:01:29.189] assign_globals() ... [18:01:29.189] List of 1 [18:01:29.189] $ a: num 1 [18:01:29.189] - attr(*, "where")=List of 1 [18:01:29.189] ..$ a: [18:01:29.189] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:01:29.189] - attr(*, "resolved")= logi FALSE [18:01:29.189] - attr(*, "total_size")= num 56 [18:01:29.189] - attr(*, "already-done")= logi TRUE [18:01:29.192] - copied 'a' to environment [18:01:29.192] assign_globals() ... done [18:01:29.192] plan(): Setting new future strategy stack: [18:01:29.192] List of future strategies: [18:01:29.192] 1. sequential: [18:01:29.192] - args: function (..., envir = parent.frame()) [18:01:29.192] - tweaked: FALSE [18:01:29.192] - call: NULL [18:01:29.193] plan(): nbrOfWorkers() = 1 [18:01:29.194] plan(): Setting new future strategy stack: [18:01:29.194] List of future strategies: [18:01:29.194] 1. sequential: [18:01:29.194] - args: function (..., envir = parent.frame()) [18:01:29.194] - tweaked: FALSE [18:01:29.194] - call: plan(strategy) [18:01:29.195] plan(): nbrOfWorkers() = 1 [18:01:29.195] SequentialFuture started (and completed) [18:01:29.195] - Launch lazy future ... done [18:01:29.195] run() for 'SequentialFuture' ... done *** futureAssign() with 'sequential' futures ... DONE Testing with 1 cores ... DONE Testing with 2 cores ... *** futureAssign() with 'multisession' futures ... [18:01:29.201] plan(): Setting new future strategy stack: [18:01:29.202] List of future strategies: [18:01:29.202] 1. multisession: [18:01:29.202] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [18:01:29.202] - tweaked: FALSE [18:01:29.202] - call: plan(strategy) [18:01:29.202] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... [18:01:29.202] multisession: [18:01:29.202] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [18:01:29.202] - tweaked: FALSE [18:01:29.202] - call: plan(strategy) [18:01:29.207] getGlobalsAndPackages() ... [18:01:29.207] Not searching for globals [18:01:29.207] - globals: [0] [18:01:29.207] getGlobalsAndPackages() ... DONE [18:01:29.208] [local output] makeClusterPSOCK() ... [18:01:29.238] [local output] Workers: [n = 2] 'localhost', 'localhost' [18:01:29.245] [local output] Base port: 30848 [18:01:29.245] [local output] Getting setup options for 2 cluster nodes ... [18:01:29.245] [local output] - Node 1 of 2 ... [18:01:29.245] [local output] localMachine=TRUE => revtunnel=FALSE [18:01:29.247] Testing if worker's PID can be inferred: '"D:/RCompile/recent/R/bin/x64/Rscript" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpwbHUUM/worker.rank=1.parallelly.parent=165640.287082fda3bb8.pid\")), silent = TRUE)" -e "file.exists(\"D:/temp/RtmpwbHUUM/worker.rank=1.parallelly.parent=165640.287082fda3bb8.pid\")"' [18:01:29.687] - Possible to infer worker's PID: TRUE [18:01:29.688] [local output] Rscript port: 30848 [18:01:29.688] [local output] - Node 2 of 2 ... [18:01:29.689] [local output] localMachine=TRUE => revtunnel=FALSE [18:01:29.690] [local output] Rscript port: 30848 [18:01:29.690] [local output] Getting setup options for 2 cluster nodes ... done [18:01:29.691] [local output] - Parallel setup requested for some PSOCK nodes [18:01:29.691] [local output] Setting up PSOCK nodes in parallel [18:01:29.692] List of 36 [18:01:29.692] $ worker : chr "localhost" [18:01:29.692] ..- attr(*, "localhost")= logi TRUE [18:01:29.692] $ master : chr "localhost" [18:01:29.692] $ port : int 30848 [18:01:29.692] $ connectTimeout : num 120 [18:01:29.692] $ timeout : num 120 [18:01:29.692] $ rscript : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\"" [18:01:29.692] $ homogeneous : logi TRUE [18:01:29.692] $ rscript_args : chr "--default-packages=datasets,utils,grDevices,graphics,stats,methods -e \"#label=futureAssign.R:165640:CRANWIN3:C"| __truncated__ [18:01:29.692] $ rscript_envs : NULL [18:01:29.692] $ rscript_libs : chr [1:2] "D:/temp/Rtmp67Lu9b/RLIBS_19fe819742e2c" "D:/RCompile/recent/R/library" [18:01:29.692] $ rscript_startup : NULL [18:01:29.692] $ rscript_sh : chr "cmd" [18:01:29.692] $ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [18:01:29.692] $ methods : logi TRUE [18:01:29.692] $ socketOptions : chr "no-delay" [18:01:29.692] $ useXDR : logi FALSE [18:01:29.692] $ outfile : chr "/dev/null" [18:01:29.692] $ renice : int NA [18:01:29.692] $ rshcmd : NULL [18:01:29.692] $ user : chr(0) [18:01:29.692] $ revtunnel : logi FALSE [18:01:29.692] $ rshlogfile : NULL [18:01:29.692] $ rshopts : chr(0) [18:01:29.692] $ rank : int 1 [18:01:29.692] $ manual : logi FALSE [18:01:29.692] $ dryrun : logi FALSE [18:01:29.692] $ quiet : logi FALSE [18:01:29.692] $ setup_strategy : chr "parallel" [18:01:29.692] $ local_cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [18:01:29.692] $ pidfile : chr "D:/temp/RtmpwbHUUM/worker.rank=1.parallelly.parent=165640.287082fda3bb8.pid" [18:01:29.692] $ rshcmd_label : NULL [18:01:29.692] $ rsh_call : NULL [18:01:29.692] $ cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [18:01:29.692] $ localMachine : logi TRUE [18:01:29.692] $ make_fcn :function (worker = getOption2("parallelly.localhost.hostname", "localhost"), [18:01:29.692] master = NULL, port, connectTimeout = getOption2("parallelly.makeNodePSOCK.connectTimeout", [18:01:29.692] 2 * 60), timeout = getOption2("parallelly.makeNodePSOCK.timeout", [18:01:29.692] 30 * 24 * 60 * 60), rscript = NULL, homogeneous = NULL, rscript_args = NULL, [18:01:29.692] rscript_envs = NULL, rscript_libs = NULL, rscript_startup = NULL, rscript_sh = c("auto", [18:01:29.692] "cmd", "sh"), default_packages = c("datasets", "utils", "grDevices", [18:01:29.692] "graphics", "stats", if (methods) "methods"), methods = TRUE, socketOptions = getOption2("parallelly.makeNodePSOCK.socketOptions", [18:01:29.692] "no-delay"), useXDR = getOption2("parallelly.makeNodePSOCK.useXDR", [18:01:29.692] FALSE), outfile = "/dev/null", renice = NA_integer_, rshcmd = getOption2("parallelly.makeNodePSOCK.rshcmd", [18:01:29.692] NULL), user = NULL, revtunnel = NA, rshlogfile = NULL, rshopts = getOption2("parallelly.makeNodePSOCK.rshopts", [18:01:29.692] NULL), rank = 1L, manual = FALSE, dryrun = FALSE, quiet = FALSE, [18:01:29.692] setup_strategy = getOption2("parallelly.makeNodePSOCK.setup_strategy", [18:01:29.692] "parallel"), action = c("launch", "options"), verbose = FALSE) [18:01:29.692] $ arguments :List of 28 [18:01:29.692] ..$ worker : chr "localhost" [18:01:29.692] ..$ master : NULL [18:01:29.692] ..$ port : int 30848 [18:01:29.692] ..$ connectTimeout : num 120 [18:01:29.692] ..$ timeout : num 120 [18:01:29.692] ..$ rscript : NULL [18:01:29.692] ..$ homogeneous : NULL [18:01:29.692] ..$ rscript_args : NULL [18:01:29.692] ..$ rscript_envs : NULL [18:01:29.692] ..$ rscript_libs : chr [1:2] "D:/temp/Rtmp67Lu9b/RLIBS_19fe819742e2c" "D:/RCompile/recent/R/library" [18:01:29.692] ..$ rscript_startup : NULL [18:01:29.692] ..$ rscript_sh : chr [1:3] "auto" "cmd" "sh" [18:01:29.692] ..$ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [18:01:29.692] ..$ methods : logi TRUE [18:01:29.692] ..$ socketOptions : chr "no-delay" [18:01:29.692] ..$ useXDR : logi FALSE [18:01:29.692] ..$ outfile : chr "/dev/null" [18:01:29.692] ..$ renice : int NA [18:01:29.692] ..$ rshcmd : NULL [18:01:29.692] ..$ user : NULL [18:01:29.692] ..$ revtunnel : logi NA [18:01:29.692] ..$ rshlogfile : NULL [18:01:29.692] ..$ rshopts : NULL [18:01:29.692] ..$ rank : int 1 [18:01:29.692] ..$ manual : logi FALSE [18:01:29.692] ..$ dryrun : logi FALSE [18:01:29.692] ..$ quiet : logi FALSE [18:01:29.692] ..$ setup_strategy : chr "parallel" [18:01:29.692] - attr(*, "class")= chr [1:2] "makeNodePSOCKOptions" "makeNodeOptions" [18:01:29.713] [local output] System call to launch all workers: [18:01:29.713] [local output] "D:/RCompile/recent/R/bin/x64/Rscript" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "#label=futureAssign.R:165640:CRANWIN3:CRAN" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpwbHUUM/worker.rank=1.parallelly.parent=165640.287082fda3bb8.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=30848 OUT=/dev/null TIMEOUT=120 XDR=FALSE SETUPTIMEOUT=120 SETUPSTRATEGY=parallel [18:01:29.713] [local output] Starting PSOCK main server [18:01:29.723] [local output] Workers launched [18:01:29.724] [local output] Waiting for workers to connect back [18:01:29.724] - [local output] 0 workers out of 2 ready [18:01:29.899] - [local output] 0 workers out of 2 ready [18:01:29.900] - [local output] 1 workers out of 2 ready [18:01:29.905] - [local output] 1 workers out of 2 ready [18:01:29.906] - [local output] 2 workers out of 2 ready [18:01:29.906] [local output] Launching of workers completed [18:01:29.906] [local output] Collecting session information from workers [18:01:29.907] [local output] - Worker #1 of 2 [18:01:29.908] [local output] - Worker #2 of 2 [18:01:29.909] [local output] makeClusterPSOCK() ... done [18:01:29.922] Packages needed by the future expression (n = 0): [18:01:29.922] Packages needed by future strategies (n = 0): [18:01:29.923] { [18:01:29.923] { [18:01:29.923] { [18:01:29.923] ...future.startTime <- base::Sys.time() [18:01:29.923] { [18:01:29.923] { [18:01:29.923] { [18:01:29.923] { [18:01:29.923] base::local({ [18:01:29.923] has_future <- base::requireNamespace("future", [18:01:29.923] quietly = TRUE) [18:01:29.923] if (has_future) { [18:01:29.923] ns <- base::getNamespace("future") [18:01:29.923] version <- ns[[".package"]][["version"]] [18:01:29.923] if (is.null(version)) [18:01:29.923] version <- utils::packageVersion("future") [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] version <- NULL [18:01:29.923] } [18:01:29.923] if (!has_future || version < "1.8.0") { [18:01:29.923] info <- base::c(r_version = base::gsub("R version ", [18:01:29.923] "", base::R.version$version.string), [18:01:29.923] platform = base::sprintf("%s (%s-bit)", [18:01:29.923] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:29.923] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:29.923] "release", "version")], collapse = " "), [18:01:29.923] hostname = base::Sys.info()[["nodename"]]) [18:01:29.923] info <- base::sprintf("%s: %s", base::names(info), [18:01:29.923] info) [18:01:29.923] info <- base::paste(info, collapse = "; ") [18:01:29.923] if (!has_future) { [18:01:29.923] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:29.923] info) [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:29.923] info, version) [18:01:29.923] } [18:01:29.923] base::stop(msg) [18:01:29.923] } [18:01:29.923] }) [18:01:29.923] } [18:01:29.923] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:29.923] base::options(mc.cores = 1L) [18:01:29.923] } [18:01:29.923] options(future.plan = NULL) [18:01:29.923] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.923] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:29.923] } [18:01:29.923] ...future.workdir <- getwd() [18:01:29.923] } [18:01:29.923] ...future.oldOptions <- base::as.list(base::.Options) [18:01:29.923] ...future.oldEnvVars <- base::Sys.getenv() [18:01:29.923] } [18:01:29.923] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:29.923] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:29.923] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:29.923] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:29.923] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:29.923] future.stdout.windows.reencode = NULL, width = 80L) [18:01:29.923] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:29.923] base::names(...future.oldOptions)) [18:01:29.923] } [18:01:29.923] if (FALSE) { [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] if (TRUE) { [18:01:29.923] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:29.923] open = "w") [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:29.923] windows = "NUL", "/dev/null"), open = "w") [18:01:29.923] } [18:01:29.923] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:29.923] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:29.923] base::sink(type = "output", split = FALSE) [18:01:29.923] base::close(...future.stdout) [18:01:29.923] }, add = TRUE) [18:01:29.923] } [18:01:29.923] ...future.frame <- base::sys.nframe() [18:01:29.923] ...future.conditions <- base::list() [18:01:29.923] ...future.rng <- base::globalenv()$.Random.seed [18:01:29.923] if (FALSE) { [18:01:29.923] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:29.923] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:29.923] } [18:01:29.923] ...future.result <- base::tryCatch({ [18:01:29.923] base::withCallingHandlers({ [18:01:29.923] ...future.value <- base::withVisible(base::local({ [18:01:29.923] ...future.makeSendCondition <- local({ [18:01:29.923] sendCondition <- NULL [18:01:29.923] function(frame = 1L) { [18:01:29.923] if (is.function(sendCondition)) [18:01:29.923] return(sendCondition) [18:01:29.923] ns <- getNamespace("parallel") [18:01:29.923] if (exists("sendData", mode = "function", [18:01:29.923] envir = ns)) { [18:01:29.923] parallel_sendData <- get("sendData", mode = "function", [18:01:29.923] envir = ns) [18:01:29.923] envir <- sys.frame(frame) [18:01:29.923] master <- NULL [18:01:29.923] while (!identical(envir, .GlobalEnv) && [18:01:29.923] !identical(envir, emptyenv())) { [18:01:29.923] if (exists("master", mode = "list", envir = envir, [18:01:29.923] inherits = FALSE)) { [18:01:29.923] master <- get("master", mode = "list", [18:01:29.923] envir = envir, inherits = FALSE) [18:01:29.923] if (inherits(master, c("SOCKnode", [18:01:29.923] "SOCK0node"))) { [18:01:29.923] sendCondition <<- function(cond) { [18:01:29.923] data <- list(type = "VALUE", value = cond, [18:01:29.923] success = TRUE) [18:01:29.923] parallel_sendData(master, data) [18:01:29.923] } [18:01:29.923] return(sendCondition) [18:01:29.923] } [18:01:29.923] } [18:01:29.923] frame <- frame + 1L [18:01:29.923] envir <- sys.frame(frame) [18:01:29.923] } [18:01:29.923] } [18:01:29.923] sendCondition <<- function(cond) NULL [18:01:29.923] } [18:01:29.923] }) [18:01:29.923] withCallingHandlers({ [18:01:29.923] NA [18:01:29.923] }, immediateCondition = function(cond) { [18:01:29.923] sendCondition <- ...future.makeSendCondition() [18:01:29.923] sendCondition(cond) [18:01:29.923] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.923] { [18:01:29.923] inherits <- base::inherits [18:01:29.923] invokeRestart <- base::invokeRestart [18:01:29.923] is.null <- base::is.null [18:01:29.923] muffled <- FALSE [18:01:29.923] if (inherits(cond, "message")) { [18:01:29.923] muffled <- grepl(pattern, "muffleMessage") [18:01:29.923] if (muffled) [18:01:29.923] invokeRestart("muffleMessage") [18:01:29.923] } [18:01:29.923] else if (inherits(cond, "warning")) { [18:01:29.923] muffled <- grepl(pattern, "muffleWarning") [18:01:29.923] if (muffled) [18:01:29.923] invokeRestart("muffleWarning") [18:01:29.923] } [18:01:29.923] else if (inherits(cond, "condition")) { [18:01:29.923] if (!is.null(pattern)) { [18:01:29.923] computeRestarts <- base::computeRestarts [18:01:29.923] grepl <- base::grepl [18:01:29.923] restarts <- computeRestarts(cond) [18:01:29.923] for (restart in restarts) { [18:01:29.923] name <- restart$name [18:01:29.923] if (is.null(name)) [18:01:29.923] next [18:01:29.923] if (!grepl(pattern, name)) [18:01:29.923] next [18:01:29.923] invokeRestart(restart) [18:01:29.923] muffled <- TRUE [18:01:29.923] break [18:01:29.923] } [18:01:29.923] } [18:01:29.923] } [18:01:29.923] invisible(muffled) [18:01:29.923] } [18:01:29.923] muffleCondition(cond) [18:01:29.923] }) [18:01:29.923] })) [18:01:29.923] future::FutureResult(value = ...future.value$value, [18:01:29.923] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.923] ...future.rng), globalenv = if (FALSE) [18:01:29.923] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:29.923] ...future.globalenv.names)) [18:01:29.923] else NULL, started = ...future.startTime, version = "1.8") [18:01:29.923] }, condition = base::local({ [18:01:29.923] c <- base::c [18:01:29.923] inherits <- base::inherits [18:01:29.923] invokeRestart <- base::invokeRestart [18:01:29.923] length <- base::length [18:01:29.923] list <- base::list [18:01:29.923] seq.int <- base::seq.int [18:01:29.923] signalCondition <- base::signalCondition [18:01:29.923] sys.calls <- base::sys.calls [18:01:29.923] `[[` <- base::`[[` [18:01:29.923] `+` <- base::`+` [18:01:29.923] `<<-` <- base::`<<-` [18:01:29.923] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:29.923] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:29.923] 3L)] [18:01:29.923] } [18:01:29.923] function(cond) { [18:01:29.923] is_error <- inherits(cond, "error") [18:01:29.923] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:29.923] NULL) [18:01:29.923] if (is_error) { [18:01:29.923] sessionInformation <- function() { [18:01:29.923] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:29.923] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:29.923] search = base::search(), system = base::Sys.info()) [18:01:29.923] } [18:01:29.923] ...future.conditions[[length(...future.conditions) + [18:01:29.923] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:29.923] cond$call), session = sessionInformation(), [18:01:29.923] timestamp = base::Sys.time(), signaled = 0L) [18:01:29.923] signalCondition(cond) [18:01:29.923] } [18:01:29.923] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:29.923] "immediateCondition"))) { [18:01:29.923] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:29.923] ...future.conditions[[length(...future.conditions) + [18:01:29.923] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:29.923] if (TRUE && !signal) { [18:01:29.923] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.923] { [18:01:29.923] inherits <- base::inherits [18:01:29.923] invokeRestart <- base::invokeRestart [18:01:29.923] is.null <- base::is.null [18:01:29.923] muffled <- FALSE [18:01:29.923] if (inherits(cond, "message")) { [18:01:29.923] muffled <- grepl(pattern, "muffleMessage") [18:01:29.923] if (muffled) [18:01:29.923] invokeRestart("muffleMessage") [18:01:29.923] } [18:01:29.923] else if (inherits(cond, "warning")) { [18:01:29.923] muffled <- grepl(pattern, "muffleWarning") [18:01:29.923] if (muffled) [18:01:29.923] invokeRestart("muffleWarning") [18:01:29.923] } [18:01:29.923] else if (inherits(cond, "condition")) { [18:01:29.923] if (!is.null(pattern)) { [18:01:29.923] computeRestarts <- base::computeRestarts [18:01:29.923] grepl <- base::grepl [18:01:29.923] restarts <- computeRestarts(cond) [18:01:29.923] for (restart in restarts) { [18:01:29.923] name <- restart$name [18:01:29.923] if (is.null(name)) [18:01:29.923] next [18:01:29.923] if (!grepl(pattern, name)) [18:01:29.923] next [18:01:29.923] invokeRestart(restart) [18:01:29.923] muffled <- TRUE [18:01:29.923] break [18:01:29.923] } [18:01:29.923] } [18:01:29.923] } [18:01:29.923] invisible(muffled) [18:01:29.923] } [18:01:29.923] muffleCondition(cond, pattern = "^muffle") [18:01:29.923] } [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] if (TRUE) { [18:01:29.923] muffleCondition <- function (cond, pattern = "^muffle") [18:01:29.923] { [18:01:29.923] inherits <- base::inherits [18:01:29.923] invokeRestart <- base::invokeRestart [18:01:29.923] is.null <- base::is.null [18:01:29.923] muffled <- FALSE [18:01:29.923] if (inherits(cond, "message")) { [18:01:29.923] muffled <- grepl(pattern, "muffleMessage") [18:01:29.923] if (muffled) [18:01:29.923] invokeRestart("muffleMessage") [18:01:29.923] } [18:01:29.923] else if (inherits(cond, "warning")) { [18:01:29.923] muffled <- grepl(pattern, "muffleWarning") [18:01:29.923] if (muffled) [18:01:29.923] invokeRestart("muffleWarning") [18:01:29.923] } [18:01:29.923] else if (inherits(cond, "condition")) { [18:01:29.923] if (!is.null(pattern)) { [18:01:29.923] computeRestarts <- base::computeRestarts [18:01:29.923] grepl <- base::grepl [18:01:29.923] restarts <- computeRestarts(cond) [18:01:29.923] for (restart in restarts) { [18:01:29.923] name <- restart$name [18:01:29.923] if (is.null(name)) [18:01:29.923] next [18:01:29.923] if (!grepl(pattern, name)) [18:01:29.923] next [18:01:29.923] invokeRestart(restart) [18:01:29.923] muffled <- TRUE [18:01:29.923] break [18:01:29.923] } [18:01:29.923] } [18:01:29.923] } [18:01:29.923] invisible(muffled) [18:01:29.923] } [18:01:29.923] muffleCondition(cond, pattern = "^muffle") [18:01:29.923] } [18:01:29.923] } [18:01:29.923] } [18:01:29.923] })) [18:01:29.923] }, error = function(ex) { [18:01:29.923] base::structure(base::list(value = NULL, visible = NULL, [18:01:29.923] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:29.923] ...future.rng), started = ...future.startTime, [18:01:29.923] finished = Sys.time(), session_uuid = NA_character_, [18:01:29.923] version = "1.8"), class = "FutureResult") [18:01:29.923] }, finally = { [18:01:29.923] if (!identical(...future.workdir, getwd())) [18:01:29.923] setwd(...future.workdir) [18:01:29.923] { [18:01:29.923] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:29.923] ...future.oldOptions$nwarnings <- NULL [18:01:29.923] } [18:01:29.923] base::options(...future.oldOptions) [18:01:29.923] if (.Platform$OS.type == "windows") { [18:01:29.923] old_names <- names(...future.oldEnvVars) [18:01:29.923] envs <- base::Sys.getenv() [18:01:29.923] names <- names(envs) [18:01:29.923] common <- intersect(names, old_names) [18:01:29.923] added <- setdiff(names, old_names) [18:01:29.923] removed <- setdiff(old_names, names) [18:01:29.923] changed <- common[...future.oldEnvVars[common] != [18:01:29.923] envs[common]] [18:01:29.923] NAMES <- toupper(changed) [18:01:29.923] args <- list() [18:01:29.923] for (kk in seq_along(NAMES)) { [18:01:29.923] name <- changed[[kk]] [18:01:29.923] NAME <- NAMES[[kk]] [18:01:29.923] if (name != NAME && is.element(NAME, old_names)) [18:01:29.923] next [18:01:29.923] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.923] } [18:01:29.923] NAMES <- toupper(added) [18:01:29.923] for (kk in seq_along(NAMES)) { [18:01:29.923] name <- added[[kk]] [18:01:29.923] NAME <- NAMES[[kk]] [18:01:29.923] if (name != NAME && is.element(NAME, old_names)) [18:01:29.923] next [18:01:29.923] args[[name]] <- "" [18:01:29.923] } [18:01:29.923] NAMES <- toupper(removed) [18:01:29.923] for (kk in seq_along(NAMES)) { [18:01:29.923] name <- removed[[kk]] [18:01:29.923] NAME <- NAMES[[kk]] [18:01:29.923] if (name != NAME && is.element(NAME, old_names)) [18:01:29.923] next [18:01:29.923] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:29.923] } [18:01:29.923] if (length(args) > 0) [18:01:29.923] base::do.call(base::Sys.setenv, args = args) [18:01:29.923] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:29.923] } [18:01:29.923] { [18:01:29.923] if (base::length(...future.futureOptionsAdded) > [18:01:29.923] 0L) { [18:01:29.923] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:29.923] base::names(opts) <- ...future.futureOptionsAdded [18:01:29.923] base::options(opts) [18:01:29.923] } [18:01:29.923] { [18:01:29.923] { [18:01:29.923] base::options(mc.cores = ...future.mc.cores.old) [18:01:29.923] NULL [18:01:29.923] } [18:01:29.923] options(future.plan = NULL) [18:01:29.923] if (is.na(NA_character_)) [18:01:29.923] Sys.unsetenv("R_FUTURE_PLAN") [18:01:29.923] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:29.923] future::plan(list(function (..., workers = availableCores(), [18:01:29.923] lazy = FALSE, rscript_libs = .libPaths(), [18:01:29.923] envir = parent.frame()) [18:01:29.923] { [18:01:29.923] if (is.function(workers)) [18:01:29.923] workers <- workers() [18:01:29.923] workers <- structure(as.integer(workers), [18:01:29.923] class = class(workers)) [18:01:29.923] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:29.923] workers >= 1) [18:01:29.923] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:29.923] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:29.923] } [18:01:29.923] future <- MultisessionFuture(..., workers = workers, [18:01:29.923] lazy = lazy, rscript_libs = rscript_libs, [18:01:29.923] envir = envir) [18:01:29.923] if (!future$lazy) [18:01:29.923] future <- run(future) [18:01:29.923] invisible(future) [18:01:29.923] }), .cleanup = FALSE, .init = FALSE) [18:01:29.923] } [18:01:29.923] } [18:01:29.923] } [18:01:29.923] }) [18:01:29.923] if (TRUE) { [18:01:29.923] base::sink(type = "output", split = FALSE) [18:01:29.923] if (TRUE) { [18:01:29.923] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:29.923] } [18:01:29.923] else { [18:01:29.923] ...future.result["stdout"] <- base::list(NULL) [18:01:29.923] } [18:01:29.923] base::close(...future.stdout) [18:01:29.923] ...future.stdout <- NULL [18:01:29.923] } [18:01:29.923] ...future.result$conditions <- ...future.conditions [18:01:29.923] ...future.result$finished <- base::Sys.time() [18:01:29.923] ...future.result [18:01:29.923] } [18:01:30.011] MultisessionFuture started [18:01:30.011] result() for ClusterFuture ... [18:01:30.012] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.012] - Validating connection of MultisessionFuture [18:01:30.070] - received message: FutureResult [18:01:30.070] - Received FutureResult [18:01:30.073] - Erased future from FutureRegistry [18:01:30.074] result() for ClusterFuture ... [18:01:30.074] - result already collected: FutureResult [18:01:30.074] result() for ClusterFuture ... done [18:01:30.074] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.074] result() for ClusterFuture ... done [18:01:30.075] result() for ClusterFuture ... [18:01:30.075] - result already collected: FutureResult [18:01:30.075] result() for ClusterFuture ... done [18:01:30.075] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... DONE [18:01:30.078] plan(): nbrOfWorkers() = 2 [18:01:30.078] getGlobalsAndPackages() ... [18:01:30.078] Searching for globals... [18:01:30.079] - globals found: [1] '{' [18:01:30.080] Searching for globals ... DONE [18:01:30.080] Resolving globals: FALSE [18:01:30.080] [18:01:30.080] [18:01:30.081] getGlobalsAndPackages() ... DONE [18:01:30.081] run() for 'Future' ... [18:01:30.081] - state: 'created' [18:01:30.081] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.096] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.096] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.096] - Field: 'node' [18:01:30.096] - Field: 'label' [18:01:30.096] - Field: 'local' [18:01:30.097] - Field: 'owner' [18:01:30.097] - Field: 'envir' [18:01:30.097] - Field: 'workers' [18:01:30.097] - Field: 'packages' [18:01:30.097] - Field: 'gc' [18:01:30.098] - Field: 'conditions' [18:01:30.098] - Field: 'persistent' [18:01:30.098] - Field: 'expr' [18:01:30.098] - Field: 'uuid' [18:01:30.098] - Field: 'seed' [18:01:30.099] - Field: 'version' [18:01:30.099] - Field: 'result' [18:01:30.099] - Field: 'asynchronous' [18:01:30.099] - Field: 'calls' [18:01:30.099] - Field: 'globals' [18:01:30.100] - Field: 'stdout' [18:01:30.100] - Field: 'earlySignal' [18:01:30.100] - Field: 'lazy' [18:01:30.100] - Field: 'state' [18:01:30.100] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.101] - Launch lazy future ... [18:01:30.101] Packages needed by the future expression (n = 0): [18:01:30.101] Packages needed by future strategies (n = 0): [18:01:30.102] { [18:01:30.102] { [18:01:30.102] { [18:01:30.102] ...future.startTime <- base::Sys.time() [18:01:30.102] { [18:01:30.102] { [18:01:30.102] { [18:01:30.102] { [18:01:30.102] base::local({ [18:01:30.102] has_future <- base::requireNamespace("future", [18:01:30.102] quietly = TRUE) [18:01:30.102] if (has_future) { [18:01:30.102] ns <- base::getNamespace("future") [18:01:30.102] version <- ns[[".package"]][["version"]] [18:01:30.102] if (is.null(version)) [18:01:30.102] version <- utils::packageVersion("future") [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] version <- NULL [18:01:30.102] } [18:01:30.102] if (!has_future || version < "1.8.0") { [18:01:30.102] info <- base::c(r_version = base::gsub("R version ", [18:01:30.102] "", base::R.version$version.string), [18:01:30.102] platform = base::sprintf("%s (%s-bit)", [18:01:30.102] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.102] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.102] "release", "version")], collapse = " "), [18:01:30.102] hostname = base::Sys.info()[["nodename"]]) [18:01:30.102] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.102] info) [18:01:30.102] info <- base::paste(info, collapse = "; ") [18:01:30.102] if (!has_future) { [18:01:30.102] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.102] info) [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.102] info, version) [18:01:30.102] } [18:01:30.102] base::stop(msg) [18:01:30.102] } [18:01:30.102] }) [18:01:30.102] } [18:01:30.102] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.102] base::options(mc.cores = 1L) [18:01:30.102] } [18:01:30.102] options(future.plan = NULL) [18:01:30.102] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.102] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.102] } [18:01:30.102] ...future.workdir <- getwd() [18:01:30.102] } [18:01:30.102] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.102] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.102] } [18:01:30.102] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.102] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.102] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.102] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.102] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.102] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.102] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.102] base::names(...future.oldOptions)) [18:01:30.102] } [18:01:30.102] if (FALSE) { [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] if (TRUE) { [18:01:30.102] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.102] open = "w") [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.102] windows = "NUL", "/dev/null"), open = "w") [18:01:30.102] } [18:01:30.102] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.102] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.102] base::sink(type = "output", split = FALSE) [18:01:30.102] base::close(...future.stdout) [18:01:30.102] }, add = TRUE) [18:01:30.102] } [18:01:30.102] ...future.frame <- base::sys.nframe() [18:01:30.102] ...future.conditions <- base::list() [18:01:30.102] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.102] if (FALSE) { [18:01:30.102] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.102] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.102] } [18:01:30.102] ...future.result <- base::tryCatch({ [18:01:30.102] base::withCallingHandlers({ [18:01:30.102] ...future.value <- base::withVisible(base::local({ [18:01:30.102] ...future.makeSendCondition <- local({ [18:01:30.102] sendCondition <- NULL [18:01:30.102] function(frame = 1L) { [18:01:30.102] if (is.function(sendCondition)) [18:01:30.102] return(sendCondition) [18:01:30.102] ns <- getNamespace("parallel") [18:01:30.102] if (exists("sendData", mode = "function", [18:01:30.102] envir = ns)) { [18:01:30.102] parallel_sendData <- get("sendData", mode = "function", [18:01:30.102] envir = ns) [18:01:30.102] envir <- sys.frame(frame) [18:01:30.102] master <- NULL [18:01:30.102] while (!identical(envir, .GlobalEnv) && [18:01:30.102] !identical(envir, emptyenv())) { [18:01:30.102] if (exists("master", mode = "list", envir = envir, [18:01:30.102] inherits = FALSE)) { [18:01:30.102] master <- get("master", mode = "list", [18:01:30.102] envir = envir, inherits = FALSE) [18:01:30.102] if (inherits(master, c("SOCKnode", [18:01:30.102] "SOCK0node"))) { [18:01:30.102] sendCondition <<- function(cond) { [18:01:30.102] data <- list(type = "VALUE", value = cond, [18:01:30.102] success = TRUE) [18:01:30.102] parallel_sendData(master, data) [18:01:30.102] } [18:01:30.102] return(sendCondition) [18:01:30.102] } [18:01:30.102] } [18:01:30.102] frame <- frame + 1L [18:01:30.102] envir <- sys.frame(frame) [18:01:30.102] } [18:01:30.102] } [18:01:30.102] sendCondition <<- function(cond) NULL [18:01:30.102] } [18:01:30.102] }) [18:01:30.102] withCallingHandlers({ [18:01:30.102] { [18:01:30.102] 2 [18:01:30.102] } [18:01:30.102] }, immediateCondition = function(cond) { [18:01:30.102] sendCondition <- ...future.makeSendCondition() [18:01:30.102] sendCondition(cond) [18:01:30.102] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.102] { [18:01:30.102] inherits <- base::inherits [18:01:30.102] invokeRestart <- base::invokeRestart [18:01:30.102] is.null <- base::is.null [18:01:30.102] muffled <- FALSE [18:01:30.102] if (inherits(cond, "message")) { [18:01:30.102] muffled <- grepl(pattern, "muffleMessage") [18:01:30.102] if (muffled) [18:01:30.102] invokeRestart("muffleMessage") [18:01:30.102] } [18:01:30.102] else if (inherits(cond, "warning")) { [18:01:30.102] muffled <- grepl(pattern, "muffleWarning") [18:01:30.102] if (muffled) [18:01:30.102] invokeRestart("muffleWarning") [18:01:30.102] } [18:01:30.102] else if (inherits(cond, "condition")) { [18:01:30.102] if (!is.null(pattern)) { [18:01:30.102] computeRestarts <- base::computeRestarts [18:01:30.102] grepl <- base::grepl [18:01:30.102] restarts <- computeRestarts(cond) [18:01:30.102] for (restart in restarts) { [18:01:30.102] name <- restart$name [18:01:30.102] if (is.null(name)) [18:01:30.102] next [18:01:30.102] if (!grepl(pattern, name)) [18:01:30.102] next [18:01:30.102] invokeRestart(restart) [18:01:30.102] muffled <- TRUE [18:01:30.102] break [18:01:30.102] } [18:01:30.102] } [18:01:30.102] } [18:01:30.102] invisible(muffled) [18:01:30.102] } [18:01:30.102] muffleCondition(cond) [18:01:30.102] }) [18:01:30.102] })) [18:01:30.102] future::FutureResult(value = ...future.value$value, [18:01:30.102] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.102] ...future.rng), globalenv = if (FALSE) [18:01:30.102] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.102] ...future.globalenv.names)) [18:01:30.102] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.102] }, condition = base::local({ [18:01:30.102] c <- base::c [18:01:30.102] inherits <- base::inherits [18:01:30.102] invokeRestart <- base::invokeRestart [18:01:30.102] length <- base::length [18:01:30.102] list <- base::list [18:01:30.102] seq.int <- base::seq.int [18:01:30.102] signalCondition <- base::signalCondition [18:01:30.102] sys.calls <- base::sys.calls [18:01:30.102] `[[` <- base::`[[` [18:01:30.102] `+` <- base::`+` [18:01:30.102] `<<-` <- base::`<<-` [18:01:30.102] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.102] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.102] 3L)] [18:01:30.102] } [18:01:30.102] function(cond) { [18:01:30.102] is_error <- inherits(cond, "error") [18:01:30.102] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.102] NULL) [18:01:30.102] if (is_error) { [18:01:30.102] sessionInformation <- function() { [18:01:30.102] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.102] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.102] search = base::search(), system = base::Sys.info()) [18:01:30.102] } [18:01:30.102] ...future.conditions[[length(...future.conditions) + [18:01:30.102] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.102] cond$call), session = sessionInformation(), [18:01:30.102] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.102] signalCondition(cond) [18:01:30.102] } [18:01:30.102] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.102] "immediateCondition"))) { [18:01:30.102] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.102] ...future.conditions[[length(...future.conditions) + [18:01:30.102] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.102] if (TRUE && !signal) { [18:01:30.102] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.102] { [18:01:30.102] inherits <- base::inherits [18:01:30.102] invokeRestart <- base::invokeRestart [18:01:30.102] is.null <- base::is.null [18:01:30.102] muffled <- FALSE [18:01:30.102] if (inherits(cond, "message")) { [18:01:30.102] muffled <- grepl(pattern, "muffleMessage") [18:01:30.102] if (muffled) [18:01:30.102] invokeRestart("muffleMessage") [18:01:30.102] } [18:01:30.102] else if (inherits(cond, "warning")) { [18:01:30.102] muffled <- grepl(pattern, "muffleWarning") [18:01:30.102] if (muffled) [18:01:30.102] invokeRestart("muffleWarning") [18:01:30.102] } [18:01:30.102] else if (inherits(cond, "condition")) { [18:01:30.102] if (!is.null(pattern)) { [18:01:30.102] computeRestarts <- base::computeRestarts [18:01:30.102] grepl <- base::grepl [18:01:30.102] restarts <- computeRestarts(cond) [18:01:30.102] for (restart in restarts) { [18:01:30.102] name <- restart$name [18:01:30.102] if (is.null(name)) [18:01:30.102] next [18:01:30.102] if (!grepl(pattern, name)) [18:01:30.102] next [18:01:30.102] invokeRestart(restart) [18:01:30.102] muffled <- TRUE [18:01:30.102] break [18:01:30.102] } [18:01:30.102] } [18:01:30.102] } [18:01:30.102] invisible(muffled) [18:01:30.102] } [18:01:30.102] muffleCondition(cond, pattern = "^muffle") [18:01:30.102] } [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] if (TRUE) { [18:01:30.102] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.102] { [18:01:30.102] inherits <- base::inherits [18:01:30.102] invokeRestart <- base::invokeRestart [18:01:30.102] is.null <- base::is.null [18:01:30.102] muffled <- FALSE [18:01:30.102] if (inherits(cond, "message")) { [18:01:30.102] muffled <- grepl(pattern, "muffleMessage") [18:01:30.102] if (muffled) [18:01:30.102] invokeRestart("muffleMessage") [18:01:30.102] } [18:01:30.102] else if (inherits(cond, "warning")) { [18:01:30.102] muffled <- grepl(pattern, "muffleWarning") [18:01:30.102] if (muffled) [18:01:30.102] invokeRestart("muffleWarning") [18:01:30.102] } [18:01:30.102] else if (inherits(cond, "condition")) { [18:01:30.102] if (!is.null(pattern)) { [18:01:30.102] computeRestarts <- base::computeRestarts [18:01:30.102] grepl <- base::grepl [18:01:30.102] restarts <- computeRestarts(cond) [18:01:30.102] for (restart in restarts) { [18:01:30.102] name <- restart$name [18:01:30.102] if (is.null(name)) [18:01:30.102] next [18:01:30.102] if (!grepl(pattern, name)) [18:01:30.102] next [18:01:30.102] invokeRestart(restart) [18:01:30.102] muffled <- TRUE [18:01:30.102] break [18:01:30.102] } [18:01:30.102] } [18:01:30.102] } [18:01:30.102] invisible(muffled) [18:01:30.102] } [18:01:30.102] muffleCondition(cond, pattern = "^muffle") [18:01:30.102] } [18:01:30.102] } [18:01:30.102] } [18:01:30.102] })) [18:01:30.102] }, error = function(ex) { [18:01:30.102] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.102] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.102] ...future.rng), started = ...future.startTime, [18:01:30.102] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.102] version = "1.8"), class = "FutureResult") [18:01:30.102] }, finally = { [18:01:30.102] if (!identical(...future.workdir, getwd())) [18:01:30.102] setwd(...future.workdir) [18:01:30.102] { [18:01:30.102] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.102] ...future.oldOptions$nwarnings <- NULL [18:01:30.102] } [18:01:30.102] base::options(...future.oldOptions) [18:01:30.102] if (.Platform$OS.type == "windows") { [18:01:30.102] old_names <- names(...future.oldEnvVars) [18:01:30.102] envs <- base::Sys.getenv() [18:01:30.102] names <- names(envs) [18:01:30.102] common <- intersect(names, old_names) [18:01:30.102] added <- setdiff(names, old_names) [18:01:30.102] removed <- setdiff(old_names, names) [18:01:30.102] changed <- common[...future.oldEnvVars[common] != [18:01:30.102] envs[common]] [18:01:30.102] NAMES <- toupper(changed) [18:01:30.102] args <- list() [18:01:30.102] for (kk in seq_along(NAMES)) { [18:01:30.102] name <- changed[[kk]] [18:01:30.102] NAME <- NAMES[[kk]] [18:01:30.102] if (name != NAME && is.element(NAME, old_names)) [18:01:30.102] next [18:01:30.102] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.102] } [18:01:30.102] NAMES <- toupper(added) [18:01:30.102] for (kk in seq_along(NAMES)) { [18:01:30.102] name <- added[[kk]] [18:01:30.102] NAME <- NAMES[[kk]] [18:01:30.102] if (name != NAME && is.element(NAME, old_names)) [18:01:30.102] next [18:01:30.102] args[[name]] <- "" [18:01:30.102] } [18:01:30.102] NAMES <- toupper(removed) [18:01:30.102] for (kk in seq_along(NAMES)) { [18:01:30.102] name <- removed[[kk]] [18:01:30.102] NAME <- NAMES[[kk]] [18:01:30.102] if (name != NAME && is.element(NAME, old_names)) [18:01:30.102] next [18:01:30.102] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.102] } [18:01:30.102] if (length(args) > 0) [18:01:30.102] base::do.call(base::Sys.setenv, args = args) [18:01:30.102] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.102] } [18:01:30.102] { [18:01:30.102] if (base::length(...future.futureOptionsAdded) > [18:01:30.102] 0L) { [18:01:30.102] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.102] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.102] base::options(opts) [18:01:30.102] } [18:01:30.102] { [18:01:30.102] { [18:01:30.102] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.102] NULL [18:01:30.102] } [18:01:30.102] options(future.plan = NULL) [18:01:30.102] if (is.na(NA_character_)) [18:01:30.102] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.102] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.102] future::plan(list(function (..., workers = availableCores(), [18:01:30.102] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.102] envir = parent.frame()) [18:01:30.102] { [18:01:30.102] if (is.function(workers)) [18:01:30.102] workers <- workers() [18:01:30.102] workers <- structure(as.integer(workers), [18:01:30.102] class = class(workers)) [18:01:30.102] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.102] workers >= 1) [18:01:30.102] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.102] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.102] } [18:01:30.102] future <- MultisessionFuture(..., workers = workers, [18:01:30.102] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.102] envir = envir) [18:01:30.102] if (!future$lazy) [18:01:30.102] future <- run(future) [18:01:30.102] invisible(future) [18:01:30.102] }), .cleanup = FALSE, .init = FALSE) [18:01:30.102] } [18:01:30.102] } [18:01:30.102] } [18:01:30.102] }) [18:01:30.102] if (TRUE) { [18:01:30.102] base::sink(type = "output", split = FALSE) [18:01:30.102] if (TRUE) { [18:01:30.102] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.102] } [18:01:30.102] else { [18:01:30.102] ...future.result["stdout"] <- base::list(NULL) [18:01:30.102] } [18:01:30.102] base::close(...future.stdout) [18:01:30.102] ...future.stdout <- NULL [18:01:30.102] } [18:01:30.102] ...future.result$conditions <- ...future.conditions [18:01:30.102] ...future.result$finished <- base::Sys.time() [18:01:30.102] ...future.result [18:01:30.102] } [18:01:30.108] MultisessionFuture started [18:01:30.108] - Launch lazy future ... done [18:01:30.108] run() for 'MultisessionFuture' ... done [18:01:30.109] getGlobalsAndPackages() ... [18:01:30.109] Searching for globals... [18:01:30.110] - globals found: [1] '{' [18:01:30.110] Searching for globals ... DONE [18:01:30.110] Resolving globals: FALSE [18:01:30.111] [18:01:30.111] [18:01:30.111] getGlobalsAndPackages() ... DONE [18:01:30.111] run() for 'Future' ... [18:01:30.112] - state: 'created' [18:01:30.112] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.126] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.126] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.126] - Field: 'node' [18:01:30.127] - Field: 'label' [18:01:30.127] - Field: 'local' [18:01:30.127] - Field: 'owner' [18:01:30.127] - Field: 'envir' [18:01:30.127] - Field: 'workers' [18:01:30.128] - Field: 'packages' [18:01:30.128] - Field: 'gc' [18:01:30.128] - Field: 'conditions' [18:01:30.128] - Field: 'persistent' [18:01:30.128] - Field: 'expr' [18:01:30.129] - Field: 'uuid' [18:01:30.129] - Field: 'seed' [18:01:30.129] - Field: 'version' [18:01:30.129] - Field: 'result' [18:01:30.129] - Field: 'asynchronous' [18:01:30.130] - Field: 'calls' [18:01:30.130] - Field: 'globals' [18:01:30.130] - Field: 'stdout' [18:01:30.130] - Field: 'earlySignal' [18:01:30.130] - Field: 'lazy' [18:01:30.131] - Field: 'state' [18:01:30.131] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.131] - Launch lazy future ... [18:01:30.131] Packages needed by the future expression (n = 0): [18:01:30.132] Packages needed by future strategies (n = 0): [18:01:30.132] { [18:01:30.132] { [18:01:30.132] { [18:01:30.132] ...future.startTime <- base::Sys.time() [18:01:30.132] { [18:01:30.132] { [18:01:30.132] { [18:01:30.132] { [18:01:30.132] base::local({ [18:01:30.132] has_future <- base::requireNamespace("future", [18:01:30.132] quietly = TRUE) [18:01:30.132] if (has_future) { [18:01:30.132] ns <- base::getNamespace("future") [18:01:30.132] version <- ns[[".package"]][["version"]] [18:01:30.132] if (is.null(version)) [18:01:30.132] version <- utils::packageVersion("future") [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] version <- NULL [18:01:30.132] } [18:01:30.132] if (!has_future || version < "1.8.0") { [18:01:30.132] info <- base::c(r_version = base::gsub("R version ", [18:01:30.132] "", base::R.version$version.string), [18:01:30.132] platform = base::sprintf("%s (%s-bit)", [18:01:30.132] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.132] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.132] "release", "version")], collapse = " "), [18:01:30.132] hostname = base::Sys.info()[["nodename"]]) [18:01:30.132] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.132] info) [18:01:30.132] info <- base::paste(info, collapse = "; ") [18:01:30.132] if (!has_future) { [18:01:30.132] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.132] info) [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.132] info, version) [18:01:30.132] } [18:01:30.132] base::stop(msg) [18:01:30.132] } [18:01:30.132] }) [18:01:30.132] } [18:01:30.132] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.132] base::options(mc.cores = 1L) [18:01:30.132] } [18:01:30.132] options(future.plan = NULL) [18:01:30.132] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.132] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.132] } [18:01:30.132] ...future.workdir <- getwd() [18:01:30.132] } [18:01:30.132] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.132] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.132] } [18:01:30.132] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.132] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.132] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.132] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.132] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.132] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.132] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.132] base::names(...future.oldOptions)) [18:01:30.132] } [18:01:30.132] if (FALSE) { [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] if (TRUE) { [18:01:30.132] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.132] open = "w") [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.132] windows = "NUL", "/dev/null"), open = "w") [18:01:30.132] } [18:01:30.132] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.132] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.132] base::sink(type = "output", split = FALSE) [18:01:30.132] base::close(...future.stdout) [18:01:30.132] }, add = TRUE) [18:01:30.132] } [18:01:30.132] ...future.frame <- base::sys.nframe() [18:01:30.132] ...future.conditions <- base::list() [18:01:30.132] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.132] if (FALSE) { [18:01:30.132] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.132] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.132] } [18:01:30.132] ...future.result <- base::tryCatch({ [18:01:30.132] base::withCallingHandlers({ [18:01:30.132] ...future.value <- base::withVisible(base::local({ [18:01:30.132] ...future.makeSendCondition <- local({ [18:01:30.132] sendCondition <- NULL [18:01:30.132] function(frame = 1L) { [18:01:30.132] if (is.function(sendCondition)) [18:01:30.132] return(sendCondition) [18:01:30.132] ns <- getNamespace("parallel") [18:01:30.132] if (exists("sendData", mode = "function", [18:01:30.132] envir = ns)) { [18:01:30.132] parallel_sendData <- get("sendData", mode = "function", [18:01:30.132] envir = ns) [18:01:30.132] envir <- sys.frame(frame) [18:01:30.132] master <- NULL [18:01:30.132] while (!identical(envir, .GlobalEnv) && [18:01:30.132] !identical(envir, emptyenv())) { [18:01:30.132] if (exists("master", mode = "list", envir = envir, [18:01:30.132] inherits = FALSE)) { [18:01:30.132] master <- get("master", mode = "list", [18:01:30.132] envir = envir, inherits = FALSE) [18:01:30.132] if (inherits(master, c("SOCKnode", [18:01:30.132] "SOCK0node"))) { [18:01:30.132] sendCondition <<- function(cond) { [18:01:30.132] data <- list(type = "VALUE", value = cond, [18:01:30.132] success = TRUE) [18:01:30.132] parallel_sendData(master, data) [18:01:30.132] } [18:01:30.132] return(sendCondition) [18:01:30.132] } [18:01:30.132] } [18:01:30.132] frame <- frame + 1L [18:01:30.132] envir <- sys.frame(frame) [18:01:30.132] } [18:01:30.132] } [18:01:30.132] sendCondition <<- function(cond) NULL [18:01:30.132] } [18:01:30.132] }) [18:01:30.132] withCallingHandlers({ [18:01:30.132] { [18:01:30.132] 4 [18:01:30.132] } [18:01:30.132] }, immediateCondition = function(cond) { [18:01:30.132] sendCondition <- ...future.makeSendCondition() [18:01:30.132] sendCondition(cond) [18:01:30.132] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.132] { [18:01:30.132] inherits <- base::inherits [18:01:30.132] invokeRestart <- base::invokeRestart [18:01:30.132] is.null <- base::is.null [18:01:30.132] muffled <- FALSE [18:01:30.132] if (inherits(cond, "message")) { [18:01:30.132] muffled <- grepl(pattern, "muffleMessage") [18:01:30.132] if (muffled) [18:01:30.132] invokeRestart("muffleMessage") [18:01:30.132] } [18:01:30.132] else if (inherits(cond, "warning")) { [18:01:30.132] muffled <- grepl(pattern, "muffleWarning") [18:01:30.132] if (muffled) [18:01:30.132] invokeRestart("muffleWarning") [18:01:30.132] } [18:01:30.132] else if (inherits(cond, "condition")) { [18:01:30.132] if (!is.null(pattern)) { [18:01:30.132] computeRestarts <- base::computeRestarts [18:01:30.132] grepl <- base::grepl [18:01:30.132] restarts <- computeRestarts(cond) [18:01:30.132] for (restart in restarts) { [18:01:30.132] name <- restart$name [18:01:30.132] if (is.null(name)) [18:01:30.132] next [18:01:30.132] if (!grepl(pattern, name)) [18:01:30.132] next [18:01:30.132] invokeRestart(restart) [18:01:30.132] muffled <- TRUE [18:01:30.132] break [18:01:30.132] } [18:01:30.132] } [18:01:30.132] } [18:01:30.132] invisible(muffled) [18:01:30.132] } [18:01:30.132] muffleCondition(cond) [18:01:30.132] }) [18:01:30.132] })) [18:01:30.132] future::FutureResult(value = ...future.value$value, [18:01:30.132] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.132] ...future.rng), globalenv = if (FALSE) [18:01:30.132] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.132] ...future.globalenv.names)) [18:01:30.132] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.132] }, condition = base::local({ [18:01:30.132] c <- base::c [18:01:30.132] inherits <- base::inherits [18:01:30.132] invokeRestart <- base::invokeRestart [18:01:30.132] length <- base::length [18:01:30.132] list <- base::list [18:01:30.132] seq.int <- base::seq.int [18:01:30.132] signalCondition <- base::signalCondition [18:01:30.132] sys.calls <- base::sys.calls [18:01:30.132] `[[` <- base::`[[` [18:01:30.132] `+` <- base::`+` [18:01:30.132] `<<-` <- base::`<<-` [18:01:30.132] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.132] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.132] 3L)] [18:01:30.132] } [18:01:30.132] function(cond) { [18:01:30.132] is_error <- inherits(cond, "error") [18:01:30.132] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.132] NULL) [18:01:30.132] if (is_error) { [18:01:30.132] sessionInformation <- function() { [18:01:30.132] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.132] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.132] search = base::search(), system = base::Sys.info()) [18:01:30.132] } [18:01:30.132] ...future.conditions[[length(...future.conditions) + [18:01:30.132] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.132] cond$call), session = sessionInformation(), [18:01:30.132] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.132] signalCondition(cond) [18:01:30.132] } [18:01:30.132] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.132] "immediateCondition"))) { [18:01:30.132] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.132] ...future.conditions[[length(...future.conditions) + [18:01:30.132] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.132] if (TRUE && !signal) { [18:01:30.132] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.132] { [18:01:30.132] inherits <- base::inherits [18:01:30.132] invokeRestart <- base::invokeRestart [18:01:30.132] is.null <- base::is.null [18:01:30.132] muffled <- FALSE [18:01:30.132] if (inherits(cond, "message")) { [18:01:30.132] muffled <- grepl(pattern, "muffleMessage") [18:01:30.132] if (muffled) [18:01:30.132] invokeRestart("muffleMessage") [18:01:30.132] } [18:01:30.132] else if (inherits(cond, "warning")) { [18:01:30.132] muffled <- grepl(pattern, "muffleWarning") [18:01:30.132] if (muffled) [18:01:30.132] invokeRestart("muffleWarning") [18:01:30.132] } [18:01:30.132] else if (inherits(cond, "condition")) { [18:01:30.132] if (!is.null(pattern)) { [18:01:30.132] computeRestarts <- base::computeRestarts [18:01:30.132] grepl <- base::grepl [18:01:30.132] restarts <- computeRestarts(cond) [18:01:30.132] for (restart in restarts) { [18:01:30.132] name <- restart$name [18:01:30.132] if (is.null(name)) [18:01:30.132] next [18:01:30.132] if (!grepl(pattern, name)) [18:01:30.132] next [18:01:30.132] invokeRestart(restart) [18:01:30.132] muffled <- TRUE [18:01:30.132] break [18:01:30.132] } [18:01:30.132] } [18:01:30.132] } [18:01:30.132] invisible(muffled) [18:01:30.132] } [18:01:30.132] muffleCondition(cond, pattern = "^muffle") [18:01:30.132] } [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] if (TRUE) { [18:01:30.132] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.132] { [18:01:30.132] inherits <- base::inherits [18:01:30.132] invokeRestart <- base::invokeRestart [18:01:30.132] is.null <- base::is.null [18:01:30.132] muffled <- FALSE [18:01:30.132] if (inherits(cond, "message")) { [18:01:30.132] muffled <- grepl(pattern, "muffleMessage") [18:01:30.132] if (muffled) [18:01:30.132] invokeRestart("muffleMessage") [18:01:30.132] } [18:01:30.132] else if (inherits(cond, "warning")) { [18:01:30.132] muffled <- grepl(pattern, "muffleWarning") [18:01:30.132] if (muffled) [18:01:30.132] invokeRestart("muffleWarning") [18:01:30.132] } [18:01:30.132] else if (inherits(cond, "condition")) { [18:01:30.132] if (!is.null(pattern)) { [18:01:30.132] computeRestarts <- base::computeRestarts [18:01:30.132] grepl <- base::grepl [18:01:30.132] restarts <- computeRestarts(cond) [18:01:30.132] for (restart in restarts) { [18:01:30.132] name <- restart$name [18:01:30.132] if (is.null(name)) [18:01:30.132] next [18:01:30.132] if (!grepl(pattern, name)) [18:01:30.132] next [18:01:30.132] invokeRestart(restart) [18:01:30.132] muffled <- TRUE [18:01:30.132] break [18:01:30.132] } [18:01:30.132] } [18:01:30.132] } [18:01:30.132] invisible(muffled) [18:01:30.132] } [18:01:30.132] muffleCondition(cond, pattern = "^muffle") [18:01:30.132] } [18:01:30.132] } [18:01:30.132] } [18:01:30.132] })) [18:01:30.132] }, error = function(ex) { [18:01:30.132] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.132] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.132] ...future.rng), started = ...future.startTime, [18:01:30.132] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.132] version = "1.8"), class = "FutureResult") [18:01:30.132] }, finally = { [18:01:30.132] if (!identical(...future.workdir, getwd())) [18:01:30.132] setwd(...future.workdir) [18:01:30.132] { [18:01:30.132] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.132] ...future.oldOptions$nwarnings <- NULL [18:01:30.132] } [18:01:30.132] base::options(...future.oldOptions) [18:01:30.132] if (.Platform$OS.type == "windows") { [18:01:30.132] old_names <- names(...future.oldEnvVars) [18:01:30.132] envs <- base::Sys.getenv() [18:01:30.132] names <- names(envs) [18:01:30.132] common <- intersect(names, old_names) [18:01:30.132] added <- setdiff(names, old_names) [18:01:30.132] removed <- setdiff(old_names, names) [18:01:30.132] changed <- common[...future.oldEnvVars[common] != [18:01:30.132] envs[common]] [18:01:30.132] NAMES <- toupper(changed) [18:01:30.132] args <- list() [18:01:30.132] for (kk in seq_along(NAMES)) { [18:01:30.132] name <- changed[[kk]] [18:01:30.132] NAME <- NAMES[[kk]] [18:01:30.132] if (name != NAME && is.element(NAME, old_names)) [18:01:30.132] next [18:01:30.132] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.132] } [18:01:30.132] NAMES <- toupper(added) [18:01:30.132] for (kk in seq_along(NAMES)) { [18:01:30.132] name <- added[[kk]] [18:01:30.132] NAME <- NAMES[[kk]] [18:01:30.132] if (name != NAME && is.element(NAME, old_names)) [18:01:30.132] next [18:01:30.132] args[[name]] <- "" [18:01:30.132] } [18:01:30.132] NAMES <- toupper(removed) [18:01:30.132] for (kk in seq_along(NAMES)) { [18:01:30.132] name <- removed[[kk]] [18:01:30.132] NAME <- NAMES[[kk]] [18:01:30.132] if (name != NAME && is.element(NAME, old_names)) [18:01:30.132] next [18:01:30.132] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.132] } [18:01:30.132] if (length(args) > 0) [18:01:30.132] base::do.call(base::Sys.setenv, args = args) [18:01:30.132] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.132] } [18:01:30.132] { [18:01:30.132] if (base::length(...future.futureOptionsAdded) > [18:01:30.132] 0L) { [18:01:30.132] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.132] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.132] base::options(opts) [18:01:30.132] } [18:01:30.132] { [18:01:30.132] { [18:01:30.132] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.132] NULL [18:01:30.132] } [18:01:30.132] options(future.plan = NULL) [18:01:30.132] if (is.na(NA_character_)) [18:01:30.132] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.132] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.132] future::plan(list(function (..., workers = availableCores(), [18:01:30.132] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.132] envir = parent.frame()) [18:01:30.132] { [18:01:30.132] if (is.function(workers)) [18:01:30.132] workers <- workers() [18:01:30.132] workers <- structure(as.integer(workers), [18:01:30.132] class = class(workers)) [18:01:30.132] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.132] workers >= 1) [18:01:30.132] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.132] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.132] } [18:01:30.132] future <- MultisessionFuture(..., workers = workers, [18:01:30.132] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.132] envir = envir) [18:01:30.132] if (!future$lazy) [18:01:30.132] future <- run(future) [18:01:30.132] invisible(future) [18:01:30.132] }), .cleanup = FALSE, .init = FALSE) [18:01:30.132] } [18:01:30.132] } [18:01:30.132] } [18:01:30.132] }) [18:01:30.132] if (TRUE) { [18:01:30.132] base::sink(type = "output", split = FALSE) [18:01:30.132] if (TRUE) { [18:01:30.132] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.132] } [18:01:30.132] else { [18:01:30.132] ...future.result["stdout"] <- base::list(NULL) [18:01:30.132] } [18:01:30.132] base::close(...future.stdout) [18:01:30.132] ...future.stdout <- NULL [18:01:30.132] } [18:01:30.132] ...future.result$conditions <- ...future.conditions [18:01:30.132] ...future.result$finished <- base::Sys.time() [18:01:30.132] ...future.result [18:01:30.132] } [18:01:30.225] MultisessionFuture started [18:01:30.225] - Launch lazy future ... done [18:01:30.226] run() for 'MultisessionFuture' ... done [18:01:30.226] result() for ClusterFuture ... [18:01:30.226] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.226] - Validating connection of MultisessionFuture [18:01:30.227] - received message: FutureResult [18:01:30.227] - Received FutureResult [18:01:30.227] - Erased future from FutureRegistry [18:01:30.227] result() for ClusterFuture ... [18:01:30.228] - result already collected: FutureResult [18:01:30.228] result() for ClusterFuture ... done [18:01:30.228] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.228] result() for ClusterFuture ... done [18:01:30.228] result() for ClusterFuture ... [18:01:30.228] - result already collected: FutureResult [18:01:30.229] result() for ClusterFuture ... done u$a = 2 [18:01:30.229] result() for ClusterFuture ... [18:01:30.229] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.229] - Validating connection of MultisessionFuture [18:01:30.288] - received message: FutureResult [18:01:30.289] - Received FutureResult [18:01:30.289] - Erased future from FutureRegistry [18:01:30.289] result() for ClusterFuture ... [18:01:30.289] - result already collected: FutureResult [18:01:30.289] result() for ClusterFuture ... done [18:01:30.290] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.290] result() for ClusterFuture ... done [18:01:30.290] result() for ClusterFuture ... [18:01:30.290] - result already collected: FutureResult [18:01:30.290] result() for ClusterFuture ... done v$a = 4 [18:01:30.291] getGlobalsAndPackages() ... [18:01:30.291] Searching for globals... [18:01:30.293] - globals found: [3] '{', '*', 'a' [18:01:30.293] Searching for globals ... DONE [18:01:30.293] Resolving globals: FALSE [18:01:30.294] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:30.294] The total size of the 1 globals exported for future expression ('{; 2 * 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.294] - globals: [1] 'a' [18:01:30.295] [18:01:30.295] getGlobalsAndPackages() ... DONE [18:01:30.295] run() for 'Future' ... [18:01:30.295] - state: 'created' [18:01:30.296] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.310] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.311] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.311] - Field: 'node' [18:01:30.311] - Field: 'label' [18:01:30.311] - Field: 'local' [18:01:30.311] - Field: 'owner' [18:01:30.312] - Field: 'envir' [18:01:30.312] - Field: 'workers' [18:01:30.312] - Field: 'packages' [18:01:30.312] - Field: 'gc' [18:01:30.313] - Field: 'conditions' [18:01:30.313] - Field: 'persistent' [18:01:30.313] - Field: 'expr' [18:01:30.313] - Field: 'uuid' [18:01:30.313] - Field: 'seed' [18:01:30.314] - Field: 'version' [18:01:30.314] - Field: 'result' [18:01:30.314] - Field: 'asynchronous' [18:01:30.314] - Field: 'calls' [18:01:30.314] - Field: 'globals' [18:01:30.315] - Field: 'stdout' [18:01:30.315] - Field: 'earlySignal' [18:01:30.315] - Field: 'lazy' [18:01:30.315] - Field: 'state' [18:01:30.315] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.316] - Launch lazy future ... [18:01:30.316] Packages needed by the future expression (n = 0): [18:01:30.316] Packages needed by future strategies (n = 0): [18:01:30.317] { [18:01:30.317] { [18:01:30.317] { [18:01:30.317] ...future.startTime <- base::Sys.time() [18:01:30.317] { [18:01:30.317] { [18:01:30.317] { [18:01:30.317] { [18:01:30.317] base::local({ [18:01:30.317] has_future <- base::requireNamespace("future", [18:01:30.317] quietly = TRUE) [18:01:30.317] if (has_future) { [18:01:30.317] ns <- base::getNamespace("future") [18:01:30.317] version <- ns[[".package"]][["version"]] [18:01:30.317] if (is.null(version)) [18:01:30.317] version <- utils::packageVersion("future") [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] version <- NULL [18:01:30.317] } [18:01:30.317] if (!has_future || version < "1.8.0") { [18:01:30.317] info <- base::c(r_version = base::gsub("R version ", [18:01:30.317] "", base::R.version$version.string), [18:01:30.317] platform = base::sprintf("%s (%s-bit)", [18:01:30.317] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.317] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.317] "release", "version")], collapse = " "), [18:01:30.317] hostname = base::Sys.info()[["nodename"]]) [18:01:30.317] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.317] info) [18:01:30.317] info <- base::paste(info, collapse = "; ") [18:01:30.317] if (!has_future) { [18:01:30.317] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.317] info) [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.317] info, version) [18:01:30.317] } [18:01:30.317] base::stop(msg) [18:01:30.317] } [18:01:30.317] }) [18:01:30.317] } [18:01:30.317] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.317] base::options(mc.cores = 1L) [18:01:30.317] } [18:01:30.317] options(future.plan = NULL) [18:01:30.317] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.317] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.317] } [18:01:30.317] ...future.workdir <- getwd() [18:01:30.317] } [18:01:30.317] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.317] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.317] } [18:01:30.317] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.317] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.317] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.317] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.317] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.317] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.317] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.317] base::names(...future.oldOptions)) [18:01:30.317] } [18:01:30.317] if (FALSE) { [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] if (TRUE) { [18:01:30.317] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.317] open = "w") [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.317] windows = "NUL", "/dev/null"), open = "w") [18:01:30.317] } [18:01:30.317] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.317] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.317] base::sink(type = "output", split = FALSE) [18:01:30.317] base::close(...future.stdout) [18:01:30.317] }, add = TRUE) [18:01:30.317] } [18:01:30.317] ...future.frame <- base::sys.nframe() [18:01:30.317] ...future.conditions <- base::list() [18:01:30.317] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.317] if (FALSE) { [18:01:30.317] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.317] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.317] } [18:01:30.317] ...future.result <- base::tryCatch({ [18:01:30.317] base::withCallingHandlers({ [18:01:30.317] ...future.value <- base::withVisible(base::local({ [18:01:30.317] ...future.makeSendCondition <- local({ [18:01:30.317] sendCondition <- NULL [18:01:30.317] function(frame = 1L) { [18:01:30.317] if (is.function(sendCondition)) [18:01:30.317] return(sendCondition) [18:01:30.317] ns <- getNamespace("parallel") [18:01:30.317] if (exists("sendData", mode = "function", [18:01:30.317] envir = ns)) { [18:01:30.317] parallel_sendData <- get("sendData", mode = "function", [18:01:30.317] envir = ns) [18:01:30.317] envir <- sys.frame(frame) [18:01:30.317] master <- NULL [18:01:30.317] while (!identical(envir, .GlobalEnv) && [18:01:30.317] !identical(envir, emptyenv())) { [18:01:30.317] if (exists("master", mode = "list", envir = envir, [18:01:30.317] inherits = FALSE)) { [18:01:30.317] master <- get("master", mode = "list", [18:01:30.317] envir = envir, inherits = FALSE) [18:01:30.317] if (inherits(master, c("SOCKnode", [18:01:30.317] "SOCK0node"))) { [18:01:30.317] sendCondition <<- function(cond) { [18:01:30.317] data <- list(type = "VALUE", value = cond, [18:01:30.317] success = TRUE) [18:01:30.317] parallel_sendData(master, data) [18:01:30.317] } [18:01:30.317] return(sendCondition) [18:01:30.317] } [18:01:30.317] } [18:01:30.317] frame <- frame + 1L [18:01:30.317] envir <- sys.frame(frame) [18:01:30.317] } [18:01:30.317] } [18:01:30.317] sendCondition <<- function(cond) NULL [18:01:30.317] } [18:01:30.317] }) [18:01:30.317] withCallingHandlers({ [18:01:30.317] { [18:01:30.317] 2 * a [18:01:30.317] } [18:01:30.317] }, immediateCondition = function(cond) { [18:01:30.317] sendCondition <- ...future.makeSendCondition() [18:01:30.317] sendCondition(cond) [18:01:30.317] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.317] { [18:01:30.317] inherits <- base::inherits [18:01:30.317] invokeRestart <- base::invokeRestart [18:01:30.317] is.null <- base::is.null [18:01:30.317] muffled <- FALSE [18:01:30.317] if (inherits(cond, "message")) { [18:01:30.317] muffled <- grepl(pattern, "muffleMessage") [18:01:30.317] if (muffled) [18:01:30.317] invokeRestart("muffleMessage") [18:01:30.317] } [18:01:30.317] else if (inherits(cond, "warning")) { [18:01:30.317] muffled <- grepl(pattern, "muffleWarning") [18:01:30.317] if (muffled) [18:01:30.317] invokeRestart("muffleWarning") [18:01:30.317] } [18:01:30.317] else if (inherits(cond, "condition")) { [18:01:30.317] if (!is.null(pattern)) { [18:01:30.317] computeRestarts <- base::computeRestarts [18:01:30.317] grepl <- base::grepl [18:01:30.317] restarts <- computeRestarts(cond) [18:01:30.317] for (restart in restarts) { [18:01:30.317] name <- restart$name [18:01:30.317] if (is.null(name)) [18:01:30.317] next [18:01:30.317] if (!grepl(pattern, name)) [18:01:30.317] next [18:01:30.317] invokeRestart(restart) [18:01:30.317] muffled <- TRUE [18:01:30.317] break [18:01:30.317] } [18:01:30.317] } [18:01:30.317] } [18:01:30.317] invisible(muffled) [18:01:30.317] } [18:01:30.317] muffleCondition(cond) [18:01:30.317] }) [18:01:30.317] })) [18:01:30.317] future::FutureResult(value = ...future.value$value, [18:01:30.317] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.317] ...future.rng), globalenv = if (FALSE) [18:01:30.317] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.317] ...future.globalenv.names)) [18:01:30.317] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.317] }, condition = base::local({ [18:01:30.317] c <- base::c [18:01:30.317] inherits <- base::inherits [18:01:30.317] invokeRestart <- base::invokeRestart [18:01:30.317] length <- base::length [18:01:30.317] list <- base::list [18:01:30.317] seq.int <- base::seq.int [18:01:30.317] signalCondition <- base::signalCondition [18:01:30.317] sys.calls <- base::sys.calls [18:01:30.317] `[[` <- base::`[[` [18:01:30.317] `+` <- base::`+` [18:01:30.317] `<<-` <- base::`<<-` [18:01:30.317] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.317] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.317] 3L)] [18:01:30.317] } [18:01:30.317] function(cond) { [18:01:30.317] is_error <- inherits(cond, "error") [18:01:30.317] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.317] NULL) [18:01:30.317] if (is_error) { [18:01:30.317] sessionInformation <- function() { [18:01:30.317] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.317] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.317] search = base::search(), system = base::Sys.info()) [18:01:30.317] } [18:01:30.317] ...future.conditions[[length(...future.conditions) + [18:01:30.317] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.317] cond$call), session = sessionInformation(), [18:01:30.317] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.317] signalCondition(cond) [18:01:30.317] } [18:01:30.317] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.317] "immediateCondition"))) { [18:01:30.317] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.317] ...future.conditions[[length(...future.conditions) + [18:01:30.317] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.317] if (TRUE && !signal) { [18:01:30.317] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.317] { [18:01:30.317] inherits <- base::inherits [18:01:30.317] invokeRestart <- base::invokeRestart [18:01:30.317] is.null <- base::is.null [18:01:30.317] muffled <- FALSE [18:01:30.317] if (inherits(cond, "message")) { [18:01:30.317] muffled <- grepl(pattern, "muffleMessage") [18:01:30.317] if (muffled) [18:01:30.317] invokeRestart("muffleMessage") [18:01:30.317] } [18:01:30.317] else if (inherits(cond, "warning")) { [18:01:30.317] muffled <- grepl(pattern, "muffleWarning") [18:01:30.317] if (muffled) [18:01:30.317] invokeRestart("muffleWarning") [18:01:30.317] } [18:01:30.317] else if (inherits(cond, "condition")) { [18:01:30.317] if (!is.null(pattern)) { [18:01:30.317] computeRestarts <- base::computeRestarts [18:01:30.317] grepl <- base::grepl [18:01:30.317] restarts <- computeRestarts(cond) [18:01:30.317] for (restart in restarts) { [18:01:30.317] name <- restart$name [18:01:30.317] if (is.null(name)) [18:01:30.317] next [18:01:30.317] if (!grepl(pattern, name)) [18:01:30.317] next [18:01:30.317] invokeRestart(restart) [18:01:30.317] muffled <- TRUE [18:01:30.317] break [18:01:30.317] } [18:01:30.317] } [18:01:30.317] } [18:01:30.317] invisible(muffled) [18:01:30.317] } [18:01:30.317] muffleCondition(cond, pattern = "^muffle") [18:01:30.317] } [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] if (TRUE) { [18:01:30.317] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.317] { [18:01:30.317] inherits <- base::inherits [18:01:30.317] invokeRestart <- base::invokeRestart [18:01:30.317] is.null <- base::is.null [18:01:30.317] muffled <- FALSE [18:01:30.317] if (inherits(cond, "message")) { [18:01:30.317] muffled <- grepl(pattern, "muffleMessage") [18:01:30.317] if (muffled) [18:01:30.317] invokeRestart("muffleMessage") [18:01:30.317] } [18:01:30.317] else if (inherits(cond, "warning")) { [18:01:30.317] muffled <- grepl(pattern, "muffleWarning") [18:01:30.317] if (muffled) [18:01:30.317] invokeRestart("muffleWarning") [18:01:30.317] } [18:01:30.317] else if (inherits(cond, "condition")) { [18:01:30.317] if (!is.null(pattern)) { [18:01:30.317] computeRestarts <- base::computeRestarts [18:01:30.317] grepl <- base::grepl [18:01:30.317] restarts <- computeRestarts(cond) [18:01:30.317] for (restart in restarts) { [18:01:30.317] name <- restart$name [18:01:30.317] if (is.null(name)) [18:01:30.317] next [18:01:30.317] if (!grepl(pattern, name)) [18:01:30.317] next [18:01:30.317] invokeRestart(restart) [18:01:30.317] muffled <- TRUE [18:01:30.317] break [18:01:30.317] } [18:01:30.317] } [18:01:30.317] } [18:01:30.317] invisible(muffled) [18:01:30.317] } [18:01:30.317] muffleCondition(cond, pattern = "^muffle") [18:01:30.317] } [18:01:30.317] } [18:01:30.317] } [18:01:30.317] })) [18:01:30.317] }, error = function(ex) { [18:01:30.317] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.317] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.317] ...future.rng), started = ...future.startTime, [18:01:30.317] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.317] version = "1.8"), class = "FutureResult") [18:01:30.317] }, finally = { [18:01:30.317] if (!identical(...future.workdir, getwd())) [18:01:30.317] setwd(...future.workdir) [18:01:30.317] { [18:01:30.317] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.317] ...future.oldOptions$nwarnings <- NULL [18:01:30.317] } [18:01:30.317] base::options(...future.oldOptions) [18:01:30.317] if (.Platform$OS.type == "windows") { [18:01:30.317] old_names <- names(...future.oldEnvVars) [18:01:30.317] envs <- base::Sys.getenv() [18:01:30.317] names <- names(envs) [18:01:30.317] common <- intersect(names, old_names) [18:01:30.317] added <- setdiff(names, old_names) [18:01:30.317] removed <- setdiff(old_names, names) [18:01:30.317] changed <- common[...future.oldEnvVars[common] != [18:01:30.317] envs[common]] [18:01:30.317] NAMES <- toupper(changed) [18:01:30.317] args <- list() [18:01:30.317] for (kk in seq_along(NAMES)) { [18:01:30.317] name <- changed[[kk]] [18:01:30.317] NAME <- NAMES[[kk]] [18:01:30.317] if (name != NAME && is.element(NAME, old_names)) [18:01:30.317] next [18:01:30.317] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.317] } [18:01:30.317] NAMES <- toupper(added) [18:01:30.317] for (kk in seq_along(NAMES)) { [18:01:30.317] name <- added[[kk]] [18:01:30.317] NAME <- NAMES[[kk]] [18:01:30.317] if (name != NAME && is.element(NAME, old_names)) [18:01:30.317] next [18:01:30.317] args[[name]] <- "" [18:01:30.317] } [18:01:30.317] NAMES <- toupper(removed) [18:01:30.317] for (kk in seq_along(NAMES)) { [18:01:30.317] name <- removed[[kk]] [18:01:30.317] NAME <- NAMES[[kk]] [18:01:30.317] if (name != NAME && is.element(NAME, old_names)) [18:01:30.317] next [18:01:30.317] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.317] } [18:01:30.317] if (length(args) > 0) [18:01:30.317] base::do.call(base::Sys.setenv, args = args) [18:01:30.317] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.317] } [18:01:30.317] { [18:01:30.317] if (base::length(...future.futureOptionsAdded) > [18:01:30.317] 0L) { [18:01:30.317] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.317] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.317] base::options(opts) [18:01:30.317] } [18:01:30.317] { [18:01:30.317] { [18:01:30.317] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.317] NULL [18:01:30.317] } [18:01:30.317] options(future.plan = NULL) [18:01:30.317] if (is.na(NA_character_)) [18:01:30.317] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.317] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.317] future::plan(list(function (..., workers = availableCores(), [18:01:30.317] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.317] envir = parent.frame()) [18:01:30.317] { [18:01:30.317] if (is.function(workers)) [18:01:30.317] workers <- workers() [18:01:30.317] workers <- structure(as.integer(workers), [18:01:30.317] class = class(workers)) [18:01:30.317] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.317] workers >= 1) [18:01:30.317] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.317] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.317] } [18:01:30.317] future <- MultisessionFuture(..., workers = workers, [18:01:30.317] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.317] envir = envir) [18:01:30.317] if (!future$lazy) [18:01:30.317] future <- run(future) [18:01:30.317] invisible(future) [18:01:30.317] }), .cleanup = FALSE, .init = FALSE) [18:01:30.317] } [18:01:30.317] } [18:01:30.317] } [18:01:30.317] }) [18:01:30.317] if (TRUE) { [18:01:30.317] base::sink(type = "output", split = FALSE) [18:01:30.317] if (TRUE) { [18:01:30.317] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.317] } [18:01:30.317] else { [18:01:30.317] ...future.result["stdout"] <- base::list(NULL) [18:01:30.317] } [18:01:30.317] base::close(...future.stdout) [18:01:30.317] ...future.stdout <- NULL [18:01:30.317] } [18:01:30.317] ...future.result$conditions <- ...future.conditions [18:01:30.317] ...future.result$finished <- base::Sys.time() [18:01:30.317] ...future.result [18:01:30.317] } [18:01:30.322] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:30.323] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:30.323] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:30.323] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:30.324] MultisessionFuture started [18:01:30.324] - Launch lazy future ... done [18:01:30.325] run() for 'MultisessionFuture' ... done [18:01:30.325] result() for ClusterFuture ... [18:01:30.325] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.325] - Validating connection of MultisessionFuture [18:01:30.340] - received message: FutureResult [18:01:30.340] - Received FutureResult [18:01:30.341] - Erased future from FutureRegistry [18:01:30.341] result() for ClusterFuture ... [18:01:30.341] - result already collected: FutureResult [18:01:30.341] result() for ClusterFuture ... done [18:01:30.341] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.341] result() for ClusterFuture ... done [18:01:30.342] result() for ClusterFuture ... [18:01:30.342] - result already collected: FutureResult [18:01:30.342] result() for ClusterFuture ... done [18:01:30.342] getGlobalsAndPackages() ... [18:01:30.342] Searching for globals... [18:01:30.343] - globals found: [3] '{', '*', 'a' [18:01:30.344] Searching for globals ... DONE [18:01:30.344] Resolving globals: FALSE [18:01:30.344] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:30.345] The total size of the 1 globals exported for future expression ('{; 2 * 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.345] - globals: [1] 'a' [18:01:30.345] [18:01:30.345] getGlobalsAndPackages() ... DONE [18:01:30.346] run() for 'Future' ... [18:01:30.346] - state: 'created' [18:01:30.346] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.360] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.360] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.360] - Field: 'node' [18:01:30.361] - Field: 'label' [18:01:30.361] - Field: 'local' [18:01:30.361] - Field: 'owner' [18:01:30.361] - Field: 'envir' [18:01:30.361] - Field: 'workers' [18:01:30.361] - Field: 'packages' [18:01:30.362] - Field: 'gc' [18:01:30.362] - Field: 'conditions' [18:01:30.362] - Field: 'persistent' [18:01:30.362] - Field: 'expr' [18:01:30.362] - Field: 'uuid' [18:01:30.363] - Field: 'seed' [18:01:30.363] - Field: 'version' [18:01:30.363] - Field: 'result' [18:01:30.363] - Field: 'asynchronous' [18:01:30.363] - Field: 'calls' [18:01:30.363] - Field: 'globals' [18:01:30.364] - Field: 'stdout' [18:01:30.364] - Field: 'earlySignal' [18:01:30.364] - Field: 'lazy' [18:01:30.364] - Field: 'state' [18:01:30.364] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.364] - Launch lazy future ... [18:01:30.365] Packages needed by the future expression (n = 0): [18:01:30.365] Packages needed by future strategies (n = 0): [18:01:30.366] { [18:01:30.366] { [18:01:30.366] { [18:01:30.366] ...future.startTime <- base::Sys.time() [18:01:30.366] { [18:01:30.366] { [18:01:30.366] { [18:01:30.366] { [18:01:30.366] base::local({ [18:01:30.366] has_future <- base::requireNamespace("future", [18:01:30.366] quietly = TRUE) [18:01:30.366] if (has_future) { [18:01:30.366] ns <- base::getNamespace("future") [18:01:30.366] version <- ns[[".package"]][["version"]] [18:01:30.366] if (is.null(version)) [18:01:30.366] version <- utils::packageVersion("future") [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] version <- NULL [18:01:30.366] } [18:01:30.366] if (!has_future || version < "1.8.0") { [18:01:30.366] info <- base::c(r_version = base::gsub("R version ", [18:01:30.366] "", base::R.version$version.string), [18:01:30.366] platform = base::sprintf("%s (%s-bit)", [18:01:30.366] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.366] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.366] "release", "version")], collapse = " "), [18:01:30.366] hostname = base::Sys.info()[["nodename"]]) [18:01:30.366] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.366] info) [18:01:30.366] info <- base::paste(info, collapse = "; ") [18:01:30.366] if (!has_future) { [18:01:30.366] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.366] info) [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.366] info, version) [18:01:30.366] } [18:01:30.366] base::stop(msg) [18:01:30.366] } [18:01:30.366] }) [18:01:30.366] } [18:01:30.366] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.366] base::options(mc.cores = 1L) [18:01:30.366] } [18:01:30.366] options(future.plan = NULL) [18:01:30.366] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.366] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.366] } [18:01:30.366] ...future.workdir <- getwd() [18:01:30.366] } [18:01:30.366] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.366] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.366] } [18:01:30.366] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.366] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.366] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.366] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.366] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.366] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.366] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.366] base::names(...future.oldOptions)) [18:01:30.366] } [18:01:30.366] if (FALSE) { [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] if (TRUE) { [18:01:30.366] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.366] open = "w") [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.366] windows = "NUL", "/dev/null"), open = "w") [18:01:30.366] } [18:01:30.366] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.366] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.366] base::sink(type = "output", split = FALSE) [18:01:30.366] base::close(...future.stdout) [18:01:30.366] }, add = TRUE) [18:01:30.366] } [18:01:30.366] ...future.frame <- base::sys.nframe() [18:01:30.366] ...future.conditions <- base::list() [18:01:30.366] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.366] if (FALSE) { [18:01:30.366] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.366] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.366] } [18:01:30.366] ...future.result <- base::tryCatch({ [18:01:30.366] base::withCallingHandlers({ [18:01:30.366] ...future.value <- base::withVisible(base::local({ [18:01:30.366] ...future.makeSendCondition <- local({ [18:01:30.366] sendCondition <- NULL [18:01:30.366] function(frame = 1L) { [18:01:30.366] if (is.function(sendCondition)) [18:01:30.366] return(sendCondition) [18:01:30.366] ns <- getNamespace("parallel") [18:01:30.366] if (exists("sendData", mode = "function", [18:01:30.366] envir = ns)) { [18:01:30.366] parallel_sendData <- get("sendData", mode = "function", [18:01:30.366] envir = ns) [18:01:30.366] envir <- sys.frame(frame) [18:01:30.366] master <- NULL [18:01:30.366] while (!identical(envir, .GlobalEnv) && [18:01:30.366] !identical(envir, emptyenv())) { [18:01:30.366] if (exists("master", mode = "list", envir = envir, [18:01:30.366] inherits = FALSE)) { [18:01:30.366] master <- get("master", mode = "list", [18:01:30.366] envir = envir, inherits = FALSE) [18:01:30.366] if (inherits(master, c("SOCKnode", [18:01:30.366] "SOCK0node"))) { [18:01:30.366] sendCondition <<- function(cond) { [18:01:30.366] data <- list(type = "VALUE", value = cond, [18:01:30.366] success = TRUE) [18:01:30.366] parallel_sendData(master, data) [18:01:30.366] } [18:01:30.366] return(sendCondition) [18:01:30.366] } [18:01:30.366] } [18:01:30.366] frame <- frame + 1L [18:01:30.366] envir <- sys.frame(frame) [18:01:30.366] } [18:01:30.366] } [18:01:30.366] sendCondition <<- function(cond) NULL [18:01:30.366] } [18:01:30.366] }) [18:01:30.366] withCallingHandlers({ [18:01:30.366] { [18:01:30.366] 2 * a [18:01:30.366] } [18:01:30.366] }, immediateCondition = function(cond) { [18:01:30.366] sendCondition <- ...future.makeSendCondition() [18:01:30.366] sendCondition(cond) [18:01:30.366] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.366] { [18:01:30.366] inherits <- base::inherits [18:01:30.366] invokeRestart <- base::invokeRestart [18:01:30.366] is.null <- base::is.null [18:01:30.366] muffled <- FALSE [18:01:30.366] if (inherits(cond, "message")) { [18:01:30.366] muffled <- grepl(pattern, "muffleMessage") [18:01:30.366] if (muffled) [18:01:30.366] invokeRestart("muffleMessage") [18:01:30.366] } [18:01:30.366] else if (inherits(cond, "warning")) { [18:01:30.366] muffled <- grepl(pattern, "muffleWarning") [18:01:30.366] if (muffled) [18:01:30.366] invokeRestart("muffleWarning") [18:01:30.366] } [18:01:30.366] else if (inherits(cond, "condition")) { [18:01:30.366] if (!is.null(pattern)) { [18:01:30.366] computeRestarts <- base::computeRestarts [18:01:30.366] grepl <- base::grepl [18:01:30.366] restarts <- computeRestarts(cond) [18:01:30.366] for (restart in restarts) { [18:01:30.366] name <- restart$name [18:01:30.366] if (is.null(name)) [18:01:30.366] next [18:01:30.366] if (!grepl(pattern, name)) [18:01:30.366] next [18:01:30.366] invokeRestart(restart) [18:01:30.366] muffled <- TRUE [18:01:30.366] break [18:01:30.366] } [18:01:30.366] } [18:01:30.366] } [18:01:30.366] invisible(muffled) [18:01:30.366] } [18:01:30.366] muffleCondition(cond) [18:01:30.366] }) [18:01:30.366] })) [18:01:30.366] future::FutureResult(value = ...future.value$value, [18:01:30.366] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.366] ...future.rng), globalenv = if (FALSE) [18:01:30.366] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.366] ...future.globalenv.names)) [18:01:30.366] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.366] }, condition = base::local({ [18:01:30.366] c <- base::c [18:01:30.366] inherits <- base::inherits [18:01:30.366] invokeRestart <- base::invokeRestart [18:01:30.366] length <- base::length [18:01:30.366] list <- base::list [18:01:30.366] seq.int <- base::seq.int [18:01:30.366] signalCondition <- base::signalCondition [18:01:30.366] sys.calls <- base::sys.calls [18:01:30.366] `[[` <- base::`[[` [18:01:30.366] `+` <- base::`+` [18:01:30.366] `<<-` <- base::`<<-` [18:01:30.366] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.366] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.366] 3L)] [18:01:30.366] } [18:01:30.366] function(cond) { [18:01:30.366] is_error <- inherits(cond, "error") [18:01:30.366] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.366] NULL) [18:01:30.366] if (is_error) { [18:01:30.366] sessionInformation <- function() { [18:01:30.366] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.366] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.366] search = base::search(), system = base::Sys.info()) [18:01:30.366] } [18:01:30.366] ...future.conditions[[length(...future.conditions) + [18:01:30.366] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.366] cond$call), session = sessionInformation(), [18:01:30.366] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.366] signalCondition(cond) [18:01:30.366] } [18:01:30.366] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.366] "immediateCondition"))) { [18:01:30.366] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.366] ...future.conditions[[length(...future.conditions) + [18:01:30.366] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.366] if (TRUE && !signal) { [18:01:30.366] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.366] { [18:01:30.366] inherits <- base::inherits [18:01:30.366] invokeRestart <- base::invokeRestart [18:01:30.366] is.null <- base::is.null [18:01:30.366] muffled <- FALSE [18:01:30.366] if (inherits(cond, "message")) { [18:01:30.366] muffled <- grepl(pattern, "muffleMessage") [18:01:30.366] if (muffled) [18:01:30.366] invokeRestart("muffleMessage") [18:01:30.366] } [18:01:30.366] else if (inherits(cond, "warning")) { [18:01:30.366] muffled <- grepl(pattern, "muffleWarning") [18:01:30.366] if (muffled) [18:01:30.366] invokeRestart("muffleWarning") [18:01:30.366] } [18:01:30.366] else if (inherits(cond, "condition")) { [18:01:30.366] if (!is.null(pattern)) { [18:01:30.366] computeRestarts <- base::computeRestarts [18:01:30.366] grepl <- base::grepl [18:01:30.366] restarts <- computeRestarts(cond) [18:01:30.366] for (restart in restarts) { [18:01:30.366] name <- restart$name [18:01:30.366] if (is.null(name)) [18:01:30.366] next [18:01:30.366] if (!grepl(pattern, name)) [18:01:30.366] next [18:01:30.366] invokeRestart(restart) [18:01:30.366] muffled <- TRUE [18:01:30.366] break [18:01:30.366] } [18:01:30.366] } [18:01:30.366] } [18:01:30.366] invisible(muffled) [18:01:30.366] } [18:01:30.366] muffleCondition(cond, pattern = "^muffle") [18:01:30.366] } [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] if (TRUE) { [18:01:30.366] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.366] { [18:01:30.366] inherits <- base::inherits [18:01:30.366] invokeRestart <- base::invokeRestart [18:01:30.366] is.null <- base::is.null [18:01:30.366] muffled <- FALSE [18:01:30.366] if (inherits(cond, "message")) { [18:01:30.366] muffled <- grepl(pattern, "muffleMessage") [18:01:30.366] if (muffled) [18:01:30.366] invokeRestart("muffleMessage") [18:01:30.366] } [18:01:30.366] else if (inherits(cond, "warning")) { [18:01:30.366] muffled <- grepl(pattern, "muffleWarning") [18:01:30.366] if (muffled) [18:01:30.366] invokeRestart("muffleWarning") [18:01:30.366] } [18:01:30.366] else if (inherits(cond, "condition")) { [18:01:30.366] if (!is.null(pattern)) { [18:01:30.366] computeRestarts <- base::computeRestarts [18:01:30.366] grepl <- base::grepl [18:01:30.366] restarts <- computeRestarts(cond) [18:01:30.366] for (restart in restarts) { [18:01:30.366] name <- restart$name [18:01:30.366] if (is.null(name)) [18:01:30.366] next [18:01:30.366] if (!grepl(pattern, name)) [18:01:30.366] next [18:01:30.366] invokeRestart(restart) [18:01:30.366] muffled <- TRUE [18:01:30.366] break [18:01:30.366] } [18:01:30.366] } [18:01:30.366] } [18:01:30.366] invisible(muffled) [18:01:30.366] } [18:01:30.366] muffleCondition(cond, pattern = "^muffle") [18:01:30.366] } [18:01:30.366] } [18:01:30.366] } [18:01:30.366] })) [18:01:30.366] }, error = function(ex) { [18:01:30.366] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.366] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.366] ...future.rng), started = ...future.startTime, [18:01:30.366] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.366] version = "1.8"), class = "FutureResult") [18:01:30.366] }, finally = { [18:01:30.366] if (!identical(...future.workdir, getwd())) [18:01:30.366] setwd(...future.workdir) [18:01:30.366] { [18:01:30.366] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.366] ...future.oldOptions$nwarnings <- NULL [18:01:30.366] } [18:01:30.366] base::options(...future.oldOptions) [18:01:30.366] if (.Platform$OS.type == "windows") { [18:01:30.366] old_names <- names(...future.oldEnvVars) [18:01:30.366] envs <- base::Sys.getenv() [18:01:30.366] names <- names(envs) [18:01:30.366] common <- intersect(names, old_names) [18:01:30.366] added <- setdiff(names, old_names) [18:01:30.366] removed <- setdiff(old_names, names) [18:01:30.366] changed <- common[...future.oldEnvVars[common] != [18:01:30.366] envs[common]] [18:01:30.366] NAMES <- toupper(changed) [18:01:30.366] args <- list() [18:01:30.366] for (kk in seq_along(NAMES)) { [18:01:30.366] name <- changed[[kk]] [18:01:30.366] NAME <- NAMES[[kk]] [18:01:30.366] if (name != NAME && is.element(NAME, old_names)) [18:01:30.366] next [18:01:30.366] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.366] } [18:01:30.366] NAMES <- toupper(added) [18:01:30.366] for (kk in seq_along(NAMES)) { [18:01:30.366] name <- added[[kk]] [18:01:30.366] NAME <- NAMES[[kk]] [18:01:30.366] if (name != NAME && is.element(NAME, old_names)) [18:01:30.366] next [18:01:30.366] args[[name]] <- "" [18:01:30.366] } [18:01:30.366] NAMES <- toupper(removed) [18:01:30.366] for (kk in seq_along(NAMES)) { [18:01:30.366] name <- removed[[kk]] [18:01:30.366] NAME <- NAMES[[kk]] [18:01:30.366] if (name != NAME && is.element(NAME, old_names)) [18:01:30.366] next [18:01:30.366] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.366] } [18:01:30.366] if (length(args) > 0) [18:01:30.366] base::do.call(base::Sys.setenv, args = args) [18:01:30.366] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.366] } [18:01:30.366] { [18:01:30.366] if (base::length(...future.futureOptionsAdded) > [18:01:30.366] 0L) { [18:01:30.366] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.366] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.366] base::options(opts) [18:01:30.366] } [18:01:30.366] { [18:01:30.366] { [18:01:30.366] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.366] NULL [18:01:30.366] } [18:01:30.366] options(future.plan = NULL) [18:01:30.366] if (is.na(NA_character_)) [18:01:30.366] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.366] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.366] future::plan(list(function (..., workers = availableCores(), [18:01:30.366] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.366] envir = parent.frame()) [18:01:30.366] { [18:01:30.366] if (is.function(workers)) [18:01:30.366] workers <- workers() [18:01:30.366] workers <- structure(as.integer(workers), [18:01:30.366] class = class(workers)) [18:01:30.366] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.366] workers >= 1) [18:01:30.366] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.366] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.366] } [18:01:30.366] future <- MultisessionFuture(..., workers = workers, [18:01:30.366] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.366] envir = envir) [18:01:30.366] if (!future$lazy) [18:01:30.366] future <- run(future) [18:01:30.366] invisible(future) [18:01:30.366] }), .cleanup = FALSE, .init = FALSE) [18:01:30.366] } [18:01:30.366] } [18:01:30.366] } [18:01:30.366] }) [18:01:30.366] if (TRUE) { [18:01:30.366] base::sink(type = "output", split = FALSE) [18:01:30.366] if (TRUE) { [18:01:30.366] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.366] } [18:01:30.366] else { [18:01:30.366] ...future.result["stdout"] <- base::list(NULL) [18:01:30.366] } [18:01:30.366] base::close(...future.stdout) [18:01:30.366] ...future.stdout <- NULL [18:01:30.366] } [18:01:30.366] ...future.result$conditions <- ...future.conditions [18:01:30.366] ...future.result$finished <- base::Sys.time() [18:01:30.366] ...future.result [18:01:30.366] } [18:01:30.371] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:30.371] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:30.372] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:30.372] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:30.372] MultisessionFuture started [18:01:30.373] - Launch lazy future ... done [18:01:30.373] run() for 'MultisessionFuture' ... done [18:01:30.373] result() for ClusterFuture ... [18:01:30.373] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.373] - Validating connection of MultisessionFuture [18:01:30.389] - received message: FutureResult [18:01:30.390] - Received FutureResult [18:01:30.390] - Erased future from FutureRegistry [18:01:30.390] result() for ClusterFuture ... [18:01:30.390] - result already collected: FutureResult [18:01:30.390] result() for ClusterFuture ... done [18:01:30.390] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.390] result() for ClusterFuture ... done [18:01:30.391] result() for ClusterFuture ... [18:01:30.391] - result already collected: FutureResult [18:01:30.391] result() for ClusterFuture ... done [18:01:30.391] getGlobalsAndPackages() ... [18:01:30.391] Searching for globals... [18:01:30.392] - globals found: [3] '{', '*', 'a' [18:01:30.393] Searching for globals ... DONE [18:01:30.393] Resolving globals: FALSE [18:01:30.393] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:30.394] The total size of the 1 globals exported for future expression ('{; 2 * 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.394] - globals: [1] 'a' [18:01:30.394] [18:01:30.394] getGlobalsAndPackages() ... DONE [18:01:30.395] run() for 'Future' ... [18:01:30.395] - state: 'created' [18:01:30.395] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.409] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.409] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.409] - Field: 'node' [18:01:30.409] - Field: 'label' [18:01:30.409] - Field: 'local' [18:01:30.410] - Field: 'owner' [18:01:30.410] - Field: 'envir' [18:01:30.410] - Field: 'workers' [18:01:30.410] - Field: 'packages' [18:01:30.410] - Field: 'gc' [18:01:30.411] - Field: 'conditions' [18:01:30.411] - Field: 'persistent' [18:01:30.411] - Field: 'expr' [18:01:30.411] - Field: 'uuid' [18:01:30.411] - Field: 'seed' [18:01:30.411] - Field: 'version' [18:01:30.412] - Field: 'result' [18:01:30.412] - Field: 'asynchronous' [18:01:30.412] - Field: 'calls' [18:01:30.412] - Field: 'globals' [18:01:30.412] - Field: 'stdout' [18:01:30.412] - Field: 'earlySignal' [18:01:30.413] - Field: 'lazy' [18:01:30.413] - Field: 'state' [18:01:30.413] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.413] - Launch lazy future ... [18:01:30.414] Packages needed by the future expression (n = 0): [18:01:30.414] Packages needed by future strategies (n = 0): [18:01:30.414] { [18:01:30.414] { [18:01:30.414] { [18:01:30.414] ...future.startTime <- base::Sys.time() [18:01:30.414] { [18:01:30.414] { [18:01:30.414] { [18:01:30.414] { [18:01:30.414] base::local({ [18:01:30.414] has_future <- base::requireNamespace("future", [18:01:30.414] quietly = TRUE) [18:01:30.414] if (has_future) { [18:01:30.414] ns <- base::getNamespace("future") [18:01:30.414] version <- ns[[".package"]][["version"]] [18:01:30.414] if (is.null(version)) [18:01:30.414] version <- utils::packageVersion("future") [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] version <- NULL [18:01:30.414] } [18:01:30.414] if (!has_future || version < "1.8.0") { [18:01:30.414] info <- base::c(r_version = base::gsub("R version ", [18:01:30.414] "", base::R.version$version.string), [18:01:30.414] platform = base::sprintf("%s (%s-bit)", [18:01:30.414] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.414] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.414] "release", "version")], collapse = " "), [18:01:30.414] hostname = base::Sys.info()[["nodename"]]) [18:01:30.414] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.414] info) [18:01:30.414] info <- base::paste(info, collapse = "; ") [18:01:30.414] if (!has_future) { [18:01:30.414] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.414] info) [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.414] info, version) [18:01:30.414] } [18:01:30.414] base::stop(msg) [18:01:30.414] } [18:01:30.414] }) [18:01:30.414] } [18:01:30.414] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.414] base::options(mc.cores = 1L) [18:01:30.414] } [18:01:30.414] options(future.plan = NULL) [18:01:30.414] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.414] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.414] } [18:01:30.414] ...future.workdir <- getwd() [18:01:30.414] } [18:01:30.414] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.414] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.414] } [18:01:30.414] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.414] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.414] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.414] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.414] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.414] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.414] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.414] base::names(...future.oldOptions)) [18:01:30.414] } [18:01:30.414] if (FALSE) { [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] if (TRUE) { [18:01:30.414] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.414] open = "w") [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.414] windows = "NUL", "/dev/null"), open = "w") [18:01:30.414] } [18:01:30.414] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.414] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.414] base::sink(type = "output", split = FALSE) [18:01:30.414] base::close(...future.stdout) [18:01:30.414] }, add = TRUE) [18:01:30.414] } [18:01:30.414] ...future.frame <- base::sys.nframe() [18:01:30.414] ...future.conditions <- base::list() [18:01:30.414] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.414] if (FALSE) { [18:01:30.414] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.414] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.414] } [18:01:30.414] ...future.result <- base::tryCatch({ [18:01:30.414] base::withCallingHandlers({ [18:01:30.414] ...future.value <- base::withVisible(base::local({ [18:01:30.414] ...future.makeSendCondition <- local({ [18:01:30.414] sendCondition <- NULL [18:01:30.414] function(frame = 1L) { [18:01:30.414] if (is.function(sendCondition)) [18:01:30.414] return(sendCondition) [18:01:30.414] ns <- getNamespace("parallel") [18:01:30.414] if (exists("sendData", mode = "function", [18:01:30.414] envir = ns)) { [18:01:30.414] parallel_sendData <- get("sendData", mode = "function", [18:01:30.414] envir = ns) [18:01:30.414] envir <- sys.frame(frame) [18:01:30.414] master <- NULL [18:01:30.414] while (!identical(envir, .GlobalEnv) && [18:01:30.414] !identical(envir, emptyenv())) { [18:01:30.414] if (exists("master", mode = "list", envir = envir, [18:01:30.414] inherits = FALSE)) { [18:01:30.414] master <- get("master", mode = "list", [18:01:30.414] envir = envir, inherits = FALSE) [18:01:30.414] if (inherits(master, c("SOCKnode", [18:01:30.414] "SOCK0node"))) { [18:01:30.414] sendCondition <<- function(cond) { [18:01:30.414] data <- list(type = "VALUE", value = cond, [18:01:30.414] success = TRUE) [18:01:30.414] parallel_sendData(master, data) [18:01:30.414] } [18:01:30.414] return(sendCondition) [18:01:30.414] } [18:01:30.414] } [18:01:30.414] frame <- frame + 1L [18:01:30.414] envir <- sys.frame(frame) [18:01:30.414] } [18:01:30.414] } [18:01:30.414] sendCondition <<- function(cond) NULL [18:01:30.414] } [18:01:30.414] }) [18:01:30.414] withCallingHandlers({ [18:01:30.414] { [18:01:30.414] 2 * a [18:01:30.414] } [18:01:30.414] }, immediateCondition = function(cond) { [18:01:30.414] sendCondition <- ...future.makeSendCondition() [18:01:30.414] sendCondition(cond) [18:01:30.414] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.414] { [18:01:30.414] inherits <- base::inherits [18:01:30.414] invokeRestart <- base::invokeRestart [18:01:30.414] is.null <- base::is.null [18:01:30.414] muffled <- FALSE [18:01:30.414] if (inherits(cond, "message")) { [18:01:30.414] muffled <- grepl(pattern, "muffleMessage") [18:01:30.414] if (muffled) [18:01:30.414] invokeRestart("muffleMessage") [18:01:30.414] } [18:01:30.414] else if (inherits(cond, "warning")) { [18:01:30.414] muffled <- grepl(pattern, "muffleWarning") [18:01:30.414] if (muffled) [18:01:30.414] invokeRestart("muffleWarning") [18:01:30.414] } [18:01:30.414] else if (inherits(cond, "condition")) { [18:01:30.414] if (!is.null(pattern)) { [18:01:30.414] computeRestarts <- base::computeRestarts [18:01:30.414] grepl <- base::grepl [18:01:30.414] restarts <- computeRestarts(cond) [18:01:30.414] for (restart in restarts) { [18:01:30.414] name <- restart$name [18:01:30.414] if (is.null(name)) [18:01:30.414] next [18:01:30.414] if (!grepl(pattern, name)) [18:01:30.414] next [18:01:30.414] invokeRestart(restart) [18:01:30.414] muffled <- TRUE [18:01:30.414] break [18:01:30.414] } [18:01:30.414] } [18:01:30.414] } [18:01:30.414] invisible(muffled) [18:01:30.414] } [18:01:30.414] muffleCondition(cond) [18:01:30.414] }) [18:01:30.414] })) [18:01:30.414] future::FutureResult(value = ...future.value$value, [18:01:30.414] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.414] ...future.rng), globalenv = if (FALSE) [18:01:30.414] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.414] ...future.globalenv.names)) [18:01:30.414] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.414] }, condition = base::local({ [18:01:30.414] c <- base::c [18:01:30.414] inherits <- base::inherits [18:01:30.414] invokeRestart <- base::invokeRestart [18:01:30.414] length <- base::length [18:01:30.414] list <- base::list [18:01:30.414] seq.int <- base::seq.int [18:01:30.414] signalCondition <- base::signalCondition [18:01:30.414] sys.calls <- base::sys.calls [18:01:30.414] `[[` <- base::`[[` [18:01:30.414] `+` <- base::`+` [18:01:30.414] `<<-` <- base::`<<-` [18:01:30.414] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.414] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.414] 3L)] [18:01:30.414] } [18:01:30.414] function(cond) { [18:01:30.414] is_error <- inherits(cond, "error") [18:01:30.414] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.414] NULL) [18:01:30.414] if (is_error) { [18:01:30.414] sessionInformation <- function() { [18:01:30.414] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.414] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.414] search = base::search(), system = base::Sys.info()) [18:01:30.414] } [18:01:30.414] ...future.conditions[[length(...future.conditions) + [18:01:30.414] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.414] cond$call), session = sessionInformation(), [18:01:30.414] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.414] signalCondition(cond) [18:01:30.414] } [18:01:30.414] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.414] "immediateCondition"))) { [18:01:30.414] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.414] ...future.conditions[[length(...future.conditions) + [18:01:30.414] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.414] if (TRUE && !signal) { [18:01:30.414] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.414] { [18:01:30.414] inherits <- base::inherits [18:01:30.414] invokeRestart <- base::invokeRestart [18:01:30.414] is.null <- base::is.null [18:01:30.414] muffled <- FALSE [18:01:30.414] if (inherits(cond, "message")) { [18:01:30.414] muffled <- grepl(pattern, "muffleMessage") [18:01:30.414] if (muffled) [18:01:30.414] invokeRestart("muffleMessage") [18:01:30.414] } [18:01:30.414] else if (inherits(cond, "warning")) { [18:01:30.414] muffled <- grepl(pattern, "muffleWarning") [18:01:30.414] if (muffled) [18:01:30.414] invokeRestart("muffleWarning") [18:01:30.414] } [18:01:30.414] else if (inherits(cond, "condition")) { [18:01:30.414] if (!is.null(pattern)) { [18:01:30.414] computeRestarts <- base::computeRestarts [18:01:30.414] grepl <- base::grepl [18:01:30.414] restarts <- computeRestarts(cond) [18:01:30.414] for (restart in restarts) { [18:01:30.414] name <- restart$name [18:01:30.414] if (is.null(name)) [18:01:30.414] next [18:01:30.414] if (!grepl(pattern, name)) [18:01:30.414] next [18:01:30.414] invokeRestart(restart) [18:01:30.414] muffled <- TRUE [18:01:30.414] break [18:01:30.414] } [18:01:30.414] } [18:01:30.414] } [18:01:30.414] invisible(muffled) [18:01:30.414] } [18:01:30.414] muffleCondition(cond, pattern = "^muffle") [18:01:30.414] } [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] if (TRUE) { [18:01:30.414] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.414] { [18:01:30.414] inherits <- base::inherits [18:01:30.414] invokeRestart <- base::invokeRestart [18:01:30.414] is.null <- base::is.null [18:01:30.414] muffled <- FALSE [18:01:30.414] if (inherits(cond, "message")) { [18:01:30.414] muffled <- grepl(pattern, "muffleMessage") [18:01:30.414] if (muffled) [18:01:30.414] invokeRestart("muffleMessage") [18:01:30.414] } [18:01:30.414] else if (inherits(cond, "warning")) { [18:01:30.414] muffled <- grepl(pattern, "muffleWarning") [18:01:30.414] if (muffled) [18:01:30.414] invokeRestart("muffleWarning") [18:01:30.414] } [18:01:30.414] else if (inherits(cond, "condition")) { [18:01:30.414] if (!is.null(pattern)) { [18:01:30.414] computeRestarts <- base::computeRestarts [18:01:30.414] grepl <- base::grepl [18:01:30.414] restarts <- computeRestarts(cond) [18:01:30.414] for (restart in restarts) { [18:01:30.414] name <- restart$name [18:01:30.414] if (is.null(name)) [18:01:30.414] next [18:01:30.414] if (!grepl(pattern, name)) [18:01:30.414] next [18:01:30.414] invokeRestart(restart) [18:01:30.414] muffled <- TRUE [18:01:30.414] break [18:01:30.414] } [18:01:30.414] } [18:01:30.414] } [18:01:30.414] invisible(muffled) [18:01:30.414] } [18:01:30.414] muffleCondition(cond, pattern = "^muffle") [18:01:30.414] } [18:01:30.414] } [18:01:30.414] } [18:01:30.414] })) [18:01:30.414] }, error = function(ex) { [18:01:30.414] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.414] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.414] ...future.rng), started = ...future.startTime, [18:01:30.414] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.414] version = "1.8"), class = "FutureResult") [18:01:30.414] }, finally = { [18:01:30.414] if (!identical(...future.workdir, getwd())) [18:01:30.414] setwd(...future.workdir) [18:01:30.414] { [18:01:30.414] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.414] ...future.oldOptions$nwarnings <- NULL [18:01:30.414] } [18:01:30.414] base::options(...future.oldOptions) [18:01:30.414] if (.Platform$OS.type == "windows") { [18:01:30.414] old_names <- names(...future.oldEnvVars) [18:01:30.414] envs <- base::Sys.getenv() [18:01:30.414] names <- names(envs) [18:01:30.414] common <- intersect(names, old_names) [18:01:30.414] added <- setdiff(names, old_names) [18:01:30.414] removed <- setdiff(old_names, names) [18:01:30.414] changed <- common[...future.oldEnvVars[common] != [18:01:30.414] envs[common]] [18:01:30.414] NAMES <- toupper(changed) [18:01:30.414] args <- list() [18:01:30.414] for (kk in seq_along(NAMES)) { [18:01:30.414] name <- changed[[kk]] [18:01:30.414] NAME <- NAMES[[kk]] [18:01:30.414] if (name != NAME && is.element(NAME, old_names)) [18:01:30.414] next [18:01:30.414] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.414] } [18:01:30.414] NAMES <- toupper(added) [18:01:30.414] for (kk in seq_along(NAMES)) { [18:01:30.414] name <- added[[kk]] [18:01:30.414] NAME <- NAMES[[kk]] [18:01:30.414] if (name != NAME && is.element(NAME, old_names)) [18:01:30.414] next [18:01:30.414] args[[name]] <- "" [18:01:30.414] } [18:01:30.414] NAMES <- toupper(removed) [18:01:30.414] for (kk in seq_along(NAMES)) { [18:01:30.414] name <- removed[[kk]] [18:01:30.414] NAME <- NAMES[[kk]] [18:01:30.414] if (name != NAME && is.element(NAME, old_names)) [18:01:30.414] next [18:01:30.414] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.414] } [18:01:30.414] if (length(args) > 0) [18:01:30.414] base::do.call(base::Sys.setenv, args = args) [18:01:30.414] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.414] } [18:01:30.414] { [18:01:30.414] if (base::length(...future.futureOptionsAdded) > [18:01:30.414] 0L) { [18:01:30.414] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.414] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.414] base::options(opts) [18:01:30.414] } [18:01:30.414] { [18:01:30.414] { [18:01:30.414] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.414] NULL [18:01:30.414] } [18:01:30.414] options(future.plan = NULL) [18:01:30.414] if (is.na(NA_character_)) [18:01:30.414] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.414] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.414] future::plan(list(function (..., workers = availableCores(), [18:01:30.414] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.414] envir = parent.frame()) [18:01:30.414] { [18:01:30.414] if (is.function(workers)) [18:01:30.414] workers <- workers() [18:01:30.414] workers <- structure(as.integer(workers), [18:01:30.414] class = class(workers)) [18:01:30.414] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.414] workers >= 1) [18:01:30.414] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.414] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.414] } [18:01:30.414] future <- MultisessionFuture(..., workers = workers, [18:01:30.414] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.414] envir = envir) [18:01:30.414] if (!future$lazy) [18:01:30.414] future <- run(future) [18:01:30.414] invisible(future) [18:01:30.414] }), .cleanup = FALSE, .init = FALSE) [18:01:30.414] } [18:01:30.414] } [18:01:30.414] } [18:01:30.414] }) [18:01:30.414] if (TRUE) { [18:01:30.414] base::sink(type = "output", split = FALSE) [18:01:30.414] if (TRUE) { [18:01:30.414] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.414] } [18:01:30.414] else { [18:01:30.414] ...future.result["stdout"] <- base::list(NULL) [18:01:30.414] } [18:01:30.414] base::close(...future.stdout) [18:01:30.414] ...future.stdout <- NULL [18:01:30.414] } [18:01:30.414] ...future.result$conditions <- ...future.conditions [18:01:30.414] ...future.result$finished <- base::Sys.time() [18:01:30.414] ...future.result [18:01:30.414] } [18:01:30.420] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:30.420] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:30.420] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:30.420] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:30.421] MultisessionFuture started [18:01:30.422] - Launch lazy future ... done [18:01:30.422] run() for 'MultisessionFuture' ... done [18:01:30.422] result() for ClusterFuture ... [18:01:30.422] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.422] - Validating connection of MultisessionFuture [18:01:30.437] - received message: FutureResult [18:01:30.437] - Received FutureResult [18:01:30.437] - Erased future from FutureRegistry [18:01:30.438] result() for ClusterFuture ... [18:01:30.438] - result already collected: FutureResult [18:01:30.438] result() for ClusterFuture ... done [18:01:30.438] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.438] result() for ClusterFuture ... done [18:01:30.438] result() for ClusterFuture ... [18:01:30.439] - result already collected: FutureResult [18:01:30.439] result() for ClusterFuture ... done [18:01:30.439] getGlobalsAndPackages() ... [18:01:30.439] Searching for globals... [18:01:30.440] - globals found: [3] '{', '*', 'a' [18:01:30.440] Searching for globals ... DONE [18:01:30.441] Resolving globals: FALSE [18:01:30.441] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:30.441] The total size of the 1 globals exported for future expression ('{; 2 * 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.442] - globals: [1] 'a' [18:01:30.442] [18:01:30.442] getGlobalsAndPackages() ... DONE [18:01:30.442] run() for 'Future' ... [18:01:30.443] - state: 'created' [18:01:30.443] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.457] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.457] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.457] - Field: 'node' [18:01:30.457] - Field: 'label' [18:01:30.457] - Field: 'local' [18:01:30.458] - Field: 'owner' [18:01:30.458] - Field: 'envir' [18:01:30.458] - Field: 'workers' [18:01:30.458] - Field: 'packages' [18:01:30.458] - Field: 'gc' [18:01:30.459] - Field: 'conditions' [18:01:30.459] - Field: 'persistent' [18:01:30.459] - Field: 'expr' [18:01:30.459] - Field: 'uuid' [18:01:30.459] - Field: 'seed' [18:01:30.459] - Field: 'version' [18:01:30.460] - Field: 'result' [18:01:30.460] - Field: 'asynchronous' [18:01:30.460] - Field: 'calls' [18:01:30.460] - Field: 'globals' [18:01:30.460] - Field: 'stdout' [18:01:30.461] - Field: 'earlySignal' [18:01:30.461] - Field: 'lazy' [18:01:30.461] - Field: 'state' [18:01:30.461] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.461] - Launch lazy future ... [18:01:30.462] Packages needed by the future expression (n = 0): [18:01:30.462] Packages needed by future strategies (n = 0): [18:01:30.462] { [18:01:30.462] { [18:01:30.462] { [18:01:30.462] ...future.startTime <- base::Sys.time() [18:01:30.462] { [18:01:30.462] { [18:01:30.462] { [18:01:30.462] { [18:01:30.462] base::local({ [18:01:30.462] has_future <- base::requireNamespace("future", [18:01:30.462] quietly = TRUE) [18:01:30.462] if (has_future) { [18:01:30.462] ns <- base::getNamespace("future") [18:01:30.462] version <- ns[[".package"]][["version"]] [18:01:30.462] if (is.null(version)) [18:01:30.462] version <- utils::packageVersion("future") [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] version <- NULL [18:01:30.462] } [18:01:30.462] if (!has_future || version < "1.8.0") { [18:01:30.462] info <- base::c(r_version = base::gsub("R version ", [18:01:30.462] "", base::R.version$version.string), [18:01:30.462] platform = base::sprintf("%s (%s-bit)", [18:01:30.462] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.462] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.462] "release", "version")], collapse = " "), [18:01:30.462] hostname = base::Sys.info()[["nodename"]]) [18:01:30.462] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.462] info) [18:01:30.462] info <- base::paste(info, collapse = "; ") [18:01:30.462] if (!has_future) { [18:01:30.462] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.462] info) [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.462] info, version) [18:01:30.462] } [18:01:30.462] base::stop(msg) [18:01:30.462] } [18:01:30.462] }) [18:01:30.462] } [18:01:30.462] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.462] base::options(mc.cores = 1L) [18:01:30.462] } [18:01:30.462] options(future.plan = NULL) [18:01:30.462] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.462] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.462] } [18:01:30.462] ...future.workdir <- getwd() [18:01:30.462] } [18:01:30.462] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.462] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.462] } [18:01:30.462] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.462] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.462] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.462] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.462] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.462] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.462] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.462] base::names(...future.oldOptions)) [18:01:30.462] } [18:01:30.462] if (FALSE) { [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] if (TRUE) { [18:01:30.462] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.462] open = "w") [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.462] windows = "NUL", "/dev/null"), open = "w") [18:01:30.462] } [18:01:30.462] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.462] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.462] base::sink(type = "output", split = FALSE) [18:01:30.462] base::close(...future.stdout) [18:01:30.462] }, add = TRUE) [18:01:30.462] } [18:01:30.462] ...future.frame <- base::sys.nframe() [18:01:30.462] ...future.conditions <- base::list() [18:01:30.462] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.462] if (FALSE) { [18:01:30.462] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.462] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.462] } [18:01:30.462] ...future.result <- base::tryCatch({ [18:01:30.462] base::withCallingHandlers({ [18:01:30.462] ...future.value <- base::withVisible(base::local({ [18:01:30.462] ...future.makeSendCondition <- local({ [18:01:30.462] sendCondition <- NULL [18:01:30.462] function(frame = 1L) { [18:01:30.462] if (is.function(sendCondition)) [18:01:30.462] return(sendCondition) [18:01:30.462] ns <- getNamespace("parallel") [18:01:30.462] if (exists("sendData", mode = "function", [18:01:30.462] envir = ns)) { [18:01:30.462] parallel_sendData <- get("sendData", mode = "function", [18:01:30.462] envir = ns) [18:01:30.462] envir <- sys.frame(frame) [18:01:30.462] master <- NULL [18:01:30.462] while (!identical(envir, .GlobalEnv) && [18:01:30.462] !identical(envir, emptyenv())) { [18:01:30.462] if (exists("master", mode = "list", envir = envir, [18:01:30.462] inherits = FALSE)) { [18:01:30.462] master <- get("master", mode = "list", [18:01:30.462] envir = envir, inherits = FALSE) [18:01:30.462] if (inherits(master, c("SOCKnode", [18:01:30.462] "SOCK0node"))) { [18:01:30.462] sendCondition <<- function(cond) { [18:01:30.462] data <- list(type = "VALUE", value = cond, [18:01:30.462] success = TRUE) [18:01:30.462] parallel_sendData(master, data) [18:01:30.462] } [18:01:30.462] return(sendCondition) [18:01:30.462] } [18:01:30.462] } [18:01:30.462] frame <- frame + 1L [18:01:30.462] envir <- sys.frame(frame) [18:01:30.462] } [18:01:30.462] } [18:01:30.462] sendCondition <<- function(cond) NULL [18:01:30.462] } [18:01:30.462] }) [18:01:30.462] withCallingHandlers({ [18:01:30.462] { [18:01:30.462] 2 * a [18:01:30.462] } [18:01:30.462] }, immediateCondition = function(cond) { [18:01:30.462] sendCondition <- ...future.makeSendCondition() [18:01:30.462] sendCondition(cond) [18:01:30.462] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.462] { [18:01:30.462] inherits <- base::inherits [18:01:30.462] invokeRestart <- base::invokeRestart [18:01:30.462] is.null <- base::is.null [18:01:30.462] muffled <- FALSE [18:01:30.462] if (inherits(cond, "message")) { [18:01:30.462] muffled <- grepl(pattern, "muffleMessage") [18:01:30.462] if (muffled) [18:01:30.462] invokeRestart("muffleMessage") [18:01:30.462] } [18:01:30.462] else if (inherits(cond, "warning")) { [18:01:30.462] muffled <- grepl(pattern, "muffleWarning") [18:01:30.462] if (muffled) [18:01:30.462] invokeRestart("muffleWarning") [18:01:30.462] } [18:01:30.462] else if (inherits(cond, "condition")) { [18:01:30.462] if (!is.null(pattern)) { [18:01:30.462] computeRestarts <- base::computeRestarts [18:01:30.462] grepl <- base::grepl [18:01:30.462] restarts <- computeRestarts(cond) [18:01:30.462] for (restart in restarts) { [18:01:30.462] name <- restart$name [18:01:30.462] if (is.null(name)) [18:01:30.462] next [18:01:30.462] if (!grepl(pattern, name)) [18:01:30.462] next [18:01:30.462] invokeRestart(restart) [18:01:30.462] muffled <- TRUE [18:01:30.462] break [18:01:30.462] } [18:01:30.462] } [18:01:30.462] } [18:01:30.462] invisible(muffled) [18:01:30.462] } [18:01:30.462] muffleCondition(cond) [18:01:30.462] }) [18:01:30.462] })) [18:01:30.462] future::FutureResult(value = ...future.value$value, [18:01:30.462] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.462] ...future.rng), globalenv = if (FALSE) [18:01:30.462] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.462] ...future.globalenv.names)) [18:01:30.462] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.462] }, condition = base::local({ [18:01:30.462] c <- base::c [18:01:30.462] inherits <- base::inherits [18:01:30.462] invokeRestart <- base::invokeRestart [18:01:30.462] length <- base::length [18:01:30.462] list <- base::list [18:01:30.462] seq.int <- base::seq.int [18:01:30.462] signalCondition <- base::signalCondition [18:01:30.462] sys.calls <- base::sys.calls [18:01:30.462] `[[` <- base::`[[` [18:01:30.462] `+` <- base::`+` [18:01:30.462] `<<-` <- base::`<<-` [18:01:30.462] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.462] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.462] 3L)] [18:01:30.462] } [18:01:30.462] function(cond) { [18:01:30.462] is_error <- inherits(cond, "error") [18:01:30.462] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.462] NULL) [18:01:30.462] if (is_error) { [18:01:30.462] sessionInformation <- function() { [18:01:30.462] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.462] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.462] search = base::search(), system = base::Sys.info()) [18:01:30.462] } [18:01:30.462] ...future.conditions[[length(...future.conditions) + [18:01:30.462] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.462] cond$call), session = sessionInformation(), [18:01:30.462] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.462] signalCondition(cond) [18:01:30.462] } [18:01:30.462] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.462] "immediateCondition"))) { [18:01:30.462] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.462] ...future.conditions[[length(...future.conditions) + [18:01:30.462] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.462] if (TRUE && !signal) { [18:01:30.462] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.462] { [18:01:30.462] inherits <- base::inherits [18:01:30.462] invokeRestart <- base::invokeRestart [18:01:30.462] is.null <- base::is.null [18:01:30.462] muffled <- FALSE [18:01:30.462] if (inherits(cond, "message")) { [18:01:30.462] muffled <- grepl(pattern, "muffleMessage") [18:01:30.462] if (muffled) [18:01:30.462] invokeRestart("muffleMessage") [18:01:30.462] } [18:01:30.462] else if (inherits(cond, "warning")) { [18:01:30.462] muffled <- grepl(pattern, "muffleWarning") [18:01:30.462] if (muffled) [18:01:30.462] invokeRestart("muffleWarning") [18:01:30.462] } [18:01:30.462] else if (inherits(cond, "condition")) { [18:01:30.462] if (!is.null(pattern)) { [18:01:30.462] computeRestarts <- base::computeRestarts [18:01:30.462] grepl <- base::grepl [18:01:30.462] restarts <- computeRestarts(cond) [18:01:30.462] for (restart in restarts) { [18:01:30.462] name <- restart$name [18:01:30.462] if (is.null(name)) [18:01:30.462] next [18:01:30.462] if (!grepl(pattern, name)) [18:01:30.462] next [18:01:30.462] invokeRestart(restart) [18:01:30.462] muffled <- TRUE [18:01:30.462] break [18:01:30.462] } [18:01:30.462] } [18:01:30.462] } [18:01:30.462] invisible(muffled) [18:01:30.462] } [18:01:30.462] muffleCondition(cond, pattern = "^muffle") [18:01:30.462] } [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] if (TRUE) { [18:01:30.462] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.462] { [18:01:30.462] inherits <- base::inherits [18:01:30.462] invokeRestart <- base::invokeRestart [18:01:30.462] is.null <- base::is.null [18:01:30.462] muffled <- FALSE [18:01:30.462] if (inherits(cond, "message")) { [18:01:30.462] muffled <- grepl(pattern, "muffleMessage") [18:01:30.462] if (muffled) [18:01:30.462] invokeRestart("muffleMessage") [18:01:30.462] } [18:01:30.462] else if (inherits(cond, "warning")) { [18:01:30.462] muffled <- grepl(pattern, "muffleWarning") [18:01:30.462] if (muffled) [18:01:30.462] invokeRestart("muffleWarning") [18:01:30.462] } [18:01:30.462] else if (inherits(cond, "condition")) { [18:01:30.462] if (!is.null(pattern)) { [18:01:30.462] computeRestarts <- base::computeRestarts [18:01:30.462] grepl <- base::grepl [18:01:30.462] restarts <- computeRestarts(cond) [18:01:30.462] for (restart in restarts) { [18:01:30.462] name <- restart$name [18:01:30.462] if (is.null(name)) [18:01:30.462] next [18:01:30.462] if (!grepl(pattern, name)) [18:01:30.462] next [18:01:30.462] invokeRestart(restart) [18:01:30.462] muffled <- TRUE [18:01:30.462] break [18:01:30.462] } [18:01:30.462] } [18:01:30.462] } [18:01:30.462] invisible(muffled) [18:01:30.462] } [18:01:30.462] muffleCondition(cond, pattern = "^muffle") [18:01:30.462] } [18:01:30.462] } [18:01:30.462] } [18:01:30.462] })) [18:01:30.462] }, error = function(ex) { [18:01:30.462] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.462] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.462] ...future.rng), started = ...future.startTime, [18:01:30.462] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.462] version = "1.8"), class = "FutureResult") [18:01:30.462] }, finally = { [18:01:30.462] if (!identical(...future.workdir, getwd())) [18:01:30.462] setwd(...future.workdir) [18:01:30.462] { [18:01:30.462] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.462] ...future.oldOptions$nwarnings <- NULL [18:01:30.462] } [18:01:30.462] base::options(...future.oldOptions) [18:01:30.462] if (.Platform$OS.type == "windows") { [18:01:30.462] old_names <- names(...future.oldEnvVars) [18:01:30.462] envs <- base::Sys.getenv() [18:01:30.462] names <- names(envs) [18:01:30.462] common <- intersect(names, old_names) [18:01:30.462] added <- setdiff(names, old_names) [18:01:30.462] removed <- setdiff(old_names, names) [18:01:30.462] changed <- common[...future.oldEnvVars[common] != [18:01:30.462] envs[common]] [18:01:30.462] NAMES <- toupper(changed) [18:01:30.462] args <- list() [18:01:30.462] for (kk in seq_along(NAMES)) { [18:01:30.462] name <- changed[[kk]] [18:01:30.462] NAME <- NAMES[[kk]] [18:01:30.462] if (name != NAME && is.element(NAME, old_names)) [18:01:30.462] next [18:01:30.462] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.462] } [18:01:30.462] NAMES <- toupper(added) [18:01:30.462] for (kk in seq_along(NAMES)) { [18:01:30.462] name <- added[[kk]] [18:01:30.462] NAME <- NAMES[[kk]] [18:01:30.462] if (name != NAME && is.element(NAME, old_names)) [18:01:30.462] next [18:01:30.462] args[[name]] <- "" [18:01:30.462] } [18:01:30.462] NAMES <- toupper(removed) [18:01:30.462] for (kk in seq_along(NAMES)) { [18:01:30.462] name <- removed[[kk]] [18:01:30.462] NAME <- NAMES[[kk]] [18:01:30.462] if (name != NAME && is.element(NAME, old_names)) [18:01:30.462] next [18:01:30.462] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.462] } [18:01:30.462] if (length(args) > 0) [18:01:30.462] base::do.call(base::Sys.setenv, args = args) [18:01:30.462] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.462] } [18:01:30.462] { [18:01:30.462] if (base::length(...future.futureOptionsAdded) > [18:01:30.462] 0L) { [18:01:30.462] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.462] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.462] base::options(opts) [18:01:30.462] } [18:01:30.462] { [18:01:30.462] { [18:01:30.462] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.462] NULL [18:01:30.462] } [18:01:30.462] options(future.plan = NULL) [18:01:30.462] if (is.na(NA_character_)) [18:01:30.462] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.462] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.462] future::plan(list(function (..., workers = availableCores(), [18:01:30.462] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.462] envir = parent.frame()) [18:01:30.462] { [18:01:30.462] if (is.function(workers)) [18:01:30.462] workers <- workers() [18:01:30.462] workers <- structure(as.integer(workers), [18:01:30.462] class = class(workers)) [18:01:30.462] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.462] workers >= 1) [18:01:30.462] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.462] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.462] } [18:01:30.462] future <- MultisessionFuture(..., workers = workers, [18:01:30.462] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.462] envir = envir) [18:01:30.462] if (!future$lazy) [18:01:30.462] future <- run(future) [18:01:30.462] invisible(future) [18:01:30.462] }), .cleanup = FALSE, .init = FALSE) [18:01:30.462] } [18:01:30.462] } [18:01:30.462] } [18:01:30.462] }) [18:01:30.462] if (TRUE) { [18:01:30.462] base::sink(type = "output", split = FALSE) [18:01:30.462] if (TRUE) { [18:01:30.462] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.462] } [18:01:30.462] else { [18:01:30.462] ...future.result["stdout"] <- base::list(NULL) [18:01:30.462] } [18:01:30.462] base::close(...future.stdout) [18:01:30.462] ...future.stdout <- NULL [18:01:30.462] } [18:01:30.462] ...future.result$conditions <- ...future.conditions [18:01:30.462] ...future.result$finished <- base::Sys.time() [18:01:30.462] ...future.result [18:01:30.462] } [18:01:30.468] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:30.468] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:30.468] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:30.469] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:30.469] MultisessionFuture started [18:01:30.469] - Launch lazy future ... done [18:01:30.470] run() for 'MultisessionFuture' ... done [18:01:30.470] result() for ClusterFuture ... [18:01:30.470] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.470] - Validating connection of MultisessionFuture [18:01:30.486] - received message: FutureResult [18:01:30.486] - Received FutureResult [18:01:30.486] - Erased future from FutureRegistry [18:01:30.487] result() for ClusterFuture ... [18:01:30.487] - result already collected: FutureResult [18:01:30.487] result() for ClusterFuture ... done [18:01:30.487] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.487] result() for ClusterFuture ... done [18:01:30.487] result() for ClusterFuture ... [18:01:30.488] - result already collected: FutureResult [18:01:30.488] result() for ClusterFuture ... done [18:01:30.488] getGlobalsAndPackages() ... [18:01:30.488] Searching for globals... [18:01:30.489] - globals found: [3] '{', '*', 'a' [18:01:30.489] Searching for globals ... DONE [18:01:30.490] Resolving globals: FALSE [18:01:30.490] The total size of the 1 globals is 56 bytes (56 bytes) [18:01:30.491] The total size of the 1 globals exported for future expression ('{; 2 * 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.491] - globals: [1] 'a' [18:01:30.491] [18:01:30.491] getGlobalsAndPackages() ... DONE [18:01:30.491] run() for 'Future' ... [18:01:30.492] - state: 'created' [18:01:30.492] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:01:30.506] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:01:30.506] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:01:30.506] - Field: 'node' [18:01:30.506] - Field: 'label' [18:01:30.506] - Field: 'local' [18:01:30.507] - Field: 'owner' [18:01:30.507] - Field: 'envir' [18:01:30.507] - Field: 'workers' [18:01:30.507] - Field: 'packages' [18:01:30.507] - Field: 'gc' [18:01:30.507] - Field: 'conditions' [18:01:30.508] - Field: 'persistent' [18:01:30.508] - Field: 'expr' [18:01:30.508] - Field: 'uuid' [18:01:30.508] - Field: 'seed' [18:01:30.508] - Field: 'version' [18:01:30.508] - Field: 'result' [18:01:30.509] - Field: 'asynchronous' [18:01:30.509] - Field: 'calls' [18:01:30.509] - Field: 'globals' [18:01:30.509] - Field: 'stdout' [18:01:30.509] - Field: 'earlySignal' [18:01:30.510] - Field: 'lazy' [18:01:30.510] - Field: 'state' [18:01:30.510] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:01:30.510] - Launch lazy future ... [18:01:30.510] Packages needed by the future expression (n = 0): [18:01:30.511] Packages needed by future strategies (n = 0): [18:01:30.511] { [18:01:30.511] { [18:01:30.511] { [18:01:30.511] ...future.startTime <- base::Sys.time() [18:01:30.511] { [18:01:30.511] { [18:01:30.511] { [18:01:30.511] { [18:01:30.511] base::local({ [18:01:30.511] has_future <- base::requireNamespace("future", [18:01:30.511] quietly = TRUE) [18:01:30.511] if (has_future) { [18:01:30.511] ns <- base::getNamespace("future") [18:01:30.511] version <- ns[[".package"]][["version"]] [18:01:30.511] if (is.null(version)) [18:01:30.511] version <- utils::packageVersion("future") [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] version <- NULL [18:01:30.511] } [18:01:30.511] if (!has_future || version < "1.8.0") { [18:01:30.511] info <- base::c(r_version = base::gsub("R version ", [18:01:30.511] "", base::R.version$version.string), [18:01:30.511] platform = base::sprintf("%s (%s-bit)", [18:01:30.511] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:01:30.511] os = base::paste(base::Sys.info()[base::c("sysname", [18:01:30.511] "release", "version")], collapse = " "), [18:01:30.511] hostname = base::Sys.info()[["nodename"]]) [18:01:30.511] info <- base::sprintf("%s: %s", base::names(info), [18:01:30.511] info) [18:01:30.511] info <- base::paste(info, collapse = "; ") [18:01:30.511] if (!has_future) { [18:01:30.511] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:01:30.511] info) [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:01:30.511] info, version) [18:01:30.511] } [18:01:30.511] base::stop(msg) [18:01:30.511] } [18:01:30.511] }) [18:01:30.511] } [18:01:30.511] ...future.mc.cores.old <- base::getOption("mc.cores") [18:01:30.511] base::options(mc.cores = 1L) [18:01:30.511] } [18:01:30.511] options(future.plan = NULL) [18:01:30.511] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.511] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:01:30.511] } [18:01:30.511] ...future.workdir <- getwd() [18:01:30.511] } [18:01:30.511] ...future.oldOptions <- base::as.list(base::.Options) [18:01:30.511] ...future.oldEnvVars <- base::Sys.getenv() [18:01:30.511] } [18:01:30.511] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:01:30.511] future.globals.maxSize = NULL, future.globals.method = NULL, [18:01:30.511] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:01:30.511] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:01:30.511] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:01:30.511] future.stdout.windows.reencode = NULL, width = 80L) [18:01:30.511] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:01:30.511] base::names(...future.oldOptions)) [18:01:30.511] } [18:01:30.511] if (FALSE) { [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] if (TRUE) { [18:01:30.511] ...future.stdout <- base::rawConnection(base::raw(0L), [18:01:30.511] open = "w") [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:01:30.511] windows = "NUL", "/dev/null"), open = "w") [18:01:30.511] } [18:01:30.511] base::sink(...future.stdout, type = "output", split = FALSE) [18:01:30.511] base::on.exit(if (!base::is.null(...future.stdout)) { [18:01:30.511] base::sink(type = "output", split = FALSE) [18:01:30.511] base::close(...future.stdout) [18:01:30.511] }, add = TRUE) [18:01:30.511] } [18:01:30.511] ...future.frame <- base::sys.nframe() [18:01:30.511] ...future.conditions <- base::list() [18:01:30.511] ...future.rng <- base::globalenv()$.Random.seed [18:01:30.511] if (FALSE) { [18:01:30.511] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:01:30.511] "...future.value", "...future.globalenv.names", ".Random.seed") [18:01:30.511] } [18:01:30.511] ...future.result <- base::tryCatch({ [18:01:30.511] base::withCallingHandlers({ [18:01:30.511] ...future.value <- base::withVisible(base::local({ [18:01:30.511] ...future.makeSendCondition <- local({ [18:01:30.511] sendCondition <- NULL [18:01:30.511] function(frame = 1L) { [18:01:30.511] if (is.function(sendCondition)) [18:01:30.511] return(sendCondition) [18:01:30.511] ns <- getNamespace("parallel") [18:01:30.511] if (exists("sendData", mode = "function", [18:01:30.511] envir = ns)) { [18:01:30.511] parallel_sendData <- get("sendData", mode = "function", [18:01:30.511] envir = ns) [18:01:30.511] envir <- sys.frame(frame) [18:01:30.511] master <- NULL [18:01:30.511] while (!identical(envir, .GlobalEnv) && [18:01:30.511] !identical(envir, emptyenv())) { [18:01:30.511] if (exists("master", mode = "list", envir = envir, [18:01:30.511] inherits = FALSE)) { [18:01:30.511] master <- get("master", mode = "list", [18:01:30.511] envir = envir, inherits = FALSE) [18:01:30.511] if (inherits(master, c("SOCKnode", [18:01:30.511] "SOCK0node"))) { [18:01:30.511] sendCondition <<- function(cond) { [18:01:30.511] data <- list(type = "VALUE", value = cond, [18:01:30.511] success = TRUE) [18:01:30.511] parallel_sendData(master, data) [18:01:30.511] } [18:01:30.511] return(sendCondition) [18:01:30.511] } [18:01:30.511] } [18:01:30.511] frame <- frame + 1L [18:01:30.511] envir <- sys.frame(frame) [18:01:30.511] } [18:01:30.511] } [18:01:30.511] sendCondition <<- function(cond) NULL [18:01:30.511] } [18:01:30.511] }) [18:01:30.511] withCallingHandlers({ [18:01:30.511] { [18:01:30.511] 2 * a [18:01:30.511] } [18:01:30.511] }, immediateCondition = function(cond) { [18:01:30.511] sendCondition <- ...future.makeSendCondition() [18:01:30.511] sendCondition(cond) [18:01:30.511] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.511] { [18:01:30.511] inherits <- base::inherits [18:01:30.511] invokeRestart <- base::invokeRestart [18:01:30.511] is.null <- base::is.null [18:01:30.511] muffled <- FALSE [18:01:30.511] if (inherits(cond, "message")) { [18:01:30.511] muffled <- grepl(pattern, "muffleMessage") [18:01:30.511] if (muffled) [18:01:30.511] invokeRestart("muffleMessage") [18:01:30.511] } [18:01:30.511] else if (inherits(cond, "warning")) { [18:01:30.511] muffled <- grepl(pattern, "muffleWarning") [18:01:30.511] if (muffled) [18:01:30.511] invokeRestart("muffleWarning") [18:01:30.511] } [18:01:30.511] else if (inherits(cond, "condition")) { [18:01:30.511] if (!is.null(pattern)) { [18:01:30.511] computeRestarts <- base::computeRestarts [18:01:30.511] grepl <- base::grepl [18:01:30.511] restarts <- computeRestarts(cond) [18:01:30.511] for (restart in restarts) { [18:01:30.511] name <- restart$name [18:01:30.511] if (is.null(name)) [18:01:30.511] next [18:01:30.511] if (!grepl(pattern, name)) [18:01:30.511] next [18:01:30.511] invokeRestart(restart) [18:01:30.511] muffled <- TRUE [18:01:30.511] break [18:01:30.511] } [18:01:30.511] } [18:01:30.511] } [18:01:30.511] invisible(muffled) [18:01:30.511] } [18:01:30.511] muffleCondition(cond) [18:01:30.511] }) [18:01:30.511] })) [18:01:30.511] future::FutureResult(value = ...future.value$value, [18:01:30.511] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.511] ...future.rng), globalenv = if (FALSE) [18:01:30.511] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:01:30.511] ...future.globalenv.names)) [18:01:30.511] else NULL, started = ...future.startTime, version = "1.8") [18:01:30.511] }, condition = base::local({ [18:01:30.511] c <- base::c [18:01:30.511] inherits <- base::inherits [18:01:30.511] invokeRestart <- base::invokeRestart [18:01:30.511] length <- base::length [18:01:30.511] list <- base::list [18:01:30.511] seq.int <- base::seq.int [18:01:30.511] signalCondition <- base::signalCondition [18:01:30.511] sys.calls <- base::sys.calls [18:01:30.511] `[[` <- base::`[[` [18:01:30.511] `+` <- base::`+` [18:01:30.511] `<<-` <- base::`<<-` [18:01:30.511] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:01:30.511] calls[seq.int(from = from + 12L, to = length(calls) - [18:01:30.511] 3L)] [18:01:30.511] } [18:01:30.511] function(cond) { [18:01:30.511] is_error <- inherits(cond, "error") [18:01:30.511] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:01:30.511] NULL) [18:01:30.511] if (is_error) { [18:01:30.511] sessionInformation <- function() { [18:01:30.511] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:01:30.511] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:01:30.511] search = base::search(), system = base::Sys.info()) [18:01:30.511] } [18:01:30.511] ...future.conditions[[length(...future.conditions) + [18:01:30.511] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:01:30.511] cond$call), session = sessionInformation(), [18:01:30.511] timestamp = base::Sys.time(), signaled = 0L) [18:01:30.511] signalCondition(cond) [18:01:30.511] } [18:01:30.511] else if (!ignore && TRUE && inherits(cond, c("condition", [18:01:30.511] "immediateCondition"))) { [18:01:30.511] signal <- TRUE && inherits(cond, "immediateCondition") [18:01:30.511] ...future.conditions[[length(...future.conditions) + [18:01:30.511] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:01:30.511] if (TRUE && !signal) { [18:01:30.511] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.511] { [18:01:30.511] inherits <- base::inherits [18:01:30.511] invokeRestart <- base::invokeRestart [18:01:30.511] is.null <- base::is.null [18:01:30.511] muffled <- FALSE [18:01:30.511] if (inherits(cond, "message")) { [18:01:30.511] muffled <- grepl(pattern, "muffleMessage") [18:01:30.511] if (muffled) [18:01:30.511] invokeRestart("muffleMessage") [18:01:30.511] } [18:01:30.511] else if (inherits(cond, "warning")) { [18:01:30.511] muffled <- grepl(pattern, "muffleWarning") [18:01:30.511] if (muffled) [18:01:30.511] invokeRestart("muffleWarning") [18:01:30.511] } [18:01:30.511] else if (inherits(cond, "condition")) { [18:01:30.511] if (!is.null(pattern)) { [18:01:30.511] computeRestarts <- base::computeRestarts [18:01:30.511] grepl <- base::grepl [18:01:30.511] restarts <- computeRestarts(cond) [18:01:30.511] for (restart in restarts) { [18:01:30.511] name <- restart$name [18:01:30.511] if (is.null(name)) [18:01:30.511] next [18:01:30.511] if (!grepl(pattern, name)) [18:01:30.511] next [18:01:30.511] invokeRestart(restart) [18:01:30.511] muffled <- TRUE [18:01:30.511] break [18:01:30.511] } [18:01:30.511] } [18:01:30.511] } [18:01:30.511] invisible(muffled) [18:01:30.511] } [18:01:30.511] muffleCondition(cond, pattern = "^muffle") [18:01:30.511] } [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] if (TRUE) { [18:01:30.511] muffleCondition <- function (cond, pattern = "^muffle") [18:01:30.511] { [18:01:30.511] inherits <- base::inherits [18:01:30.511] invokeRestart <- base::invokeRestart [18:01:30.511] is.null <- base::is.null [18:01:30.511] muffled <- FALSE [18:01:30.511] if (inherits(cond, "message")) { [18:01:30.511] muffled <- grepl(pattern, "muffleMessage") [18:01:30.511] if (muffled) [18:01:30.511] invokeRestart("muffleMessage") [18:01:30.511] } [18:01:30.511] else if (inherits(cond, "warning")) { [18:01:30.511] muffled <- grepl(pattern, "muffleWarning") [18:01:30.511] if (muffled) [18:01:30.511] invokeRestart("muffleWarning") [18:01:30.511] } [18:01:30.511] else if (inherits(cond, "condition")) { [18:01:30.511] if (!is.null(pattern)) { [18:01:30.511] computeRestarts <- base::computeRestarts [18:01:30.511] grepl <- base::grepl [18:01:30.511] restarts <- computeRestarts(cond) [18:01:30.511] for (restart in restarts) { [18:01:30.511] name <- restart$name [18:01:30.511] if (is.null(name)) [18:01:30.511] next [18:01:30.511] if (!grepl(pattern, name)) [18:01:30.511] next [18:01:30.511] invokeRestart(restart) [18:01:30.511] muffled <- TRUE [18:01:30.511] break [18:01:30.511] } [18:01:30.511] } [18:01:30.511] } [18:01:30.511] invisible(muffled) [18:01:30.511] } [18:01:30.511] muffleCondition(cond, pattern = "^muffle") [18:01:30.511] } [18:01:30.511] } [18:01:30.511] } [18:01:30.511] })) [18:01:30.511] }, error = function(ex) { [18:01:30.511] base::structure(base::list(value = NULL, visible = NULL, [18:01:30.511] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:01:30.511] ...future.rng), started = ...future.startTime, [18:01:30.511] finished = Sys.time(), session_uuid = NA_character_, [18:01:30.511] version = "1.8"), class = "FutureResult") [18:01:30.511] }, finally = { [18:01:30.511] if (!identical(...future.workdir, getwd())) [18:01:30.511] setwd(...future.workdir) [18:01:30.511] { [18:01:30.511] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:01:30.511] ...future.oldOptions$nwarnings <- NULL [18:01:30.511] } [18:01:30.511] base::options(...future.oldOptions) [18:01:30.511] if (.Platform$OS.type == "windows") { [18:01:30.511] old_names <- names(...future.oldEnvVars) [18:01:30.511] envs <- base::Sys.getenv() [18:01:30.511] names <- names(envs) [18:01:30.511] common <- intersect(names, old_names) [18:01:30.511] added <- setdiff(names, old_names) [18:01:30.511] removed <- setdiff(old_names, names) [18:01:30.511] changed <- common[...future.oldEnvVars[common] != [18:01:30.511] envs[common]] [18:01:30.511] NAMES <- toupper(changed) [18:01:30.511] args <- list() [18:01:30.511] for (kk in seq_along(NAMES)) { [18:01:30.511] name <- changed[[kk]] [18:01:30.511] NAME <- NAMES[[kk]] [18:01:30.511] if (name != NAME && is.element(NAME, old_names)) [18:01:30.511] next [18:01:30.511] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.511] } [18:01:30.511] NAMES <- toupper(added) [18:01:30.511] for (kk in seq_along(NAMES)) { [18:01:30.511] name <- added[[kk]] [18:01:30.511] NAME <- NAMES[[kk]] [18:01:30.511] if (name != NAME && is.element(NAME, old_names)) [18:01:30.511] next [18:01:30.511] args[[name]] <- "" [18:01:30.511] } [18:01:30.511] NAMES <- toupper(removed) [18:01:30.511] for (kk in seq_along(NAMES)) { [18:01:30.511] name <- removed[[kk]] [18:01:30.511] NAME <- NAMES[[kk]] [18:01:30.511] if (name != NAME && is.element(NAME, old_names)) [18:01:30.511] next [18:01:30.511] args[[name]] <- ...future.oldEnvVars[[name]] [18:01:30.511] } [18:01:30.511] if (length(args) > 0) [18:01:30.511] base::do.call(base::Sys.setenv, args = args) [18:01:30.511] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:01:30.511] } [18:01:30.511] { [18:01:30.511] if (base::length(...future.futureOptionsAdded) > [18:01:30.511] 0L) { [18:01:30.511] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:01:30.511] base::names(opts) <- ...future.futureOptionsAdded [18:01:30.511] base::options(opts) [18:01:30.511] } [18:01:30.511] { [18:01:30.511] { [18:01:30.511] base::options(mc.cores = ...future.mc.cores.old) [18:01:30.511] NULL [18:01:30.511] } [18:01:30.511] options(future.plan = NULL) [18:01:30.511] if (is.na(NA_character_)) [18:01:30.511] Sys.unsetenv("R_FUTURE_PLAN") [18:01:30.511] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:01:30.511] future::plan(list(function (..., workers = availableCores(), [18:01:30.511] lazy = FALSE, rscript_libs = .libPaths(), [18:01:30.511] envir = parent.frame()) [18:01:30.511] { [18:01:30.511] if (is.function(workers)) [18:01:30.511] workers <- workers() [18:01:30.511] workers <- structure(as.integer(workers), [18:01:30.511] class = class(workers)) [18:01:30.511] stop_if_not(length(workers) == 1, is.finite(workers), [18:01:30.511] workers >= 1) [18:01:30.511] if (workers == 1L && !inherits(workers, "AsIs")) { [18:01:30.511] return(sequential(..., lazy = TRUE, envir = envir)) [18:01:30.511] } [18:01:30.511] future <- MultisessionFuture(..., workers = workers, [18:01:30.511] lazy = lazy, rscript_libs = rscript_libs, [18:01:30.511] envir = envir) [18:01:30.511] if (!future$lazy) [18:01:30.511] future <- run(future) [18:01:30.511] invisible(future) [18:01:30.511] }), .cleanup = FALSE, .init = FALSE) [18:01:30.511] } [18:01:30.511] } [18:01:30.511] } [18:01:30.511] }) [18:01:30.511] if (TRUE) { [18:01:30.511] base::sink(type = "output", split = FALSE) [18:01:30.511] if (TRUE) { [18:01:30.511] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:01:30.511] } [18:01:30.511] else { [18:01:30.511] ...future.result["stdout"] <- base::list(NULL) [18:01:30.511] } [18:01:30.511] base::close(...future.stdout) [18:01:30.511] ...future.stdout <- NULL [18:01:30.511] } [18:01:30.511] ...future.result$conditions <- ...future.conditions [18:01:30.511] ...future.result$finished <- base::Sys.time() [18:01:30.511] ...future.result [18:01:30.511] } [18:01:30.517] Exporting 1 global objects (56 bytes) to cluster node #1 ... [18:01:30.517] Exporting 'a' (56 bytes) to cluster node #1 ... [18:01:30.517] Exporting 'a' (56 bytes) to cluster node #1 ... DONE [18:01:30.518] Exporting 1 global objects (56 bytes) to cluster node #1 ... DONE [18:01:30.518] MultisessionFuture started [18:01:30.518] - Launch lazy future ... done [18:01:30.519] run() for 'MultisessionFuture' ... done [18:01:30.519] result() for ClusterFuture ... [18:01:30.519] receiveMessageFromWorker() for ClusterFuture ... [18:01:30.519] - Validating connection of MultisessionFuture [18:01:30.535] - received message: FutureResult [18:01:30.535] - Received FutureResult [18:01:30.535] - Erased future from FutureRegistry [18:01:30.535] result() for ClusterFuture ... [18:01:30.535] - result already collected: FutureResult [18:01:30.535] result() for ClusterFuture ... done [18:01:30.536] receiveMessageFromWorker() for ClusterFuture ... done [18:01:30.536] result() for ClusterFuture ... done [18:01:30.536] result() for ClusterFuture ... [18:01:30.536] - result already collected: FutureResult [18:01:30.536] result() for ClusterFuture ... done *** futureAssign() with 'multisession' futures ... DONE Testing with 2 cores ... DONE > > message("*** futureAssign() - lazy = TRUE / FALSE ... DONE") *** futureAssign() - lazy = TRUE / FALSE ... DONE > > message("*** futureAssign() ... DONE") *** futureAssign() ... DONE > > source("incl/end.R") [18:01:30.538] plan(): Setting new future strategy stack: [18:01:30.538] List of future strategies: [18:01:30.538] 1. FutureStrategy: [18:01:30.538] - args: function (..., envir = parent.frame()) [18:01:30.538] - tweaked: FALSE [18:01:30.538] - call: future::plan(oplan) [18:01:30.539] 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 0.76 0.10 1.84