R Under development (unstable) (2023-12-20 r85713 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") [01:27:55.501] plan(): Setting new future strategy stack: [01:27:55.503] List of future strategies: [01:27:55.503] 1. sequential: [01:27:55.503] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.503] - tweaked: FALSE [01:27:55.503] - call: future::plan("sequential") [01:27:55.524] plan(): nbrOfWorkers() = 1 > > library("datasets") ## cars data set > library("stats") ## lm(), poly(), xtabs() > > message("*** Globals - formulas ...") *** Globals - formulas ... > > ## (i) lm(): > ## From example("lm", package = "stats") > ctl <- c(4.17, 5.58, 5.18, 6.11, 4.50, 4.61, 5.17, 4.53, 5.33, 5.14) > trt <- c(4.81, 4.17, 4.41, 3.59, 5.87, 3.83, 6.03, 4.89, 4.32, 4.69) > group <- gl(2, 10, 20, labels = c("Ctl", "Trt")) > weight <- c(ctl, trt) > ctl <- trt <- NULL > ## Truth: > fit_i <- lm(weight ~ group - 1) > print(fit_i) Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 > > ## (ii) xtabs(~ x): > x <- c(1, 1, 2, 2, 2) > ## Truth: > tbl_ii <- xtabs(~ x) > print(tbl_ii) x 1 2 2 3 > > ## (iii) lm(, data = cars): > exprs <- list( + # "remove-intercept-term" form of no-intercept + a = substitute({ lm(dist ~ . -1, data = cars) }), + # "make-intercept-zero" form of no-intercept + b = substitute({ lm(dist ~ . +0, data = cars) }), + # doesn't do what we want here + c = substitute({ lm(dist ~ speed + speed ^ 2, data = cars) }), + # gets us a quadratic term + d = substitute({ lm(dist ~ speed + I(speed ^ 2), data = cars) }), + # avoid potential multicollinearity + e = substitute({ lm(dist ~ poly(speed, 2), data = cars) }) + ) > > ## (iv) Globals - map(x, ~ expr): > ## A fake purrr::map() function with limited functionality > map <- function(.x, .f, ...) { + if (inherits(.f, "formula")) { + expr <- .f[[-1]] + .f <- eval(bquote(function(...) { + .(expr) + })) + } + eval(lapply(.x, FUN = .f, ...)) + } > > inner_function <- function(x) { x + 1 } > > outer_function <- function(x) { + map(1:2, ~ inner_function(.x)) + } > > y_iv <- outer_function(1L) > str(y_iv) List of 2 $ : num [1:2] 2 3 $ : num [1:2] 2 3 > > > 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) + + message("availableCores(): ", availableCores()) + + for (strategy in supportedStrategies(cores)) { + message(sprintf("- plan('%s') ...", strategy)) + plan(strategy) + + message("- lm() ...") + + ## Explicit future + f <- future({ lm(weight ~ group - 1) }) + fit <- value(f) + print(fit) + stopifnot(all.equal(fit, fit_i)) + + ## Explicit future (lazy) + f <- future({ lm(weight ~ group - 1) }, lazy = TRUE) + fit <- value(f) + print(fit) + stopifnot(all.equal(fit, fit_i)) + + ## Future assignment + fit %<-% { lm(weight ~ group - 1) } + print(fit) + stopifnot(all.equal(fit, fit_i)) + + ## Future assignment (non-lazy) + fit %<-% { lm(weight ~ group - 1) } %lazy% FALSE + print(fit) + stopifnot(all.equal(fit, fit_i)) + + ## Future assignment (lazy) + fit %<-% { lm(weight ~ group - 1) } %lazy% TRUE + print(fit) + stopifnot(all.equal(fit, fit_i)) + + message("- Globals - one-side formulas, e.g. xtabs(~ x) ...") + ## Explicit future + f <- future({ xtabs(~ x) }) + tbl <- value(f) + print(tbl) + stopifnot(all.equal(tbl, tbl_ii)) + + ## Future assignment + tbl %<-% { xtabs(~ x) } + print(tbl) + stopifnot(all.equal(tbl, tbl_ii)) + + message("- Globals - lm(, data = cars) ...") + for (kk in seq_along(exprs)) { + expr <- exprs[[kk]] + name <- names(exprs)[kk] + message(sprintf("- Globals - lm(, data = cars) ...", + kk, sQuote(name))) + + fit_iii <- eval(expr) + print(fit_iii) + + f <- future(expr, substitute = FALSE) + fit <- value(f) + print(fit) + + stopifnot(all.equal(fit, fit_iii)) + } ## for (kk ...) + + message("- Globals - map(x, ~ expr) ...") + f <- future({ outer_function(1L) }) + y <- value(f) + str(y) + stopifnot(all.equal(y, y_iv)) + + y %<-% { outer_function(1L) } + str(y) + stopifnot(all.equal(y, y_iv)) + } ## for (strategy ...) + message(sprintf("Testing with %d cores ... DONE", cores)) + } ## for (cores ...) Testing with 1 cores ... availableCores(): 1 - plan('sequential') ... [01:27:55.600] plan(): Setting new future strategy stack: [01:27:55.601] List of future strategies: [01:27:55.601] 1. sequential: [01:27:55.601] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.601] - tweaked: FALSE [01:27:55.601] - call: plan(strategy) [01:27:55.615] plan(): nbrOfWorkers() = 1 - lm() ... [01:27:55.616] getGlobalsAndPackages() ... [01:27:55.616] Searching for globals... [01:27:55.627] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:55.628] Searching for globals ... DONE [01:27:55.628] Resolving globals: FALSE [01:27:55.629] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:55.630] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:55.630] - globals: [2] 'weight', 'group' [01:27:55.631] - packages: [1] 'stats' [01:27:55.631] getGlobalsAndPackages() ... DONE [01:27:55.632] run() for 'Future' ... [01:27:55.632] - state: 'created' [01:27:55.632] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.633] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.633] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.634] - Field: 'label' [01:27:55.634] - Field: 'local' [01:27:55.634] - Field: 'owner' [01:27:55.634] - Field: 'envir' [01:27:55.634] - Field: 'packages' [01:27:55.635] - Field: 'gc' [01:27:55.635] - Field: 'conditions' [01:27:55.635] - Field: 'expr' [01:27:55.635] - Field: 'uuid' [01:27:55.635] - Field: 'seed' [01:27:55.636] - Field: 'version' [01:27:55.636] - Field: 'result' [01:27:55.636] - Field: 'asynchronous' [01:27:55.636] - Field: 'calls' [01:27:55.636] - Field: 'globals' [01:27:55.637] - Field: 'stdout' [01:27:55.637] - Field: 'earlySignal' [01:27:55.637] - Field: 'lazy' [01:27:55.637] - Field: 'state' [01:27:55.637] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.638] - Launch lazy future ... [01:27:55.639] Packages needed by the future expression (n = 1): 'stats' [01:27:55.639] Packages needed by future strategies (n = 0): [01:27:55.640] { [01:27:55.640] { [01:27:55.640] { [01:27:55.640] ...future.startTime <- base::Sys.time() [01:27:55.640] { [01:27:55.640] { [01:27:55.640] { [01:27:55.640] { [01:27:55.640] base::local({ [01:27:55.640] has_future <- base::requireNamespace("future", [01:27:55.640] quietly = TRUE) [01:27:55.640] if (has_future) { [01:27:55.640] ns <- base::getNamespace("future") [01:27:55.640] version <- ns[[".package"]][["version"]] [01:27:55.640] if (is.null(version)) [01:27:55.640] version <- utils::packageVersion("future") [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] version <- NULL [01:27:55.640] } [01:27:55.640] if (!has_future || version < "1.8.0") { [01:27:55.640] info <- base::c(r_version = base::gsub("R version ", [01:27:55.640] "", base::R.version$version.string), [01:27:55.640] platform = base::sprintf("%s (%s-bit)", [01:27:55.640] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.640] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.640] "release", "version")], collapse = " "), [01:27:55.640] hostname = base::Sys.info()[["nodename"]]) [01:27:55.640] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.640] info) [01:27:55.640] info <- base::paste(info, collapse = "; ") [01:27:55.640] if (!has_future) { [01:27:55.640] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.640] info) [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.640] info, version) [01:27:55.640] } [01:27:55.640] base::stop(msg) [01:27:55.640] } [01:27:55.640] }) [01:27:55.640] } [01:27:55.640] base::local({ [01:27:55.640] for (pkg in "stats") { [01:27:55.640] base::loadNamespace(pkg) [01:27:55.640] base::library(pkg, character.only = TRUE) [01:27:55.640] } [01:27:55.640] }) [01:27:55.640] } [01:27:55.640] options(future.plan = NULL) [01:27:55.640] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.640] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.640] } [01:27:55.640] ...future.workdir <- getwd() [01:27:55.640] } [01:27:55.640] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.640] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.640] } [01:27:55.640] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.640] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.640] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.640] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.640] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.640] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.640] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.640] base::names(...future.oldOptions)) [01:27:55.640] } [01:27:55.640] if (FALSE) { [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] if (TRUE) { [01:27:55.640] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.640] open = "w") [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.640] windows = "NUL", "/dev/null"), open = "w") [01:27:55.640] } [01:27:55.640] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.640] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.640] base::sink(type = "output", split = FALSE) [01:27:55.640] base::close(...future.stdout) [01:27:55.640] }, add = TRUE) [01:27:55.640] } [01:27:55.640] ...future.frame <- base::sys.nframe() [01:27:55.640] ...future.conditions <- base::list() [01:27:55.640] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.640] if (FALSE) { [01:27:55.640] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.640] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.640] } [01:27:55.640] ...future.result <- base::tryCatch({ [01:27:55.640] base::withCallingHandlers({ [01:27:55.640] ...future.value <- base::withVisible(base::local({ [01:27:55.640] lm(weight ~ group - 1) [01:27:55.640] })) [01:27:55.640] future::FutureResult(value = ...future.value$value, [01:27:55.640] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.640] ...future.rng), globalenv = if (FALSE) [01:27:55.640] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.640] ...future.globalenv.names)) [01:27:55.640] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.640] }, condition = base::local({ [01:27:55.640] c <- base::c [01:27:55.640] inherits <- base::inherits [01:27:55.640] invokeRestart <- base::invokeRestart [01:27:55.640] length <- base::length [01:27:55.640] list <- base::list [01:27:55.640] seq.int <- base::seq.int [01:27:55.640] signalCondition <- base::signalCondition [01:27:55.640] sys.calls <- base::sys.calls [01:27:55.640] `[[` <- base::`[[` [01:27:55.640] `+` <- base::`+` [01:27:55.640] `<<-` <- base::`<<-` [01:27:55.640] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.640] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.640] 3L)] [01:27:55.640] } [01:27:55.640] function(cond) { [01:27:55.640] is_error <- inherits(cond, "error") [01:27:55.640] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.640] NULL) [01:27:55.640] if (is_error) { [01:27:55.640] sessionInformation <- function() { [01:27:55.640] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.640] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.640] search = base::search(), system = base::Sys.info()) [01:27:55.640] } [01:27:55.640] ...future.conditions[[length(...future.conditions) + [01:27:55.640] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.640] cond$call), session = sessionInformation(), [01:27:55.640] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.640] signalCondition(cond) [01:27:55.640] } [01:27:55.640] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.640] "immediateCondition"))) { [01:27:55.640] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.640] ...future.conditions[[length(...future.conditions) + [01:27:55.640] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.640] if (TRUE && !signal) { [01:27:55.640] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.640] { [01:27:55.640] inherits <- base::inherits [01:27:55.640] invokeRestart <- base::invokeRestart [01:27:55.640] is.null <- base::is.null [01:27:55.640] muffled <- FALSE [01:27:55.640] if (inherits(cond, "message")) { [01:27:55.640] muffled <- grepl(pattern, "muffleMessage") [01:27:55.640] if (muffled) [01:27:55.640] invokeRestart("muffleMessage") [01:27:55.640] } [01:27:55.640] else if (inherits(cond, "warning")) { [01:27:55.640] muffled <- grepl(pattern, "muffleWarning") [01:27:55.640] if (muffled) [01:27:55.640] invokeRestart("muffleWarning") [01:27:55.640] } [01:27:55.640] else if (inherits(cond, "condition")) { [01:27:55.640] if (!is.null(pattern)) { [01:27:55.640] computeRestarts <- base::computeRestarts [01:27:55.640] grepl <- base::grepl [01:27:55.640] restarts <- computeRestarts(cond) [01:27:55.640] for (restart in restarts) { [01:27:55.640] name <- restart$name [01:27:55.640] if (is.null(name)) [01:27:55.640] next [01:27:55.640] if (!grepl(pattern, name)) [01:27:55.640] next [01:27:55.640] invokeRestart(restart) [01:27:55.640] muffled <- TRUE [01:27:55.640] break [01:27:55.640] } [01:27:55.640] } [01:27:55.640] } [01:27:55.640] invisible(muffled) [01:27:55.640] } [01:27:55.640] muffleCondition(cond, pattern = "^muffle") [01:27:55.640] } [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] if (TRUE) { [01:27:55.640] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.640] { [01:27:55.640] inherits <- base::inherits [01:27:55.640] invokeRestart <- base::invokeRestart [01:27:55.640] is.null <- base::is.null [01:27:55.640] muffled <- FALSE [01:27:55.640] if (inherits(cond, "message")) { [01:27:55.640] muffled <- grepl(pattern, "muffleMessage") [01:27:55.640] if (muffled) [01:27:55.640] invokeRestart("muffleMessage") [01:27:55.640] } [01:27:55.640] else if (inherits(cond, "warning")) { [01:27:55.640] muffled <- grepl(pattern, "muffleWarning") [01:27:55.640] if (muffled) [01:27:55.640] invokeRestart("muffleWarning") [01:27:55.640] } [01:27:55.640] else if (inherits(cond, "condition")) { [01:27:55.640] if (!is.null(pattern)) { [01:27:55.640] computeRestarts <- base::computeRestarts [01:27:55.640] grepl <- base::grepl [01:27:55.640] restarts <- computeRestarts(cond) [01:27:55.640] for (restart in restarts) { [01:27:55.640] name <- restart$name [01:27:55.640] if (is.null(name)) [01:27:55.640] next [01:27:55.640] if (!grepl(pattern, name)) [01:27:55.640] next [01:27:55.640] invokeRestart(restart) [01:27:55.640] muffled <- TRUE [01:27:55.640] break [01:27:55.640] } [01:27:55.640] } [01:27:55.640] } [01:27:55.640] invisible(muffled) [01:27:55.640] } [01:27:55.640] muffleCondition(cond, pattern = "^muffle") [01:27:55.640] } [01:27:55.640] } [01:27:55.640] } [01:27:55.640] })) [01:27:55.640] }, error = function(ex) { [01:27:55.640] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.640] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.640] ...future.rng), started = ...future.startTime, [01:27:55.640] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.640] version = "1.8"), class = "FutureResult") [01:27:55.640] }, finally = { [01:27:55.640] if (!identical(...future.workdir, getwd())) [01:27:55.640] setwd(...future.workdir) [01:27:55.640] { [01:27:55.640] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.640] ...future.oldOptions$nwarnings <- NULL [01:27:55.640] } [01:27:55.640] base::options(...future.oldOptions) [01:27:55.640] if (.Platform$OS.type == "windows") { [01:27:55.640] old_names <- names(...future.oldEnvVars) [01:27:55.640] envs <- base::Sys.getenv() [01:27:55.640] names <- names(envs) [01:27:55.640] common <- intersect(names, old_names) [01:27:55.640] added <- setdiff(names, old_names) [01:27:55.640] removed <- setdiff(old_names, names) [01:27:55.640] changed <- common[...future.oldEnvVars[common] != [01:27:55.640] envs[common]] [01:27:55.640] NAMES <- toupper(changed) [01:27:55.640] args <- list() [01:27:55.640] for (kk in seq_along(NAMES)) { [01:27:55.640] name <- changed[[kk]] [01:27:55.640] NAME <- NAMES[[kk]] [01:27:55.640] if (name != NAME && is.element(NAME, old_names)) [01:27:55.640] next [01:27:55.640] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.640] } [01:27:55.640] NAMES <- toupper(added) [01:27:55.640] for (kk in seq_along(NAMES)) { [01:27:55.640] name <- added[[kk]] [01:27:55.640] NAME <- NAMES[[kk]] [01:27:55.640] if (name != NAME && is.element(NAME, old_names)) [01:27:55.640] next [01:27:55.640] args[[name]] <- "" [01:27:55.640] } [01:27:55.640] NAMES <- toupper(removed) [01:27:55.640] for (kk in seq_along(NAMES)) { [01:27:55.640] name <- removed[[kk]] [01:27:55.640] NAME <- NAMES[[kk]] [01:27:55.640] if (name != NAME && is.element(NAME, old_names)) [01:27:55.640] next [01:27:55.640] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.640] } [01:27:55.640] if (length(args) > 0) [01:27:55.640] base::do.call(base::Sys.setenv, args = args) [01:27:55.640] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.640] } [01:27:55.640] { [01:27:55.640] if (base::length(...future.futureOptionsAdded) > [01:27:55.640] 0L) { [01:27:55.640] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.640] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.640] base::options(opts) [01:27:55.640] } [01:27:55.640] { [01:27:55.640] { [01:27:55.640] NULL [01:27:55.640] RNGkind("Mersenne-Twister") [01:27:55.640] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.640] inherits = FALSE) [01:27:55.640] } [01:27:55.640] options(future.plan = NULL) [01:27:55.640] if (is.na(NA_character_)) [01:27:55.640] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.640] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.640] future::plan(list(function (..., envir = parent.frame()) [01:27:55.640] { [01:27:55.640] future <- SequentialFuture(..., envir = envir) [01:27:55.640] if (!future$lazy) [01:27:55.640] future <- run(future) [01:27:55.640] invisible(future) [01:27:55.640] }), .cleanup = FALSE, .init = FALSE) [01:27:55.640] } [01:27:55.640] } [01:27:55.640] } [01:27:55.640] }) [01:27:55.640] if (TRUE) { [01:27:55.640] base::sink(type = "output", split = FALSE) [01:27:55.640] if (TRUE) { [01:27:55.640] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.640] } [01:27:55.640] else { [01:27:55.640] ...future.result["stdout"] <- base::list(NULL) [01:27:55.640] } [01:27:55.640] base::close(...future.stdout) [01:27:55.640] ...future.stdout <- NULL [01:27:55.640] } [01:27:55.640] ...future.result$conditions <- ...future.conditions [01:27:55.640] ...future.result$finished <- base::Sys.time() [01:27:55.640] ...future.result [01:27:55.640] } [01:27:55.645] assign_globals() ... [01:27:55.645] List of 2 [01:27:55.645] $ weight: num [1:20] 4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ... [01:27:55.645] $ group : Factor w/ 2 levels "Ctl","Trt": 1 1 1 1 1 1 1 1 1 1 ... [01:27:55.645] - attr(*, "where")=List of 2 [01:27:55.645] ..$ weight: [01:27:55.645] ..$ group : [01:27:55.645] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.645] - attr(*, "resolved")= logi FALSE [01:27:55.645] - attr(*, "total_size")= num 896 [01:27:55.645] - attr(*, "already-done")= logi TRUE [01:27:55.651] - copied 'weight' to environment [01:27:55.651] - copied 'group' to environment [01:27:55.651] assign_globals() ... done [01:27:55.652] plan(): Setting new future strategy stack: [01:27:55.652] List of future strategies: [01:27:55.652] 1. sequential: [01:27:55.652] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.652] - tweaked: FALSE [01:27:55.652] - call: NULL [01:27:55.653] plan(): nbrOfWorkers() = 1 [01:27:55.657] plan(): Setting new future strategy stack: [01:27:55.658] List of future strategies: [01:27:55.658] 1. sequential: [01:27:55.658] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.658] - tweaked: FALSE [01:27:55.658] - call: plan(strategy) [01:27:55.658] plan(): nbrOfWorkers() = 1 [01:27:55.659] SequentialFuture started (and completed) [01:27:55.659] - Launch lazy future ... done [01:27:55.660] run() for 'SequentialFuture' ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:55.664] getGlobalsAndPackages() ... [01:27:55.671] Searching for globals... [01:27:55.673] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:55.674] Searching for globals ... DONE [01:27:55.674] Resolving globals: FALSE [01:27:55.675] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:55.675] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:55.676] - globals: [2] 'weight', 'group' [01:27:55.676] - packages: [1] 'stats' [01:27:55.676] getGlobalsAndPackages() ... DONE [01:27:55.677] run() for 'Future' ... [01:27:55.677] - state: 'created' [01:27:55.677] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.678] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.678] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.678] - Field: 'label' [01:27:55.678] - Field: 'local' [01:27:55.679] - Field: 'owner' [01:27:55.679] - Field: 'envir' [01:27:55.679] - Field: 'packages' [01:27:55.679] - Field: 'gc' [01:27:55.679] - Field: 'conditions' [01:27:55.680] - Field: 'expr' [01:27:55.680] - Field: 'uuid' [01:27:55.680] - Field: 'seed' [01:27:55.680] - Field: 'version' [01:27:55.680] - Field: 'result' [01:27:55.681] - Field: 'asynchronous' [01:27:55.681] - Field: 'calls' [01:27:55.681] - Field: 'globals' [01:27:55.681] - Field: 'stdout' [01:27:55.681] - Field: 'earlySignal' [01:27:55.682] - Field: 'lazy' [01:27:55.682] - Field: 'state' [01:27:55.682] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.682] - Launch lazy future ... [01:27:55.683] Packages needed by the future expression (n = 1): 'stats' [01:27:55.683] Packages needed by future strategies (n = 0): [01:27:55.684] { [01:27:55.684] { [01:27:55.684] { [01:27:55.684] ...future.startTime <- base::Sys.time() [01:27:55.684] { [01:27:55.684] { [01:27:55.684] { [01:27:55.684] { [01:27:55.684] base::local({ [01:27:55.684] has_future <- base::requireNamespace("future", [01:27:55.684] quietly = TRUE) [01:27:55.684] if (has_future) { [01:27:55.684] ns <- base::getNamespace("future") [01:27:55.684] version <- ns[[".package"]][["version"]] [01:27:55.684] if (is.null(version)) [01:27:55.684] version <- utils::packageVersion("future") [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] version <- NULL [01:27:55.684] } [01:27:55.684] if (!has_future || version < "1.8.0") { [01:27:55.684] info <- base::c(r_version = base::gsub("R version ", [01:27:55.684] "", base::R.version$version.string), [01:27:55.684] platform = base::sprintf("%s (%s-bit)", [01:27:55.684] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.684] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.684] "release", "version")], collapse = " "), [01:27:55.684] hostname = base::Sys.info()[["nodename"]]) [01:27:55.684] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.684] info) [01:27:55.684] info <- base::paste(info, collapse = "; ") [01:27:55.684] if (!has_future) { [01:27:55.684] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.684] info) [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.684] info, version) [01:27:55.684] } [01:27:55.684] base::stop(msg) [01:27:55.684] } [01:27:55.684] }) [01:27:55.684] } [01:27:55.684] base::local({ [01:27:55.684] for (pkg in "stats") { [01:27:55.684] base::loadNamespace(pkg) [01:27:55.684] base::library(pkg, character.only = TRUE) [01:27:55.684] } [01:27:55.684] }) [01:27:55.684] } [01:27:55.684] options(future.plan = NULL) [01:27:55.684] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.684] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.684] } [01:27:55.684] ...future.workdir <- getwd() [01:27:55.684] } [01:27:55.684] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.684] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.684] } [01:27:55.684] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.684] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.684] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.684] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.684] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.684] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.684] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.684] base::names(...future.oldOptions)) [01:27:55.684] } [01:27:55.684] if (FALSE) { [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] if (TRUE) { [01:27:55.684] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.684] open = "w") [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.684] windows = "NUL", "/dev/null"), open = "w") [01:27:55.684] } [01:27:55.684] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.684] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.684] base::sink(type = "output", split = FALSE) [01:27:55.684] base::close(...future.stdout) [01:27:55.684] }, add = TRUE) [01:27:55.684] } [01:27:55.684] ...future.frame <- base::sys.nframe() [01:27:55.684] ...future.conditions <- base::list() [01:27:55.684] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.684] if (FALSE) { [01:27:55.684] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.684] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.684] } [01:27:55.684] ...future.result <- base::tryCatch({ [01:27:55.684] base::withCallingHandlers({ [01:27:55.684] ...future.value <- base::withVisible(base::local({ [01:27:55.684] lm(weight ~ group - 1) [01:27:55.684] })) [01:27:55.684] future::FutureResult(value = ...future.value$value, [01:27:55.684] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.684] ...future.rng), globalenv = if (FALSE) [01:27:55.684] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.684] ...future.globalenv.names)) [01:27:55.684] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.684] }, condition = base::local({ [01:27:55.684] c <- base::c [01:27:55.684] inherits <- base::inherits [01:27:55.684] invokeRestart <- base::invokeRestart [01:27:55.684] length <- base::length [01:27:55.684] list <- base::list [01:27:55.684] seq.int <- base::seq.int [01:27:55.684] signalCondition <- base::signalCondition [01:27:55.684] sys.calls <- base::sys.calls [01:27:55.684] `[[` <- base::`[[` [01:27:55.684] `+` <- base::`+` [01:27:55.684] `<<-` <- base::`<<-` [01:27:55.684] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.684] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.684] 3L)] [01:27:55.684] } [01:27:55.684] function(cond) { [01:27:55.684] is_error <- inherits(cond, "error") [01:27:55.684] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.684] NULL) [01:27:55.684] if (is_error) { [01:27:55.684] sessionInformation <- function() { [01:27:55.684] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.684] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.684] search = base::search(), system = base::Sys.info()) [01:27:55.684] } [01:27:55.684] ...future.conditions[[length(...future.conditions) + [01:27:55.684] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.684] cond$call), session = sessionInformation(), [01:27:55.684] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.684] signalCondition(cond) [01:27:55.684] } [01:27:55.684] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.684] "immediateCondition"))) { [01:27:55.684] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.684] ...future.conditions[[length(...future.conditions) + [01:27:55.684] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.684] if (TRUE && !signal) { [01:27:55.684] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.684] { [01:27:55.684] inherits <- base::inherits [01:27:55.684] invokeRestart <- base::invokeRestart [01:27:55.684] is.null <- base::is.null [01:27:55.684] muffled <- FALSE [01:27:55.684] if (inherits(cond, "message")) { [01:27:55.684] muffled <- grepl(pattern, "muffleMessage") [01:27:55.684] if (muffled) [01:27:55.684] invokeRestart("muffleMessage") [01:27:55.684] } [01:27:55.684] else if (inherits(cond, "warning")) { [01:27:55.684] muffled <- grepl(pattern, "muffleWarning") [01:27:55.684] if (muffled) [01:27:55.684] invokeRestart("muffleWarning") [01:27:55.684] } [01:27:55.684] else if (inherits(cond, "condition")) { [01:27:55.684] if (!is.null(pattern)) { [01:27:55.684] computeRestarts <- base::computeRestarts [01:27:55.684] grepl <- base::grepl [01:27:55.684] restarts <- computeRestarts(cond) [01:27:55.684] for (restart in restarts) { [01:27:55.684] name <- restart$name [01:27:55.684] if (is.null(name)) [01:27:55.684] next [01:27:55.684] if (!grepl(pattern, name)) [01:27:55.684] next [01:27:55.684] invokeRestart(restart) [01:27:55.684] muffled <- TRUE [01:27:55.684] break [01:27:55.684] } [01:27:55.684] } [01:27:55.684] } [01:27:55.684] invisible(muffled) [01:27:55.684] } [01:27:55.684] muffleCondition(cond, pattern = "^muffle") [01:27:55.684] } [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] if (TRUE) { [01:27:55.684] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.684] { [01:27:55.684] inherits <- base::inherits [01:27:55.684] invokeRestart <- base::invokeRestart [01:27:55.684] is.null <- base::is.null [01:27:55.684] muffled <- FALSE [01:27:55.684] if (inherits(cond, "message")) { [01:27:55.684] muffled <- grepl(pattern, "muffleMessage") [01:27:55.684] if (muffled) [01:27:55.684] invokeRestart("muffleMessage") [01:27:55.684] } [01:27:55.684] else if (inherits(cond, "warning")) { [01:27:55.684] muffled <- grepl(pattern, "muffleWarning") [01:27:55.684] if (muffled) [01:27:55.684] invokeRestart("muffleWarning") [01:27:55.684] } [01:27:55.684] else if (inherits(cond, "condition")) { [01:27:55.684] if (!is.null(pattern)) { [01:27:55.684] computeRestarts <- base::computeRestarts [01:27:55.684] grepl <- base::grepl [01:27:55.684] restarts <- computeRestarts(cond) [01:27:55.684] for (restart in restarts) { [01:27:55.684] name <- restart$name [01:27:55.684] if (is.null(name)) [01:27:55.684] next [01:27:55.684] if (!grepl(pattern, name)) [01:27:55.684] next [01:27:55.684] invokeRestart(restart) [01:27:55.684] muffled <- TRUE [01:27:55.684] break [01:27:55.684] } [01:27:55.684] } [01:27:55.684] } [01:27:55.684] invisible(muffled) [01:27:55.684] } [01:27:55.684] muffleCondition(cond, pattern = "^muffle") [01:27:55.684] } [01:27:55.684] } [01:27:55.684] } [01:27:55.684] })) [01:27:55.684] }, error = function(ex) { [01:27:55.684] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.684] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.684] ...future.rng), started = ...future.startTime, [01:27:55.684] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.684] version = "1.8"), class = "FutureResult") [01:27:55.684] }, finally = { [01:27:55.684] if (!identical(...future.workdir, getwd())) [01:27:55.684] setwd(...future.workdir) [01:27:55.684] { [01:27:55.684] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.684] ...future.oldOptions$nwarnings <- NULL [01:27:55.684] } [01:27:55.684] base::options(...future.oldOptions) [01:27:55.684] if (.Platform$OS.type == "windows") { [01:27:55.684] old_names <- names(...future.oldEnvVars) [01:27:55.684] envs <- base::Sys.getenv() [01:27:55.684] names <- names(envs) [01:27:55.684] common <- intersect(names, old_names) [01:27:55.684] added <- setdiff(names, old_names) [01:27:55.684] removed <- setdiff(old_names, names) [01:27:55.684] changed <- common[...future.oldEnvVars[common] != [01:27:55.684] envs[common]] [01:27:55.684] NAMES <- toupper(changed) [01:27:55.684] args <- list() [01:27:55.684] for (kk in seq_along(NAMES)) { [01:27:55.684] name <- changed[[kk]] [01:27:55.684] NAME <- NAMES[[kk]] [01:27:55.684] if (name != NAME && is.element(NAME, old_names)) [01:27:55.684] next [01:27:55.684] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.684] } [01:27:55.684] NAMES <- toupper(added) [01:27:55.684] for (kk in seq_along(NAMES)) { [01:27:55.684] name <- added[[kk]] [01:27:55.684] NAME <- NAMES[[kk]] [01:27:55.684] if (name != NAME && is.element(NAME, old_names)) [01:27:55.684] next [01:27:55.684] args[[name]] <- "" [01:27:55.684] } [01:27:55.684] NAMES <- toupper(removed) [01:27:55.684] for (kk in seq_along(NAMES)) { [01:27:55.684] name <- removed[[kk]] [01:27:55.684] NAME <- NAMES[[kk]] [01:27:55.684] if (name != NAME && is.element(NAME, old_names)) [01:27:55.684] next [01:27:55.684] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.684] } [01:27:55.684] if (length(args) > 0) [01:27:55.684] base::do.call(base::Sys.setenv, args = args) [01:27:55.684] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.684] } [01:27:55.684] { [01:27:55.684] if (base::length(...future.futureOptionsAdded) > [01:27:55.684] 0L) { [01:27:55.684] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.684] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.684] base::options(opts) [01:27:55.684] } [01:27:55.684] { [01:27:55.684] { [01:27:55.684] NULL [01:27:55.684] RNGkind("Mersenne-Twister") [01:27:55.684] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.684] inherits = FALSE) [01:27:55.684] } [01:27:55.684] options(future.plan = NULL) [01:27:55.684] if (is.na(NA_character_)) [01:27:55.684] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.684] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.684] future::plan(list(function (..., envir = parent.frame()) [01:27:55.684] { [01:27:55.684] future <- SequentialFuture(..., envir = envir) [01:27:55.684] if (!future$lazy) [01:27:55.684] future <- run(future) [01:27:55.684] invisible(future) [01:27:55.684] }), .cleanup = FALSE, .init = FALSE) [01:27:55.684] } [01:27:55.684] } [01:27:55.684] } [01:27:55.684] }) [01:27:55.684] if (TRUE) { [01:27:55.684] base::sink(type = "output", split = FALSE) [01:27:55.684] if (TRUE) { [01:27:55.684] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.684] } [01:27:55.684] else { [01:27:55.684] ...future.result["stdout"] <- base::list(NULL) [01:27:55.684] } [01:27:55.684] base::close(...future.stdout) [01:27:55.684] ...future.stdout <- NULL [01:27:55.684] } [01:27:55.684] ...future.result$conditions <- ...future.conditions [01:27:55.684] ...future.result$finished <- base::Sys.time() [01:27:55.684] ...future.result [01:27:55.684] } [01:27:55.688] assign_globals() ... [01:27:55.688] List of 2 [01:27:55.688] $ weight: num [1:20] 4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ... [01:27:55.688] $ group : Factor w/ 2 levels "Ctl","Trt": 1 1 1 1 1 1 1 1 1 1 ... [01:27:55.688] - attr(*, "where")=List of 2 [01:27:55.688] ..$ weight: [01:27:55.688] ..$ group : [01:27:55.688] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.688] - attr(*, "resolved")= logi FALSE [01:27:55.688] - attr(*, "total_size")= num 896 [01:27:55.688] - attr(*, "already-done")= logi TRUE [01:27:55.693] - copied 'weight' to environment [01:27:55.693] - copied 'group' to environment [01:27:55.694] assign_globals() ... done [01:27:55.694] plan(): Setting new future strategy stack: [01:27:55.695] List of future strategies: [01:27:55.695] 1. sequential: [01:27:55.695] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.695] - tweaked: FALSE [01:27:55.695] - call: NULL [01:27:55.695] plan(): nbrOfWorkers() = 1 [01:27:55.699] plan(): Setting new future strategy stack: [01:27:55.700] List of future strategies: [01:27:55.700] 1. sequential: [01:27:55.700] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.700] - tweaked: FALSE [01:27:55.700] - call: plan(strategy) [01:27:55.701] plan(): nbrOfWorkers() = 1 [01:27:55.701] SequentialFuture started (and completed) [01:27:55.701] - Launch lazy future ... done [01:27:55.702] run() for 'SequentialFuture' ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:55.706] getGlobalsAndPackages() ... [01:27:55.706] Searching for globals... [01:27:55.708] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:55.709] Searching for globals ... DONE [01:27:55.709] Resolving globals: FALSE [01:27:55.714] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:55.715] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:55.715] - globals: [2] 'weight', 'group' [01:27:55.715] - packages: [1] 'stats' [01:27:55.715] getGlobalsAndPackages() ... DONE [01:27:55.716] run() for 'Future' ... [01:27:55.716] - state: 'created' [01:27:55.717] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.717] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.717] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.718] - Field: 'label' [01:27:55.718] - Field: 'local' [01:27:55.718] - Field: 'owner' [01:27:55.718] - Field: 'envir' [01:27:55.719] - Field: 'packages' [01:27:55.719] - Field: 'gc' [01:27:55.719] - Field: 'conditions' [01:27:55.719] - Field: 'expr' [01:27:55.720] - Field: 'uuid' [01:27:55.720] - Field: 'seed' [01:27:55.720] - Field: 'version' [01:27:55.720] - Field: 'result' [01:27:55.721] - Field: 'asynchronous' [01:27:55.721] - Field: 'calls' [01:27:55.721] - Field: 'globals' [01:27:55.721] - Field: 'stdout' [01:27:55.721] - Field: 'earlySignal' [01:27:55.722] - Field: 'lazy' [01:27:55.722] - Field: 'state' [01:27:55.722] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.722] - Launch lazy future ... [01:27:55.723] Packages needed by the future expression (n = 1): 'stats' [01:27:55.723] Packages needed by future strategies (n = 0): [01:27:55.724] { [01:27:55.724] { [01:27:55.724] { [01:27:55.724] ...future.startTime <- base::Sys.time() [01:27:55.724] { [01:27:55.724] { [01:27:55.724] { [01:27:55.724] { [01:27:55.724] base::local({ [01:27:55.724] has_future <- base::requireNamespace("future", [01:27:55.724] quietly = TRUE) [01:27:55.724] if (has_future) { [01:27:55.724] ns <- base::getNamespace("future") [01:27:55.724] version <- ns[[".package"]][["version"]] [01:27:55.724] if (is.null(version)) [01:27:55.724] version <- utils::packageVersion("future") [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] version <- NULL [01:27:55.724] } [01:27:55.724] if (!has_future || version < "1.8.0") { [01:27:55.724] info <- base::c(r_version = base::gsub("R version ", [01:27:55.724] "", base::R.version$version.string), [01:27:55.724] platform = base::sprintf("%s (%s-bit)", [01:27:55.724] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.724] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.724] "release", "version")], collapse = " "), [01:27:55.724] hostname = base::Sys.info()[["nodename"]]) [01:27:55.724] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.724] info) [01:27:55.724] info <- base::paste(info, collapse = "; ") [01:27:55.724] if (!has_future) { [01:27:55.724] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.724] info) [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.724] info, version) [01:27:55.724] } [01:27:55.724] base::stop(msg) [01:27:55.724] } [01:27:55.724] }) [01:27:55.724] } [01:27:55.724] base::local({ [01:27:55.724] for (pkg in "stats") { [01:27:55.724] base::loadNamespace(pkg) [01:27:55.724] base::library(pkg, character.only = TRUE) [01:27:55.724] } [01:27:55.724] }) [01:27:55.724] } [01:27:55.724] options(future.plan = NULL) [01:27:55.724] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.724] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.724] } [01:27:55.724] ...future.workdir <- getwd() [01:27:55.724] } [01:27:55.724] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.724] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.724] } [01:27:55.724] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.724] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.724] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.724] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.724] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.724] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.724] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.724] base::names(...future.oldOptions)) [01:27:55.724] } [01:27:55.724] if (FALSE) { [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] if (TRUE) { [01:27:55.724] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.724] open = "w") [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.724] windows = "NUL", "/dev/null"), open = "w") [01:27:55.724] } [01:27:55.724] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.724] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.724] base::sink(type = "output", split = FALSE) [01:27:55.724] base::close(...future.stdout) [01:27:55.724] }, add = TRUE) [01:27:55.724] } [01:27:55.724] ...future.frame <- base::sys.nframe() [01:27:55.724] ...future.conditions <- base::list() [01:27:55.724] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.724] if (FALSE) { [01:27:55.724] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.724] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.724] } [01:27:55.724] ...future.result <- base::tryCatch({ [01:27:55.724] base::withCallingHandlers({ [01:27:55.724] ...future.value <- base::withVisible(base::local({ [01:27:55.724] lm(weight ~ group - 1) [01:27:55.724] })) [01:27:55.724] future::FutureResult(value = ...future.value$value, [01:27:55.724] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.724] ...future.rng), globalenv = if (FALSE) [01:27:55.724] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.724] ...future.globalenv.names)) [01:27:55.724] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.724] }, condition = base::local({ [01:27:55.724] c <- base::c [01:27:55.724] inherits <- base::inherits [01:27:55.724] invokeRestart <- base::invokeRestart [01:27:55.724] length <- base::length [01:27:55.724] list <- base::list [01:27:55.724] seq.int <- base::seq.int [01:27:55.724] signalCondition <- base::signalCondition [01:27:55.724] sys.calls <- base::sys.calls [01:27:55.724] `[[` <- base::`[[` [01:27:55.724] `+` <- base::`+` [01:27:55.724] `<<-` <- base::`<<-` [01:27:55.724] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.724] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.724] 3L)] [01:27:55.724] } [01:27:55.724] function(cond) { [01:27:55.724] is_error <- inherits(cond, "error") [01:27:55.724] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.724] NULL) [01:27:55.724] if (is_error) { [01:27:55.724] sessionInformation <- function() { [01:27:55.724] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.724] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.724] search = base::search(), system = base::Sys.info()) [01:27:55.724] } [01:27:55.724] ...future.conditions[[length(...future.conditions) + [01:27:55.724] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.724] cond$call), session = sessionInformation(), [01:27:55.724] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.724] signalCondition(cond) [01:27:55.724] } [01:27:55.724] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.724] "immediateCondition"))) { [01:27:55.724] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.724] ...future.conditions[[length(...future.conditions) + [01:27:55.724] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.724] if (TRUE && !signal) { [01:27:55.724] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.724] { [01:27:55.724] inherits <- base::inherits [01:27:55.724] invokeRestart <- base::invokeRestart [01:27:55.724] is.null <- base::is.null [01:27:55.724] muffled <- FALSE [01:27:55.724] if (inherits(cond, "message")) { [01:27:55.724] muffled <- grepl(pattern, "muffleMessage") [01:27:55.724] if (muffled) [01:27:55.724] invokeRestart("muffleMessage") [01:27:55.724] } [01:27:55.724] else if (inherits(cond, "warning")) { [01:27:55.724] muffled <- grepl(pattern, "muffleWarning") [01:27:55.724] if (muffled) [01:27:55.724] invokeRestart("muffleWarning") [01:27:55.724] } [01:27:55.724] else if (inherits(cond, "condition")) { [01:27:55.724] if (!is.null(pattern)) { [01:27:55.724] computeRestarts <- base::computeRestarts [01:27:55.724] grepl <- base::grepl [01:27:55.724] restarts <- computeRestarts(cond) [01:27:55.724] for (restart in restarts) { [01:27:55.724] name <- restart$name [01:27:55.724] if (is.null(name)) [01:27:55.724] next [01:27:55.724] if (!grepl(pattern, name)) [01:27:55.724] next [01:27:55.724] invokeRestart(restart) [01:27:55.724] muffled <- TRUE [01:27:55.724] break [01:27:55.724] } [01:27:55.724] } [01:27:55.724] } [01:27:55.724] invisible(muffled) [01:27:55.724] } [01:27:55.724] muffleCondition(cond, pattern = "^muffle") [01:27:55.724] } [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] if (TRUE) { [01:27:55.724] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.724] { [01:27:55.724] inherits <- base::inherits [01:27:55.724] invokeRestart <- base::invokeRestart [01:27:55.724] is.null <- base::is.null [01:27:55.724] muffled <- FALSE [01:27:55.724] if (inherits(cond, "message")) { [01:27:55.724] muffled <- grepl(pattern, "muffleMessage") [01:27:55.724] if (muffled) [01:27:55.724] invokeRestart("muffleMessage") [01:27:55.724] } [01:27:55.724] else if (inherits(cond, "warning")) { [01:27:55.724] muffled <- grepl(pattern, "muffleWarning") [01:27:55.724] if (muffled) [01:27:55.724] invokeRestart("muffleWarning") [01:27:55.724] } [01:27:55.724] else if (inherits(cond, "condition")) { [01:27:55.724] if (!is.null(pattern)) { [01:27:55.724] computeRestarts <- base::computeRestarts [01:27:55.724] grepl <- base::grepl [01:27:55.724] restarts <- computeRestarts(cond) [01:27:55.724] for (restart in restarts) { [01:27:55.724] name <- restart$name [01:27:55.724] if (is.null(name)) [01:27:55.724] next [01:27:55.724] if (!grepl(pattern, name)) [01:27:55.724] next [01:27:55.724] invokeRestart(restart) [01:27:55.724] muffled <- TRUE [01:27:55.724] break [01:27:55.724] } [01:27:55.724] } [01:27:55.724] } [01:27:55.724] invisible(muffled) [01:27:55.724] } [01:27:55.724] muffleCondition(cond, pattern = "^muffle") [01:27:55.724] } [01:27:55.724] } [01:27:55.724] } [01:27:55.724] })) [01:27:55.724] }, error = function(ex) { [01:27:55.724] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.724] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.724] ...future.rng), started = ...future.startTime, [01:27:55.724] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.724] version = "1.8"), class = "FutureResult") [01:27:55.724] }, finally = { [01:27:55.724] if (!identical(...future.workdir, getwd())) [01:27:55.724] setwd(...future.workdir) [01:27:55.724] { [01:27:55.724] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.724] ...future.oldOptions$nwarnings <- NULL [01:27:55.724] } [01:27:55.724] base::options(...future.oldOptions) [01:27:55.724] if (.Platform$OS.type == "windows") { [01:27:55.724] old_names <- names(...future.oldEnvVars) [01:27:55.724] envs <- base::Sys.getenv() [01:27:55.724] names <- names(envs) [01:27:55.724] common <- intersect(names, old_names) [01:27:55.724] added <- setdiff(names, old_names) [01:27:55.724] removed <- setdiff(old_names, names) [01:27:55.724] changed <- common[...future.oldEnvVars[common] != [01:27:55.724] envs[common]] [01:27:55.724] NAMES <- toupper(changed) [01:27:55.724] args <- list() [01:27:55.724] for (kk in seq_along(NAMES)) { [01:27:55.724] name <- changed[[kk]] [01:27:55.724] NAME <- NAMES[[kk]] [01:27:55.724] if (name != NAME && is.element(NAME, old_names)) [01:27:55.724] next [01:27:55.724] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.724] } [01:27:55.724] NAMES <- toupper(added) [01:27:55.724] for (kk in seq_along(NAMES)) { [01:27:55.724] name <- added[[kk]] [01:27:55.724] NAME <- NAMES[[kk]] [01:27:55.724] if (name != NAME && is.element(NAME, old_names)) [01:27:55.724] next [01:27:55.724] args[[name]] <- "" [01:27:55.724] } [01:27:55.724] NAMES <- toupper(removed) [01:27:55.724] for (kk in seq_along(NAMES)) { [01:27:55.724] name <- removed[[kk]] [01:27:55.724] NAME <- NAMES[[kk]] [01:27:55.724] if (name != NAME && is.element(NAME, old_names)) [01:27:55.724] next [01:27:55.724] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.724] } [01:27:55.724] if (length(args) > 0) [01:27:55.724] base::do.call(base::Sys.setenv, args = args) [01:27:55.724] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.724] } [01:27:55.724] { [01:27:55.724] if (base::length(...future.futureOptionsAdded) > [01:27:55.724] 0L) { [01:27:55.724] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.724] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.724] base::options(opts) [01:27:55.724] } [01:27:55.724] { [01:27:55.724] { [01:27:55.724] NULL [01:27:55.724] RNGkind("Mersenne-Twister") [01:27:55.724] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.724] inherits = FALSE) [01:27:55.724] } [01:27:55.724] options(future.plan = NULL) [01:27:55.724] if (is.na(NA_character_)) [01:27:55.724] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.724] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.724] future::plan(list(function (..., envir = parent.frame()) [01:27:55.724] { [01:27:55.724] future <- SequentialFuture(..., envir = envir) [01:27:55.724] if (!future$lazy) [01:27:55.724] future <- run(future) [01:27:55.724] invisible(future) [01:27:55.724] }), .cleanup = FALSE, .init = FALSE) [01:27:55.724] } [01:27:55.724] } [01:27:55.724] } [01:27:55.724] }) [01:27:55.724] if (TRUE) { [01:27:55.724] base::sink(type = "output", split = FALSE) [01:27:55.724] if (TRUE) { [01:27:55.724] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.724] } [01:27:55.724] else { [01:27:55.724] ...future.result["stdout"] <- base::list(NULL) [01:27:55.724] } [01:27:55.724] base::close(...future.stdout) [01:27:55.724] ...future.stdout <- NULL [01:27:55.724] } [01:27:55.724] ...future.result$conditions <- ...future.conditions [01:27:55.724] ...future.result$finished <- base::Sys.time() [01:27:55.724] ...future.result [01:27:55.724] } [01:27:55.728] assign_globals() ... [01:27:55.728] List of 2 [01:27:55.728] $ weight: num [1:20] 4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ... [01:27:55.728] $ group : Factor w/ 2 levels "Ctl","Trt": 1 1 1 1 1 1 1 1 1 1 ... [01:27:55.728] - attr(*, "where")=List of 2 [01:27:55.728] ..$ weight: [01:27:55.728] ..$ group : [01:27:55.728] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.728] - attr(*, "resolved")= logi FALSE [01:27:55.728] - attr(*, "total_size")= num 896 [01:27:55.728] - attr(*, "already-done")= logi TRUE [01:27:55.733] - copied 'weight' to environment [01:27:55.733] - copied 'group' to environment [01:27:55.734] assign_globals() ... done [01:27:55.735] plan(): Setting new future strategy stack: [01:27:55.735] List of future strategies: [01:27:55.735] 1. sequential: [01:27:55.735] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.735] - tweaked: FALSE [01:27:55.735] - call: NULL [01:27:55.736] plan(): nbrOfWorkers() = 1 [01:27:55.739] plan(): Setting new future strategy stack: [01:27:55.739] List of future strategies: [01:27:55.739] 1. sequential: [01:27:55.739] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.739] - tweaked: FALSE [01:27:55.739] - call: plan(strategy) [01:27:55.740] plan(): nbrOfWorkers() = 1 [01:27:55.740] SequentialFuture started (and completed) [01:27:55.740] - Launch lazy future ... done [01:27:55.740] run() for 'SequentialFuture' ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:55.744] getGlobalsAndPackages() ... [01:27:55.744] Searching for globals... [01:27:55.746] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:55.747] Searching for globals ... DONE [01:27:55.747] Resolving globals: FALSE [01:27:55.748] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:55.748] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:55.749] - globals: [2] 'weight', 'group' [01:27:55.749] - packages: [1] 'stats' [01:27:55.749] getGlobalsAndPackages() ... DONE [01:27:55.750] run() for 'Future' ... [01:27:55.750] - state: 'created' [01:27:55.750] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.751] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.751] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.751] - Field: 'label' [01:27:55.751] - Field: 'local' [01:27:55.754] - Field: 'owner' [01:27:55.755] - Field: 'envir' [01:27:55.755] - Field: 'packages' [01:27:55.755] - Field: 'gc' [01:27:55.756] - Field: 'conditions' [01:27:55.756] - Field: 'expr' [01:27:55.756] - Field: 'uuid' [01:27:55.756] - Field: 'seed' [01:27:55.756] - Field: 'version' [01:27:55.757] - Field: 'result' [01:27:55.757] - Field: 'asynchronous' [01:27:55.757] - Field: 'calls' [01:27:55.757] - Field: 'globals' [01:27:55.758] - Field: 'stdout' [01:27:55.758] - Field: 'earlySignal' [01:27:55.758] - Field: 'lazy' [01:27:55.758] - Field: 'state' [01:27:55.759] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.759] - Launch lazy future ... [01:27:55.759] Packages needed by the future expression (n = 1): 'stats' [01:27:55.760] Packages needed by future strategies (n = 0): [01:27:55.760] { [01:27:55.760] { [01:27:55.760] { [01:27:55.760] ...future.startTime <- base::Sys.time() [01:27:55.760] { [01:27:55.760] { [01:27:55.760] { [01:27:55.760] { [01:27:55.760] base::local({ [01:27:55.760] has_future <- base::requireNamespace("future", [01:27:55.760] quietly = TRUE) [01:27:55.760] if (has_future) { [01:27:55.760] ns <- base::getNamespace("future") [01:27:55.760] version <- ns[[".package"]][["version"]] [01:27:55.760] if (is.null(version)) [01:27:55.760] version <- utils::packageVersion("future") [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] version <- NULL [01:27:55.760] } [01:27:55.760] if (!has_future || version < "1.8.0") { [01:27:55.760] info <- base::c(r_version = base::gsub("R version ", [01:27:55.760] "", base::R.version$version.string), [01:27:55.760] platform = base::sprintf("%s (%s-bit)", [01:27:55.760] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.760] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.760] "release", "version")], collapse = " "), [01:27:55.760] hostname = base::Sys.info()[["nodename"]]) [01:27:55.760] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.760] info) [01:27:55.760] info <- base::paste(info, collapse = "; ") [01:27:55.760] if (!has_future) { [01:27:55.760] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.760] info) [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.760] info, version) [01:27:55.760] } [01:27:55.760] base::stop(msg) [01:27:55.760] } [01:27:55.760] }) [01:27:55.760] } [01:27:55.760] base::local({ [01:27:55.760] for (pkg in "stats") { [01:27:55.760] base::loadNamespace(pkg) [01:27:55.760] base::library(pkg, character.only = TRUE) [01:27:55.760] } [01:27:55.760] }) [01:27:55.760] } [01:27:55.760] options(future.plan = NULL) [01:27:55.760] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.760] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.760] } [01:27:55.760] ...future.workdir <- getwd() [01:27:55.760] } [01:27:55.760] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.760] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.760] } [01:27:55.760] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.760] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.760] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.760] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.760] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.760] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.760] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.760] base::names(...future.oldOptions)) [01:27:55.760] } [01:27:55.760] if (FALSE) { [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] if (TRUE) { [01:27:55.760] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.760] open = "w") [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.760] windows = "NUL", "/dev/null"), open = "w") [01:27:55.760] } [01:27:55.760] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.760] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.760] base::sink(type = "output", split = FALSE) [01:27:55.760] base::close(...future.stdout) [01:27:55.760] }, add = TRUE) [01:27:55.760] } [01:27:55.760] ...future.frame <- base::sys.nframe() [01:27:55.760] ...future.conditions <- base::list() [01:27:55.760] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.760] if (FALSE) { [01:27:55.760] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.760] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.760] } [01:27:55.760] ...future.result <- base::tryCatch({ [01:27:55.760] base::withCallingHandlers({ [01:27:55.760] ...future.value <- base::withVisible(base::local({ [01:27:55.760] lm(weight ~ group - 1) [01:27:55.760] })) [01:27:55.760] future::FutureResult(value = ...future.value$value, [01:27:55.760] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.760] ...future.rng), globalenv = if (FALSE) [01:27:55.760] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.760] ...future.globalenv.names)) [01:27:55.760] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.760] }, condition = base::local({ [01:27:55.760] c <- base::c [01:27:55.760] inherits <- base::inherits [01:27:55.760] invokeRestart <- base::invokeRestart [01:27:55.760] length <- base::length [01:27:55.760] list <- base::list [01:27:55.760] seq.int <- base::seq.int [01:27:55.760] signalCondition <- base::signalCondition [01:27:55.760] sys.calls <- base::sys.calls [01:27:55.760] `[[` <- base::`[[` [01:27:55.760] `+` <- base::`+` [01:27:55.760] `<<-` <- base::`<<-` [01:27:55.760] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.760] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.760] 3L)] [01:27:55.760] } [01:27:55.760] function(cond) { [01:27:55.760] is_error <- inherits(cond, "error") [01:27:55.760] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.760] NULL) [01:27:55.760] if (is_error) { [01:27:55.760] sessionInformation <- function() { [01:27:55.760] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.760] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.760] search = base::search(), system = base::Sys.info()) [01:27:55.760] } [01:27:55.760] ...future.conditions[[length(...future.conditions) + [01:27:55.760] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.760] cond$call), session = sessionInformation(), [01:27:55.760] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.760] signalCondition(cond) [01:27:55.760] } [01:27:55.760] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.760] "immediateCondition"))) { [01:27:55.760] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.760] ...future.conditions[[length(...future.conditions) + [01:27:55.760] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.760] if (TRUE && !signal) { [01:27:55.760] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.760] { [01:27:55.760] inherits <- base::inherits [01:27:55.760] invokeRestart <- base::invokeRestart [01:27:55.760] is.null <- base::is.null [01:27:55.760] muffled <- FALSE [01:27:55.760] if (inherits(cond, "message")) { [01:27:55.760] muffled <- grepl(pattern, "muffleMessage") [01:27:55.760] if (muffled) [01:27:55.760] invokeRestart("muffleMessage") [01:27:55.760] } [01:27:55.760] else if (inherits(cond, "warning")) { [01:27:55.760] muffled <- grepl(pattern, "muffleWarning") [01:27:55.760] if (muffled) [01:27:55.760] invokeRestart("muffleWarning") [01:27:55.760] } [01:27:55.760] else if (inherits(cond, "condition")) { [01:27:55.760] if (!is.null(pattern)) { [01:27:55.760] computeRestarts <- base::computeRestarts [01:27:55.760] grepl <- base::grepl [01:27:55.760] restarts <- computeRestarts(cond) [01:27:55.760] for (restart in restarts) { [01:27:55.760] name <- restart$name [01:27:55.760] if (is.null(name)) [01:27:55.760] next [01:27:55.760] if (!grepl(pattern, name)) [01:27:55.760] next [01:27:55.760] invokeRestart(restart) [01:27:55.760] muffled <- TRUE [01:27:55.760] break [01:27:55.760] } [01:27:55.760] } [01:27:55.760] } [01:27:55.760] invisible(muffled) [01:27:55.760] } [01:27:55.760] muffleCondition(cond, pattern = "^muffle") [01:27:55.760] } [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] if (TRUE) { [01:27:55.760] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.760] { [01:27:55.760] inherits <- base::inherits [01:27:55.760] invokeRestart <- base::invokeRestart [01:27:55.760] is.null <- base::is.null [01:27:55.760] muffled <- FALSE [01:27:55.760] if (inherits(cond, "message")) { [01:27:55.760] muffled <- grepl(pattern, "muffleMessage") [01:27:55.760] if (muffled) [01:27:55.760] invokeRestart("muffleMessage") [01:27:55.760] } [01:27:55.760] else if (inherits(cond, "warning")) { [01:27:55.760] muffled <- grepl(pattern, "muffleWarning") [01:27:55.760] if (muffled) [01:27:55.760] invokeRestart("muffleWarning") [01:27:55.760] } [01:27:55.760] else if (inherits(cond, "condition")) { [01:27:55.760] if (!is.null(pattern)) { [01:27:55.760] computeRestarts <- base::computeRestarts [01:27:55.760] grepl <- base::grepl [01:27:55.760] restarts <- computeRestarts(cond) [01:27:55.760] for (restart in restarts) { [01:27:55.760] name <- restart$name [01:27:55.760] if (is.null(name)) [01:27:55.760] next [01:27:55.760] if (!grepl(pattern, name)) [01:27:55.760] next [01:27:55.760] invokeRestart(restart) [01:27:55.760] muffled <- TRUE [01:27:55.760] break [01:27:55.760] } [01:27:55.760] } [01:27:55.760] } [01:27:55.760] invisible(muffled) [01:27:55.760] } [01:27:55.760] muffleCondition(cond, pattern = "^muffle") [01:27:55.760] } [01:27:55.760] } [01:27:55.760] } [01:27:55.760] })) [01:27:55.760] }, error = function(ex) { [01:27:55.760] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.760] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.760] ...future.rng), started = ...future.startTime, [01:27:55.760] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.760] version = "1.8"), class = "FutureResult") [01:27:55.760] }, finally = { [01:27:55.760] if (!identical(...future.workdir, getwd())) [01:27:55.760] setwd(...future.workdir) [01:27:55.760] { [01:27:55.760] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.760] ...future.oldOptions$nwarnings <- NULL [01:27:55.760] } [01:27:55.760] base::options(...future.oldOptions) [01:27:55.760] if (.Platform$OS.type == "windows") { [01:27:55.760] old_names <- names(...future.oldEnvVars) [01:27:55.760] envs <- base::Sys.getenv() [01:27:55.760] names <- names(envs) [01:27:55.760] common <- intersect(names, old_names) [01:27:55.760] added <- setdiff(names, old_names) [01:27:55.760] removed <- setdiff(old_names, names) [01:27:55.760] changed <- common[...future.oldEnvVars[common] != [01:27:55.760] envs[common]] [01:27:55.760] NAMES <- toupper(changed) [01:27:55.760] args <- list() [01:27:55.760] for (kk in seq_along(NAMES)) { [01:27:55.760] name <- changed[[kk]] [01:27:55.760] NAME <- NAMES[[kk]] [01:27:55.760] if (name != NAME && is.element(NAME, old_names)) [01:27:55.760] next [01:27:55.760] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.760] } [01:27:55.760] NAMES <- toupper(added) [01:27:55.760] for (kk in seq_along(NAMES)) { [01:27:55.760] name <- added[[kk]] [01:27:55.760] NAME <- NAMES[[kk]] [01:27:55.760] if (name != NAME && is.element(NAME, old_names)) [01:27:55.760] next [01:27:55.760] args[[name]] <- "" [01:27:55.760] } [01:27:55.760] NAMES <- toupper(removed) [01:27:55.760] for (kk in seq_along(NAMES)) { [01:27:55.760] name <- removed[[kk]] [01:27:55.760] NAME <- NAMES[[kk]] [01:27:55.760] if (name != NAME && is.element(NAME, old_names)) [01:27:55.760] next [01:27:55.760] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.760] } [01:27:55.760] if (length(args) > 0) [01:27:55.760] base::do.call(base::Sys.setenv, args = args) [01:27:55.760] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.760] } [01:27:55.760] { [01:27:55.760] if (base::length(...future.futureOptionsAdded) > [01:27:55.760] 0L) { [01:27:55.760] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.760] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.760] base::options(opts) [01:27:55.760] } [01:27:55.760] { [01:27:55.760] { [01:27:55.760] NULL [01:27:55.760] RNGkind("Mersenne-Twister") [01:27:55.760] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.760] inherits = FALSE) [01:27:55.760] } [01:27:55.760] options(future.plan = NULL) [01:27:55.760] if (is.na(NA_character_)) [01:27:55.760] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.760] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.760] future::plan(list(function (..., envir = parent.frame()) [01:27:55.760] { [01:27:55.760] future <- SequentialFuture(..., envir = envir) [01:27:55.760] if (!future$lazy) [01:27:55.760] future <- run(future) [01:27:55.760] invisible(future) [01:27:55.760] }), .cleanup = FALSE, .init = FALSE) [01:27:55.760] } [01:27:55.760] } [01:27:55.760] } [01:27:55.760] }) [01:27:55.760] if (TRUE) { [01:27:55.760] base::sink(type = "output", split = FALSE) [01:27:55.760] if (TRUE) { [01:27:55.760] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.760] } [01:27:55.760] else { [01:27:55.760] ...future.result["stdout"] <- base::list(NULL) [01:27:55.760] } [01:27:55.760] base::close(...future.stdout) [01:27:55.760] ...future.stdout <- NULL [01:27:55.760] } [01:27:55.760] ...future.result$conditions <- ...future.conditions [01:27:55.760] ...future.result$finished <- base::Sys.time() [01:27:55.760] ...future.result [01:27:55.760] } [01:27:55.764] assign_globals() ... [01:27:55.765] List of 2 [01:27:55.765] $ weight: num [1:20] 4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ... [01:27:55.765] $ group : Factor w/ 2 levels "Ctl","Trt": 1 1 1 1 1 1 1 1 1 1 ... [01:27:55.765] - attr(*, "where")=List of 2 [01:27:55.765] ..$ weight: [01:27:55.765] ..$ group : [01:27:55.765] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.765] - attr(*, "resolved")= logi FALSE [01:27:55.765] - attr(*, "total_size")= num 896 [01:27:55.765] - attr(*, "already-done")= logi TRUE [01:27:55.770] - copied 'weight' to environment [01:27:55.770] - copied 'group' to environment [01:27:55.770] assign_globals() ... done [01:27:55.771] plan(): Setting new future strategy stack: [01:27:55.771] List of future strategies: [01:27:55.771] 1. sequential: [01:27:55.771] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.771] - tweaked: FALSE [01:27:55.771] - call: NULL [01:27:55.772] plan(): nbrOfWorkers() = 1 [01:27:55.774] plan(): Setting new future strategy stack: [01:27:55.775] List of future strategies: [01:27:55.775] 1. sequential: [01:27:55.775] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.775] - tweaked: FALSE [01:27:55.775] - call: plan(strategy) [01:27:55.775] plan(): nbrOfWorkers() = 1 [01:27:55.776] SequentialFuture started (and completed) [01:27:55.776] - Launch lazy future ... done [01:27:55.776] run() for 'SequentialFuture' ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:55.779] getGlobalsAndPackages() ... [01:27:55.779] Searching for globals... [01:27:55.781] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:55.781] Searching for globals ... DONE [01:27:55.782] Resolving globals: FALSE [01:27:55.782] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:55.783] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:55.783] - globals: [2] 'weight', 'group' [01:27:55.783] - packages: [1] 'stats' [01:27:55.784] getGlobalsAndPackages() ... DONE [01:27:55.784] run() for 'Future' ... [01:27:55.784] - state: 'created' [01:27:55.784] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.785] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.785] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.785] - Field: 'label' [01:27:55.786] - Field: 'local' [01:27:55.786] - Field: 'owner' [01:27:55.786] - Field: 'envir' [01:27:55.786] - Field: 'packages' [01:27:55.786] - Field: 'gc' [01:27:55.786] - Field: 'conditions' [01:27:55.787] - Field: 'expr' [01:27:55.787] - Field: 'uuid' [01:27:55.787] - Field: 'seed' [01:27:55.787] - Field: 'version' [01:27:55.787] - Field: 'result' [01:27:55.788] - Field: 'asynchronous' [01:27:55.788] - Field: 'calls' [01:27:55.788] - Field: 'globals' [01:27:55.788] - Field: 'stdout' [01:27:55.788] - Field: 'earlySignal' [01:27:55.789] - Field: 'lazy' [01:27:55.789] - Field: 'state' [01:27:55.789] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.791] - Launch lazy future ... [01:27:55.791] Packages needed by the future expression (n = 1): 'stats' [01:27:55.791] Packages needed by future strategies (n = 0): [01:27:55.792] { [01:27:55.792] { [01:27:55.792] { [01:27:55.792] ...future.startTime <- base::Sys.time() [01:27:55.792] { [01:27:55.792] { [01:27:55.792] { [01:27:55.792] { [01:27:55.792] base::local({ [01:27:55.792] has_future <- base::requireNamespace("future", [01:27:55.792] quietly = TRUE) [01:27:55.792] if (has_future) { [01:27:55.792] ns <- base::getNamespace("future") [01:27:55.792] version <- ns[[".package"]][["version"]] [01:27:55.792] if (is.null(version)) [01:27:55.792] version <- utils::packageVersion("future") [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] version <- NULL [01:27:55.792] } [01:27:55.792] if (!has_future || version < "1.8.0") { [01:27:55.792] info <- base::c(r_version = base::gsub("R version ", [01:27:55.792] "", base::R.version$version.string), [01:27:55.792] platform = base::sprintf("%s (%s-bit)", [01:27:55.792] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.792] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.792] "release", "version")], collapse = " "), [01:27:55.792] hostname = base::Sys.info()[["nodename"]]) [01:27:55.792] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.792] info) [01:27:55.792] info <- base::paste(info, collapse = "; ") [01:27:55.792] if (!has_future) { [01:27:55.792] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.792] info) [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.792] info, version) [01:27:55.792] } [01:27:55.792] base::stop(msg) [01:27:55.792] } [01:27:55.792] }) [01:27:55.792] } [01:27:55.792] base::local({ [01:27:55.792] for (pkg in "stats") { [01:27:55.792] base::loadNamespace(pkg) [01:27:55.792] base::library(pkg, character.only = TRUE) [01:27:55.792] } [01:27:55.792] }) [01:27:55.792] } [01:27:55.792] options(future.plan = NULL) [01:27:55.792] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.792] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.792] } [01:27:55.792] ...future.workdir <- getwd() [01:27:55.792] } [01:27:55.792] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.792] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.792] } [01:27:55.792] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.792] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.792] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.792] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.792] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.792] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.792] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.792] base::names(...future.oldOptions)) [01:27:55.792] } [01:27:55.792] if (FALSE) { [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] if (TRUE) { [01:27:55.792] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.792] open = "w") [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.792] windows = "NUL", "/dev/null"), open = "w") [01:27:55.792] } [01:27:55.792] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.792] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.792] base::sink(type = "output", split = FALSE) [01:27:55.792] base::close(...future.stdout) [01:27:55.792] }, add = TRUE) [01:27:55.792] } [01:27:55.792] ...future.frame <- base::sys.nframe() [01:27:55.792] ...future.conditions <- base::list() [01:27:55.792] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.792] if (FALSE) { [01:27:55.792] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.792] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.792] } [01:27:55.792] ...future.result <- base::tryCatch({ [01:27:55.792] base::withCallingHandlers({ [01:27:55.792] ...future.value <- base::withVisible(base::local({ [01:27:55.792] lm(weight ~ group - 1) [01:27:55.792] })) [01:27:55.792] future::FutureResult(value = ...future.value$value, [01:27:55.792] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.792] ...future.rng), globalenv = if (FALSE) [01:27:55.792] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.792] ...future.globalenv.names)) [01:27:55.792] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.792] }, condition = base::local({ [01:27:55.792] c <- base::c [01:27:55.792] inherits <- base::inherits [01:27:55.792] invokeRestart <- base::invokeRestart [01:27:55.792] length <- base::length [01:27:55.792] list <- base::list [01:27:55.792] seq.int <- base::seq.int [01:27:55.792] signalCondition <- base::signalCondition [01:27:55.792] sys.calls <- base::sys.calls [01:27:55.792] `[[` <- base::`[[` [01:27:55.792] `+` <- base::`+` [01:27:55.792] `<<-` <- base::`<<-` [01:27:55.792] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.792] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.792] 3L)] [01:27:55.792] } [01:27:55.792] function(cond) { [01:27:55.792] is_error <- inherits(cond, "error") [01:27:55.792] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.792] NULL) [01:27:55.792] if (is_error) { [01:27:55.792] sessionInformation <- function() { [01:27:55.792] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.792] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.792] search = base::search(), system = base::Sys.info()) [01:27:55.792] } [01:27:55.792] ...future.conditions[[length(...future.conditions) + [01:27:55.792] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.792] cond$call), session = sessionInformation(), [01:27:55.792] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.792] signalCondition(cond) [01:27:55.792] } [01:27:55.792] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.792] "immediateCondition"))) { [01:27:55.792] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.792] ...future.conditions[[length(...future.conditions) + [01:27:55.792] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.792] if (TRUE && !signal) { [01:27:55.792] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.792] { [01:27:55.792] inherits <- base::inherits [01:27:55.792] invokeRestart <- base::invokeRestart [01:27:55.792] is.null <- base::is.null [01:27:55.792] muffled <- FALSE [01:27:55.792] if (inherits(cond, "message")) { [01:27:55.792] muffled <- grepl(pattern, "muffleMessage") [01:27:55.792] if (muffled) [01:27:55.792] invokeRestart("muffleMessage") [01:27:55.792] } [01:27:55.792] else if (inherits(cond, "warning")) { [01:27:55.792] muffled <- grepl(pattern, "muffleWarning") [01:27:55.792] if (muffled) [01:27:55.792] invokeRestart("muffleWarning") [01:27:55.792] } [01:27:55.792] else if (inherits(cond, "condition")) { [01:27:55.792] if (!is.null(pattern)) { [01:27:55.792] computeRestarts <- base::computeRestarts [01:27:55.792] grepl <- base::grepl [01:27:55.792] restarts <- computeRestarts(cond) [01:27:55.792] for (restart in restarts) { [01:27:55.792] name <- restart$name [01:27:55.792] if (is.null(name)) [01:27:55.792] next [01:27:55.792] if (!grepl(pattern, name)) [01:27:55.792] next [01:27:55.792] invokeRestart(restart) [01:27:55.792] muffled <- TRUE [01:27:55.792] break [01:27:55.792] } [01:27:55.792] } [01:27:55.792] } [01:27:55.792] invisible(muffled) [01:27:55.792] } [01:27:55.792] muffleCondition(cond, pattern = "^muffle") [01:27:55.792] } [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] if (TRUE) { [01:27:55.792] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.792] { [01:27:55.792] inherits <- base::inherits [01:27:55.792] invokeRestart <- base::invokeRestart [01:27:55.792] is.null <- base::is.null [01:27:55.792] muffled <- FALSE [01:27:55.792] if (inherits(cond, "message")) { [01:27:55.792] muffled <- grepl(pattern, "muffleMessage") [01:27:55.792] if (muffled) [01:27:55.792] invokeRestart("muffleMessage") [01:27:55.792] } [01:27:55.792] else if (inherits(cond, "warning")) { [01:27:55.792] muffled <- grepl(pattern, "muffleWarning") [01:27:55.792] if (muffled) [01:27:55.792] invokeRestart("muffleWarning") [01:27:55.792] } [01:27:55.792] else if (inherits(cond, "condition")) { [01:27:55.792] if (!is.null(pattern)) { [01:27:55.792] computeRestarts <- base::computeRestarts [01:27:55.792] grepl <- base::grepl [01:27:55.792] restarts <- computeRestarts(cond) [01:27:55.792] for (restart in restarts) { [01:27:55.792] name <- restart$name [01:27:55.792] if (is.null(name)) [01:27:55.792] next [01:27:55.792] if (!grepl(pattern, name)) [01:27:55.792] next [01:27:55.792] invokeRestart(restart) [01:27:55.792] muffled <- TRUE [01:27:55.792] break [01:27:55.792] } [01:27:55.792] } [01:27:55.792] } [01:27:55.792] invisible(muffled) [01:27:55.792] } [01:27:55.792] muffleCondition(cond, pattern = "^muffle") [01:27:55.792] } [01:27:55.792] } [01:27:55.792] } [01:27:55.792] })) [01:27:55.792] }, error = function(ex) { [01:27:55.792] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.792] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.792] ...future.rng), started = ...future.startTime, [01:27:55.792] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.792] version = "1.8"), class = "FutureResult") [01:27:55.792] }, finally = { [01:27:55.792] if (!identical(...future.workdir, getwd())) [01:27:55.792] setwd(...future.workdir) [01:27:55.792] { [01:27:55.792] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.792] ...future.oldOptions$nwarnings <- NULL [01:27:55.792] } [01:27:55.792] base::options(...future.oldOptions) [01:27:55.792] if (.Platform$OS.type == "windows") { [01:27:55.792] old_names <- names(...future.oldEnvVars) [01:27:55.792] envs <- base::Sys.getenv() [01:27:55.792] names <- names(envs) [01:27:55.792] common <- intersect(names, old_names) [01:27:55.792] added <- setdiff(names, old_names) [01:27:55.792] removed <- setdiff(old_names, names) [01:27:55.792] changed <- common[...future.oldEnvVars[common] != [01:27:55.792] envs[common]] [01:27:55.792] NAMES <- toupper(changed) [01:27:55.792] args <- list() [01:27:55.792] for (kk in seq_along(NAMES)) { [01:27:55.792] name <- changed[[kk]] [01:27:55.792] NAME <- NAMES[[kk]] [01:27:55.792] if (name != NAME && is.element(NAME, old_names)) [01:27:55.792] next [01:27:55.792] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.792] } [01:27:55.792] NAMES <- toupper(added) [01:27:55.792] for (kk in seq_along(NAMES)) { [01:27:55.792] name <- added[[kk]] [01:27:55.792] NAME <- NAMES[[kk]] [01:27:55.792] if (name != NAME && is.element(NAME, old_names)) [01:27:55.792] next [01:27:55.792] args[[name]] <- "" [01:27:55.792] } [01:27:55.792] NAMES <- toupper(removed) [01:27:55.792] for (kk in seq_along(NAMES)) { [01:27:55.792] name <- removed[[kk]] [01:27:55.792] NAME <- NAMES[[kk]] [01:27:55.792] if (name != NAME && is.element(NAME, old_names)) [01:27:55.792] next [01:27:55.792] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.792] } [01:27:55.792] if (length(args) > 0) [01:27:55.792] base::do.call(base::Sys.setenv, args = args) [01:27:55.792] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.792] } [01:27:55.792] { [01:27:55.792] if (base::length(...future.futureOptionsAdded) > [01:27:55.792] 0L) { [01:27:55.792] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.792] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.792] base::options(opts) [01:27:55.792] } [01:27:55.792] { [01:27:55.792] { [01:27:55.792] NULL [01:27:55.792] RNGkind("Mersenne-Twister") [01:27:55.792] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.792] inherits = FALSE) [01:27:55.792] } [01:27:55.792] options(future.plan = NULL) [01:27:55.792] if (is.na(NA_character_)) [01:27:55.792] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.792] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.792] future::plan(list(function (..., envir = parent.frame()) [01:27:55.792] { [01:27:55.792] future <- SequentialFuture(..., envir = envir) [01:27:55.792] if (!future$lazy) [01:27:55.792] future <- run(future) [01:27:55.792] invisible(future) [01:27:55.792] }), .cleanup = FALSE, .init = FALSE) [01:27:55.792] } [01:27:55.792] } [01:27:55.792] } [01:27:55.792] }) [01:27:55.792] if (TRUE) { [01:27:55.792] base::sink(type = "output", split = FALSE) [01:27:55.792] if (TRUE) { [01:27:55.792] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.792] } [01:27:55.792] else { [01:27:55.792] ...future.result["stdout"] <- base::list(NULL) [01:27:55.792] } [01:27:55.792] base::close(...future.stdout) [01:27:55.792] ...future.stdout <- NULL [01:27:55.792] } [01:27:55.792] ...future.result$conditions <- ...future.conditions [01:27:55.792] ...future.result$finished <- base::Sys.time() [01:27:55.792] ...future.result [01:27:55.792] } [01:27:55.796] assign_globals() ... [01:27:55.796] List of 2 [01:27:55.796] $ weight: num [1:20] 4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ... [01:27:55.796] $ group : Factor w/ 2 levels "Ctl","Trt": 1 1 1 1 1 1 1 1 1 1 ... [01:27:55.796] - attr(*, "where")=List of 2 [01:27:55.796] ..$ weight: [01:27:55.796] ..$ group : [01:27:55.796] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.796] - attr(*, "resolved")= logi FALSE [01:27:55.796] - attr(*, "total_size")= num 896 [01:27:55.796] - attr(*, "already-done")= logi TRUE [01:27:55.800] - copied 'weight' to environment [01:27:55.800] - copied 'group' to environment [01:27:55.800] assign_globals() ... done [01:27:55.801] plan(): Setting new future strategy stack: [01:27:55.801] List of future strategies: [01:27:55.801] 1. sequential: [01:27:55.801] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.801] - tweaked: FALSE [01:27:55.801] - call: NULL [01:27:55.802] plan(): nbrOfWorkers() = 1 [01:27:55.804] plan(): Setting new future strategy stack: [01:27:55.804] List of future strategies: [01:27:55.804] 1. sequential: [01:27:55.804] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.804] - tweaked: FALSE [01:27:55.804] - call: plan(strategy) [01:27:55.805] plan(): nbrOfWorkers() = 1 [01:27:55.805] SequentialFuture started (and completed) [01:27:55.805] - Launch lazy future ... done [01:27:55.805] run() for 'SequentialFuture' ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 - Globals - one-side formulas, e.g. xtabs(~ x) ... [01:27:55.807] getGlobalsAndPackages() ... [01:27:55.808] Searching for globals... [01:27:55.809] - globals found: [4] '{', 'xtabs', 'x', '~' [01:27:55.809] Searching for globals ... DONE [01:27:55.809] Resolving globals: FALSE [01:27:55.810] The total size of the 1 globals is 96 bytes (96 bytes) [01:27:55.810] The total size of the 1 globals exported for future expression ('{; xtabs(~x); }') is 96 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'x' (96 bytes of class 'numeric') [01:27:55.811] - globals: [1] 'x' [01:27:55.811] - packages: [1] 'stats' [01:27:55.811] getGlobalsAndPackages() ... DONE [01:27:55.811] run() for 'Future' ... [01:27:55.811] - state: 'created' [01:27:55.812] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.812] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.812] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.812] - Field: 'label' [01:27:55.813] - Field: 'local' [01:27:55.813] - Field: 'owner' [01:27:55.813] - Field: 'envir' [01:27:55.813] - Field: 'packages' [01:27:55.813] - Field: 'gc' [01:27:55.813] - Field: 'conditions' [01:27:55.814] - Field: 'expr' [01:27:55.814] - Field: 'uuid' [01:27:55.814] - Field: 'seed' [01:27:55.814] - Field: 'version' [01:27:55.814] - Field: 'result' [01:27:55.815] - Field: 'asynchronous' [01:27:55.815] - Field: 'calls' [01:27:55.815] - Field: 'globals' [01:27:55.815] - Field: 'stdout' [01:27:55.815] - Field: 'earlySignal' [01:27:55.815] - Field: 'lazy' [01:27:55.816] - Field: 'state' [01:27:55.816] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.816] - Launch lazy future ... [01:27:55.816] Packages needed by the future expression (n = 1): 'stats' [01:27:55.816] Packages needed by future strategies (n = 0): [01:27:55.817] { [01:27:55.817] { [01:27:55.817] { [01:27:55.817] ...future.startTime <- base::Sys.time() [01:27:55.817] { [01:27:55.817] { [01:27:55.817] { [01:27:55.817] { [01:27:55.817] base::local({ [01:27:55.817] has_future <- base::requireNamespace("future", [01:27:55.817] quietly = TRUE) [01:27:55.817] if (has_future) { [01:27:55.817] ns <- base::getNamespace("future") [01:27:55.817] version <- ns[[".package"]][["version"]] [01:27:55.817] if (is.null(version)) [01:27:55.817] version <- utils::packageVersion("future") [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] version <- NULL [01:27:55.817] } [01:27:55.817] if (!has_future || version < "1.8.0") { [01:27:55.817] info <- base::c(r_version = base::gsub("R version ", [01:27:55.817] "", base::R.version$version.string), [01:27:55.817] platform = base::sprintf("%s (%s-bit)", [01:27:55.817] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.817] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.817] "release", "version")], collapse = " "), [01:27:55.817] hostname = base::Sys.info()[["nodename"]]) [01:27:55.817] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.817] info) [01:27:55.817] info <- base::paste(info, collapse = "; ") [01:27:55.817] if (!has_future) { [01:27:55.817] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.817] info) [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.817] info, version) [01:27:55.817] } [01:27:55.817] base::stop(msg) [01:27:55.817] } [01:27:55.817] }) [01:27:55.817] } [01:27:55.817] base::local({ [01:27:55.817] for (pkg in "stats") { [01:27:55.817] base::loadNamespace(pkg) [01:27:55.817] base::library(pkg, character.only = TRUE) [01:27:55.817] } [01:27:55.817] }) [01:27:55.817] } [01:27:55.817] options(future.plan = NULL) [01:27:55.817] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.817] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.817] } [01:27:55.817] ...future.workdir <- getwd() [01:27:55.817] } [01:27:55.817] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.817] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.817] } [01:27:55.817] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.817] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.817] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.817] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.817] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.817] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.817] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.817] base::names(...future.oldOptions)) [01:27:55.817] } [01:27:55.817] if (FALSE) { [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] if (TRUE) { [01:27:55.817] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.817] open = "w") [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.817] windows = "NUL", "/dev/null"), open = "w") [01:27:55.817] } [01:27:55.817] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.817] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.817] base::sink(type = "output", split = FALSE) [01:27:55.817] base::close(...future.stdout) [01:27:55.817] }, add = TRUE) [01:27:55.817] } [01:27:55.817] ...future.frame <- base::sys.nframe() [01:27:55.817] ...future.conditions <- base::list() [01:27:55.817] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.817] if (FALSE) { [01:27:55.817] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.817] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.817] } [01:27:55.817] ...future.result <- base::tryCatch({ [01:27:55.817] base::withCallingHandlers({ [01:27:55.817] ...future.value <- base::withVisible(base::local({ [01:27:55.817] xtabs(~x) [01:27:55.817] })) [01:27:55.817] future::FutureResult(value = ...future.value$value, [01:27:55.817] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.817] ...future.rng), globalenv = if (FALSE) [01:27:55.817] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.817] ...future.globalenv.names)) [01:27:55.817] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.817] }, condition = base::local({ [01:27:55.817] c <- base::c [01:27:55.817] inherits <- base::inherits [01:27:55.817] invokeRestart <- base::invokeRestart [01:27:55.817] length <- base::length [01:27:55.817] list <- base::list [01:27:55.817] seq.int <- base::seq.int [01:27:55.817] signalCondition <- base::signalCondition [01:27:55.817] sys.calls <- base::sys.calls [01:27:55.817] `[[` <- base::`[[` [01:27:55.817] `+` <- base::`+` [01:27:55.817] `<<-` <- base::`<<-` [01:27:55.817] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.817] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.817] 3L)] [01:27:55.817] } [01:27:55.817] function(cond) { [01:27:55.817] is_error <- inherits(cond, "error") [01:27:55.817] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.817] NULL) [01:27:55.817] if (is_error) { [01:27:55.817] sessionInformation <- function() { [01:27:55.817] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.817] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.817] search = base::search(), system = base::Sys.info()) [01:27:55.817] } [01:27:55.817] ...future.conditions[[length(...future.conditions) + [01:27:55.817] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.817] cond$call), session = sessionInformation(), [01:27:55.817] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.817] signalCondition(cond) [01:27:55.817] } [01:27:55.817] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.817] "immediateCondition"))) { [01:27:55.817] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.817] ...future.conditions[[length(...future.conditions) + [01:27:55.817] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.817] if (TRUE && !signal) { [01:27:55.817] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.817] { [01:27:55.817] inherits <- base::inherits [01:27:55.817] invokeRestart <- base::invokeRestart [01:27:55.817] is.null <- base::is.null [01:27:55.817] muffled <- FALSE [01:27:55.817] if (inherits(cond, "message")) { [01:27:55.817] muffled <- grepl(pattern, "muffleMessage") [01:27:55.817] if (muffled) [01:27:55.817] invokeRestart("muffleMessage") [01:27:55.817] } [01:27:55.817] else if (inherits(cond, "warning")) { [01:27:55.817] muffled <- grepl(pattern, "muffleWarning") [01:27:55.817] if (muffled) [01:27:55.817] invokeRestart("muffleWarning") [01:27:55.817] } [01:27:55.817] else if (inherits(cond, "condition")) { [01:27:55.817] if (!is.null(pattern)) { [01:27:55.817] computeRestarts <- base::computeRestarts [01:27:55.817] grepl <- base::grepl [01:27:55.817] restarts <- computeRestarts(cond) [01:27:55.817] for (restart in restarts) { [01:27:55.817] name <- restart$name [01:27:55.817] if (is.null(name)) [01:27:55.817] next [01:27:55.817] if (!grepl(pattern, name)) [01:27:55.817] next [01:27:55.817] invokeRestart(restart) [01:27:55.817] muffled <- TRUE [01:27:55.817] break [01:27:55.817] } [01:27:55.817] } [01:27:55.817] } [01:27:55.817] invisible(muffled) [01:27:55.817] } [01:27:55.817] muffleCondition(cond, pattern = "^muffle") [01:27:55.817] } [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] if (TRUE) { [01:27:55.817] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.817] { [01:27:55.817] inherits <- base::inherits [01:27:55.817] invokeRestart <- base::invokeRestart [01:27:55.817] is.null <- base::is.null [01:27:55.817] muffled <- FALSE [01:27:55.817] if (inherits(cond, "message")) { [01:27:55.817] muffled <- grepl(pattern, "muffleMessage") [01:27:55.817] if (muffled) [01:27:55.817] invokeRestart("muffleMessage") [01:27:55.817] } [01:27:55.817] else if (inherits(cond, "warning")) { [01:27:55.817] muffled <- grepl(pattern, "muffleWarning") [01:27:55.817] if (muffled) [01:27:55.817] invokeRestart("muffleWarning") [01:27:55.817] } [01:27:55.817] else if (inherits(cond, "condition")) { [01:27:55.817] if (!is.null(pattern)) { [01:27:55.817] computeRestarts <- base::computeRestarts [01:27:55.817] grepl <- base::grepl [01:27:55.817] restarts <- computeRestarts(cond) [01:27:55.817] for (restart in restarts) { [01:27:55.817] name <- restart$name [01:27:55.817] if (is.null(name)) [01:27:55.817] next [01:27:55.817] if (!grepl(pattern, name)) [01:27:55.817] next [01:27:55.817] invokeRestart(restart) [01:27:55.817] muffled <- TRUE [01:27:55.817] break [01:27:55.817] } [01:27:55.817] } [01:27:55.817] } [01:27:55.817] invisible(muffled) [01:27:55.817] } [01:27:55.817] muffleCondition(cond, pattern = "^muffle") [01:27:55.817] } [01:27:55.817] } [01:27:55.817] } [01:27:55.817] })) [01:27:55.817] }, error = function(ex) { [01:27:55.817] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.817] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.817] ...future.rng), started = ...future.startTime, [01:27:55.817] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.817] version = "1.8"), class = "FutureResult") [01:27:55.817] }, finally = { [01:27:55.817] if (!identical(...future.workdir, getwd())) [01:27:55.817] setwd(...future.workdir) [01:27:55.817] { [01:27:55.817] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.817] ...future.oldOptions$nwarnings <- NULL [01:27:55.817] } [01:27:55.817] base::options(...future.oldOptions) [01:27:55.817] if (.Platform$OS.type == "windows") { [01:27:55.817] old_names <- names(...future.oldEnvVars) [01:27:55.817] envs <- base::Sys.getenv() [01:27:55.817] names <- names(envs) [01:27:55.817] common <- intersect(names, old_names) [01:27:55.817] added <- setdiff(names, old_names) [01:27:55.817] removed <- setdiff(old_names, names) [01:27:55.817] changed <- common[...future.oldEnvVars[common] != [01:27:55.817] envs[common]] [01:27:55.817] NAMES <- toupper(changed) [01:27:55.817] args <- list() [01:27:55.817] for (kk in seq_along(NAMES)) { [01:27:55.817] name <- changed[[kk]] [01:27:55.817] NAME <- NAMES[[kk]] [01:27:55.817] if (name != NAME && is.element(NAME, old_names)) [01:27:55.817] next [01:27:55.817] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.817] } [01:27:55.817] NAMES <- toupper(added) [01:27:55.817] for (kk in seq_along(NAMES)) { [01:27:55.817] name <- added[[kk]] [01:27:55.817] NAME <- NAMES[[kk]] [01:27:55.817] if (name != NAME && is.element(NAME, old_names)) [01:27:55.817] next [01:27:55.817] args[[name]] <- "" [01:27:55.817] } [01:27:55.817] NAMES <- toupper(removed) [01:27:55.817] for (kk in seq_along(NAMES)) { [01:27:55.817] name <- removed[[kk]] [01:27:55.817] NAME <- NAMES[[kk]] [01:27:55.817] if (name != NAME && is.element(NAME, old_names)) [01:27:55.817] next [01:27:55.817] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.817] } [01:27:55.817] if (length(args) > 0) [01:27:55.817] base::do.call(base::Sys.setenv, args = args) [01:27:55.817] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.817] } [01:27:55.817] { [01:27:55.817] if (base::length(...future.futureOptionsAdded) > [01:27:55.817] 0L) { [01:27:55.817] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.817] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.817] base::options(opts) [01:27:55.817] } [01:27:55.817] { [01:27:55.817] { [01:27:55.817] NULL [01:27:55.817] RNGkind("Mersenne-Twister") [01:27:55.817] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.817] inherits = FALSE) [01:27:55.817] } [01:27:55.817] options(future.plan = NULL) [01:27:55.817] if (is.na(NA_character_)) [01:27:55.817] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.817] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.817] future::plan(list(function (..., envir = parent.frame()) [01:27:55.817] { [01:27:55.817] future <- SequentialFuture(..., envir = envir) [01:27:55.817] if (!future$lazy) [01:27:55.817] future <- run(future) [01:27:55.817] invisible(future) [01:27:55.817] }), .cleanup = FALSE, .init = FALSE) [01:27:55.817] } [01:27:55.817] } [01:27:55.817] } [01:27:55.817] }) [01:27:55.817] if (TRUE) { [01:27:55.817] base::sink(type = "output", split = FALSE) [01:27:55.817] if (TRUE) { [01:27:55.817] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.817] } [01:27:55.817] else { [01:27:55.817] ...future.result["stdout"] <- base::list(NULL) [01:27:55.817] } [01:27:55.817] base::close(...future.stdout) [01:27:55.817] ...future.stdout <- NULL [01:27:55.817] } [01:27:55.817] ...future.result$conditions <- ...future.conditions [01:27:55.817] ...future.result$finished <- base::Sys.time() [01:27:55.817] ...future.result [01:27:55.817] } [01:27:55.821] assign_globals() ... [01:27:55.821] List of 1 [01:27:55.821] $ x: num [1:5] 1 1 2 2 2 [01:27:55.821] - attr(*, "where")=List of 1 [01:27:55.821] ..$ x: [01:27:55.821] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.821] - attr(*, "resolved")= logi FALSE [01:27:55.821] - attr(*, "total_size")= num 96 [01:27:55.821] - attr(*, "already-done")= logi TRUE [01:27:55.825] - copied 'x' to environment [01:27:55.826] assign_globals() ... done [01:27:55.826] plan(): Setting new future strategy stack: [01:27:55.826] List of future strategies: [01:27:55.826] 1. sequential: [01:27:55.826] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.826] - tweaked: FALSE [01:27:55.826] - call: NULL [01:27:55.827] plan(): nbrOfWorkers() = 1 [01:27:55.828] plan(): Setting new future strategy stack: [01:27:55.829] List of future strategies: [01:27:55.829] 1. sequential: [01:27:55.829] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.829] - tweaked: FALSE [01:27:55.829] - call: plan(strategy) [01:27:55.829] plan(): nbrOfWorkers() = 1 [01:27:55.830] SequentialFuture started (and completed) [01:27:55.830] - Launch lazy future ... done [01:27:55.830] run() for 'SequentialFuture' ... done x 1 2 2 3 [01:27:55.831] getGlobalsAndPackages() ... [01:27:55.831] Searching for globals... [01:27:55.832] - globals found: [4] '{', 'xtabs', 'x', '~' [01:27:55.833] Searching for globals ... DONE [01:27:55.833] Resolving globals: FALSE [01:27:55.833] The total size of the 1 globals is 96 bytes (96 bytes) [01:27:55.834] The total size of the 1 globals exported for future expression ('{; xtabs(~x); }') is 96 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'x' (96 bytes of class 'numeric') [01:27:55.834] - globals: [1] 'x' [01:27:55.834] - packages: [1] 'stats' [01:27:55.834] getGlobalsAndPackages() ... DONE [01:27:55.835] run() for 'Future' ... [01:27:55.835] - state: 'created' [01:27:55.835] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.835] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.836] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.836] - Field: 'label' [01:27:55.836] - Field: 'local' [01:27:55.836] - Field: 'owner' [01:27:55.836] - Field: 'envir' [01:27:55.836] - Field: 'packages' [01:27:55.837] - Field: 'gc' [01:27:55.837] - Field: 'conditions' [01:27:55.837] - Field: 'expr' [01:27:55.837] - Field: 'uuid' [01:27:55.837] - Field: 'seed' [01:27:55.838] - Field: 'version' [01:27:55.838] - Field: 'result' [01:27:55.838] - Field: 'asynchronous' [01:27:55.838] - Field: 'calls' [01:27:55.838] - Field: 'globals' [01:27:55.838] - Field: 'stdout' [01:27:55.839] - Field: 'earlySignal' [01:27:55.839] - Field: 'lazy' [01:27:55.839] - Field: 'state' [01:27:55.839] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.839] - Launch lazy future ... [01:27:55.840] Packages needed by the future expression (n = 1): 'stats' [01:27:55.840] Packages needed by future strategies (n = 0): [01:27:55.840] { [01:27:55.840] { [01:27:55.840] { [01:27:55.840] ...future.startTime <- base::Sys.time() [01:27:55.840] { [01:27:55.840] { [01:27:55.840] { [01:27:55.840] { [01:27:55.840] base::local({ [01:27:55.840] has_future <- base::requireNamespace("future", [01:27:55.840] quietly = TRUE) [01:27:55.840] if (has_future) { [01:27:55.840] ns <- base::getNamespace("future") [01:27:55.840] version <- ns[[".package"]][["version"]] [01:27:55.840] if (is.null(version)) [01:27:55.840] version <- utils::packageVersion("future") [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] version <- NULL [01:27:55.840] } [01:27:55.840] if (!has_future || version < "1.8.0") { [01:27:55.840] info <- base::c(r_version = base::gsub("R version ", [01:27:55.840] "", base::R.version$version.string), [01:27:55.840] platform = base::sprintf("%s (%s-bit)", [01:27:55.840] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.840] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.840] "release", "version")], collapse = " "), [01:27:55.840] hostname = base::Sys.info()[["nodename"]]) [01:27:55.840] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.840] info) [01:27:55.840] info <- base::paste(info, collapse = "; ") [01:27:55.840] if (!has_future) { [01:27:55.840] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.840] info) [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.840] info, version) [01:27:55.840] } [01:27:55.840] base::stop(msg) [01:27:55.840] } [01:27:55.840] }) [01:27:55.840] } [01:27:55.840] base::local({ [01:27:55.840] for (pkg in "stats") { [01:27:55.840] base::loadNamespace(pkg) [01:27:55.840] base::library(pkg, character.only = TRUE) [01:27:55.840] } [01:27:55.840] }) [01:27:55.840] } [01:27:55.840] options(future.plan = NULL) [01:27:55.840] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.840] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.840] } [01:27:55.840] ...future.workdir <- getwd() [01:27:55.840] } [01:27:55.840] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.840] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.840] } [01:27:55.840] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.840] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.840] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.840] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.840] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.840] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.840] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.840] base::names(...future.oldOptions)) [01:27:55.840] } [01:27:55.840] if (FALSE) { [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] if (TRUE) { [01:27:55.840] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.840] open = "w") [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.840] windows = "NUL", "/dev/null"), open = "w") [01:27:55.840] } [01:27:55.840] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.840] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.840] base::sink(type = "output", split = FALSE) [01:27:55.840] base::close(...future.stdout) [01:27:55.840] }, add = TRUE) [01:27:55.840] } [01:27:55.840] ...future.frame <- base::sys.nframe() [01:27:55.840] ...future.conditions <- base::list() [01:27:55.840] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.840] if (FALSE) { [01:27:55.840] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.840] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.840] } [01:27:55.840] ...future.result <- base::tryCatch({ [01:27:55.840] base::withCallingHandlers({ [01:27:55.840] ...future.value <- base::withVisible(base::local({ [01:27:55.840] xtabs(~x) [01:27:55.840] })) [01:27:55.840] future::FutureResult(value = ...future.value$value, [01:27:55.840] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.840] ...future.rng), globalenv = if (FALSE) [01:27:55.840] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.840] ...future.globalenv.names)) [01:27:55.840] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.840] }, condition = base::local({ [01:27:55.840] c <- base::c [01:27:55.840] inherits <- base::inherits [01:27:55.840] invokeRestart <- base::invokeRestart [01:27:55.840] length <- base::length [01:27:55.840] list <- base::list [01:27:55.840] seq.int <- base::seq.int [01:27:55.840] signalCondition <- base::signalCondition [01:27:55.840] sys.calls <- base::sys.calls [01:27:55.840] `[[` <- base::`[[` [01:27:55.840] `+` <- base::`+` [01:27:55.840] `<<-` <- base::`<<-` [01:27:55.840] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.840] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.840] 3L)] [01:27:55.840] } [01:27:55.840] function(cond) { [01:27:55.840] is_error <- inherits(cond, "error") [01:27:55.840] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.840] NULL) [01:27:55.840] if (is_error) { [01:27:55.840] sessionInformation <- function() { [01:27:55.840] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.840] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.840] search = base::search(), system = base::Sys.info()) [01:27:55.840] } [01:27:55.840] ...future.conditions[[length(...future.conditions) + [01:27:55.840] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.840] cond$call), session = sessionInformation(), [01:27:55.840] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.840] signalCondition(cond) [01:27:55.840] } [01:27:55.840] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.840] "immediateCondition"))) { [01:27:55.840] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.840] ...future.conditions[[length(...future.conditions) + [01:27:55.840] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.840] if (TRUE && !signal) { [01:27:55.840] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.840] { [01:27:55.840] inherits <- base::inherits [01:27:55.840] invokeRestart <- base::invokeRestart [01:27:55.840] is.null <- base::is.null [01:27:55.840] muffled <- FALSE [01:27:55.840] if (inherits(cond, "message")) { [01:27:55.840] muffled <- grepl(pattern, "muffleMessage") [01:27:55.840] if (muffled) [01:27:55.840] invokeRestart("muffleMessage") [01:27:55.840] } [01:27:55.840] else if (inherits(cond, "warning")) { [01:27:55.840] muffled <- grepl(pattern, "muffleWarning") [01:27:55.840] if (muffled) [01:27:55.840] invokeRestart("muffleWarning") [01:27:55.840] } [01:27:55.840] else if (inherits(cond, "condition")) { [01:27:55.840] if (!is.null(pattern)) { [01:27:55.840] computeRestarts <- base::computeRestarts [01:27:55.840] grepl <- base::grepl [01:27:55.840] restarts <- computeRestarts(cond) [01:27:55.840] for (restart in restarts) { [01:27:55.840] name <- restart$name [01:27:55.840] if (is.null(name)) [01:27:55.840] next [01:27:55.840] if (!grepl(pattern, name)) [01:27:55.840] next [01:27:55.840] invokeRestart(restart) [01:27:55.840] muffled <- TRUE [01:27:55.840] break [01:27:55.840] } [01:27:55.840] } [01:27:55.840] } [01:27:55.840] invisible(muffled) [01:27:55.840] } [01:27:55.840] muffleCondition(cond, pattern = "^muffle") [01:27:55.840] } [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] if (TRUE) { [01:27:55.840] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.840] { [01:27:55.840] inherits <- base::inherits [01:27:55.840] invokeRestart <- base::invokeRestart [01:27:55.840] is.null <- base::is.null [01:27:55.840] muffled <- FALSE [01:27:55.840] if (inherits(cond, "message")) { [01:27:55.840] muffled <- grepl(pattern, "muffleMessage") [01:27:55.840] if (muffled) [01:27:55.840] invokeRestart("muffleMessage") [01:27:55.840] } [01:27:55.840] else if (inherits(cond, "warning")) { [01:27:55.840] muffled <- grepl(pattern, "muffleWarning") [01:27:55.840] if (muffled) [01:27:55.840] invokeRestart("muffleWarning") [01:27:55.840] } [01:27:55.840] else if (inherits(cond, "condition")) { [01:27:55.840] if (!is.null(pattern)) { [01:27:55.840] computeRestarts <- base::computeRestarts [01:27:55.840] grepl <- base::grepl [01:27:55.840] restarts <- computeRestarts(cond) [01:27:55.840] for (restart in restarts) { [01:27:55.840] name <- restart$name [01:27:55.840] if (is.null(name)) [01:27:55.840] next [01:27:55.840] if (!grepl(pattern, name)) [01:27:55.840] next [01:27:55.840] invokeRestart(restart) [01:27:55.840] muffled <- TRUE [01:27:55.840] break [01:27:55.840] } [01:27:55.840] } [01:27:55.840] } [01:27:55.840] invisible(muffled) [01:27:55.840] } [01:27:55.840] muffleCondition(cond, pattern = "^muffle") [01:27:55.840] } [01:27:55.840] } [01:27:55.840] } [01:27:55.840] })) [01:27:55.840] }, error = function(ex) { [01:27:55.840] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.840] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.840] ...future.rng), started = ...future.startTime, [01:27:55.840] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.840] version = "1.8"), class = "FutureResult") [01:27:55.840] }, finally = { [01:27:55.840] if (!identical(...future.workdir, getwd())) [01:27:55.840] setwd(...future.workdir) [01:27:55.840] { [01:27:55.840] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.840] ...future.oldOptions$nwarnings <- NULL [01:27:55.840] } [01:27:55.840] base::options(...future.oldOptions) [01:27:55.840] if (.Platform$OS.type == "windows") { [01:27:55.840] old_names <- names(...future.oldEnvVars) [01:27:55.840] envs <- base::Sys.getenv() [01:27:55.840] names <- names(envs) [01:27:55.840] common <- intersect(names, old_names) [01:27:55.840] added <- setdiff(names, old_names) [01:27:55.840] removed <- setdiff(old_names, names) [01:27:55.840] changed <- common[...future.oldEnvVars[common] != [01:27:55.840] envs[common]] [01:27:55.840] NAMES <- toupper(changed) [01:27:55.840] args <- list() [01:27:55.840] for (kk in seq_along(NAMES)) { [01:27:55.840] name <- changed[[kk]] [01:27:55.840] NAME <- NAMES[[kk]] [01:27:55.840] if (name != NAME && is.element(NAME, old_names)) [01:27:55.840] next [01:27:55.840] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.840] } [01:27:55.840] NAMES <- toupper(added) [01:27:55.840] for (kk in seq_along(NAMES)) { [01:27:55.840] name <- added[[kk]] [01:27:55.840] NAME <- NAMES[[kk]] [01:27:55.840] if (name != NAME && is.element(NAME, old_names)) [01:27:55.840] next [01:27:55.840] args[[name]] <- "" [01:27:55.840] } [01:27:55.840] NAMES <- toupper(removed) [01:27:55.840] for (kk in seq_along(NAMES)) { [01:27:55.840] name <- removed[[kk]] [01:27:55.840] NAME <- NAMES[[kk]] [01:27:55.840] if (name != NAME && is.element(NAME, old_names)) [01:27:55.840] next [01:27:55.840] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.840] } [01:27:55.840] if (length(args) > 0) [01:27:55.840] base::do.call(base::Sys.setenv, args = args) [01:27:55.840] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.840] } [01:27:55.840] { [01:27:55.840] if (base::length(...future.futureOptionsAdded) > [01:27:55.840] 0L) { [01:27:55.840] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.840] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.840] base::options(opts) [01:27:55.840] } [01:27:55.840] { [01:27:55.840] { [01:27:55.840] NULL [01:27:55.840] RNGkind("Mersenne-Twister") [01:27:55.840] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.840] inherits = FALSE) [01:27:55.840] } [01:27:55.840] options(future.plan = NULL) [01:27:55.840] if (is.na(NA_character_)) [01:27:55.840] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.840] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.840] future::plan(list(function (..., envir = parent.frame()) [01:27:55.840] { [01:27:55.840] future <- SequentialFuture(..., envir = envir) [01:27:55.840] if (!future$lazy) [01:27:55.840] future <- run(future) [01:27:55.840] invisible(future) [01:27:55.840] }), .cleanup = FALSE, .init = FALSE) [01:27:55.840] } [01:27:55.840] } [01:27:55.840] } [01:27:55.840] }) [01:27:55.840] if (TRUE) { [01:27:55.840] base::sink(type = "output", split = FALSE) [01:27:55.840] if (TRUE) { [01:27:55.840] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.840] } [01:27:55.840] else { [01:27:55.840] ...future.result["stdout"] <- base::list(NULL) [01:27:55.840] } [01:27:55.840] base::close(...future.stdout) [01:27:55.840] ...future.stdout <- NULL [01:27:55.840] } [01:27:55.840] ...future.result$conditions <- ...future.conditions [01:27:55.840] ...future.result$finished <- base::Sys.time() [01:27:55.840] ...future.result [01:27:55.840] } [01:27:55.844] assign_globals() ... [01:27:55.844] List of 1 [01:27:55.844] $ x: num [1:5] 1 1 2 2 2 [01:27:55.844] - attr(*, "where")=List of 1 [01:27:55.844] ..$ x: [01:27:55.844] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.844] - attr(*, "resolved")= logi FALSE [01:27:55.844] - attr(*, "total_size")= num 96 [01:27:55.844] - attr(*, "already-done")= logi TRUE [01:27:55.847] - copied 'x' to environment [01:27:55.847] assign_globals() ... done [01:27:55.848] plan(): Setting new future strategy stack: [01:27:55.848] List of future strategies: [01:27:55.848] 1. sequential: [01:27:55.848] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.848] - tweaked: FALSE [01:27:55.848] - call: NULL [01:27:55.849] plan(): nbrOfWorkers() = 1 [01:27:55.850] plan(): Setting new future strategy stack: [01:27:55.850] List of future strategies: [01:27:55.850] 1. sequential: [01:27:55.850] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.850] - tweaked: FALSE [01:27:55.850] - call: plan(strategy) [01:27:55.851] plan(): nbrOfWorkers() = 1 [01:27:55.851] SequentialFuture started (and completed) [01:27:55.852] - Launch lazy future ... done [01:27:55.852] run() for 'SequentialFuture' ... done x 1 2 2 3 - Globals - lm(, data = cars) ... - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ . - 1, data = cars) Coefficients: speed 2.909 [01:27:55.855] getGlobalsAndPackages() ... [01:27:55.855] Searching for globals... [01:27:55.857] - globals found: [7] '{', 'lm', 'dist', '-', '.', '~', 'cars' [01:27:55.858] Searching for globals ... DONE [01:27:55.858] Resolving globals: FALSE [01:27:55.859] [01:27:55.859] - packages: [2] 'stats', 'datasets' [01:27:55.859] getGlobalsAndPackages() ... DONE [01:27:55.859] run() for 'Future' ... [01:27:55.859] - state: 'created' [01:27:55.860] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.860] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.860] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.860] - Field: 'label' [01:27:55.861] - Field: 'local' [01:27:55.861] - Field: 'owner' [01:27:55.861] - Field: 'envir' [01:27:55.861] - Field: 'packages' [01:27:55.861] - Field: 'gc' [01:27:55.861] - Field: 'conditions' [01:27:55.862] - Field: 'expr' [01:27:55.862] - Field: 'uuid' [01:27:55.862] - Field: 'seed' [01:27:55.862] - Field: 'version' [01:27:55.862] - Field: 'result' [01:27:55.863] - Field: 'asynchronous' [01:27:55.863] - Field: 'calls' [01:27:55.863] - Field: 'globals' [01:27:55.863] - Field: 'stdout' [01:27:55.863] - Field: 'earlySignal' [01:27:55.863] - Field: 'lazy' [01:27:55.864] - Field: 'state' [01:27:55.864] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.864] - Launch lazy future ... [01:27:55.864] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:55.864] Packages needed by future strategies (n = 0): [01:27:55.865] { [01:27:55.865] { [01:27:55.865] { [01:27:55.865] ...future.startTime <- base::Sys.time() [01:27:55.865] { [01:27:55.865] { [01:27:55.865] { [01:27:55.865] { [01:27:55.865] base::local({ [01:27:55.865] has_future <- base::requireNamespace("future", [01:27:55.865] quietly = TRUE) [01:27:55.865] if (has_future) { [01:27:55.865] ns <- base::getNamespace("future") [01:27:55.865] version <- ns[[".package"]][["version"]] [01:27:55.865] if (is.null(version)) [01:27:55.865] version <- utils::packageVersion("future") [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] version <- NULL [01:27:55.865] } [01:27:55.865] if (!has_future || version < "1.8.0") { [01:27:55.865] info <- base::c(r_version = base::gsub("R version ", [01:27:55.865] "", base::R.version$version.string), [01:27:55.865] platform = base::sprintf("%s (%s-bit)", [01:27:55.865] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.865] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.865] "release", "version")], collapse = " "), [01:27:55.865] hostname = base::Sys.info()[["nodename"]]) [01:27:55.865] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.865] info) [01:27:55.865] info <- base::paste(info, collapse = "; ") [01:27:55.865] if (!has_future) { [01:27:55.865] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.865] info) [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.865] info, version) [01:27:55.865] } [01:27:55.865] base::stop(msg) [01:27:55.865] } [01:27:55.865] }) [01:27:55.865] } [01:27:55.865] base::local({ [01:27:55.865] for (pkg in c("stats", "datasets")) { [01:27:55.865] base::loadNamespace(pkg) [01:27:55.865] base::library(pkg, character.only = TRUE) [01:27:55.865] } [01:27:55.865] }) [01:27:55.865] } [01:27:55.865] options(future.plan = NULL) [01:27:55.865] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.865] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.865] } [01:27:55.865] ...future.workdir <- getwd() [01:27:55.865] } [01:27:55.865] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.865] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.865] } [01:27:55.865] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.865] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.865] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.865] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.865] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.865] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.865] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.865] base::names(...future.oldOptions)) [01:27:55.865] } [01:27:55.865] if (FALSE) { [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] if (TRUE) { [01:27:55.865] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.865] open = "w") [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.865] windows = "NUL", "/dev/null"), open = "w") [01:27:55.865] } [01:27:55.865] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.865] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.865] base::sink(type = "output", split = FALSE) [01:27:55.865] base::close(...future.stdout) [01:27:55.865] }, add = TRUE) [01:27:55.865] } [01:27:55.865] ...future.frame <- base::sys.nframe() [01:27:55.865] ...future.conditions <- base::list() [01:27:55.865] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.865] if (FALSE) { [01:27:55.865] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.865] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.865] } [01:27:55.865] ...future.result <- base::tryCatch({ [01:27:55.865] base::withCallingHandlers({ [01:27:55.865] ...future.value <- base::withVisible(base::local({ [01:27:55.865] lm(dist ~ . - 1, data = cars) [01:27:55.865] })) [01:27:55.865] future::FutureResult(value = ...future.value$value, [01:27:55.865] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.865] ...future.rng), globalenv = if (FALSE) [01:27:55.865] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.865] ...future.globalenv.names)) [01:27:55.865] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.865] }, condition = base::local({ [01:27:55.865] c <- base::c [01:27:55.865] inherits <- base::inherits [01:27:55.865] invokeRestart <- base::invokeRestart [01:27:55.865] length <- base::length [01:27:55.865] list <- base::list [01:27:55.865] seq.int <- base::seq.int [01:27:55.865] signalCondition <- base::signalCondition [01:27:55.865] sys.calls <- base::sys.calls [01:27:55.865] `[[` <- base::`[[` [01:27:55.865] `+` <- base::`+` [01:27:55.865] `<<-` <- base::`<<-` [01:27:55.865] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.865] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.865] 3L)] [01:27:55.865] } [01:27:55.865] function(cond) { [01:27:55.865] is_error <- inherits(cond, "error") [01:27:55.865] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.865] NULL) [01:27:55.865] if (is_error) { [01:27:55.865] sessionInformation <- function() { [01:27:55.865] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.865] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.865] search = base::search(), system = base::Sys.info()) [01:27:55.865] } [01:27:55.865] ...future.conditions[[length(...future.conditions) + [01:27:55.865] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.865] cond$call), session = sessionInformation(), [01:27:55.865] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.865] signalCondition(cond) [01:27:55.865] } [01:27:55.865] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.865] "immediateCondition"))) { [01:27:55.865] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.865] ...future.conditions[[length(...future.conditions) + [01:27:55.865] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.865] if (TRUE && !signal) { [01:27:55.865] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.865] { [01:27:55.865] inherits <- base::inherits [01:27:55.865] invokeRestart <- base::invokeRestart [01:27:55.865] is.null <- base::is.null [01:27:55.865] muffled <- FALSE [01:27:55.865] if (inherits(cond, "message")) { [01:27:55.865] muffled <- grepl(pattern, "muffleMessage") [01:27:55.865] if (muffled) [01:27:55.865] invokeRestart("muffleMessage") [01:27:55.865] } [01:27:55.865] else if (inherits(cond, "warning")) { [01:27:55.865] muffled <- grepl(pattern, "muffleWarning") [01:27:55.865] if (muffled) [01:27:55.865] invokeRestart("muffleWarning") [01:27:55.865] } [01:27:55.865] else if (inherits(cond, "condition")) { [01:27:55.865] if (!is.null(pattern)) { [01:27:55.865] computeRestarts <- base::computeRestarts [01:27:55.865] grepl <- base::grepl [01:27:55.865] restarts <- computeRestarts(cond) [01:27:55.865] for (restart in restarts) { [01:27:55.865] name <- restart$name [01:27:55.865] if (is.null(name)) [01:27:55.865] next [01:27:55.865] if (!grepl(pattern, name)) [01:27:55.865] next [01:27:55.865] invokeRestart(restart) [01:27:55.865] muffled <- TRUE [01:27:55.865] break [01:27:55.865] } [01:27:55.865] } [01:27:55.865] } [01:27:55.865] invisible(muffled) [01:27:55.865] } [01:27:55.865] muffleCondition(cond, pattern = "^muffle") [01:27:55.865] } [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] if (TRUE) { [01:27:55.865] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.865] { [01:27:55.865] inherits <- base::inherits [01:27:55.865] invokeRestart <- base::invokeRestart [01:27:55.865] is.null <- base::is.null [01:27:55.865] muffled <- FALSE [01:27:55.865] if (inherits(cond, "message")) { [01:27:55.865] muffled <- grepl(pattern, "muffleMessage") [01:27:55.865] if (muffled) [01:27:55.865] invokeRestart("muffleMessage") [01:27:55.865] } [01:27:55.865] else if (inherits(cond, "warning")) { [01:27:55.865] muffled <- grepl(pattern, "muffleWarning") [01:27:55.865] if (muffled) [01:27:55.865] invokeRestart("muffleWarning") [01:27:55.865] } [01:27:55.865] else if (inherits(cond, "condition")) { [01:27:55.865] if (!is.null(pattern)) { [01:27:55.865] computeRestarts <- base::computeRestarts [01:27:55.865] grepl <- base::grepl [01:27:55.865] restarts <- computeRestarts(cond) [01:27:55.865] for (restart in restarts) { [01:27:55.865] name <- restart$name [01:27:55.865] if (is.null(name)) [01:27:55.865] next [01:27:55.865] if (!grepl(pattern, name)) [01:27:55.865] next [01:27:55.865] invokeRestart(restart) [01:27:55.865] muffled <- TRUE [01:27:55.865] break [01:27:55.865] } [01:27:55.865] } [01:27:55.865] } [01:27:55.865] invisible(muffled) [01:27:55.865] } [01:27:55.865] muffleCondition(cond, pattern = "^muffle") [01:27:55.865] } [01:27:55.865] } [01:27:55.865] } [01:27:55.865] })) [01:27:55.865] }, error = function(ex) { [01:27:55.865] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.865] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.865] ...future.rng), started = ...future.startTime, [01:27:55.865] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.865] version = "1.8"), class = "FutureResult") [01:27:55.865] }, finally = { [01:27:55.865] if (!identical(...future.workdir, getwd())) [01:27:55.865] setwd(...future.workdir) [01:27:55.865] { [01:27:55.865] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.865] ...future.oldOptions$nwarnings <- NULL [01:27:55.865] } [01:27:55.865] base::options(...future.oldOptions) [01:27:55.865] if (.Platform$OS.type == "windows") { [01:27:55.865] old_names <- names(...future.oldEnvVars) [01:27:55.865] envs <- base::Sys.getenv() [01:27:55.865] names <- names(envs) [01:27:55.865] common <- intersect(names, old_names) [01:27:55.865] added <- setdiff(names, old_names) [01:27:55.865] removed <- setdiff(old_names, names) [01:27:55.865] changed <- common[...future.oldEnvVars[common] != [01:27:55.865] envs[common]] [01:27:55.865] NAMES <- toupper(changed) [01:27:55.865] args <- list() [01:27:55.865] for (kk in seq_along(NAMES)) { [01:27:55.865] name <- changed[[kk]] [01:27:55.865] NAME <- NAMES[[kk]] [01:27:55.865] if (name != NAME && is.element(NAME, old_names)) [01:27:55.865] next [01:27:55.865] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.865] } [01:27:55.865] NAMES <- toupper(added) [01:27:55.865] for (kk in seq_along(NAMES)) { [01:27:55.865] name <- added[[kk]] [01:27:55.865] NAME <- NAMES[[kk]] [01:27:55.865] if (name != NAME && is.element(NAME, old_names)) [01:27:55.865] next [01:27:55.865] args[[name]] <- "" [01:27:55.865] } [01:27:55.865] NAMES <- toupper(removed) [01:27:55.865] for (kk in seq_along(NAMES)) { [01:27:55.865] name <- removed[[kk]] [01:27:55.865] NAME <- NAMES[[kk]] [01:27:55.865] if (name != NAME && is.element(NAME, old_names)) [01:27:55.865] next [01:27:55.865] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.865] } [01:27:55.865] if (length(args) > 0) [01:27:55.865] base::do.call(base::Sys.setenv, args = args) [01:27:55.865] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.865] } [01:27:55.865] { [01:27:55.865] if (base::length(...future.futureOptionsAdded) > [01:27:55.865] 0L) { [01:27:55.865] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.865] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.865] base::options(opts) [01:27:55.865] } [01:27:55.865] { [01:27:55.865] { [01:27:55.865] NULL [01:27:55.865] RNGkind("Mersenne-Twister") [01:27:55.865] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.865] inherits = FALSE) [01:27:55.865] } [01:27:55.865] options(future.plan = NULL) [01:27:55.865] if (is.na(NA_character_)) [01:27:55.865] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.865] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.865] future::plan(list(function (..., envir = parent.frame()) [01:27:55.865] { [01:27:55.865] future <- SequentialFuture(..., envir = envir) [01:27:55.865] if (!future$lazy) [01:27:55.865] future <- run(future) [01:27:55.865] invisible(future) [01:27:55.865] }), .cleanup = FALSE, .init = FALSE) [01:27:55.865] } [01:27:55.865] } [01:27:55.865] } [01:27:55.865] }) [01:27:55.865] if (TRUE) { [01:27:55.865] base::sink(type = "output", split = FALSE) [01:27:55.865] if (TRUE) { [01:27:55.865] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.865] } [01:27:55.865] else { [01:27:55.865] ...future.result["stdout"] <- base::list(NULL) [01:27:55.865] } [01:27:55.865] base::close(...future.stdout) [01:27:55.865] ...future.stdout <- NULL [01:27:55.865] } [01:27:55.865] ...future.result$conditions <- ...future.conditions [01:27:55.865] ...future.result$finished <- base::Sys.time() [01:27:55.865] ...future.result [01:27:55.865] } [01:27:55.869] plan(): Setting new future strategy stack: [01:27:55.870] List of future strategies: [01:27:55.870] 1. sequential: [01:27:55.870] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.870] - tweaked: FALSE [01:27:55.870] - call: NULL [01:27:55.870] plan(): nbrOfWorkers() = 1 [01:27:55.872] plan(): Setting new future strategy stack: [01:27:55.872] List of future strategies: [01:27:55.872] 1. sequential: [01:27:55.872] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.872] - tweaked: FALSE [01:27:55.872] - call: plan(strategy) [01:27:55.873] plan(): nbrOfWorkers() = 1 [01:27:55.873] SequentialFuture started (and completed) [01:27:55.873] - Launch lazy future ... done [01:27:55.874] run() for 'SequentialFuture' ... done Call: lm(formula = dist ~ . - 1, data = cars) Coefficients: speed 2.909 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ . + 0, data = cars) Coefficients: speed 2.909 [01:27:55.877] getGlobalsAndPackages() ... [01:27:55.877] Searching for globals... [01:27:55.879] - globals found: [7] '{', 'lm', 'dist', '+', '.', '~', 'cars' [01:27:55.879] Searching for globals ... DONE [01:27:55.879] Resolving globals: FALSE [01:27:55.880] [01:27:55.880] - packages: [2] 'stats', 'datasets' [01:27:55.880] getGlobalsAndPackages() ... DONE [01:27:55.880] run() for 'Future' ... [01:27:55.881] - state: 'created' [01:27:55.881] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.881] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.881] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.882] - Field: 'label' [01:27:55.882] - Field: 'local' [01:27:55.882] - Field: 'owner' [01:27:55.882] - Field: 'envir' [01:27:55.882] - Field: 'packages' [01:27:55.883] - Field: 'gc' [01:27:55.884] - Field: 'conditions' [01:27:55.884] - Field: 'expr' [01:27:55.884] - Field: 'uuid' [01:27:55.884] - Field: 'seed' [01:27:55.884] - Field: 'version' [01:27:55.885] - Field: 'result' [01:27:55.885] - Field: 'asynchronous' [01:27:55.885] - Field: 'calls' [01:27:55.885] - Field: 'globals' [01:27:55.885] - Field: 'stdout' [01:27:55.886] - Field: 'earlySignal' [01:27:55.886] - Field: 'lazy' [01:27:55.886] - Field: 'state' [01:27:55.886] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.886] - Launch lazy future ... [01:27:55.887] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:55.887] Packages needed by future strategies (n = 0): [01:27:55.887] { [01:27:55.887] { [01:27:55.887] { [01:27:55.887] ...future.startTime <- base::Sys.time() [01:27:55.887] { [01:27:55.887] { [01:27:55.887] { [01:27:55.887] { [01:27:55.887] base::local({ [01:27:55.887] has_future <- base::requireNamespace("future", [01:27:55.887] quietly = TRUE) [01:27:55.887] if (has_future) { [01:27:55.887] ns <- base::getNamespace("future") [01:27:55.887] version <- ns[[".package"]][["version"]] [01:27:55.887] if (is.null(version)) [01:27:55.887] version <- utils::packageVersion("future") [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] version <- NULL [01:27:55.887] } [01:27:55.887] if (!has_future || version < "1.8.0") { [01:27:55.887] info <- base::c(r_version = base::gsub("R version ", [01:27:55.887] "", base::R.version$version.string), [01:27:55.887] platform = base::sprintf("%s (%s-bit)", [01:27:55.887] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.887] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.887] "release", "version")], collapse = " "), [01:27:55.887] hostname = base::Sys.info()[["nodename"]]) [01:27:55.887] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.887] info) [01:27:55.887] info <- base::paste(info, collapse = "; ") [01:27:55.887] if (!has_future) { [01:27:55.887] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.887] info) [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.887] info, version) [01:27:55.887] } [01:27:55.887] base::stop(msg) [01:27:55.887] } [01:27:55.887] }) [01:27:55.887] } [01:27:55.887] base::local({ [01:27:55.887] for (pkg in c("stats", "datasets")) { [01:27:55.887] base::loadNamespace(pkg) [01:27:55.887] base::library(pkg, character.only = TRUE) [01:27:55.887] } [01:27:55.887] }) [01:27:55.887] } [01:27:55.887] options(future.plan = NULL) [01:27:55.887] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.887] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.887] } [01:27:55.887] ...future.workdir <- getwd() [01:27:55.887] } [01:27:55.887] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.887] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.887] } [01:27:55.887] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.887] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.887] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.887] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.887] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.887] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.887] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.887] base::names(...future.oldOptions)) [01:27:55.887] } [01:27:55.887] if (FALSE) { [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] if (TRUE) { [01:27:55.887] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.887] open = "w") [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.887] windows = "NUL", "/dev/null"), open = "w") [01:27:55.887] } [01:27:55.887] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.887] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.887] base::sink(type = "output", split = FALSE) [01:27:55.887] base::close(...future.stdout) [01:27:55.887] }, add = TRUE) [01:27:55.887] } [01:27:55.887] ...future.frame <- base::sys.nframe() [01:27:55.887] ...future.conditions <- base::list() [01:27:55.887] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.887] if (FALSE) { [01:27:55.887] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.887] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.887] } [01:27:55.887] ...future.result <- base::tryCatch({ [01:27:55.887] base::withCallingHandlers({ [01:27:55.887] ...future.value <- base::withVisible(base::local({ [01:27:55.887] lm(dist ~ . + 0, data = cars) [01:27:55.887] })) [01:27:55.887] future::FutureResult(value = ...future.value$value, [01:27:55.887] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.887] ...future.rng), globalenv = if (FALSE) [01:27:55.887] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.887] ...future.globalenv.names)) [01:27:55.887] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.887] }, condition = base::local({ [01:27:55.887] c <- base::c [01:27:55.887] inherits <- base::inherits [01:27:55.887] invokeRestart <- base::invokeRestart [01:27:55.887] length <- base::length [01:27:55.887] list <- base::list [01:27:55.887] seq.int <- base::seq.int [01:27:55.887] signalCondition <- base::signalCondition [01:27:55.887] sys.calls <- base::sys.calls [01:27:55.887] `[[` <- base::`[[` [01:27:55.887] `+` <- base::`+` [01:27:55.887] `<<-` <- base::`<<-` [01:27:55.887] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.887] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.887] 3L)] [01:27:55.887] } [01:27:55.887] function(cond) { [01:27:55.887] is_error <- inherits(cond, "error") [01:27:55.887] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.887] NULL) [01:27:55.887] if (is_error) { [01:27:55.887] sessionInformation <- function() { [01:27:55.887] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.887] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.887] search = base::search(), system = base::Sys.info()) [01:27:55.887] } [01:27:55.887] ...future.conditions[[length(...future.conditions) + [01:27:55.887] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.887] cond$call), session = sessionInformation(), [01:27:55.887] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.887] signalCondition(cond) [01:27:55.887] } [01:27:55.887] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.887] "immediateCondition"))) { [01:27:55.887] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.887] ...future.conditions[[length(...future.conditions) + [01:27:55.887] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.887] if (TRUE && !signal) { [01:27:55.887] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.887] { [01:27:55.887] inherits <- base::inherits [01:27:55.887] invokeRestart <- base::invokeRestart [01:27:55.887] is.null <- base::is.null [01:27:55.887] muffled <- FALSE [01:27:55.887] if (inherits(cond, "message")) { [01:27:55.887] muffled <- grepl(pattern, "muffleMessage") [01:27:55.887] if (muffled) [01:27:55.887] invokeRestart("muffleMessage") [01:27:55.887] } [01:27:55.887] else if (inherits(cond, "warning")) { [01:27:55.887] muffled <- grepl(pattern, "muffleWarning") [01:27:55.887] if (muffled) [01:27:55.887] invokeRestart("muffleWarning") [01:27:55.887] } [01:27:55.887] else if (inherits(cond, "condition")) { [01:27:55.887] if (!is.null(pattern)) { [01:27:55.887] computeRestarts <- base::computeRestarts [01:27:55.887] grepl <- base::grepl [01:27:55.887] restarts <- computeRestarts(cond) [01:27:55.887] for (restart in restarts) { [01:27:55.887] name <- restart$name [01:27:55.887] if (is.null(name)) [01:27:55.887] next [01:27:55.887] if (!grepl(pattern, name)) [01:27:55.887] next [01:27:55.887] invokeRestart(restart) [01:27:55.887] muffled <- TRUE [01:27:55.887] break [01:27:55.887] } [01:27:55.887] } [01:27:55.887] } [01:27:55.887] invisible(muffled) [01:27:55.887] } [01:27:55.887] muffleCondition(cond, pattern = "^muffle") [01:27:55.887] } [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] if (TRUE) { [01:27:55.887] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.887] { [01:27:55.887] inherits <- base::inherits [01:27:55.887] invokeRestart <- base::invokeRestart [01:27:55.887] is.null <- base::is.null [01:27:55.887] muffled <- FALSE [01:27:55.887] if (inherits(cond, "message")) { [01:27:55.887] muffled <- grepl(pattern, "muffleMessage") [01:27:55.887] if (muffled) [01:27:55.887] invokeRestart("muffleMessage") [01:27:55.887] } [01:27:55.887] else if (inherits(cond, "warning")) { [01:27:55.887] muffled <- grepl(pattern, "muffleWarning") [01:27:55.887] if (muffled) [01:27:55.887] invokeRestart("muffleWarning") [01:27:55.887] } [01:27:55.887] else if (inherits(cond, "condition")) { [01:27:55.887] if (!is.null(pattern)) { [01:27:55.887] computeRestarts <- base::computeRestarts [01:27:55.887] grepl <- base::grepl [01:27:55.887] restarts <- computeRestarts(cond) [01:27:55.887] for (restart in restarts) { [01:27:55.887] name <- restart$name [01:27:55.887] if (is.null(name)) [01:27:55.887] next [01:27:55.887] if (!grepl(pattern, name)) [01:27:55.887] next [01:27:55.887] invokeRestart(restart) [01:27:55.887] muffled <- TRUE [01:27:55.887] break [01:27:55.887] } [01:27:55.887] } [01:27:55.887] } [01:27:55.887] invisible(muffled) [01:27:55.887] } [01:27:55.887] muffleCondition(cond, pattern = "^muffle") [01:27:55.887] } [01:27:55.887] } [01:27:55.887] } [01:27:55.887] })) [01:27:55.887] }, error = function(ex) { [01:27:55.887] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.887] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.887] ...future.rng), started = ...future.startTime, [01:27:55.887] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.887] version = "1.8"), class = "FutureResult") [01:27:55.887] }, finally = { [01:27:55.887] if (!identical(...future.workdir, getwd())) [01:27:55.887] setwd(...future.workdir) [01:27:55.887] { [01:27:55.887] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.887] ...future.oldOptions$nwarnings <- NULL [01:27:55.887] } [01:27:55.887] base::options(...future.oldOptions) [01:27:55.887] if (.Platform$OS.type == "windows") { [01:27:55.887] old_names <- names(...future.oldEnvVars) [01:27:55.887] envs <- base::Sys.getenv() [01:27:55.887] names <- names(envs) [01:27:55.887] common <- intersect(names, old_names) [01:27:55.887] added <- setdiff(names, old_names) [01:27:55.887] removed <- setdiff(old_names, names) [01:27:55.887] changed <- common[...future.oldEnvVars[common] != [01:27:55.887] envs[common]] [01:27:55.887] NAMES <- toupper(changed) [01:27:55.887] args <- list() [01:27:55.887] for (kk in seq_along(NAMES)) { [01:27:55.887] name <- changed[[kk]] [01:27:55.887] NAME <- NAMES[[kk]] [01:27:55.887] if (name != NAME && is.element(NAME, old_names)) [01:27:55.887] next [01:27:55.887] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.887] } [01:27:55.887] NAMES <- toupper(added) [01:27:55.887] for (kk in seq_along(NAMES)) { [01:27:55.887] name <- added[[kk]] [01:27:55.887] NAME <- NAMES[[kk]] [01:27:55.887] if (name != NAME && is.element(NAME, old_names)) [01:27:55.887] next [01:27:55.887] args[[name]] <- "" [01:27:55.887] } [01:27:55.887] NAMES <- toupper(removed) [01:27:55.887] for (kk in seq_along(NAMES)) { [01:27:55.887] name <- removed[[kk]] [01:27:55.887] NAME <- NAMES[[kk]] [01:27:55.887] if (name != NAME && is.element(NAME, old_names)) [01:27:55.887] next [01:27:55.887] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.887] } [01:27:55.887] if (length(args) > 0) [01:27:55.887] base::do.call(base::Sys.setenv, args = args) [01:27:55.887] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.887] } [01:27:55.887] { [01:27:55.887] if (base::length(...future.futureOptionsAdded) > [01:27:55.887] 0L) { [01:27:55.887] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.887] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.887] base::options(opts) [01:27:55.887] } [01:27:55.887] { [01:27:55.887] { [01:27:55.887] NULL [01:27:55.887] RNGkind("Mersenne-Twister") [01:27:55.887] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.887] inherits = FALSE) [01:27:55.887] } [01:27:55.887] options(future.plan = NULL) [01:27:55.887] if (is.na(NA_character_)) [01:27:55.887] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.887] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.887] future::plan(list(function (..., envir = parent.frame()) [01:27:55.887] { [01:27:55.887] future <- SequentialFuture(..., envir = envir) [01:27:55.887] if (!future$lazy) [01:27:55.887] future <- run(future) [01:27:55.887] invisible(future) [01:27:55.887] }), .cleanup = FALSE, .init = FALSE) [01:27:55.887] } [01:27:55.887] } [01:27:55.887] } [01:27:55.887] }) [01:27:55.887] if (TRUE) { [01:27:55.887] base::sink(type = "output", split = FALSE) [01:27:55.887] if (TRUE) { [01:27:55.887] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.887] } [01:27:55.887] else { [01:27:55.887] ...future.result["stdout"] <- base::list(NULL) [01:27:55.887] } [01:27:55.887] base::close(...future.stdout) [01:27:55.887] ...future.stdout <- NULL [01:27:55.887] } [01:27:55.887] ...future.result$conditions <- ...future.conditions [01:27:55.887] ...future.result$finished <- base::Sys.time() [01:27:55.887] ...future.result [01:27:55.887] } [01:27:55.892] plan(): Setting new future strategy stack: [01:27:55.892] List of future strategies: [01:27:55.892] 1. sequential: [01:27:55.892] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.892] - tweaked: FALSE [01:27:55.892] - call: NULL [01:27:55.893] plan(): nbrOfWorkers() = 1 [01:27:55.894] plan(): Setting new future strategy stack: [01:27:55.895] List of future strategies: [01:27:55.895] 1. sequential: [01:27:55.895] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.895] - tweaked: FALSE [01:27:55.895] - call: plan(strategy) [01:27:55.895] plan(): nbrOfWorkers() = 1 [01:27:55.896] SequentialFuture started (and completed) [01:27:55.896] - Launch lazy future ... done [01:27:55.896] run() for 'SequentialFuture' ... done Call: lm(formula = dist ~ . + 0, data = cars) Coefficients: speed 2.909 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ speed + speed^2, data = cars) Coefficients: (Intercept) speed -17.579 3.932 [01:27:55.899] getGlobalsAndPackages() ... [01:27:55.899] Searching for globals... [01:27:55.901] - globals found: [8] '{', 'lm', 'dist', '+', 'speed', '^', '~', 'cars' [01:27:55.901] Searching for globals ... DONE [01:27:55.902] Resolving globals: FALSE [01:27:55.902] [01:27:55.902] - packages: [2] 'stats', 'datasets' [01:27:55.903] getGlobalsAndPackages() ... DONE [01:27:55.903] run() for 'Future' ... [01:27:55.903] - state: 'created' [01:27:55.903] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.904] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.904] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.904] - Field: 'label' [01:27:55.904] - Field: 'local' [01:27:55.904] - Field: 'owner' [01:27:55.905] - Field: 'envir' [01:27:55.905] - Field: 'packages' [01:27:55.905] - Field: 'gc' [01:27:55.905] - Field: 'conditions' [01:27:55.905] - Field: 'expr' [01:27:55.906] - Field: 'uuid' [01:27:55.906] - Field: 'seed' [01:27:55.906] - Field: 'version' [01:27:55.906] - Field: 'result' [01:27:55.906] - Field: 'asynchronous' [01:27:55.906] - Field: 'calls' [01:27:55.907] - Field: 'globals' [01:27:55.907] - Field: 'stdout' [01:27:55.907] - Field: 'earlySignal' [01:27:55.907] - Field: 'lazy' [01:27:55.907] - Field: 'state' [01:27:55.907] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.908] - Launch lazy future ... [01:27:55.908] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:55.908] Packages needed by future strategies (n = 0): [01:27:55.909] { [01:27:55.909] { [01:27:55.909] { [01:27:55.909] ...future.startTime <- base::Sys.time() [01:27:55.909] { [01:27:55.909] { [01:27:55.909] { [01:27:55.909] { [01:27:55.909] base::local({ [01:27:55.909] has_future <- base::requireNamespace("future", [01:27:55.909] quietly = TRUE) [01:27:55.909] if (has_future) { [01:27:55.909] ns <- base::getNamespace("future") [01:27:55.909] version <- ns[[".package"]][["version"]] [01:27:55.909] if (is.null(version)) [01:27:55.909] version <- utils::packageVersion("future") [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] version <- NULL [01:27:55.909] } [01:27:55.909] if (!has_future || version < "1.8.0") { [01:27:55.909] info <- base::c(r_version = base::gsub("R version ", [01:27:55.909] "", base::R.version$version.string), [01:27:55.909] platform = base::sprintf("%s (%s-bit)", [01:27:55.909] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.909] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.909] "release", "version")], collapse = " "), [01:27:55.909] hostname = base::Sys.info()[["nodename"]]) [01:27:55.909] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.909] info) [01:27:55.909] info <- base::paste(info, collapse = "; ") [01:27:55.909] if (!has_future) { [01:27:55.909] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.909] info) [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.909] info, version) [01:27:55.909] } [01:27:55.909] base::stop(msg) [01:27:55.909] } [01:27:55.909] }) [01:27:55.909] } [01:27:55.909] base::local({ [01:27:55.909] for (pkg in c("stats", "datasets")) { [01:27:55.909] base::loadNamespace(pkg) [01:27:55.909] base::library(pkg, character.only = TRUE) [01:27:55.909] } [01:27:55.909] }) [01:27:55.909] } [01:27:55.909] options(future.plan = NULL) [01:27:55.909] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.909] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.909] } [01:27:55.909] ...future.workdir <- getwd() [01:27:55.909] } [01:27:55.909] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.909] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.909] } [01:27:55.909] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.909] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.909] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.909] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.909] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.909] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.909] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.909] base::names(...future.oldOptions)) [01:27:55.909] } [01:27:55.909] if (FALSE) { [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] if (TRUE) { [01:27:55.909] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.909] open = "w") [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.909] windows = "NUL", "/dev/null"), open = "w") [01:27:55.909] } [01:27:55.909] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.909] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.909] base::sink(type = "output", split = FALSE) [01:27:55.909] base::close(...future.stdout) [01:27:55.909] }, add = TRUE) [01:27:55.909] } [01:27:55.909] ...future.frame <- base::sys.nframe() [01:27:55.909] ...future.conditions <- base::list() [01:27:55.909] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.909] if (FALSE) { [01:27:55.909] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.909] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.909] } [01:27:55.909] ...future.result <- base::tryCatch({ [01:27:55.909] base::withCallingHandlers({ [01:27:55.909] ...future.value <- base::withVisible(base::local({ [01:27:55.909] lm(dist ~ speed + speed^2, data = cars) [01:27:55.909] })) [01:27:55.909] future::FutureResult(value = ...future.value$value, [01:27:55.909] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.909] ...future.rng), globalenv = if (FALSE) [01:27:55.909] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.909] ...future.globalenv.names)) [01:27:55.909] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.909] }, condition = base::local({ [01:27:55.909] c <- base::c [01:27:55.909] inherits <- base::inherits [01:27:55.909] invokeRestart <- base::invokeRestart [01:27:55.909] length <- base::length [01:27:55.909] list <- base::list [01:27:55.909] seq.int <- base::seq.int [01:27:55.909] signalCondition <- base::signalCondition [01:27:55.909] sys.calls <- base::sys.calls [01:27:55.909] `[[` <- base::`[[` [01:27:55.909] `+` <- base::`+` [01:27:55.909] `<<-` <- base::`<<-` [01:27:55.909] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.909] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.909] 3L)] [01:27:55.909] } [01:27:55.909] function(cond) { [01:27:55.909] is_error <- inherits(cond, "error") [01:27:55.909] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.909] NULL) [01:27:55.909] if (is_error) { [01:27:55.909] sessionInformation <- function() { [01:27:55.909] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.909] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.909] search = base::search(), system = base::Sys.info()) [01:27:55.909] } [01:27:55.909] ...future.conditions[[length(...future.conditions) + [01:27:55.909] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.909] cond$call), session = sessionInformation(), [01:27:55.909] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.909] signalCondition(cond) [01:27:55.909] } [01:27:55.909] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.909] "immediateCondition"))) { [01:27:55.909] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.909] ...future.conditions[[length(...future.conditions) + [01:27:55.909] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.909] if (TRUE && !signal) { [01:27:55.909] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.909] { [01:27:55.909] inherits <- base::inherits [01:27:55.909] invokeRestart <- base::invokeRestart [01:27:55.909] is.null <- base::is.null [01:27:55.909] muffled <- FALSE [01:27:55.909] if (inherits(cond, "message")) { [01:27:55.909] muffled <- grepl(pattern, "muffleMessage") [01:27:55.909] if (muffled) [01:27:55.909] invokeRestart("muffleMessage") [01:27:55.909] } [01:27:55.909] else if (inherits(cond, "warning")) { [01:27:55.909] muffled <- grepl(pattern, "muffleWarning") [01:27:55.909] if (muffled) [01:27:55.909] invokeRestart("muffleWarning") [01:27:55.909] } [01:27:55.909] else if (inherits(cond, "condition")) { [01:27:55.909] if (!is.null(pattern)) { [01:27:55.909] computeRestarts <- base::computeRestarts [01:27:55.909] grepl <- base::grepl [01:27:55.909] restarts <- computeRestarts(cond) [01:27:55.909] for (restart in restarts) { [01:27:55.909] name <- restart$name [01:27:55.909] if (is.null(name)) [01:27:55.909] next [01:27:55.909] if (!grepl(pattern, name)) [01:27:55.909] next [01:27:55.909] invokeRestart(restart) [01:27:55.909] muffled <- TRUE [01:27:55.909] break [01:27:55.909] } [01:27:55.909] } [01:27:55.909] } [01:27:55.909] invisible(muffled) [01:27:55.909] } [01:27:55.909] muffleCondition(cond, pattern = "^muffle") [01:27:55.909] } [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] if (TRUE) { [01:27:55.909] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.909] { [01:27:55.909] inherits <- base::inherits [01:27:55.909] invokeRestart <- base::invokeRestart [01:27:55.909] is.null <- base::is.null [01:27:55.909] muffled <- FALSE [01:27:55.909] if (inherits(cond, "message")) { [01:27:55.909] muffled <- grepl(pattern, "muffleMessage") [01:27:55.909] if (muffled) [01:27:55.909] invokeRestart("muffleMessage") [01:27:55.909] } [01:27:55.909] else if (inherits(cond, "warning")) { [01:27:55.909] muffled <- grepl(pattern, "muffleWarning") [01:27:55.909] if (muffled) [01:27:55.909] invokeRestart("muffleWarning") [01:27:55.909] } [01:27:55.909] else if (inherits(cond, "condition")) { [01:27:55.909] if (!is.null(pattern)) { [01:27:55.909] computeRestarts <- base::computeRestarts [01:27:55.909] grepl <- base::grepl [01:27:55.909] restarts <- computeRestarts(cond) [01:27:55.909] for (restart in restarts) { [01:27:55.909] name <- restart$name [01:27:55.909] if (is.null(name)) [01:27:55.909] next [01:27:55.909] if (!grepl(pattern, name)) [01:27:55.909] next [01:27:55.909] invokeRestart(restart) [01:27:55.909] muffled <- TRUE [01:27:55.909] break [01:27:55.909] } [01:27:55.909] } [01:27:55.909] } [01:27:55.909] invisible(muffled) [01:27:55.909] } [01:27:55.909] muffleCondition(cond, pattern = "^muffle") [01:27:55.909] } [01:27:55.909] } [01:27:55.909] } [01:27:55.909] })) [01:27:55.909] }, error = function(ex) { [01:27:55.909] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.909] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.909] ...future.rng), started = ...future.startTime, [01:27:55.909] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.909] version = "1.8"), class = "FutureResult") [01:27:55.909] }, finally = { [01:27:55.909] if (!identical(...future.workdir, getwd())) [01:27:55.909] setwd(...future.workdir) [01:27:55.909] { [01:27:55.909] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.909] ...future.oldOptions$nwarnings <- NULL [01:27:55.909] } [01:27:55.909] base::options(...future.oldOptions) [01:27:55.909] if (.Platform$OS.type == "windows") { [01:27:55.909] old_names <- names(...future.oldEnvVars) [01:27:55.909] envs <- base::Sys.getenv() [01:27:55.909] names <- names(envs) [01:27:55.909] common <- intersect(names, old_names) [01:27:55.909] added <- setdiff(names, old_names) [01:27:55.909] removed <- setdiff(old_names, names) [01:27:55.909] changed <- common[...future.oldEnvVars[common] != [01:27:55.909] envs[common]] [01:27:55.909] NAMES <- toupper(changed) [01:27:55.909] args <- list() [01:27:55.909] for (kk in seq_along(NAMES)) { [01:27:55.909] name <- changed[[kk]] [01:27:55.909] NAME <- NAMES[[kk]] [01:27:55.909] if (name != NAME && is.element(NAME, old_names)) [01:27:55.909] next [01:27:55.909] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.909] } [01:27:55.909] NAMES <- toupper(added) [01:27:55.909] for (kk in seq_along(NAMES)) { [01:27:55.909] name <- added[[kk]] [01:27:55.909] NAME <- NAMES[[kk]] [01:27:55.909] if (name != NAME && is.element(NAME, old_names)) [01:27:55.909] next [01:27:55.909] args[[name]] <- "" [01:27:55.909] } [01:27:55.909] NAMES <- toupper(removed) [01:27:55.909] for (kk in seq_along(NAMES)) { [01:27:55.909] name <- removed[[kk]] [01:27:55.909] NAME <- NAMES[[kk]] [01:27:55.909] if (name != NAME && is.element(NAME, old_names)) [01:27:55.909] next [01:27:55.909] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.909] } [01:27:55.909] if (length(args) > 0) [01:27:55.909] base::do.call(base::Sys.setenv, args = args) [01:27:55.909] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.909] } [01:27:55.909] { [01:27:55.909] if (base::length(...future.futureOptionsAdded) > [01:27:55.909] 0L) { [01:27:55.909] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.909] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.909] base::options(opts) [01:27:55.909] } [01:27:55.909] { [01:27:55.909] { [01:27:55.909] NULL [01:27:55.909] RNGkind("Mersenne-Twister") [01:27:55.909] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.909] inherits = FALSE) [01:27:55.909] } [01:27:55.909] options(future.plan = NULL) [01:27:55.909] if (is.na(NA_character_)) [01:27:55.909] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.909] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.909] future::plan(list(function (..., envir = parent.frame()) [01:27:55.909] { [01:27:55.909] future <- SequentialFuture(..., envir = envir) [01:27:55.909] if (!future$lazy) [01:27:55.909] future <- run(future) [01:27:55.909] invisible(future) [01:27:55.909] }), .cleanup = FALSE, .init = FALSE) [01:27:55.909] } [01:27:55.909] } [01:27:55.909] } [01:27:55.909] }) [01:27:55.909] if (TRUE) { [01:27:55.909] base::sink(type = "output", split = FALSE) [01:27:55.909] if (TRUE) { [01:27:55.909] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.909] } [01:27:55.909] else { [01:27:55.909] ...future.result["stdout"] <- base::list(NULL) [01:27:55.909] } [01:27:55.909] base::close(...future.stdout) [01:27:55.909] ...future.stdout <- NULL [01:27:55.909] } [01:27:55.909] ...future.result$conditions <- ...future.conditions [01:27:55.909] ...future.result$finished <- base::Sys.time() [01:27:55.909] ...future.result [01:27:55.909] } [01:27:55.913] plan(): Setting new future strategy stack: [01:27:55.913] List of future strategies: [01:27:55.913] 1. sequential: [01:27:55.913] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.913] - tweaked: FALSE [01:27:55.913] - call: NULL [01:27:55.914] plan(): nbrOfWorkers() = 1 [01:27:55.917] plan(): Setting new future strategy stack: [01:27:55.918] List of future strategies: [01:27:55.918] 1. sequential: [01:27:55.918] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.918] - tweaked: FALSE [01:27:55.918] - call: plan(strategy) [01:27:55.918] plan(): nbrOfWorkers() = 1 [01:27:55.919] SequentialFuture started (and completed) [01:27:55.919] - Launch lazy future ... done [01:27:55.919] run() for 'SequentialFuture' ... done Call: lm(formula = dist ~ speed + speed^2, data = cars) Coefficients: (Intercept) speed -17.579 3.932 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ speed + I(speed^2), data = cars) Coefficients: (Intercept) speed I(speed^2) 2.47014 0.91329 0.09996 [01:27:55.922] getGlobalsAndPackages() ... [01:27:55.922] Searching for globals... [01:27:55.925] - globals found: [9] '{', 'lm', 'dist', '+', 'speed', 'I', '^', '~', 'cars' [01:27:55.925] Searching for globals ... DONE [01:27:55.925] Resolving globals: FALSE [01:27:55.926] [01:27:55.926] - packages: [2] 'stats', 'datasets' [01:27:55.926] getGlobalsAndPackages() ... DONE [01:27:55.927] run() for 'Future' ... [01:27:55.927] - state: 'created' [01:27:55.927] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.927] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.928] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.928] - Field: 'label' [01:27:55.928] - Field: 'local' [01:27:55.928] - Field: 'owner' [01:27:55.928] - Field: 'envir' [01:27:55.929] - Field: 'packages' [01:27:55.929] - Field: 'gc' [01:27:55.929] - Field: 'conditions' [01:27:55.929] - Field: 'expr' [01:27:55.929] - Field: 'uuid' [01:27:55.929] - Field: 'seed' [01:27:55.930] - Field: 'version' [01:27:55.930] - Field: 'result' [01:27:55.930] - Field: 'asynchronous' [01:27:55.930] - Field: 'calls' [01:27:55.930] - Field: 'globals' [01:27:55.931] - Field: 'stdout' [01:27:55.931] - Field: 'earlySignal' [01:27:55.931] - Field: 'lazy' [01:27:55.931] - Field: 'state' [01:27:55.931] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.932] - Launch lazy future ... [01:27:55.932] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:55.932] Packages needed by future strategies (n = 0): [01:27:55.933] { [01:27:55.933] { [01:27:55.933] { [01:27:55.933] ...future.startTime <- base::Sys.time() [01:27:55.933] { [01:27:55.933] { [01:27:55.933] { [01:27:55.933] { [01:27:55.933] base::local({ [01:27:55.933] has_future <- base::requireNamespace("future", [01:27:55.933] quietly = TRUE) [01:27:55.933] if (has_future) { [01:27:55.933] ns <- base::getNamespace("future") [01:27:55.933] version <- ns[[".package"]][["version"]] [01:27:55.933] if (is.null(version)) [01:27:55.933] version <- utils::packageVersion("future") [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] version <- NULL [01:27:55.933] } [01:27:55.933] if (!has_future || version < "1.8.0") { [01:27:55.933] info <- base::c(r_version = base::gsub("R version ", [01:27:55.933] "", base::R.version$version.string), [01:27:55.933] platform = base::sprintf("%s (%s-bit)", [01:27:55.933] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.933] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.933] "release", "version")], collapse = " "), [01:27:55.933] hostname = base::Sys.info()[["nodename"]]) [01:27:55.933] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.933] info) [01:27:55.933] info <- base::paste(info, collapse = "; ") [01:27:55.933] if (!has_future) { [01:27:55.933] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.933] info) [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.933] info, version) [01:27:55.933] } [01:27:55.933] base::stop(msg) [01:27:55.933] } [01:27:55.933] }) [01:27:55.933] } [01:27:55.933] base::local({ [01:27:55.933] for (pkg in c("stats", "datasets")) { [01:27:55.933] base::loadNamespace(pkg) [01:27:55.933] base::library(pkg, character.only = TRUE) [01:27:55.933] } [01:27:55.933] }) [01:27:55.933] } [01:27:55.933] options(future.plan = NULL) [01:27:55.933] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.933] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.933] } [01:27:55.933] ...future.workdir <- getwd() [01:27:55.933] } [01:27:55.933] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.933] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.933] } [01:27:55.933] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.933] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.933] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.933] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.933] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.933] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.933] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.933] base::names(...future.oldOptions)) [01:27:55.933] } [01:27:55.933] if (FALSE) { [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] if (TRUE) { [01:27:55.933] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.933] open = "w") [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.933] windows = "NUL", "/dev/null"), open = "w") [01:27:55.933] } [01:27:55.933] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.933] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.933] base::sink(type = "output", split = FALSE) [01:27:55.933] base::close(...future.stdout) [01:27:55.933] }, add = TRUE) [01:27:55.933] } [01:27:55.933] ...future.frame <- base::sys.nframe() [01:27:55.933] ...future.conditions <- base::list() [01:27:55.933] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.933] if (FALSE) { [01:27:55.933] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.933] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.933] } [01:27:55.933] ...future.result <- base::tryCatch({ [01:27:55.933] base::withCallingHandlers({ [01:27:55.933] ...future.value <- base::withVisible(base::local({ [01:27:55.933] lm(dist ~ speed + I(speed^2), data = cars) [01:27:55.933] })) [01:27:55.933] future::FutureResult(value = ...future.value$value, [01:27:55.933] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.933] ...future.rng), globalenv = if (FALSE) [01:27:55.933] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.933] ...future.globalenv.names)) [01:27:55.933] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.933] }, condition = base::local({ [01:27:55.933] c <- base::c [01:27:55.933] inherits <- base::inherits [01:27:55.933] invokeRestart <- base::invokeRestart [01:27:55.933] length <- base::length [01:27:55.933] list <- base::list [01:27:55.933] seq.int <- base::seq.int [01:27:55.933] signalCondition <- base::signalCondition [01:27:55.933] sys.calls <- base::sys.calls [01:27:55.933] `[[` <- base::`[[` [01:27:55.933] `+` <- base::`+` [01:27:55.933] `<<-` <- base::`<<-` [01:27:55.933] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.933] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.933] 3L)] [01:27:55.933] } [01:27:55.933] function(cond) { [01:27:55.933] is_error <- inherits(cond, "error") [01:27:55.933] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.933] NULL) [01:27:55.933] if (is_error) { [01:27:55.933] sessionInformation <- function() { [01:27:55.933] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.933] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.933] search = base::search(), system = base::Sys.info()) [01:27:55.933] } [01:27:55.933] ...future.conditions[[length(...future.conditions) + [01:27:55.933] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.933] cond$call), session = sessionInformation(), [01:27:55.933] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.933] signalCondition(cond) [01:27:55.933] } [01:27:55.933] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.933] "immediateCondition"))) { [01:27:55.933] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.933] ...future.conditions[[length(...future.conditions) + [01:27:55.933] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.933] if (TRUE && !signal) { [01:27:55.933] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.933] { [01:27:55.933] inherits <- base::inherits [01:27:55.933] invokeRestart <- base::invokeRestart [01:27:55.933] is.null <- base::is.null [01:27:55.933] muffled <- FALSE [01:27:55.933] if (inherits(cond, "message")) { [01:27:55.933] muffled <- grepl(pattern, "muffleMessage") [01:27:55.933] if (muffled) [01:27:55.933] invokeRestart("muffleMessage") [01:27:55.933] } [01:27:55.933] else if (inherits(cond, "warning")) { [01:27:55.933] muffled <- grepl(pattern, "muffleWarning") [01:27:55.933] if (muffled) [01:27:55.933] invokeRestart("muffleWarning") [01:27:55.933] } [01:27:55.933] else if (inherits(cond, "condition")) { [01:27:55.933] if (!is.null(pattern)) { [01:27:55.933] computeRestarts <- base::computeRestarts [01:27:55.933] grepl <- base::grepl [01:27:55.933] restarts <- computeRestarts(cond) [01:27:55.933] for (restart in restarts) { [01:27:55.933] name <- restart$name [01:27:55.933] if (is.null(name)) [01:27:55.933] next [01:27:55.933] if (!grepl(pattern, name)) [01:27:55.933] next [01:27:55.933] invokeRestart(restart) [01:27:55.933] muffled <- TRUE [01:27:55.933] break [01:27:55.933] } [01:27:55.933] } [01:27:55.933] } [01:27:55.933] invisible(muffled) [01:27:55.933] } [01:27:55.933] muffleCondition(cond, pattern = "^muffle") [01:27:55.933] } [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] if (TRUE) { [01:27:55.933] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.933] { [01:27:55.933] inherits <- base::inherits [01:27:55.933] invokeRestart <- base::invokeRestart [01:27:55.933] is.null <- base::is.null [01:27:55.933] muffled <- FALSE [01:27:55.933] if (inherits(cond, "message")) { [01:27:55.933] muffled <- grepl(pattern, "muffleMessage") [01:27:55.933] if (muffled) [01:27:55.933] invokeRestart("muffleMessage") [01:27:55.933] } [01:27:55.933] else if (inherits(cond, "warning")) { [01:27:55.933] muffled <- grepl(pattern, "muffleWarning") [01:27:55.933] if (muffled) [01:27:55.933] invokeRestart("muffleWarning") [01:27:55.933] } [01:27:55.933] else if (inherits(cond, "condition")) { [01:27:55.933] if (!is.null(pattern)) { [01:27:55.933] computeRestarts <- base::computeRestarts [01:27:55.933] grepl <- base::grepl [01:27:55.933] restarts <- computeRestarts(cond) [01:27:55.933] for (restart in restarts) { [01:27:55.933] name <- restart$name [01:27:55.933] if (is.null(name)) [01:27:55.933] next [01:27:55.933] if (!grepl(pattern, name)) [01:27:55.933] next [01:27:55.933] invokeRestart(restart) [01:27:55.933] muffled <- TRUE [01:27:55.933] break [01:27:55.933] } [01:27:55.933] } [01:27:55.933] } [01:27:55.933] invisible(muffled) [01:27:55.933] } [01:27:55.933] muffleCondition(cond, pattern = "^muffle") [01:27:55.933] } [01:27:55.933] } [01:27:55.933] } [01:27:55.933] })) [01:27:55.933] }, error = function(ex) { [01:27:55.933] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.933] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.933] ...future.rng), started = ...future.startTime, [01:27:55.933] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.933] version = "1.8"), class = "FutureResult") [01:27:55.933] }, finally = { [01:27:55.933] if (!identical(...future.workdir, getwd())) [01:27:55.933] setwd(...future.workdir) [01:27:55.933] { [01:27:55.933] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.933] ...future.oldOptions$nwarnings <- NULL [01:27:55.933] } [01:27:55.933] base::options(...future.oldOptions) [01:27:55.933] if (.Platform$OS.type == "windows") { [01:27:55.933] old_names <- names(...future.oldEnvVars) [01:27:55.933] envs <- base::Sys.getenv() [01:27:55.933] names <- names(envs) [01:27:55.933] common <- intersect(names, old_names) [01:27:55.933] added <- setdiff(names, old_names) [01:27:55.933] removed <- setdiff(old_names, names) [01:27:55.933] changed <- common[...future.oldEnvVars[common] != [01:27:55.933] envs[common]] [01:27:55.933] NAMES <- toupper(changed) [01:27:55.933] args <- list() [01:27:55.933] for (kk in seq_along(NAMES)) { [01:27:55.933] name <- changed[[kk]] [01:27:55.933] NAME <- NAMES[[kk]] [01:27:55.933] if (name != NAME && is.element(NAME, old_names)) [01:27:55.933] next [01:27:55.933] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.933] } [01:27:55.933] NAMES <- toupper(added) [01:27:55.933] for (kk in seq_along(NAMES)) { [01:27:55.933] name <- added[[kk]] [01:27:55.933] NAME <- NAMES[[kk]] [01:27:55.933] if (name != NAME && is.element(NAME, old_names)) [01:27:55.933] next [01:27:55.933] args[[name]] <- "" [01:27:55.933] } [01:27:55.933] NAMES <- toupper(removed) [01:27:55.933] for (kk in seq_along(NAMES)) { [01:27:55.933] name <- removed[[kk]] [01:27:55.933] NAME <- NAMES[[kk]] [01:27:55.933] if (name != NAME && is.element(NAME, old_names)) [01:27:55.933] next [01:27:55.933] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.933] } [01:27:55.933] if (length(args) > 0) [01:27:55.933] base::do.call(base::Sys.setenv, args = args) [01:27:55.933] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.933] } [01:27:55.933] { [01:27:55.933] if (base::length(...future.futureOptionsAdded) > [01:27:55.933] 0L) { [01:27:55.933] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.933] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.933] base::options(opts) [01:27:55.933] } [01:27:55.933] { [01:27:55.933] { [01:27:55.933] NULL [01:27:55.933] RNGkind("Mersenne-Twister") [01:27:55.933] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.933] inherits = FALSE) [01:27:55.933] } [01:27:55.933] options(future.plan = NULL) [01:27:55.933] if (is.na(NA_character_)) [01:27:55.933] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.933] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.933] future::plan(list(function (..., envir = parent.frame()) [01:27:55.933] { [01:27:55.933] future <- SequentialFuture(..., envir = envir) [01:27:55.933] if (!future$lazy) [01:27:55.933] future <- run(future) [01:27:55.933] invisible(future) [01:27:55.933] }), .cleanup = FALSE, .init = FALSE) [01:27:55.933] } [01:27:55.933] } [01:27:55.933] } [01:27:55.933] }) [01:27:55.933] if (TRUE) { [01:27:55.933] base::sink(type = "output", split = FALSE) [01:27:55.933] if (TRUE) { [01:27:55.933] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.933] } [01:27:55.933] else { [01:27:55.933] ...future.result["stdout"] <- base::list(NULL) [01:27:55.933] } [01:27:55.933] base::close(...future.stdout) [01:27:55.933] ...future.stdout <- NULL [01:27:55.933] } [01:27:55.933] ...future.result$conditions <- ...future.conditions [01:27:55.933] ...future.result$finished <- base::Sys.time() [01:27:55.933] ...future.result [01:27:55.933] } [01:27:55.937] plan(): Setting new future strategy stack: [01:27:55.937] List of future strategies: [01:27:55.937] 1. sequential: [01:27:55.937] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.937] - tweaked: FALSE [01:27:55.937] - call: NULL [01:27:55.938] plan(): nbrOfWorkers() = 1 [01:27:55.940] plan(): Setting new future strategy stack: [01:27:55.940] List of future strategies: [01:27:55.940] 1. sequential: [01:27:55.940] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.940] - tweaked: FALSE [01:27:55.940] - call: plan(strategy) [01:27:55.941] plan(): nbrOfWorkers() = 1 [01:27:55.941] SequentialFuture started (and completed) [01:27:55.941] - Launch lazy future ... done [01:27:55.941] run() for 'SequentialFuture' ... done Call: lm(formula = dist ~ speed + I(speed^2), data = cars) Coefficients: (Intercept) speed I(speed^2) 2.47014 0.91329 0.09996 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ poly(speed, 2), data = cars) Coefficients: (Intercept) poly(speed, 2)1 poly(speed, 2)2 42.98 145.55 23.00 [01:27:55.948] getGlobalsAndPackages() ... [01:27:55.948] Searching for globals... [01:27:55.950] - globals found: [7] '{', 'lm', 'dist', 'poly', 'speed', '~', 'cars' [01:27:55.950] Searching for globals ... DONE [01:27:55.950] Resolving globals: FALSE [01:27:55.951] [01:27:55.951] - packages: [2] 'stats', 'datasets' [01:27:55.951] getGlobalsAndPackages() ... DONE [01:27:55.952] run() for 'Future' ... [01:27:55.952] - state: 'created' [01:27:55.952] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.952] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.953] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.953] - Field: 'label' [01:27:55.953] - Field: 'local' [01:27:55.953] - Field: 'owner' [01:27:55.953] - Field: 'envir' [01:27:55.954] - Field: 'packages' [01:27:55.954] - Field: 'gc' [01:27:55.954] - Field: 'conditions' [01:27:55.954] - Field: 'expr' [01:27:55.954] - Field: 'uuid' [01:27:55.954] - Field: 'seed' [01:27:55.955] - Field: 'version' [01:27:55.955] - Field: 'result' [01:27:55.955] - Field: 'asynchronous' [01:27:55.955] - Field: 'calls' [01:27:55.955] - Field: 'globals' [01:27:55.956] - Field: 'stdout' [01:27:55.956] - Field: 'earlySignal' [01:27:55.956] - Field: 'lazy' [01:27:55.956] - Field: 'state' [01:27:55.956] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.956] - Launch lazy future ... [01:27:55.957] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:55.957] Packages needed by future strategies (n = 0): [01:27:55.958] { [01:27:55.958] { [01:27:55.958] { [01:27:55.958] ...future.startTime <- base::Sys.time() [01:27:55.958] { [01:27:55.958] { [01:27:55.958] { [01:27:55.958] { [01:27:55.958] base::local({ [01:27:55.958] has_future <- base::requireNamespace("future", [01:27:55.958] quietly = TRUE) [01:27:55.958] if (has_future) { [01:27:55.958] ns <- base::getNamespace("future") [01:27:55.958] version <- ns[[".package"]][["version"]] [01:27:55.958] if (is.null(version)) [01:27:55.958] version <- utils::packageVersion("future") [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] version <- NULL [01:27:55.958] } [01:27:55.958] if (!has_future || version < "1.8.0") { [01:27:55.958] info <- base::c(r_version = base::gsub("R version ", [01:27:55.958] "", base::R.version$version.string), [01:27:55.958] platform = base::sprintf("%s (%s-bit)", [01:27:55.958] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.958] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.958] "release", "version")], collapse = " "), [01:27:55.958] hostname = base::Sys.info()[["nodename"]]) [01:27:55.958] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.958] info) [01:27:55.958] info <- base::paste(info, collapse = "; ") [01:27:55.958] if (!has_future) { [01:27:55.958] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.958] info) [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.958] info, version) [01:27:55.958] } [01:27:55.958] base::stop(msg) [01:27:55.958] } [01:27:55.958] }) [01:27:55.958] } [01:27:55.958] base::local({ [01:27:55.958] for (pkg in c("stats", "datasets")) { [01:27:55.958] base::loadNamespace(pkg) [01:27:55.958] base::library(pkg, character.only = TRUE) [01:27:55.958] } [01:27:55.958] }) [01:27:55.958] } [01:27:55.958] options(future.plan = NULL) [01:27:55.958] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.958] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.958] } [01:27:55.958] ...future.workdir <- getwd() [01:27:55.958] } [01:27:55.958] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.958] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.958] } [01:27:55.958] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.958] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.958] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.958] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.958] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.958] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.958] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.958] base::names(...future.oldOptions)) [01:27:55.958] } [01:27:55.958] if (FALSE) { [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] if (TRUE) { [01:27:55.958] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.958] open = "w") [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.958] windows = "NUL", "/dev/null"), open = "w") [01:27:55.958] } [01:27:55.958] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.958] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.958] base::sink(type = "output", split = FALSE) [01:27:55.958] base::close(...future.stdout) [01:27:55.958] }, add = TRUE) [01:27:55.958] } [01:27:55.958] ...future.frame <- base::sys.nframe() [01:27:55.958] ...future.conditions <- base::list() [01:27:55.958] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.958] if (FALSE) { [01:27:55.958] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.958] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.958] } [01:27:55.958] ...future.result <- base::tryCatch({ [01:27:55.958] base::withCallingHandlers({ [01:27:55.958] ...future.value <- base::withVisible(base::local({ [01:27:55.958] lm(dist ~ poly(speed, 2), data = cars) [01:27:55.958] })) [01:27:55.958] future::FutureResult(value = ...future.value$value, [01:27:55.958] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.958] ...future.rng), globalenv = if (FALSE) [01:27:55.958] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.958] ...future.globalenv.names)) [01:27:55.958] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.958] }, condition = base::local({ [01:27:55.958] c <- base::c [01:27:55.958] inherits <- base::inherits [01:27:55.958] invokeRestart <- base::invokeRestart [01:27:55.958] length <- base::length [01:27:55.958] list <- base::list [01:27:55.958] seq.int <- base::seq.int [01:27:55.958] signalCondition <- base::signalCondition [01:27:55.958] sys.calls <- base::sys.calls [01:27:55.958] `[[` <- base::`[[` [01:27:55.958] `+` <- base::`+` [01:27:55.958] `<<-` <- base::`<<-` [01:27:55.958] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.958] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.958] 3L)] [01:27:55.958] } [01:27:55.958] function(cond) { [01:27:55.958] is_error <- inherits(cond, "error") [01:27:55.958] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.958] NULL) [01:27:55.958] if (is_error) { [01:27:55.958] sessionInformation <- function() { [01:27:55.958] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.958] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.958] search = base::search(), system = base::Sys.info()) [01:27:55.958] } [01:27:55.958] ...future.conditions[[length(...future.conditions) + [01:27:55.958] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.958] cond$call), session = sessionInformation(), [01:27:55.958] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.958] signalCondition(cond) [01:27:55.958] } [01:27:55.958] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.958] "immediateCondition"))) { [01:27:55.958] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.958] ...future.conditions[[length(...future.conditions) + [01:27:55.958] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.958] if (TRUE && !signal) { [01:27:55.958] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.958] { [01:27:55.958] inherits <- base::inherits [01:27:55.958] invokeRestart <- base::invokeRestart [01:27:55.958] is.null <- base::is.null [01:27:55.958] muffled <- FALSE [01:27:55.958] if (inherits(cond, "message")) { [01:27:55.958] muffled <- grepl(pattern, "muffleMessage") [01:27:55.958] if (muffled) [01:27:55.958] invokeRestart("muffleMessage") [01:27:55.958] } [01:27:55.958] else if (inherits(cond, "warning")) { [01:27:55.958] muffled <- grepl(pattern, "muffleWarning") [01:27:55.958] if (muffled) [01:27:55.958] invokeRestart("muffleWarning") [01:27:55.958] } [01:27:55.958] else if (inherits(cond, "condition")) { [01:27:55.958] if (!is.null(pattern)) { [01:27:55.958] computeRestarts <- base::computeRestarts [01:27:55.958] grepl <- base::grepl [01:27:55.958] restarts <- computeRestarts(cond) [01:27:55.958] for (restart in restarts) { [01:27:55.958] name <- restart$name [01:27:55.958] if (is.null(name)) [01:27:55.958] next [01:27:55.958] if (!grepl(pattern, name)) [01:27:55.958] next [01:27:55.958] invokeRestart(restart) [01:27:55.958] muffled <- TRUE [01:27:55.958] break [01:27:55.958] } [01:27:55.958] } [01:27:55.958] } [01:27:55.958] invisible(muffled) [01:27:55.958] } [01:27:55.958] muffleCondition(cond, pattern = "^muffle") [01:27:55.958] } [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] if (TRUE) { [01:27:55.958] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.958] { [01:27:55.958] inherits <- base::inherits [01:27:55.958] invokeRestart <- base::invokeRestart [01:27:55.958] is.null <- base::is.null [01:27:55.958] muffled <- FALSE [01:27:55.958] if (inherits(cond, "message")) { [01:27:55.958] muffled <- grepl(pattern, "muffleMessage") [01:27:55.958] if (muffled) [01:27:55.958] invokeRestart("muffleMessage") [01:27:55.958] } [01:27:55.958] else if (inherits(cond, "warning")) { [01:27:55.958] muffled <- grepl(pattern, "muffleWarning") [01:27:55.958] if (muffled) [01:27:55.958] invokeRestart("muffleWarning") [01:27:55.958] } [01:27:55.958] else if (inherits(cond, "condition")) { [01:27:55.958] if (!is.null(pattern)) { [01:27:55.958] computeRestarts <- base::computeRestarts [01:27:55.958] grepl <- base::grepl [01:27:55.958] restarts <- computeRestarts(cond) [01:27:55.958] for (restart in restarts) { [01:27:55.958] name <- restart$name [01:27:55.958] if (is.null(name)) [01:27:55.958] next [01:27:55.958] if (!grepl(pattern, name)) [01:27:55.958] next [01:27:55.958] invokeRestart(restart) [01:27:55.958] muffled <- TRUE [01:27:55.958] break [01:27:55.958] } [01:27:55.958] } [01:27:55.958] } [01:27:55.958] invisible(muffled) [01:27:55.958] } [01:27:55.958] muffleCondition(cond, pattern = "^muffle") [01:27:55.958] } [01:27:55.958] } [01:27:55.958] } [01:27:55.958] })) [01:27:55.958] }, error = function(ex) { [01:27:55.958] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.958] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.958] ...future.rng), started = ...future.startTime, [01:27:55.958] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.958] version = "1.8"), class = "FutureResult") [01:27:55.958] }, finally = { [01:27:55.958] if (!identical(...future.workdir, getwd())) [01:27:55.958] setwd(...future.workdir) [01:27:55.958] { [01:27:55.958] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.958] ...future.oldOptions$nwarnings <- NULL [01:27:55.958] } [01:27:55.958] base::options(...future.oldOptions) [01:27:55.958] if (.Platform$OS.type == "windows") { [01:27:55.958] old_names <- names(...future.oldEnvVars) [01:27:55.958] envs <- base::Sys.getenv() [01:27:55.958] names <- names(envs) [01:27:55.958] common <- intersect(names, old_names) [01:27:55.958] added <- setdiff(names, old_names) [01:27:55.958] removed <- setdiff(old_names, names) [01:27:55.958] changed <- common[...future.oldEnvVars[common] != [01:27:55.958] envs[common]] [01:27:55.958] NAMES <- toupper(changed) [01:27:55.958] args <- list() [01:27:55.958] for (kk in seq_along(NAMES)) { [01:27:55.958] name <- changed[[kk]] [01:27:55.958] NAME <- NAMES[[kk]] [01:27:55.958] if (name != NAME && is.element(NAME, old_names)) [01:27:55.958] next [01:27:55.958] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.958] } [01:27:55.958] NAMES <- toupper(added) [01:27:55.958] for (kk in seq_along(NAMES)) { [01:27:55.958] name <- added[[kk]] [01:27:55.958] NAME <- NAMES[[kk]] [01:27:55.958] if (name != NAME && is.element(NAME, old_names)) [01:27:55.958] next [01:27:55.958] args[[name]] <- "" [01:27:55.958] } [01:27:55.958] NAMES <- toupper(removed) [01:27:55.958] for (kk in seq_along(NAMES)) { [01:27:55.958] name <- removed[[kk]] [01:27:55.958] NAME <- NAMES[[kk]] [01:27:55.958] if (name != NAME && is.element(NAME, old_names)) [01:27:55.958] next [01:27:55.958] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.958] } [01:27:55.958] if (length(args) > 0) [01:27:55.958] base::do.call(base::Sys.setenv, args = args) [01:27:55.958] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.958] } [01:27:55.958] { [01:27:55.958] if (base::length(...future.futureOptionsAdded) > [01:27:55.958] 0L) { [01:27:55.958] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.958] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.958] base::options(opts) [01:27:55.958] } [01:27:55.958] { [01:27:55.958] { [01:27:55.958] NULL [01:27:55.958] RNGkind("Mersenne-Twister") [01:27:55.958] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.958] inherits = FALSE) [01:27:55.958] } [01:27:55.958] options(future.plan = NULL) [01:27:55.958] if (is.na(NA_character_)) [01:27:55.958] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.958] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.958] future::plan(list(function (..., envir = parent.frame()) [01:27:55.958] { [01:27:55.958] future <- SequentialFuture(..., envir = envir) [01:27:55.958] if (!future$lazy) [01:27:55.958] future <- run(future) [01:27:55.958] invisible(future) [01:27:55.958] }), .cleanup = FALSE, .init = FALSE) [01:27:55.958] } [01:27:55.958] } [01:27:55.958] } [01:27:55.958] }) [01:27:55.958] if (TRUE) { [01:27:55.958] base::sink(type = "output", split = FALSE) [01:27:55.958] if (TRUE) { [01:27:55.958] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.958] } [01:27:55.958] else { [01:27:55.958] ...future.result["stdout"] <- base::list(NULL) [01:27:55.958] } [01:27:55.958] base::close(...future.stdout) [01:27:55.958] ...future.stdout <- NULL [01:27:55.958] } [01:27:55.958] ...future.result$conditions <- ...future.conditions [01:27:55.958] ...future.result$finished <- base::Sys.time() [01:27:55.958] ...future.result [01:27:55.958] } [01:27:55.962] plan(): Setting new future strategy stack: [01:27:55.962] List of future strategies: [01:27:55.962] 1. sequential: [01:27:55.962] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.962] - tweaked: FALSE [01:27:55.962] - call: NULL [01:27:55.963] plan(): nbrOfWorkers() = 1 [01:27:55.965] plan(): Setting new future strategy stack: [01:27:55.965] List of future strategies: [01:27:55.965] 1. sequential: [01:27:55.965] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.965] - tweaked: FALSE [01:27:55.965] - call: plan(strategy) [01:27:55.966] plan(): nbrOfWorkers() = 1 [01:27:55.966] SequentialFuture started (and completed) [01:27:55.966] - Launch lazy future ... done [01:27:55.967] run() for 'SequentialFuture' ... done Call: lm(formula = dist ~ poly(speed, 2), data = cars) Coefficients: (Intercept) poly(speed, 2)1 poly(speed, 2)2 42.98 145.55 23.00 - Globals - map(x, ~ expr) ... [01:27:55.969] getGlobalsAndPackages() ... [01:27:55.969] Searching for globals... [01:27:55.978] - globals found: [16] '{', 'outer_function', 'map', ':', '~', 'inner_function', '.x', 'if', 'inherits', '<-', '[[', '-', 'eval', 'bquote', 'lapply', '+' [01:27:55.978] Searching for globals ... DONE [01:27:55.978] Resolving globals: FALSE [01:27:55.979] The total size of the 3 globals is 7.52 KiB (7704 bytes) [01:27:55.980] The total size of the 3 globals exported for future expression ('{; outer_function(1L); }') is 7.52 KiB.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are three globals: 'map' (4.43 KiB of class 'function'), 'inner_function' (1.78 KiB of class 'function') and 'outer_function' (1.31 KiB of class 'function') [01:27:55.980] - globals: [3] 'outer_function', 'map', 'inner_function' [01:27:55.981] [01:27:55.981] getGlobalsAndPackages() ... DONE [01:27:55.981] run() for 'Future' ... [01:27:55.981] - state: 'created' [01:27:55.981] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:55.982] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:55.982] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:55.982] - Field: 'label' [01:27:55.982] - Field: 'local' [01:27:55.983] - Field: 'owner' [01:27:55.983] - Field: 'envir' [01:27:55.983] - Field: 'packages' [01:27:55.983] - Field: 'gc' [01:27:55.983] - Field: 'conditions' [01:27:55.984] - Field: 'expr' [01:27:55.984] - Field: 'uuid' [01:27:55.984] - Field: 'seed' [01:27:55.984] - Field: 'version' [01:27:55.984] - Field: 'result' [01:27:55.984] - Field: 'asynchronous' [01:27:55.985] - Field: 'calls' [01:27:55.985] - Field: 'globals' [01:27:55.985] - Field: 'stdout' [01:27:55.985] - Field: 'earlySignal' [01:27:55.985] - Field: 'lazy' [01:27:55.986] - Field: 'state' [01:27:55.986] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:55.986] - Launch lazy future ... [01:27:55.986] Packages needed by the future expression (n = 0): [01:27:55.986] Packages needed by future strategies (n = 0): [01:27:55.987] { [01:27:55.987] { [01:27:55.987] { [01:27:55.987] ...future.startTime <- base::Sys.time() [01:27:55.987] { [01:27:55.987] { [01:27:55.987] { [01:27:55.987] base::local({ [01:27:55.987] has_future <- base::requireNamespace("future", [01:27:55.987] quietly = TRUE) [01:27:55.987] if (has_future) { [01:27:55.987] ns <- base::getNamespace("future") [01:27:55.987] version <- ns[[".package"]][["version"]] [01:27:55.987] if (is.null(version)) [01:27:55.987] version <- utils::packageVersion("future") [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] version <- NULL [01:27:55.987] } [01:27:55.987] if (!has_future || version < "1.8.0") { [01:27:55.987] info <- base::c(r_version = base::gsub("R version ", [01:27:55.987] "", base::R.version$version.string), [01:27:55.987] platform = base::sprintf("%s (%s-bit)", [01:27:55.987] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:55.987] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:55.987] "release", "version")], collapse = " "), [01:27:55.987] hostname = base::Sys.info()[["nodename"]]) [01:27:55.987] info <- base::sprintf("%s: %s", base::names(info), [01:27:55.987] info) [01:27:55.987] info <- base::paste(info, collapse = "; ") [01:27:55.987] if (!has_future) { [01:27:55.987] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:55.987] info) [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:55.987] info, version) [01:27:55.987] } [01:27:55.987] base::stop(msg) [01:27:55.987] } [01:27:55.987] }) [01:27:55.987] } [01:27:55.987] options(future.plan = NULL) [01:27:55.987] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.987] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:55.987] } [01:27:55.987] ...future.workdir <- getwd() [01:27:55.987] } [01:27:55.987] ...future.oldOptions <- base::as.list(base::.Options) [01:27:55.987] ...future.oldEnvVars <- base::Sys.getenv() [01:27:55.987] } [01:27:55.987] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:55.987] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:55.987] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:55.987] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:55.987] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:55.987] future.stdout.windows.reencode = NULL, width = 80L) [01:27:55.987] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:55.987] base::names(...future.oldOptions)) [01:27:55.987] } [01:27:55.987] if (FALSE) { [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] if (TRUE) { [01:27:55.987] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:55.987] open = "w") [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:55.987] windows = "NUL", "/dev/null"), open = "w") [01:27:55.987] } [01:27:55.987] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:55.987] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:55.987] base::sink(type = "output", split = FALSE) [01:27:55.987] base::close(...future.stdout) [01:27:55.987] }, add = TRUE) [01:27:55.987] } [01:27:55.987] ...future.frame <- base::sys.nframe() [01:27:55.987] ...future.conditions <- base::list() [01:27:55.987] ...future.rng <- base::globalenv()$.Random.seed [01:27:55.987] if (FALSE) { [01:27:55.987] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:55.987] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:55.987] } [01:27:55.987] ...future.result <- base::tryCatch({ [01:27:55.987] base::withCallingHandlers({ [01:27:55.987] ...future.value <- base::withVisible(base::local({ [01:27:55.987] outer_function(1L) [01:27:55.987] })) [01:27:55.987] future::FutureResult(value = ...future.value$value, [01:27:55.987] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.987] ...future.rng), globalenv = if (FALSE) [01:27:55.987] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:55.987] ...future.globalenv.names)) [01:27:55.987] else NULL, started = ...future.startTime, version = "1.8") [01:27:55.987] }, condition = base::local({ [01:27:55.987] c <- base::c [01:27:55.987] inherits <- base::inherits [01:27:55.987] invokeRestart <- base::invokeRestart [01:27:55.987] length <- base::length [01:27:55.987] list <- base::list [01:27:55.987] seq.int <- base::seq.int [01:27:55.987] signalCondition <- base::signalCondition [01:27:55.987] sys.calls <- base::sys.calls [01:27:55.987] `[[` <- base::`[[` [01:27:55.987] `+` <- base::`+` [01:27:55.987] `<<-` <- base::`<<-` [01:27:55.987] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:55.987] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:55.987] 3L)] [01:27:55.987] } [01:27:55.987] function(cond) { [01:27:55.987] is_error <- inherits(cond, "error") [01:27:55.987] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:55.987] NULL) [01:27:55.987] if (is_error) { [01:27:55.987] sessionInformation <- function() { [01:27:55.987] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:55.987] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:55.987] search = base::search(), system = base::Sys.info()) [01:27:55.987] } [01:27:55.987] ...future.conditions[[length(...future.conditions) + [01:27:55.987] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:55.987] cond$call), session = sessionInformation(), [01:27:55.987] timestamp = base::Sys.time(), signaled = 0L) [01:27:55.987] signalCondition(cond) [01:27:55.987] } [01:27:55.987] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:55.987] "immediateCondition"))) { [01:27:55.987] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:55.987] ...future.conditions[[length(...future.conditions) + [01:27:55.987] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:55.987] if (TRUE && !signal) { [01:27:55.987] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.987] { [01:27:55.987] inherits <- base::inherits [01:27:55.987] invokeRestart <- base::invokeRestart [01:27:55.987] is.null <- base::is.null [01:27:55.987] muffled <- FALSE [01:27:55.987] if (inherits(cond, "message")) { [01:27:55.987] muffled <- grepl(pattern, "muffleMessage") [01:27:55.987] if (muffled) [01:27:55.987] invokeRestart("muffleMessage") [01:27:55.987] } [01:27:55.987] else if (inherits(cond, "warning")) { [01:27:55.987] muffled <- grepl(pattern, "muffleWarning") [01:27:55.987] if (muffled) [01:27:55.987] invokeRestart("muffleWarning") [01:27:55.987] } [01:27:55.987] else if (inherits(cond, "condition")) { [01:27:55.987] if (!is.null(pattern)) { [01:27:55.987] computeRestarts <- base::computeRestarts [01:27:55.987] grepl <- base::grepl [01:27:55.987] restarts <- computeRestarts(cond) [01:27:55.987] for (restart in restarts) { [01:27:55.987] name <- restart$name [01:27:55.987] if (is.null(name)) [01:27:55.987] next [01:27:55.987] if (!grepl(pattern, name)) [01:27:55.987] next [01:27:55.987] invokeRestart(restart) [01:27:55.987] muffled <- TRUE [01:27:55.987] break [01:27:55.987] } [01:27:55.987] } [01:27:55.987] } [01:27:55.987] invisible(muffled) [01:27:55.987] } [01:27:55.987] muffleCondition(cond, pattern = "^muffle") [01:27:55.987] } [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] if (TRUE) { [01:27:55.987] muffleCondition <- function (cond, pattern = "^muffle") [01:27:55.987] { [01:27:55.987] inherits <- base::inherits [01:27:55.987] invokeRestart <- base::invokeRestart [01:27:55.987] is.null <- base::is.null [01:27:55.987] muffled <- FALSE [01:27:55.987] if (inherits(cond, "message")) { [01:27:55.987] muffled <- grepl(pattern, "muffleMessage") [01:27:55.987] if (muffled) [01:27:55.987] invokeRestart("muffleMessage") [01:27:55.987] } [01:27:55.987] else if (inherits(cond, "warning")) { [01:27:55.987] muffled <- grepl(pattern, "muffleWarning") [01:27:55.987] if (muffled) [01:27:55.987] invokeRestart("muffleWarning") [01:27:55.987] } [01:27:55.987] else if (inherits(cond, "condition")) { [01:27:55.987] if (!is.null(pattern)) { [01:27:55.987] computeRestarts <- base::computeRestarts [01:27:55.987] grepl <- base::grepl [01:27:55.987] restarts <- computeRestarts(cond) [01:27:55.987] for (restart in restarts) { [01:27:55.987] name <- restart$name [01:27:55.987] if (is.null(name)) [01:27:55.987] next [01:27:55.987] if (!grepl(pattern, name)) [01:27:55.987] next [01:27:55.987] invokeRestart(restart) [01:27:55.987] muffled <- TRUE [01:27:55.987] break [01:27:55.987] } [01:27:55.987] } [01:27:55.987] } [01:27:55.987] invisible(muffled) [01:27:55.987] } [01:27:55.987] muffleCondition(cond, pattern = "^muffle") [01:27:55.987] } [01:27:55.987] } [01:27:55.987] } [01:27:55.987] })) [01:27:55.987] }, error = function(ex) { [01:27:55.987] base::structure(base::list(value = NULL, visible = NULL, [01:27:55.987] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:55.987] ...future.rng), started = ...future.startTime, [01:27:55.987] finished = Sys.time(), session_uuid = NA_character_, [01:27:55.987] version = "1.8"), class = "FutureResult") [01:27:55.987] }, finally = { [01:27:55.987] if (!identical(...future.workdir, getwd())) [01:27:55.987] setwd(...future.workdir) [01:27:55.987] { [01:27:55.987] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:55.987] ...future.oldOptions$nwarnings <- NULL [01:27:55.987] } [01:27:55.987] base::options(...future.oldOptions) [01:27:55.987] if (.Platform$OS.type == "windows") { [01:27:55.987] old_names <- names(...future.oldEnvVars) [01:27:55.987] envs <- base::Sys.getenv() [01:27:55.987] names <- names(envs) [01:27:55.987] common <- intersect(names, old_names) [01:27:55.987] added <- setdiff(names, old_names) [01:27:55.987] removed <- setdiff(old_names, names) [01:27:55.987] changed <- common[...future.oldEnvVars[common] != [01:27:55.987] envs[common]] [01:27:55.987] NAMES <- toupper(changed) [01:27:55.987] args <- list() [01:27:55.987] for (kk in seq_along(NAMES)) { [01:27:55.987] name <- changed[[kk]] [01:27:55.987] NAME <- NAMES[[kk]] [01:27:55.987] if (name != NAME && is.element(NAME, old_names)) [01:27:55.987] next [01:27:55.987] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.987] } [01:27:55.987] NAMES <- toupper(added) [01:27:55.987] for (kk in seq_along(NAMES)) { [01:27:55.987] name <- added[[kk]] [01:27:55.987] NAME <- NAMES[[kk]] [01:27:55.987] if (name != NAME && is.element(NAME, old_names)) [01:27:55.987] next [01:27:55.987] args[[name]] <- "" [01:27:55.987] } [01:27:55.987] NAMES <- toupper(removed) [01:27:55.987] for (kk in seq_along(NAMES)) { [01:27:55.987] name <- removed[[kk]] [01:27:55.987] NAME <- NAMES[[kk]] [01:27:55.987] if (name != NAME && is.element(NAME, old_names)) [01:27:55.987] next [01:27:55.987] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:55.987] } [01:27:55.987] if (length(args) > 0) [01:27:55.987] base::do.call(base::Sys.setenv, args = args) [01:27:55.987] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:55.987] } [01:27:55.987] { [01:27:55.987] if (base::length(...future.futureOptionsAdded) > [01:27:55.987] 0L) { [01:27:55.987] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:55.987] base::names(opts) <- ...future.futureOptionsAdded [01:27:55.987] base::options(opts) [01:27:55.987] } [01:27:55.987] { [01:27:55.987] { [01:27:55.987] NULL [01:27:55.987] RNGkind("Mersenne-Twister") [01:27:55.987] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:55.987] inherits = FALSE) [01:27:55.987] } [01:27:55.987] options(future.plan = NULL) [01:27:55.987] if (is.na(NA_character_)) [01:27:55.987] Sys.unsetenv("R_FUTURE_PLAN") [01:27:55.987] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:55.987] future::plan(list(function (..., envir = parent.frame()) [01:27:55.987] { [01:27:55.987] future <- SequentialFuture(..., envir = envir) [01:27:55.987] if (!future$lazy) [01:27:55.987] future <- run(future) [01:27:55.987] invisible(future) [01:27:55.987] }), .cleanup = FALSE, .init = FALSE) [01:27:55.987] } [01:27:55.987] } [01:27:55.987] } [01:27:55.987] }) [01:27:55.987] if (TRUE) { [01:27:55.987] base::sink(type = "output", split = FALSE) [01:27:55.987] if (TRUE) { [01:27:55.987] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:55.987] } [01:27:55.987] else { [01:27:55.987] ...future.result["stdout"] <- base::list(NULL) [01:27:55.987] } [01:27:55.987] base::close(...future.stdout) [01:27:55.987] ...future.stdout <- NULL [01:27:55.987] } [01:27:55.987] ...future.result$conditions <- ...future.conditions [01:27:55.987] ...future.result$finished <- base::Sys.time() [01:27:55.987] ...future.result [01:27:55.987] } [01:27:55.991] assign_globals() ... [01:27:55.991] List of 3 [01:27:55.991] $ outer_function:function (x) [01:27:55.991] $ map :function (.x, .f, ...) [01:27:55.991] $ inner_function:function (x) [01:27:55.991] - attr(*, "where")=List of 3 [01:27:55.991] ..$ outer_function: [01:27:55.991] ..$ map : [01:27:55.991] ..$ inner_function: [01:27:55.991] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:55.991] - attr(*, "resolved")= logi FALSE [01:27:55.991] - attr(*, "total_size")= num 7704 [01:27:55.991] - attr(*, "already-done")= logi TRUE [01:27:55.995] - reassign environment for 'outer_function' [01:27:55.995] - copied 'outer_function' to environment [01:27:55.996] - reassign environment for 'map' [01:27:55.996] - copied 'map' to environment [01:27:55.996] - reassign environment for 'inner_function' [01:27:55.996] - copied 'inner_function' to environment [01:27:55.996] assign_globals() ... done [01:27:55.997] plan(): Setting new future strategy stack: [01:27:55.997] List of future strategies: [01:27:55.997] 1. sequential: [01:27:55.997] - args: function (..., envir = parent.frame(), workers = "") [01:27:55.997] - tweaked: FALSE [01:27:55.997] - call: NULL [01:27:55.997] plan(): nbrOfWorkers() = 1 [01:27:56.006] plan(): Setting new future strategy stack: [01:27:56.007] List of future strategies: [01:27:56.007] 1. sequential: [01:27:56.007] - args: function (..., envir = parent.frame(), workers = "") [01:27:56.007] - tweaked: FALSE [01:27:56.007] - call: plan(strategy) [01:27:56.007] plan(): nbrOfWorkers() = 1 [01:27:56.007] SequentialFuture started (and completed) [01:27:56.008] - Launch lazy future ... done [01:27:56.008] run() for 'SequentialFuture' ... done List of 2 $ : num [1:2] 2 3 $ : num [1:2] 2 3 [01:27:56.010] getGlobalsAndPackages() ... [01:27:56.010] Searching for globals... [01:27:56.015] - globals found: [16] '{', 'outer_function', 'map', ':', '~', 'inner_function', '.x', 'if', 'inherits', '<-', '[[', '-', 'eval', 'bquote', 'lapply', '+' [01:27:56.015] Searching for globals ... DONE [01:27:56.016] Resolving globals: FALSE [01:27:56.017] The total size of the 3 globals is 7.52 KiB (7704 bytes) [01:27:56.017] The total size of the 3 globals exported for future expression ('{; outer_function(1L); }') is 7.52 KiB.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are three globals: 'map' (4.43 KiB of class 'function'), 'inner_function' (1.78 KiB of class 'function') and 'outer_function' (1.31 KiB of class 'function') [01:27:56.017] - globals: [3] 'outer_function', 'map', 'inner_function' [01:27:56.018] [01:27:56.018] getGlobalsAndPackages() ... DONE [01:27:56.018] run() for 'Future' ... [01:27:56.018] - state: 'created' [01:27:56.018] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [01:27:56.019] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [01:27:56.019] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [01:27:56.019] - Field: 'label' [01:27:56.019] - Field: 'local' [01:27:56.020] - Field: 'owner' [01:27:56.020] - Field: 'envir' [01:27:56.020] - Field: 'packages' [01:27:56.020] - Field: 'gc' [01:27:56.020] - Field: 'conditions' [01:27:56.021] - Field: 'expr' [01:27:56.021] - Field: 'uuid' [01:27:56.021] - Field: 'seed' [01:27:56.021] - Field: 'version' [01:27:56.021] - Field: 'result' [01:27:56.021] - Field: 'asynchronous' [01:27:56.022] - Field: 'calls' [01:27:56.022] - Field: 'globals' [01:27:56.022] - Field: 'stdout' [01:27:56.022] - Field: 'earlySignal' [01:27:56.022] - Field: 'lazy' [01:27:56.023] - Field: 'state' [01:27:56.023] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [01:27:56.023] - Launch lazy future ... [01:27:56.023] Packages needed by the future expression (n = 0): [01:27:56.023] Packages needed by future strategies (n = 0): [01:27:56.024] { [01:27:56.024] { [01:27:56.024] { [01:27:56.024] ...future.startTime <- base::Sys.time() [01:27:56.024] { [01:27:56.024] { [01:27:56.024] { [01:27:56.024] base::local({ [01:27:56.024] has_future <- base::requireNamespace("future", [01:27:56.024] quietly = TRUE) [01:27:56.024] if (has_future) { [01:27:56.024] ns <- base::getNamespace("future") [01:27:56.024] version <- ns[[".package"]][["version"]] [01:27:56.024] if (is.null(version)) [01:27:56.024] version <- utils::packageVersion("future") [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] version <- NULL [01:27:56.024] } [01:27:56.024] if (!has_future || version < "1.8.0") { [01:27:56.024] info <- base::c(r_version = base::gsub("R version ", [01:27:56.024] "", base::R.version$version.string), [01:27:56.024] platform = base::sprintf("%s (%s-bit)", [01:27:56.024] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:56.024] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:56.024] "release", "version")], collapse = " "), [01:27:56.024] hostname = base::Sys.info()[["nodename"]]) [01:27:56.024] info <- base::sprintf("%s: %s", base::names(info), [01:27:56.024] info) [01:27:56.024] info <- base::paste(info, collapse = "; ") [01:27:56.024] if (!has_future) { [01:27:56.024] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:56.024] info) [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:56.024] info, version) [01:27:56.024] } [01:27:56.024] base::stop(msg) [01:27:56.024] } [01:27:56.024] }) [01:27:56.024] } [01:27:56.024] options(future.plan = NULL) [01:27:56.024] Sys.unsetenv("R_FUTURE_PLAN") [01:27:56.024] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:56.024] } [01:27:56.024] ...future.workdir <- getwd() [01:27:56.024] } [01:27:56.024] ...future.oldOptions <- base::as.list(base::.Options) [01:27:56.024] ...future.oldEnvVars <- base::Sys.getenv() [01:27:56.024] } [01:27:56.024] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:56.024] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:56.024] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:56.024] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:56.024] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:56.024] future.stdout.windows.reencode = NULL, width = 80L) [01:27:56.024] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:56.024] base::names(...future.oldOptions)) [01:27:56.024] } [01:27:56.024] if (FALSE) { [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] if (TRUE) { [01:27:56.024] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:56.024] open = "w") [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:56.024] windows = "NUL", "/dev/null"), open = "w") [01:27:56.024] } [01:27:56.024] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:56.024] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:56.024] base::sink(type = "output", split = FALSE) [01:27:56.024] base::close(...future.stdout) [01:27:56.024] }, add = TRUE) [01:27:56.024] } [01:27:56.024] ...future.frame <- base::sys.nframe() [01:27:56.024] ...future.conditions <- base::list() [01:27:56.024] ...future.rng <- base::globalenv()$.Random.seed [01:27:56.024] if (FALSE) { [01:27:56.024] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:56.024] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:56.024] } [01:27:56.024] ...future.result <- base::tryCatch({ [01:27:56.024] base::withCallingHandlers({ [01:27:56.024] ...future.value <- base::withVisible(base::local({ [01:27:56.024] outer_function(1L) [01:27:56.024] })) [01:27:56.024] future::FutureResult(value = ...future.value$value, [01:27:56.024] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:56.024] ...future.rng), globalenv = if (FALSE) [01:27:56.024] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:56.024] ...future.globalenv.names)) [01:27:56.024] else NULL, started = ...future.startTime, version = "1.8") [01:27:56.024] }, condition = base::local({ [01:27:56.024] c <- base::c [01:27:56.024] inherits <- base::inherits [01:27:56.024] invokeRestart <- base::invokeRestart [01:27:56.024] length <- base::length [01:27:56.024] list <- base::list [01:27:56.024] seq.int <- base::seq.int [01:27:56.024] signalCondition <- base::signalCondition [01:27:56.024] sys.calls <- base::sys.calls [01:27:56.024] `[[` <- base::`[[` [01:27:56.024] `+` <- base::`+` [01:27:56.024] `<<-` <- base::`<<-` [01:27:56.024] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:56.024] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:56.024] 3L)] [01:27:56.024] } [01:27:56.024] function(cond) { [01:27:56.024] is_error <- inherits(cond, "error") [01:27:56.024] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:56.024] NULL) [01:27:56.024] if (is_error) { [01:27:56.024] sessionInformation <- function() { [01:27:56.024] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:56.024] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:56.024] search = base::search(), system = base::Sys.info()) [01:27:56.024] } [01:27:56.024] ...future.conditions[[length(...future.conditions) + [01:27:56.024] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:56.024] cond$call), session = sessionInformation(), [01:27:56.024] timestamp = base::Sys.time(), signaled = 0L) [01:27:56.024] signalCondition(cond) [01:27:56.024] } [01:27:56.024] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:56.024] "immediateCondition"))) { [01:27:56.024] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:56.024] ...future.conditions[[length(...future.conditions) + [01:27:56.024] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:56.024] if (TRUE && !signal) { [01:27:56.024] muffleCondition <- function (cond, pattern = "^muffle") [01:27:56.024] { [01:27:56.024] inherits <- base::inherits [01:27:56.024] invokeRestart <- base::invokeRestart [01:27:56.024] is.null <- base::is.null [01:27:56.024] muffled <- FALSE [01:27:56.024] if (inherits(cond, "message")) { [01:27:56.024] muffled <- grepl(pattern, "muffleMessage") [01:27:56.024] if (muffled) [01:27:56.024] invokeRestart("muffleMessage") [01:27:56.024] } [01:27:56.024] else if (inherits(cond, "warning")) { [01:27:56.024] muffled <- grepl(pattern, "muffleWarning") [01:27:56.024] if (muffled) [01:27:56.024] invokeRestart("muffleWarning") [01:27:56.024] } [01:27:56.024] else if (inherits(cond, "condition")) { [01:27:56.024] if (!is.null(pattern)) { [01:27:56.024] computeRestarts <- base::computeRestarts [01:27:56.024] grepl <- base::grepl [01:27:56.024] restarts <- computeRestarts(cond) [01:27:56.024] for (restart in restarts) { [01:27:56.024] name <- restart$name [01:27:56.024] if (is.null(name)) [01:27:56.024] next [01:27:56.024] if (!grepl(pattern, name)) [01:27:56.024] next [01:27:56.024] invokeRestart(restart) [01:27:56.024] muffled <- TRUE [01:27:56.024] break [01:27:56.024] } [01:27:56.024] } [01:27:56.024] } [01:27:56.024] invisible(muffled) [01:27:56.024] } [01:27:56.024] muffleCondition(cond, pattern = "^muffle") [01:27:56.024] } [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] if (TRUE) { [01:27:56.024] muffleCondition <- function (cond, pattern = "^muffle") [01:27:56.024] { [01:27:56.024] inherits <- base::inherits [01:27:56.024] invokeRestart <- base::invokeRestart [01:27:56.024] is.null <- base::is.null [01:27:56.024] muffled <- FALSE [01:27:56.024] if (inherits(cond, "message")) { [01:27:56.024] muffled <- grepl(pattern, "muffleMessage") [01:27:56.024] if (muffled) [01:27:56.024] invokeRestart("muffleMessage") [01:27:56.024] } [01:27:56.024] else if (inherits(cond, "warning")) { [01:27:56.024] muffled <- grepl(pattern, "muffleWarning") [01:27:56.024] if (muffled) [01:27:56.024] invokeRestart("muffleWarning") [01:27:56.024] } [01:27:56.024] else if (inherits(cond, "condition")) { [01:27:56.024] if (!is.null(pattern)) { [01:27:56.024] computeRestarts <- base::computeRestarts [01:27:56.024] grepl <- base::grepl [01:27:56.024] restarts <- computeRestarts(cond) [01:27:56.024] for (restart in restarts) { [01:27:56.024] name <- restart$name [01:27:56.024] if (is.null(name)) [01:27:56.024] next [01:27:56.024] if (!grepl(pattern, name)) [01:27:56.024] next [01:27:56.024] invokeRestart(restart) [01:27:56.024] muffled <- TRUE [01:27:56.024] break [01:27:56.024] } [01:27:56.024] } [01:27:56.024] } [01:27:56.024] invisible(muffled) [01:27:56.024] } [01:27:56.024] muffleCondition(cond, pattern = "^muffle") [01:27:56.024] } [01:27:56.024] } [01:27:56.024] } [01:27:56.024] })) [01:27:56.024] }, error = function(ex) { [01:27:56.024] base::structure(base::list(value = NULL, visible = NULL, [01:27:56.024] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:56.024] ...future.rng), started = ...future.startTime, [01:27:56.024] finished = Sys.time(), session_uuid = NA_character_, [01:27:56.024] version = "1.8"), class = "FutureResult") [01:27:56.024] }, finally = { [01:27:56.024] if (!identical(...future.workdir, getwd())) [01:27:56.024] setwd(...future.workdir) [01:27:56.024] { [01:27:56.024] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:56.024] ...future.oldOptions$nwarnings <- NULL [01:27:56.024] } [01:27:56.024] base::options(...future.oldOptions) [01:27:56.024] if (.Platform$OS.type == "windows") { [01:27:56.024] old_names <- names(...future.oldEnvVars) [01:27:56.024] envs <- base::Sys.getenv() [01:27:56.024] names <- names(envs) [01:27:56.024] common <- intersect(names, old_names) [01:27:56.024] added <- setdiff(names, old_names) [01:27:56.024] removed <- setdiff(old_names, names) [01:27:56.024] changed <- common[...future.oldEnvVars[common] != [01:27:56.024] envs[common]] [01:27:56.024] NAMES <- toupper(changed) [01:27:56.024] args <- list() [01:27:56.024] for (kk in seq_along(NAMES)) { [01:27:56.024] name <- changed[[kk]] [01:27:56.024] NAME <- NAMES[[kk]] [01:27:56.024] if (name != NAME && is.element(NAME, old_names)) [01:27:56.024] next [01:27:56.024] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:56.024] } [01:27:56.024] NAMES <- toupper(added) [01:27:56.024] for (kk in seq_along(NAMES)) { [01:27:56.024] name <- added[[kk]] [01:27:56.024] NAME <- NAMES[[kk]] [01:27:56.024] if (name != NAME && is.element(NAME, old_names)) [01:27:56.024] next [01:27:56.024] args[[name]] <- "" [01:27:56.024] } [01:27:56.024] NAMES <- toupper(removed) [01:27:56.024] for (kk in seq_along(NAMES)) { [01:27:56.024] name <- removed[[kk]] [01:27:56.024] NAME <- NAMES[[kk]] [01:27:56.024] if (name != NAME && is.element(NAME, old_names)) [01:27:56.024] next [01:27:56.024] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:56.024] } [01:27:56.024] if (length(args) > 0) [01:27:56.024] base::do.call(base::Sys.setenv, args = args) [01:27:56.024] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:56.024] } [01:27:56.024] { [01:27:56.024] if (base::length(...future.futureOptionsAdded) > [01:27:56.024] 0L) { [01:27:56.024] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:56.024] base::names(opts) <- ...future.futureOptionsAdded [01:27:56.024] base::options(opts) [01:27:56.024] } [01:27:56.024] { [01:27:56.024] { [01:27:56.024] NULL [01:27:56.024] RNGkind("Mersenne-Twister") [01:27:56.024] base::rm(list = ".Random.seed", envir = base::globalenv(), [01:27:56.024] inherits = FALSE) [01:27:56.024] } [01:27:56.024] options(future.plan = NULL) [01:27:56.024] if (is.na(NA_character_)) [01:27:56.024] Sys.unsetenv("R_FUTURE_PLAN") [01:27:56.024] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:56.024] future::plan(list(function (..., envir = parent.frame()) [01:27:56.024] { [01:27:56.024] future <- SequentialFuture(..., envir = envir) [01:27:56.024] if (!future$lazy) [01:27:56.024] future <- run(future) [01:27:56.024] invisible(future) [01:27:56.024] }), .cleanup = FALSE, .init = FALSE) [01:27:56.024] } [01:27:56.024] } [01:27:56.024] } [01:27:56.024] }) [01:27:56.024] if (TRUE) { [01:27:56.024] base::sink(type = "output", split = FALSE) [01:27:56.024] if (TRUE) { [01:27:56.024] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:56.024] } [01:27:56.024] else { [01:27:56.024] ...future.result["stdout"] <- base::list(NULL) [01:27:56.024] } [01:27:56.024] base::close(...future.stdout) [01:27:56.024] ...future.stdout <- NULL [01:27:56.024] } [01:27:56.024] ...future.result$conditions <- ...future.conditions [01:27:56.024] ...future.result$finished <- base::Sys.time() [01:27:56.024] ...future.result [01:27:56.024] } [01:27:56.028] assign_globals() ... [01:27:56.029] List of 3 [01:27:56.029] $ outer_function:function (x) [01:27:56.029] $ map :function (.x, .f, ...) [01:27:56.029] $ inner_function:function (x) [01:27:56.029] - attr(*, "where")=List of 3 [01:27:56.029] ..$ outer_function: [01:27:56.029] ..$ map : [01:27:56.029] ..$ inner_function: [01:27:56.029] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [01:27:56.029] - attr(*, "resolved")= logi FALSE [01:27:56.029] - attr(*, "total_size")= num 7704 [01:27:56.029] - attr(*, "already-done")= logi TRUE [01:27:56.033] - reassign environment for 'outer_function' [01:27:56.034] - copied 'outer_function' to environment [01:27:56.034] - reassign environment for 'map' [01:27:56.034] - copied 'map' to environment [01:27:56.034] - reassign environment for 'inner_function' [01:27:56.034] - copied 'inner_function' to environment [01:27:56.034] assign_globals() ... done [01:27:56.035] plan(): Setting new future strategy stack: [01:27:56.035] List of future strategies: [01:27:56.035] 1. sequential: [01:27:56.035] - args: function (..., envir = parent.frame(), workers = "") [01:27:56.035] - tweaked: FALSE [01:27:56.035] - call: NULL [01:27:56.036] plan(): nbrOfWorkers() = 1 [01:27:56.037] plan(): Setting new future strategy stack: [01:27:56.037] List of future strategies: [01:27:56.037] 1. sequential: [01:27:56.037] - args: function (..., envir = parent.frame(), workers = "") [01:27:56.037] - tweaked: FALSE [01:27:56.037] - call: plan(strategy) [01:27:56.038] plan(): nbrOfWorkers() = 1 [01:27:56.038] SequentialFuture started (and completed) [01:27:56.038] - Launch lazy future ... done [01:27:56.038] run() for 'SequentialFuture' ... done List of 2 $ : num [1:2] 2 3 $ : num [1:2] 2 3 Testing with 1 cores ... DONE Testing with 2 cores ... availableCores(): 2 - plan('multisession') ... [01:27:56.049] plan(): Setting new future strategy stack: [01:27:56.049] List of future strategies: [01:27:56.049] 1. multisession: [01:27:56.049] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [01:27:56.049] - tweaked: FALSE [01:27:56.049] - call: plan(strategy) [01:27:56.050] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... [01:27:56.050] multisession: [01:27:56.050] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [01:27:56.050] - tweaked: FALSE [01:27:56.050] - call: plan(strategy) [01:27:56.154] getGlobalsAndPackages() ... [01:27:56.154] Not searching for globals [01:27:56.155] - globals: [0] [01:27:56.155] getGlobalsAndPackages() ... DONE [01:27:56.156] [local output] makeClusterPSOCK() ... [01:27:56.247] [local output] Workers: [n = 2] 'localhost', 'localhost' [01:27:56.254] [local output] Base port: 31682 [01:27:56.254] [local output] Getting setup options for 2 cluster nodes ... [01:27:56.254] [local output] - Node 1 of 2 ... [01:27:56.255] [local output] localMachine=TRUE => revtunnel=FALSE [01:27:56.256] Testing if worker's PID can be inferred: '"D:/RCompile/recent/R/bin/x64/Rscript" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpeAqNnv/worker.rank=1.parallelly.parent=11784.2e087198d44.pid\")), silent = TRUE)" -e "file.exists(\"D:/temp/RtmpeAqNnv/worker.rank=1.parallelly.parent=11784.2e087198d44.pid\")"' [01:27:56.588] - Possible to infer worker's PID: TRUE [01:27:56.589] [local output] Rscript port: 31682 [01:27:56.589] [local output] - Node 2 of 2 ... [01:27:56.590] [local output] localMachine=TRUE => revtunnel=FALSE [01:27:56.591] [local output] Rscript port: 31682 [01:27:56.591] [local output] Getting setup options for 2 cluster nodes ... done [01:27:56.592] [local output] - Parallel setup requested for some PSOCK nodes [01:27:56.592] [local output] Setting up PSOCK nodes in parallel [01:27:56.593] List of 36 [01:27:56.593] $ worker : chr "localhost" [01:27:56.593] ..- attr(*, "localhost")= logi TRUE [01:27:56.593] $ master : chr "localhost" [01:27:56.593] $ port : int 31682 [01:27:56.593] $ connectTimeout : num 120 [01:27:56.593] $ timeout : num 120 [01:27:56.593] $ rscript : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\"" [01:27:56.593] $ homogeneous : logi TRUE [01:27:56.593] $ rscript_args : chr "--default-packages=datasets,utils,grDevices,graphics,stats,methods -e \"#label=globals,formulas.R:11784:CRANWIN"| __truncated__ [01:27:56.593] $ rscript_envs : NULL [01:27:56.593] $ rscript_libs : chr [1:2] "D:/temp/RtmpCIb4qz/RLIBS_32fc52ae7b47" "D:/RCompile/recent/R/library" [01:27:56.593] $ rscript_startup : NULL [01:27:56.593] $ rscript_sh : chr "cmd" [01:27:56.593] $ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [01:27:56.593] $ methods : logi TRUE [01:27:56.593] $ socketOptions : chr "no-delay" [01:27:56.593] $ useXDR : logi FALSE [01:27:56.593] $ outfile : chr "/dev/null" [01:27:56.593] $ renice : int NA [01:27:56.593] $ rshcmd : NULL [01:27:56.593] $ user : chr(0) [01:27:56.593] $ revtunnel : logi FALSE [01:27:56.593] $ rshlogfile : NULL [01:27:56.593] $ rshopts : chr(0) [01:27:56.593] $ rank : int 1 [01:27:56.593] $ manual : logi FALSE [01:27:56.593] $ dryrun : logi FALSE [01:27:56.593] $ quiet : logi FALSE [01:27:56.593] $ setup_strategy : chr "parallel" [01:27:56.593] $ local_cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [01:27:56.593] $ pidfile : chr "D:/temp/RtmpeAqNnv/worker.rank=1.parallelly.parent=11784.2e087198d44.pid" [01:27:56.593] $ rshcmd_label : NULL [01:27:56.593] $ rsh_call : NULL [01:27:56.593] $ cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [01:27:56.593] $ localMachine : logi TRUE [01:27:56.593] $ make_fcn :function (worker = getOption2("parallelly.localhost.hostname", "localhost"), [01:27:56.593] master = NULL, port, connectTimeout = getOption2("parallelly.makeNodePSOCK.connectTimeout", [01:27:56.593] 2 * 60), timeout = getOption2("parallelly.makeNodePSOCK.timeout", [01:27:56.593] 30 * 24 * 60 * 60), rscript = NULL, homogeneous = NULL, rscript_args = NULL, [01:27:56.593] rscript_envs = NULL, rscript_libs = NULL, rscript_startup = NULL, rscript_sh = c("auto", [01:27:56.593] "cmd", "sh"), default_packages = c("datasets", "utils", "grDevices", [01:27:56.593] "graphics", "stats", if (methods) "methods"), methods = TRUE, socketOptions = getOption2("parallelly.makeNodePSOCK.socketOptions", [01:27:56.593] "no-delay"), useXDR = getOption2("parallelly.makeNodePSOCK.useXDR", [01:27:56.593] FALSE), outfile = "/dev/null", renice = NA_integer_, rshcmd = getOption2("parallelly.makeNodePSOCK.rshcmd", [01:27:56.593] NULL), user = NULL, revtunnel = NA, rshlogfile = NULL, rshopts = getOption2("parallelly.makeNodePSOCK.rshopts", [01:27:56.593] NULL), rank = 1L, manual = FALSE, dryrun = FALSE, quiet = FALSE, [01:27:56.593] setup_strategy = getOption2("parallelly.makeNodePSOCK.setup_strategy", [01:27:56.593] "parallel"), action = c("launch", "options"), verbose = FALSE) [01:27:56.593] $ arguments :List of 28 [01:27:56.593] ..$ worker : chr "localhost" [01:27:56.593] ..$ master : NULL [01:27:56.593] ..$ port : int 31682 [01:27:56.593] ..$ connectTimeout : num 120 [01:27:56.593] ..$ timeout : num 120 [01:27:56.593] ..$ rscript : NULL [01:27:56.593] ..$ homogeneous : NULL [01:27:56.593] ..$ rscript_args : NULL [01:27:56.593] ..$ rscript_envs : NULL [01:27:56.593] ..$ rscript_libs : chr [1:2] "D:/temp/RtmpCIb4qz/RLIBS_32fc52ae7b47" "D:/RCompile/recent/R/library" [01:27:56.593] ..$ rscript_startup : NULL [01:27:56.593] ..$ rscript_sh : chr [1:3] "auto" "cmd" "sh" [01:27:56.593] ..$ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [01:27:56.593] ..$ methods : logi TRUE [01:27:56.593] ..$ socketOptions : chr "no-delay" [01:27:56.593] ..$ useXDR : logi FALSE [01:27:56.593] ..$ outfile : chr "/dev/null" [01:27:56.593] ..$ renice : int NA [01:27:56.593] ..$ rshcmd : NULL [01:27:56.593] ..$ user : NULL [01:27:56.593] ..$ revtunnel : logi NA [01:27:56.593] ..$ rshlogfile : NULL [01:27:56.593] ..$ rshopts : NULL [01:27:56.593] ..$ rank : int 1 [01:27:56.593] ..$ manual : logi FALSE [01:27:56.593] ..$ dryrun : logi FALSE [01:27:56.593] ..$ quiet : logi FALSE [01:27:56.593] ..$ setup_strategy : chr "parallel" [01:27:56.593] - attr(*, "class")= chr [1:2] "makeNodePSOCKOptions" "makeNodeOptions" [01:27:56.615] [local output] System call to launch all workers: [01:27:56.615] [local output] "D:/RCompile/recent/R/bin/x64/Rscript" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "#label=globals,formulas.R:11784:CRANWIN3:CRAN" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/RtmpeAqNnv/worker.rank=1.parallelly.parent=11784.2e087198d44.pid\")), silent = TRUE)" -e "options(socketOptions = \"no-delay\")" -e ".libPaths(c(\"D:/temp/RtmpCIb4qz/RLIBS_32fc52ae7b47\",\"D:/RCompile/recent/R/library\"))" -e "workRSOCK <- tryCatch(parallel:::.workRSOCK, error=function(e) parallel:::.slaveRSOCK); workRSOCK()" MASTER=localhost PORT=31682 OUT=/dev/null TIMEOUT=120 XDR=FALSE SETUPTIMEOUT=120 SETUPSTRATEGY=parallel [01:27:56.615] [local output] Starting PSOCK main server [01:27:56.621] [local output] Workers launched [01:27:56.622] [local output] Waiting for workers to connect back [01:27:56.622] - [local output] 0 workers out of 2 ready [01:27:56.798] - [local output] 0 workers out of 2 ready [01:27:56.799] - [local output] 1 workers out of 2 ready [01:27:56.831] - [local output] 1 workers out of 2 ready [01:27:56.831] - [local output] 2 workers out of 2 ready [01:27:56.831] [local output] Launching of workers completed [01:27:56.831] [local output] Collecting session information from workers [01:27:56.832] [local output] - Worker #1 of 2 [01:27:56.833] [local output] - Worker #2 of 2 [01:27:56.833] [local output] makeClusterPSOCK() ... done [01:27:56.851] Packages needed by the future expression (n = 0): [01:27:56.852] Packages needed by future strategies (n = 0): [01:27:56.854] { [01:27:56.854] { [01:27:56.854] { [01:27:56.854] ...future.startTime <- base::Sys.time() [01:27:56.854] { [01:27:56.854] { [01:27:56.854] { [01:27:56.854] { [01:27:56.854] base::local({ [01:27:56.854] has_future <- base::requireNamespace("future", [01:27:56.854] quietly = TRUE) [01:27:56.854] if (has_future) { [01:27:56.854] ns <- base::getNamespace("future") [01:27:56.854] version <- ns[[".package"]][["version"]] [01:27:56.854] if (is.null(version)) [01:27:56.854] version <- utils::packageVersion("future") [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] version <- NULL [01:27:56.854] } [01:27:56.854] if (!has_future || version < "1.8.0") { [01:27:56.854] info <- base::c(r_version = base::gsub("R version ", [01:27:56.854] "", base::R.version$version.string), [01:27:56.854] platform = base::sprintf("%s (%s-bit)", [01:27:56.854] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:56.854] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:56.854] "release", "version")], collapse = " "), [01:27:56.854] hostname = base::Sys.info()[["nodename"]]) [01:27:56.854] info <- base::sprintf("%s: %s", base::names(info), [01:27:56.854] info) [01:27:56.854] info <- base::paste(info, collapse = "; ") [01:27:56.854] if (!has_future) { [01:27:56.854] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:56.854] info) [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:56.854] info, version) [01:27:56.854] } [01:27:56.854] base::stop(msg) [01:27:56.854] } [01:27:56.854] }) [01:27:56.854] } [01:27:56.854] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:56.854] base::options(mc.cores = 1L) [01:27:56.854] } [01:27:56.854] options(future.plan = NULL) [01:27:56.854] Sys.unsetenv("R_FUTURE_PLAN") [01:27:56.854] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:56.854] } [01:27:56.854] ...future.workdir <- getwd() [01:27:56.854] } [01:27:56.854] ...future.oldOptions <- base::as.list(base::.Options) [01:27:56.854] ...future.oldEnvVars <- base::Sys.getenv() [01:27:56.854] } [01:27:56.854] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:56.854] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:56.854] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:56.854] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:56.854] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:56.854] future.stdout.windows.reencode = NULL, width = 80L) [01:27:56.854] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:56.854] base::names(...future.oldOptions)) [01:27:56.854] } [01:27:56.854] if (FALSE) { [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] if (TRUE) { [01:27:56.854] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:56.854] open = "w") [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:56.854] windows = "NUL", "/dev/null"), open = "w") [01:27:56.854] } [01:27:56.854] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:56.854] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:56.854] base::sink(type = "output", split = FALSE) [01:27:56.854] base::close(...future.stdout) [01:27:56.854] }, add = TRUE) [01:27:56.854] } [01:27:56.854] ...future.frame <- base::sys.nframe() [01:27:56.854] ...future.conditions <- base::list() [01:27:56.854] ...future.rng <- base::globalenv()$.Random.seed [01:27:56.854] if (FALSE) { [01:27:56.854] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:56.854] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:56.854] } [01:27:56.854] ...future.result <- base::tryCatch({ [01:27:56.854] base::withCallingHandlers({ [01:27:56.854] ...future.value <- base::withVisible(base::local({ [01:27:56.854] ...future.makeSendCondition <- base::local({ [01:27:56.854] sendCondition <- NULL [01:27:56.854] function(frame = 1L) { [01:27:56.854] if (is.function(sendCondition)) [01:27:56.854] return(sendCondition) [01:27:56.854] ns <- getNamespace("parallel") [01:27:56.854] if (exists("sendData", mode = "function", [01:27:56.854] envir = ns)) { [01:27:56.854] parallel_sendData <- get("sendData", mode = "function", [01:27:56.854] envir = ns) [01:27:56.854] envir <- sys.frame(frame) [01:27:56.854] master <- NULL [01:27:56.854] while (!identical(envir, .GlobalEnv) && [01:27:56.854] !identical(envir, emptyenv())) { [01:27:56.854] if (exists("master", mode = "list", envir = envir, [01:27:56.854] inherits = FALSE)) { [01:27:56.854] master <- get("master", mode = "list", [01:27:56.854] envir = envir, inherits = FALSE) [01:27:56.854] if (inherits(master, c("SOCKnode", [01:27:56.854] "SOCK0node"))) { [01:27:56.854] sendCondition <<- function(cond) { [01:27:56.854] data <- list(type = "VALUE", value = cond, [01:27:56.854] success = TRUE) [01:27:56.854] parallel_sendData(master, data) [01:27:56.854] } [01:27:56.854] return(sendCondition) [01:27:56.854] } [01:27:56.854] } [01:27:56.854] frame <- frame + 1L [01:27:56.854] envir <- sys.frame(frame) [01:27:56.854] } [01:27:56.854] } [01:27:56.854] sendCondition <<- function(cond) NULL [01:27:56.854] } [01:27:56.854] }) [01:27:56.854] withCallingHandlers({ [01:27:56.854] NA [01:27:56.854] }, immediateCondition = function(cond) { [01:27:56.854] sendCondition <- ...future.makeSendCondition() [01:27:56.854] sendCondition(cond) [01:27:56.854] muffleCondition <- function (cond, pattern = "^muffle") [01:27:56.854] { [01:27:56.854] inherits <- base::inherits [01:27:56.854] invokeRestart <- base::invokeRestart [01:27:56.854] is.null <- base::is.null [01:27:56.854] muffled <- FALSE [01:27:56.854] if (inherits(cond, "message")) { [01:27:56.854] muffled <- grepl(pattern, "muffleMessage") [01:27:56.854] if (muffled) [01:27:56.854] invokeRestart("muffleMessage") [01:27:56.854] } [01:27:56.854] else if (inherits(cond, "warning")) { [01:27:56.854] muffled <- grepl(pattern, "muffleWarning") [01:27:56.854] if (muffled) [01:27:56.854] invokeRestart("muffleWarning") [01:27:56.854] } [01:27:56.854] else if (inherits(cond, "condition")) { [01:27:56.854] if (!is.null(pattern)) { [01:27:56.854] computeRestarts <- base::computeRestarts [01:27:56.854] grepl <- base::grepl [01:27:56.854] restarts <- computeRestarts(cond) [01:27:56.854] for (restart in restarts) { [01:27:56.854] name <- restart$name [01:27:56.854] if (is.null(name)) [01:27:56.854] next [01:27:56.854] if (!grepl(pattern, name)) [01:27:56.854] next [01:27:56.854] invokeRestart(restart) [01:27:56.854] muffled <- TRUE [01:27:56.854] break [01:27:56.854] } [01:27:56.854] } [01:27:56.854] } [01:27:56.854] invisible(muffled) [01:27:56.854] } [01:27:56.854] muffleCondition(cond) [01:27:56.854] }) [01:27:56.854] })) [01:27:56.854] future::FutureResult(value = ...future.value$value, [01:27:56.854] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:56.854] ...future.rng), globalenv = if (FALSE) [01:27:56.854] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:56.854] ...future.globalenv.names)) [01:27:56.854] else NULL, started = ...future.startTime, version = "1.8") [01:27:56.854] }, condition = base::local({ [01:27:56.854] c <- base::c [01:27:56.854] inherits <- base::inherits [01:27:56.854] invokeRestart <- base::invokeRestart [01:27:56.854] length <- base::length [01:27:56.854] list <- base::list [01:27:56.854] seq.int <- base::seq.int [01:27:56.854] signalCondition <- base::signalCondition [01:27:56.854] sys.calls <- base::sys.calls [01:27:56.854] `[[` <- base::`[[` [01:27:56.854] `+` <- base::`+` [01:27:56.854] `<<-` <- base::`<<-` [01:27:56.854] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:56.854] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:56.854] 3L)] [01:27:56.854] } [01:27:56.854] function(cond) { [01:27:56.854] is_error <- inherits(cond, "error") [01:27:56.854] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:56.854] NULL) [01:27:56.854] if (is_error) { [01:27:56.854] sessionInformation <- function() { [01:27:56.854] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:56.854] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:56.854] search = base::search(), system = base::Sys.info()) [01:27:56.854] } [01:27:56.854] ...future.conditions[[length(...future.conditions) + [01:27:56.854] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:56.854] cond$call), session = sessionInformation(), [01:27:56.854] timestamp = base::Sys.time(), signaled = 0L) [01:27:56.854] signalCondition(cond) [01:27:56.854] } [01:27:56.854] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:56.854] "immediateCondition"))) { [01:27:56.854] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:56.854] ...future.conditions[[length(...future.conditions) + [01:27:56.854] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:56.854] if (TRUE && !signal) { [01:27:56.854] muffleCondition <- function (cond, pattern = "^muffle") [01:27:56.854] { [01:27:56.854] inherits <- base::inherits [01:27:56.854] invokeRestart <- base::invokeRestart [01:27:56.854] is.null <- base::is.null [01:27:56.854] muffled <- FALSE [01:27:56.854] if (inherits(cond, "message")) { [01:27:56.854] muffled <- grepl(pattern, "muffleMessage") [01:27:56.854] if (muffled) [01:27:56.854] invokeRestart("muffleMessage") [01:27:56.854] } [01:27:56.854] else if (inherits(cond, "warning")) { [01:27:56.854] muffled <- grepl(pattern, "muffleWarning") [01:27:56.854] if (muffled) [01:27:56.854] invokeRestart("muffleWarning") [01:27:56.854] } [01:27:56.854] else if (inherits(cond, "condition")) { [01:27:56.854] if (!is.null(pattern)) { [01:27:56.854] computeRestarts <- base::computeRestarts [01:27:56.854] grepl <- base::grepl [01:27:56.854] restarts <- computeRestarts(cond) [01:27:56.854] for (restart in restarts) { [01:27:56.854] name <- restart$name [01:27:56.854] if (is.null(name)) [01:27:56.854] next [01:27:56.854] if (!grepl(pattern, name)) [01:27:56.854] next [01:27:56.854] invokeRestart(restart) [01:27:56.854] muffled <- TRUE [01:27:56.854] break [01:27:56.854] } [01:27:56.854] } [01:27:56.854] } [01:27:56.854] invisible(muffled) [01:27:56.854] } [01:27:56.854] muffleCondition(cond, pattern = "^muffle") [01:27:56.854] } [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] if (TRUE) { [01:27:56.854] muffleCondition <- function (cond, pattern = "^muffle") [01:27:56.854] { [01:27:56.854] inherits <- base::inherits [01:27:56.854] invokeRestart <- base::invokeRestart [01:27:56.854] is.null <- base::is.null [01:27:56.854] muffled <- FALSE [01:27:56.854] if (inherits(cond, "message")) { [01:27:56.854] muffled <- grepl(pattern, "muffleMessage") [01:27:56.854] if (muffled) [01:27:56.854] invokeRestart("muffleMessage") [01:27:56.854] } [01:27:56.854] else if (inherits(cond, "warning")) { [01:27:56.854] muffled <- grepl(pattern, "muffleWarning") [01:27:56.854] if (muffled) [01:27:56.854] invokeRestart("muffleWarning") [01:27:56.854] } [01:27:56.854] else if (inherits(cond, "condition")) { [01:27:56.854] if (!is.null(pattern)) { [01:27:56.854] computeRestarts <- base::computeRestarts [01:27:56.854] grepl <- base::grepl [01:27:56.854] restarts <- computeRestarts(cond) [01:27:56.854] for (restart in restarts) { [01:27:56.854] name <- restart$name [01:27:56.854] if (is.null(name)) [01:27:56.854] next [01:27:56.854] if (!grepl(pattern, name)) [01:27:56.854] next [01:27:56.854] invokeRestart(restart) [01:27:56.854] muffled <- TRUE [01:27:56.854] break [01:27:56.854] } [01:27:56.854] } [01:27:56.854] } [01:27:56.854] invisible(muffled) [01:27:56.854] } [01:27:56.854] muffleCondition(cond, pattern = "^muffle") [01:27:56.854] } [01:27:56.854] } [01:27:56.854] } [01:27:56.854] })) [01:27:56.854] }, error = function(ex) { [01:27:56.854] base::structure(base::list(value = NULL, visible = NULL, [01:27:56.854] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:56.854] ...future.rng), started = ...future.startTime, [01:27:56.854] finished = Sys.time(), session_uuid = NA_character_, [01:27:56.854] version = "1.8"), class = "FutureResult") [01:27:56.854] }, finally = { [01:27:56.854] if (!identical(...future.workdir, getwd())) [01:27:56.854] setwd(...future.workdir) [01:27:56.854] { [01:27:56.854] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:56.854] ...future.oldOptions$nwarnings <- NULL [01:27:56.854] } [01:27:56.854] base::options(...future.oldOptions) [01:27:56.854] if (.Platform$OS.type == "windows") { [01:27:56.854] old_names <- names(...future.oldEnvVars) [01:27:56.854] envs <- base::Sys.getenv() [01:27:56.854] names <- names(envs) [01:27:56.854] common <- intersect(names, old_names) [01:27:56.854] added <- setdiff(names, old_names) [01:27:56.854] removed <- setdiff(old_names, names) [01:27:56.854] changed <- common[...future.oldEnvVars[common] != [01:27:56.854] envs[common]] [01:27:56.854] NAMES <- toupper(changed) [01:27:56.854] args <- list() [01:27:56.854] for (kk in seq_along(NAMES)) { [01:27:56.854] name <- changed[[kk]] [01:27:56.854] NAME <- NAMES[[kk]] [01:27:56.854] if (name != NAME && is.element(NAME, old_names)) [01:27:56.854] next [01:27:56.854] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:56.854] } [01:27:56.854] NAMES <- toupper(added) [01:27:56.854] for (kk in seq_along(NAMES)) { [01:27:56.854] name <- added[[kk]] [01:27:56.854] NAME <- NAMES[[kk]] [01:27:56.854] if (name != NAME && is.element(NAME, old_names)) [01:27:56.854] next [01:27:56.854] args[[name]] <- "" [01:27:56.854] } [01:27:56.854] NAMES <- toupper(removed) [01:27:56.854] for (kk in seq_along(NAMES)) { [01:27:56.854] name <- removed[[kk]] [01:27:56.854] NAME <- NAMES[[kk]] [01:27:56.854] if (name != NAME && is.element(NAME, old_names)) [01:27:56.854] next [01:27:56.854] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:56.854] } [01:27:56.854] if (length(args) > 0) [01:27:56.854] base::do.call(base::Sys.setenv, args = args) [01:27:56.854] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:56.854] } [01:27:56.854] { [01:27:56.854] if (base::length(...future.futureOptionsAdded) > [01:27:56.854] 0L) { [01:27:56.854] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:56.854] base::names(opts) <- ...future.futureOptionsAdded [01:27:56.854] base::options(opts) [01:27:56.854] } [01:27:56.854] { [01:27:56.854] { [01:27:56.854] base::options(mc.cores = ...future.mc.cores.old) [01:27:56.854] NULL [01:27:56.854] } [01:27:56.854] options(future.plan = NULL) [01:27:56.854] if (is.na(NA_character_)) [01:27:56.854] Sys.unsetenv("R_FUTURE_PLAN") [01:27:56.854] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:56.854] future::plan(list(function (..., workers = availableCores(), [01:27:56.854] lazy = FALSE, rscript_libs = .libPaths(), [01:27:56.854] envir = parent.frame()) [01:27:56.854] { [01:27:56.854] if (is.function(workers)) [01:27:56.854] workers <- workers() [01:27:56.854] workers <- structure(as.integer(workers), [01:27:56.854] class = class(workers)) [01:27:56.854] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:56.854] workers >= 1) [01:27:56.854] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:56.854] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:56.854] } [01:27:56.854] future <- MultisessionFuture(..., workers = workers, [01:27:56.854] lazy = lazy, rscript_libs = rscript_libs, [01:27:56.854] envir = envir) [01:27:56.854] if (!future$lazy) [01:27:56.854] future <- run(future) [01:27:56.854] invisible(future) [01:27:56.854] }), .cleanup = FALSE, .init = FALSE) [01:27:56.854] } [01:27:56.854] } [01:27:56.854] } [01:27:56.854] }) [01:27:56.854] if (TRUE) { [01:27:56.854] base::sink(type = "output", split = FALSE) [01:27:56.854] if (TRUE) { [01:27:56.854] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:56.854] } [01:27:56.854] else { [01:27:56.854] ...future.result["stdout"] <- base::list(NULL) [01:27:56.854] } [01:27:56.854] base::close(...future.stdout) [01:27:56.854] ...future.stdout <- NULL [01:27:56.854] } [01:27:56.854] ...future.result$conditions <- ...future.conditions [01:27:56.854] ...future.result$finished <- base::Sys.time() [01:27:56.854] ...future.result [01:27:56.854] } [01:27:56.942] MultisessionFuture started [01:27:56.942] result() for ClusterFuture ... [01:27:56.943] receiveMessageFromWorker() for ClusterFuture ... [01:27:56.943] - Validating connection of MultisessionFuture [01:27:57.000] - received message: FutureResult [01:27:57.000] - Received FutureResult [01:27:57.004] - Erased future from FutureRegistry [01:27:57.004] result() for ClusterFuture ... [01:27:57.004] - result already collected: FutureResult [01:27:57.005] result() for ClusterFuture ... done [01:27:57.005] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.005] result() for ClusterFuture ... done [01:27:57.005] result() for ClusterFuture ... [01:27:57.005] - result already collected: FutureResult [01:27:57.006] result() for ClusterFuture ... done [01:27:57.006] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... DONE [01:27:57.009] plan(): nbrOfWorkers() = 2 - lm() ... [01:27:57.010] getGlobalsAndPackages() ... [01:27:57.010] Searching for globals... [01:27:57.013] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:57.014] Searching for globals ... DONE [01:27:57.014] Resolving globals: FALSE [01:27:57.015] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:57.016] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:57.016] - globals: [2] 'weight', 'group' [01:27:57.017] - packages: [1] 'stats' [01:27:57.017] getGlobalsAndPackages() ... DONE [01:27:57.018] run() for 'Future' ... [01:27:57.018] - state: 'created' [01:27:57.018] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.036] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.036] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.037] - Field: 'node' [01:27:57.037] - Field: 'label' [01:27:57.037] - Field: 'local' [01:27:57.037] - Field: 'owner' [01:27:57.037] - Field: 'envir' [01:27:57.038] - Field: 'workers' [01:27:57.038] - Field: 'packages' [01:27:57.038] - Field: 'gc' [01:27:57.038] - Field: 'conditions' [01:27:57.039] - Field: 'persistent' [01:27:57.039] - Field: 'expr' [01:27:57.039] - Field: 'uuid' [01:27:57.039] - Field: 'seed' [01:27:57.039] - Field: 'version' [01:27:57.040] - Field: 'result' [01:27:57.040] - Field: 'asynchronous' [01:27:57.040] - Field: 'calls' [01:27:57.040] - Field: 'globals' [01:27:57.041] - Field: 'stdout' [01:27:57.041] - Field: 'earlySignal' [01:27:57.041] - Field: 'lazy' [01:27:57.041] - Field: 'state' [01:27:57.041] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.042] - Launch lazy future ... [01:27:57.042] Packages needed by the future expression (n = 1): 'stats' [01:27:57.043] Packages needed by future strategies (n = 0): [01:27:57.044] { [01:27:57.044] { [01:27:57.044] { [01:27:57.044] ...future.startTime <- base::Sys.time() [01:27:57.044] { [01:27:57.044] { [01:27:57.044] { [01:27:57.044] { [01:27:57.044] { [01:27:57.044] base::local({ [01:27:57.044] has_future <- base::requireNamespace("future", [01:27:57.044] quietly = TRUE) [01:27:57.044] if (has_future) { [01:27:57.044] ns <- base::getNamespace("future") [01:27:57.044] version <- ns[[".package"]][["version"]] [01:27:57.044] if (is.null(version)) [01:27:57.044] version <- utils::packageVersion("future") [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] version <- NULL [01:27:57.044] } [01:27:57.044] if (!has_future || version < "1.8.0") { [01:27:57.044] info <- base::c(r_version = base::gsub("R version ", [01:27:57.044] "", base::R.version$version.string), [01:27:57.044] platform = base::sprintf("%s (%s-bit)", [01:27:57.044] base::R.version$platform, 8 * [01:27:57.044] base::.Machine$sizeof.pointer), [01:27:57.044] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.044] "release", "version")], collapse = " "), [01:27:57.044] hostname = base::Sys.info()[["nodename"]]) [01:27:57.044] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.044] info) [01:27:57.044] info <- base::paste(info, collapse = "; ") [01:27:57.044] if (!has_future) { [01:27:57.044] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.044] info) [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.044] info, version) [01:27:57.044] } [01:27:57.044] base::stop(msg) [01:27:57.044] } [01:27:57.044] }) [01:27:57.044] } [01:27:57.044] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.044] base::options(mc.cores = 1L) [01:27:57.044] } [01:27:57.044] base::local({ [01:27:57.044] for (pkg in "stats") { [01:27:57.044] base::loadNamespace(pkg) [01:27:57.044] base::library(pkg, character.only = TRUE) [01:27:57.044] } [01:27:57.044] }) [01:27:57.044] } [01:27:57.044] options(future.plan = NULL) [01:27:57.044] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.044] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.044] } [01:27:57.044] ...future.workdir <- getwd() [01:27:57.044] } [01:27:57.044] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.044] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.044] } [01:27:57.044] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.044] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.044] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.044] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.044] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.044] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.044] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.044] base::names(...future.oldOptions)) [01:27:57.044] } [01:27:57.044] if (FALSE) { [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] if (TRUE) { [01:27:57.044] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.044] open = "w") [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.044] windows = "NUL", "/dev/null"), open = "w") [01:27:57.044] } [01:27:57.044] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.044] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.044] base::sink(type = "output", split = FALSE) [01:27:57.044] base::close(...future.stdout) [01:27:57.044] }, add = TRUE) [01:27:57.044] } [01:27:57.044] ...future.frame <- base::sys.nframe() [01:27:57.044] ...future.conditions <- base::list() [01:27:57.044] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.044] if (FALSE) { [01:27:57.044] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.044] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.044] } [01:27:57.044] ...future.result <- base::tryCatch({ [01:27:57.044] base::withCallingHandlers({ [01:27:57.044] ...future.value <- base::withVisible(base::local({ [01:27:57.044] ...future.makeSendCondition <- base::local({ [01:27:57.044] sendCondition <- NULL [01:27:57.044] function(frame = 1L) { [01:27:57.044] if (is.function(sendCondition)) [01:27:57.044] return(sendCondition) [01:27:57.044] ns <- getNamespace("parallel") [01:27:57.044] if (exists("sendData", mode = "function", [01:27:57.044] envir = ns)) { [01:27:57.044] parallel_sendData <- get("sendData", mode = "function", [01:27:57.044] envir = ns) [01:27:57.044] envir <- sys.frame(frame) [01:27:57.044] master <- NULL [01:27:57.044] while (!identical(envir, .GlobalEnv) && [01:27:57.044] !identical(envir, emptyenv())) { [01:27:57.044] if (exists("master", mode = "list", envir = envir, [01:27:57.044] inherits = FALSE)) { [01:27:57.044] master <- get("master", mode = "list", [01:27:57.044] envir = envir, inherits = FALSE) [01:27:57.044] if (inherits(master, c("SOCKnode", [01:27:57.044] "SOCK0node"))) { [01:27:57.044] sendCondition <<- function(cond) { [01:27:57.044] data <- list(type = "VALUE", value = cond, [01:27:57.044] success = TRUE) [01:27:57.044] parallel_sendData(master, data) [01:27:57.044] } [01:27:57.044] return(sendCondition) [01:27:57.044] } [01:27:57.044] } [01:27:57.044] frame <- frame + 1L [01:27:57.044] envir <- sys.frame(frame) [01:27:57.044] } [01:27:57.044] } [01:27:57.044] sendCondition <<- function(cond) NULL [01:27:57.044] } [01:27:57.044] }) [01:27:57.044] withCallingHandlers({ [01:27:57.044] { [01:27:57.044] lm(weight ~ group - 1) [01:27:57.044] } [01:27:57.044] }, immediateCondition = function(cond) { [01:27:57.044] sendCondition <- ...future.makeSendCondition() [01:27:57.044] sendCondition(cond) [01:27:57.044] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.044] { [01:27:57.044] inherits <- base::inherits [01:27:57.044] invokeRestart <- base::invokeRestart [01:27:57.044] is.null <- base::is.null [01:27:57.044] muffled <- FALSE [01:27:57.044] if (inherits(cond, "message")) { [01:27:57.044] muffled <- grepl(pattern, "muffleMessage") [01:27:57.044] if (muffled) [01:27:57.044] invokeRestart("muffleMessage") [01:27:57.044] } [01:27:57.044] else if (inherits(cond, "warning")) { [01:27:57.044] muffled <- grepl(pattern, "muffleWarning") [01:27:57.044] if (muffled) [01:27:57.044] invokeRestart("muffleWarning") [01:27:57.044] } [01:27:57.044] else if (inherits(cond, "condition")) { [01:27:57.044] if (!is.null(pattern)) { [01:27:57.044] computeRestarts <- base::computeRestarts [01:27:57.044] grepl <- base::grepl [01:27:57.044] restarts <- computeRestarts(cond) [01:27:57.044] for (restart in restarts) { [01:27:57.044] name <- restart$name [01:27:57.044] if (is.null(name)) [01:27:57.044] next [01:27:57.044] if (!grepl(pattern, name)) [01:27:57.044] next [01:27:57.044] invokeRestart(restart) [01:27:57.044] muffled <- TRUE [01:27:57.044] break [01:27:57.044] } [01:27:57.044] } [01:27:57.044] } [01:27:57.044] invisible(muffled) [01:27:57.044] } [01:27:57.044] muffleCondition(cond) [01:27:57.044] }) [01:27:57.044] })) [01:27:57.044] future::FutureResult(value = ...future.value$value, [01:27:57.044] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.044] ...future.rng), globalenv = if (FALSE) [01:27:57.044] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.044] ...future.globalenv.names)) [01:27:57.044] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.044] }, condition = base::local({ [01:27:57.044] c <- base::c [01:27:57.044] inherits <- base::inherits [01:27:57.044] invokeRestart <- base::invokeRestart [01:27:57.044] length <- base::length [01:27:57.044] list <- base::list [01:27:57.044] seq.int <- base::seq.int [01:27:57.044] signalCondition <- base::signalCondition [01:27:57.044] sys.calls <- base::sys.calls [01:27:57.044] `[[` <- base::`[[` [01:27:57.044] `+` <- base::`+` [01:27:57.044] `<<-` <- base::`<<-` [01:27:57.044] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.044] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.044] 3L)] [01:27:57.044] } [01:27:57.044] function(cond) { [01:27:57.044] is_error <- inherits(cond, "error") [01:27:57.044] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.044] NULL) [01:27:57.044] if (is_error) { [01:27:57.044] sessionInformation <- function() { [01:27:57.044] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.044] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.044] search = base::search(), system = base::Sys.info()) [01:27:57.044] } [01:27:57.044] ...future.conditions[[length(...future.conditions) + [01:27:57.044] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.044] cond$call), session = sessionInformation(), [01:27:57.044] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.044] signalCondition(cond) [01:27:57.044] } [01:27:57.044] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.044] "immediateCondition"))) { [01:27:57.044] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.044] ...future.conditions[[length(...future.conditions) + [01:27:57.044] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.044] if (TRUE && !signal) { [01:27:57.044] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.044] { [01:27:57.044] inherits <- base::inherits [01:27:57.044] invokeRestart <- base::invokeRestart [01:27:57.044] is.null <- base::is.null [01:27:57.044] muffled <- FALSE [01:27:57.044] if (inherits(cond, "message")) { [01:27:57.044] muffled <- grepl(pattern, "muffleMessage") [01:27:57.044] if (muffled) [01:27:57.044] invokeRestart("muffleMessage") [01:27:57.044] } [01:27:57.044] else if (inherits(cond, "warning")) { [01:27:57.044] muffled <- grepl(pattern, "muffleWarning") [01:27:57.044] if (muffled) [01:27:57.044] invokeRestart("muffleWarning") [01:27:57.044] } [01:27:57.044] else if (inherits(cond, "condition")) { [01:27:57.044] if (!is.null(pattern)) { [01:27:57.044] computeRestarts <- base::computeRestarts [01:27:57.044] grepl <- base::grepl [01:27:57.044] restarts <- computeRestarts(cond) [01:27:57.044] for (restart in restarts) { [01:27:57.044] name <- restart$name [01:27:57.044] if (is.null(name)) [01:27:57.044] next [01:27:57.044] if (!grepl(pattern, name)) [01:27:57.044] next [01:27:57.044] invokeRestart(restart) [01:27:57.044] muffled <- TRUE [01:27:57.044] break [01:27:57.044] } [01:27:57.044] } [01:27:57.044] } [01:27:57.044] invisible(muffled) [01:27:57.044] } [01:27:57.044] muffleCondition(cond, pattern = "^muffle") [01:27:57.044] } [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] if (TRUE) { [01:27:57.044] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.044] { [01:27:57.044] inherits <- base::inherits [01:27:57.044] invokeRestart <- base::invokeRestart [01:27:57.044] is.null <- base::is.null [01:27:57.044] muffled <- FALSE [01:27:57.044] if (inherits(cond, "message")) { [01:27:57.044] muffled <- grepl(pattern, "muffleMessage") [01:27:57.044] if (muffled) [01:27:57.044] invokeRestart("muffleMessage") [01:27:57.044] } [01:27:57.044] else if (inherits(cond, "warning")) { [01:27:57.044] muffled <- grepl(pattern, "muffleWarning") [01:27:57.044] if (muffled) [01:27:57.044] invokeRestart("muffleWarning") [01:27:57.044] } [01:27:57.044] else if (inherits(cond, "condition")) { [01:27:57.044] if (!is.null(pattern)) { [01:27:57.044] computeRestarts <- base::computeRestarts [01:27:57.044] grepl <- base::grepl [01:27:57.044] restarts <- computeRestarts(cond) [01:27:57.044] for (restart in restarts) { [01:27:57.044] name <- restart$name [01:27:57.044] if (is.null(name)) [01:27:57.044] next [01:27:57.044] if (!grepl(pattern, name)) [01:27:57.044] next [01:27:57.044] invokeRestart(restart) [01:27:57.044] muffled <- TRUE [01:27:57.044] break [01:27:57.044] } [01:27:57.044] } [01:27:57.044] } [01:27:57.044] invisible(muffled) [01:27:57.044] } [01:27:57.044] muffleCondition(cond, pattern = "^muffle") [01:27:57.044] } [01:27:57.044] } [01:27:57.044] } [01:27:57.044] })) [01:27:57.044] }, error = function(ex) { [01:27:57.044] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.044] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.044] ...future.rng), started = ...future.startTime, [01:27:57.044] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.044] version = "1.8"), class = "FutureResult") [01:27:57.044] }, finally = { [01:27:57.044] if (!identical(...future.workdir, getwd())) [01:27:57.044] setwd(...future.workdir) [01:27:57.044] { [01:27:57.044] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.044] ...future.oldOptions$nwarnings <- NULL [01:27:57.044] } [01:27:57.044] base::options(...future.oldOptions) [01:27:57.044] if (.Platform$OS.type == "windows") { [01:27:57.044] old_names <- names(...future.oldEnvVars) [01:27:57.044] envs <- base::Sys.getenv() [01:27:57.044] names <- names(envs) [01:27:57.044] common <- intersect(names, old_names) [01:27:57.044] added <- setdiff(names, old_names) [01:27:57.044] removed <- setdiff(old_names, names) [01:27:57.044] changed <- common[...future.oldEnvVars[common] != [01:27:57.044] envs[common]] [01:27:57.044] NAMES <- toupper(changed) [01:27:57.044] args <- list() [01:27:57.044] for (kk in seq_along(NAMES)) { [01:27:57.044] name <- changed[[kk]] [01:27:57.044] NAME <- NAMES[[kk]] [01:27:57.044] if (name != NAME && is.element(NAME, old_names)) [01:27:57.044] next [01:27:57.044] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.044] } [01:27:57.044] NAMES <- toupper(added) [01:27:57.044] for (kk in seq_along(NAMES)) { [01:27:57.044] name <- added[[kk]] [01:27:57.044] NAME <- NAMES[[kk]] [01:27:57.044] if (name != NAME && is.element(NAME, old_names)) [01:27:57.044] next [01:27:57.044] args[[name]] <- "" [01:27:57.044] } [01:27:57.044] NAMES <- toupper(removed) [01:27:57.044] for (kk in seq_along(NAMES)) { [01:27:57.044] name <- removed[[kk]] [01:27:57.044] NAME <- NAMES[[kk]] [01:27:57.044] if (name != NAME && is.element(NAME, old_names)) [01:27:57.044] next [01:27:57.044] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.044] } [01:27:57.044] if (length(args) > 0) [01:27:57.044] base::do.call(base::Sys.setenv, args = args) [01:27:57.044] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.044] } [01:27:57.044] { [01:27:57.044] if (base::length(...future.futureOptionsAdded) > [01:27:57.044] 0L) { [01:27:57.044] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.044] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.044] base::options(opts) [01:27:57.044] } [01:27:57.044] { [01:27:57.044] { [01:27:57.044] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.044] NULL [01:27:57.044] } [01:27:57.044] options(future.plan = NULL) [01:27:57.044] if (is.na(NA_character_)) [01:27:57.044] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.044] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.044] future::plan(list(function (..., workers = availableCores(), [01:27:57.044] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.044] envir = parent.frame()) [01:27:57.044] { [01:27:57.044] if (is.function(workers)) [01:27:57.044] workers <- workers() [01:27:57.044] workers <- structure(as.integer(workers), [01:27:57.044] class = class(workers)) [01:27:57.044] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.044] workers >= 1) [01:27:57.044] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.044] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.044] } [01:27:57.044] future <- MultisessionFuture(..., workers = workers, [01:27:57.044] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.044] envir = envir) [01:27:57.044] if (!future$lazy) [01:27:57.044] future <- run(future) [01:27:57.044] invisible(future) [01:27:57.044] }), .cleanup = FALSE, .init = FALSE) [01:27:57.044] } [01:27:57.044] } [01:27:57.044] } [01:27:57.044] }) [01:27:57.044] if (TRUE) { [01:27:57.044] base::sink(type = "output", split = FALSE) [01:27:57.044] if (TRUE) { [01:27:57.044] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.044] } [01:27:57.044] else { [01:27:57.044] ...future.result["stdout"] <- base::list(NULL) [01:27:57.044] } [01:27:57.044] base::close(...future.stdout) [01:27:57.044] ...future.stdout <- NULL [01:27:57.044] } [01:27:57.044] ...future.result$conditions <- ...future.conditions [01:27:57.044] ...future.result$finished <- base::Sys.time() [01:27:57.044] ...future.result [01:27:57.044] } [01:27:57.050] Exporting 2 global objects (896 bytes) to cluster node #1 ... [01:27:57.051] Exporting 'weight' (208 bytes) to cluster node #1 ... [01:27:57.051] Exporting 'weight' (208 bytes) to cluster node #1 ... DONE [01:27:57.052] Exporting 'group' (688 bytes) to cluster node #1 ... [01:27:57.052] Exporting 'group' (688 bytes) to cluster node #1 ... DONE [01:27:57.052] Exporting 2 global objects (896 bytes) to cluster node #1 ... DONE [01:27:57.053] MultisessionFuture started [01:27:57.054] - Launch lazy future ... done [01:27:57.054] run() for 'MultisessionFuture' ... done [01:27:57.054] result() for ClusterFuture ... [01:27:57.054] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.054] - Validating connection of MultisessionFuture [01:27:57.074] - received message: FutureResult [01:27:57.075] - Received FutureResult [01:27:57.075] - Erased future from FutureRegistry [01:27:57.075] result() for ClusterFuture ... [01:27:57.075] - result already collected: FutureResult [01:27:57.076] result() for ClusterFuture ... done [01:27:57.076] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.076] result() for ClusterFuture ... done [01:27:57.076] result() for ClusterFuture ... [01:27:57.076] - result already collected: FutureResult [01:27:57.076] result() for ClusterFuture ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:57.079] getGlobalsAndPackages() ... [01:27:57.079] Searching for globals... [01:27:57.082] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:57.082] Searching for globals ... DONE [01:27:57.082] Resolving globals: FALSE [01:27:57.083] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:57.084] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:57.084] - globals: [2] 'weight', 'group' [01:27:57.084] - packages: [1] 'stats' [01:27:57.085] getGlobalsAndPackages() ... DONE [01:27:57.085] run() for 'Future' ... [01:27:57.085] - state: 'created' [01:27:57.086] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.102] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.103] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.103] - Field: 'node' [01:27:57.103] - Field: 'label' [01:27:57.104] - Field: 'local' [01:27:57.104] - Field: 'owner' [01:27:57.104] - Field: 'envir' [01:27:57.104] - Field: 'workers' [01:27:57.104] - Field: 'packages' [01:27:57.105] - Field: 'gc' [01:27:57.105] - Field: 'conditions' [01:27:57.105] - Field: 'persistent' [01:27:57.105] - Field: 'expr' [01:27:57.105] - Field: 'uuid' [01:27:57.106] - Field: 'seed' [01:27:57.106] - Field: 'version' [01:27:57.106] - Field: 'result' [01:27:57.106] - Field: 'asynchronous' [01:27:57.106] - Field: 'calls' [01:27:57.107] - Field: 'globals' [01:27:57.107] - Field: 'stdout' [01:27:57.107] - Field: 'earlySignal' [01:27:57.107] - Field: 'lazy' [01:27:57.108] - Field: 'state' [01:27:57.108] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.108] - Launch lazy future ... [01:27:57.109] Packages needed by the future expression (n = 1): 'stats' [01:27:57.109] Packages needed by future strategies (n = 0): [01:27:57.110] { [01:27:57.110] { [01:27:57.110] { [01:27:57.110] ...future.startTime <- base::Sys.time() [01:27:57.110] { [01:27:57.110] { [01:27:57.110] { [01:27:57.110] { [01:27:57.110] { [01:27:57.110] base::local({ [01:27:57.110] has_future <- base::requireNamespace("future", [01:27:57.110] quietly = TRUE) [01:27:57.110] if (has_future) { [01:27:57.110] ns <- base::getNamespace("future") [01:27:57.110] version <- ns[[".package"]][["version"]] [01:27:57.110] if (is.null(version)) [01:27:57.110] version <- utils::packageVersion("future") [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] version <- NULL [01:27:57.110] } [01:27:57.110] if (!has_future || version < "1.8.0") { [01:27:57.110] info <- base::c(r_version = base::gsub("R version ", [01:27:57.110] "", base::R.version$version.string), [01:27:57.110] platform = base::sprintf("%s (%s-bit)", [01:27:57.110] base::R.version$platform, 8 * [01:27:57.110] base::.Machine$sizeof.pointer), [01:27:57.110] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.110] "release", "version")], collapse = " "), [01:27:57.110] hostname = base::Sys.info()[["nodename"]]) [01:27:57.110] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.110] info) [01:27:57.110] info <- base::paste(info, collapse = "; ") [01:27:57.110] if (!has_future) { [01:27:57.110] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.110] info) [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.110] info, version) [01:27:57.110] } [01:27:57.110] base::stop(msg) [01:27:57.110] } [01:27:57.110] }) [01:27:57.110] } [01:27:57.110] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.110] base::options(mc.cores = 1L) [01:27:57.110] } [01:27:57.110] base::local({ [01:27:57.110] for (pkg in "stats") { [01:27:57.110] base::loadNamespace(pkg) [01:27:57.110] base::library(pkg, character.only = TRUE) [01:27:57.110] } [01:27:57.110] }) [01:27:57.110] } [01:27:57.110] options(future.plan = NULL) [01:27:57.110] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.110] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.110] } [01:27:57.110] ...future.workdir <- getwd() [01:27:57.110] } [01:27:57.110] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.110] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.110] } [01:27:57.110] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.110] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.110] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.110] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.110] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.110] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.110] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.110] base::names(...future.oldOptions)) [01:27:57.110] } [01:27:57.110] if (FALSE) { [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] if (TRUE) { [01:27:57.110] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.110] open = "w") [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.110] windows = "NUL", "/dev/null"), open = "w") [01:27:57.110] } [01:27:57.110] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.110] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.110] base::sink(type = "output", split = FALSE) [01:27:57.110] base::close(...future.stdout) [01:27:57.110] }, add = TRUE) [01:27:57.110] } [01:27:57.110] ...future.frame <- base::sys.nframe() [01:27:57.110] ...future.conditions <- base::list() [01:27:57.110] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.110] if (FALSE) { [01:27:57.110] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.110] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.110] } [01:27:57.110] ...future.result <- base::tryCatch({ [01:27:57.110] base::withCallingHandlers({ [01:27:57.110] ...future.value <- base::withVisible(base::local({ [01:27:57.110] ...future.makeSendCondition <- base::local({ [01:27:57.110] sendCondition <- NULL [01:27:57.110] function(frame = 1L) { [01:27:57.110] if (is.function(sendCondition)) [01:27:57.110] return(sendCondition) [01:27:57.110] ns <- getNamespace("parallel") [01:27:57.110] if (exists("sendData", mode = "function", [01:27:57.110] envir = ns)) { [01:27:57.110] parallel_sendData <- get("sendData", mode = "function", [01:27:57.110] envir = ns) [01:27:57.110] envir <- sys.frame(frame) [01:27:57.110] master <- NULL [01:27:57.110] while (!identical(envir, .GlobalEnv) && [01:27:57.110] !identical(envir, emptyenv())) { [01:27:57.110] if (exists("master", mode = "list", envir = envir, [01:27:57.110] inherits = FALSE)) { [01:27:57.110] master <- get("master", mode = "list", [01:27:57.110] envir = envir, inherits = FALSE) [01:27:57.110] if (inherits(master, c("SOCKnode", [01:27:57.110] "SOCK0node"))) { [01:27:57.110] sendCondition <<- function(cond) { [01:27:57.110] data <- list(type = "VALUE", value = cond, [01:27:57.110] success = TRUE) [01:27:57.110] parallel_sendData(master, data) [01:27:57.110] } [01:27:57.110] return(sendCondition) [01:27:57.110] } [01:27:57.110] } [01:27:57.110] frame <- frame + 1L [01:27:57.110] envir <- sys.frame(frame) [01:27:57.110] } [01:27:57.110] } [01:27:57.110] sendCondition <<- function(cond) NULL [01:27:57.110] } [01:27:57.110] }) [01:27:57.110] withCallingHandlers({ [01:27:57.110] { [01:27:57.110] lm(weight ~ group - 1) [01:27:57.110] } [01:27:57.110] }, immediateCondition = function(cond) { [01:27:57.110] sendCondition <- ...future.makeSendCondition() [01:27:57.110] sendCondition(cond) [01:27:57.110] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.110] { [01:27:57.110] inherits <- base::inherits [01:27:57.110] invokeRestart <- base::invokeRestart [01:27:57.110] is.null <- base::is.null [01:27:57.110] muffled <- FALSE [01:27:57.110] if (inherits(cond, "message")) { [01:27:57.110] muffled <- grepl(pattern, "muffleMessage") [01:27:57.110] if (muffled) [01:27:57.110] invokeRestart("muffleMessage") [01:27:57.110] } [01:27:57.110] else if (inherits(cond, "warning")) { [01:27:57.110] muffled <- grepl(pattern, "muffleWarning") [01:27:57.110] if (muffled) [01:27:57.110] invokeRestart("muffleWarning") [01:27:57.110] } [01:27:57.110] else if (inherits(cond, "condition")) { [01:27:57.110] if (!is.null(pattern)) { [01:27:57.110] computeRestarts <- base::computeRestarts [01:27:57.110] grepl <- base::grepl [01:27:57.110] restarts <- computeRestarts(cond) [01:27:57.110] for (restart in restarts) { [01:27:57.110] name <- restart$name [01:27:57.110] if (is.null(name)) [01:27:57.110] next [01:27:57.110] if (!grepl(pattern, name)) [01:27:57.110] next [01:27:57.110] invokeRestart(restart) [01:27:57.110] muffled <- TRUE [01:27:57.110] break [01:27:57.110] } [01:27:57.110] } [01:27:57.110] } [01:27:57.110] invisible(muffled) [01:27:57.110] } [01:27:57.110] muffleCondition(cond) [01:27:57.110] }) [01:27:57.110] })) [01:27:57.110] future::FutureResult(value = ...future.value$value, [01:27:57.110] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.110] ...future.rng), globalenv = if (FALSE) [01:27:57.110] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.110] ...future.globalenv.names)) [01:27:57.110] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.110] }, condition = base::local({ [01:27:57.110] c <- base::c [01:27:57.110] inherits <- base::inherits [01:27:57.110] invokeRestart <- base::invokeRestart [01:27:57.110] length <- base::length [01:27:57.110] list <- base::list [01:27:57.110] seq.int <- base::seq.int [01:27:57.110] signalCondition <- base::signalCondition [01:27:57.110] sys.calls <- base::sys.calls [01:27:57.110] `[[` <- base::`[[` [01:27:57.110] `+` <- base::`+` [01:27:57.110] `<<-` <- base::`<<-` [01:27:57.110] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.110] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.110] 3L)] [01:27:57.110] } [01:27:57.110] function(cond) { [01:27:57.110] is_error <- inherits(cond, "error") [01:27:57.110] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.110] NULL) [01:27:57.110] if (is_error) { [01:27:57.110] sessionInformation <- function() { [01:27:57.110] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.110] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.110] search = base::search(), system = base::Sys.info()) [01:27:57.110] } [01:27:57.110] ...future.conditions[[length(...future.conditions) + [01:27:57.110] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.110] cond$call), session = sessionInformation(), [01:27:57.110] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.110] signalCondition(cond) [01:27:57.110] } [01:27:57.110] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.110] "immediateCondition"))) { [01:27:57.110] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.110] ...future.conditions[[length(...future.conditions) + [01:27:57.110] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.110] if (TRUE && !signal) { [01:27:57.110] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.110] { [01:27:57.110] inherits <- base::inherits [01:27:57.110] invokeRestart <- base::invokeRestart [01:27:57.110] is.null <- base::is.null [01:27:57.110] muffled <- FALSE [01:27:57.110] if (inherits(cond, "message")) { [01:27:57.110] muffled <- grepl(pattern, "muffleMessage") [01:27:57.110] if (muffled) [01:27:57.110] invokeRestart("muffleMessage") [01:27:57.110] } [01:27:57.110] else if (inherits(cond, "warning")) { [01:27:57.110] muffled <- grepl(pattern, "muffleWarning") [01:27:57.110] if (muffled) [01:27:57.110] invokeRestart("muffleWarning") [01:27:57.110] } [01:27:57.110] else if (inherits(cond, "condition")) { [01:27:57.110] if (!is.null(pattern)) { [01:27:57.110] computeRestarts <- base::computeRestarts [01:27:57.110] grepl <- base::grepl [01:27:57.110] restarts <- computeRestarts(cond) [01:27:57.110] for (restart in restarts) { [01:27:57.110] name <- restart$name [01:27:57.110] if (is.null(name)) [01:27:57.110] next [01:27:57.110] if (!grepl(pattern, name)) [01:27:57.110] next [01:27:57.110] invokeRestart(restart) [01:27:57.110] muffled <- TRUE [01:27:57.110] break [01:27:57.110] } [01:27:57.110] } [01:27:57.110] } [01:27:57.110] invisible(muffled) [01:27:57.110] } [01:27:57.110] muffleCondition(cond, pattern = "^muffle") [01:27:57.110] } [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] if (TRUE) { [01:27:57.110] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.110] { [01:27:57.110] inherits <- base::inherits [01:27:57.110] invokeRestart <- base::invokeRestart [01:27:57.110] is.null <- base::is.null [01:27:57.110] muffled <- FALSE [01:27:57.110] if (inherits(cond, "message")) { [01:27:57.110] muffled <- grepl(pattern, "muffleMessage") [01:27:57.110] if (muffled) [01:27:57.110] invokeRestart("muffleMessage") [01:27:57.110] } [01:27:57.110] else if (inherits(cond, "warning")) { [01:27:57.110] muffled <- grepl(pattern, "muffleWarning") [01:27:57.110] if (muffled) [01:27:57.110] invokeRestart("muffleWarning") [01:27:57.110] } [01:27:57.110] else if (inherits(cond, "condition")) { [01:27:57.110] if (!is.null(pattern)) { [01:27:57.110] computeRestarts <- base::computeRestarts [01:27:57.110] grepl <- base::grepl [01:27:57.110] restarts <- computeRestarts(cond) [01:27:57.110] for (restart in restarts) { [01:27:57.110] name <- restart$name [01:27:57.110] if (is.null(name)) [01:27:57.110] next [01:27:57.110] if (!grepl(pattern, name)) [01:27:57.110] next [01:27:57.110] invokeRestart(restart) [01:27:57.110] muffled <- TRUE [01:27:57.110] break [01:27:57.110] } [01:27:57.110] } [01:27:57.110] } [01:27:57.110] invisible(muffled) [01:27:57.110] } [01:27:57.110] muffleCondition(cond, pattern = "^muffle") [01:27:57.110] } [01:27:57.110] } [01:27:57.110] } [01:27:57.110] })) [01:27:57.110] }, error = function(ex) { [01:27:57.110] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.110] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.110] ...future.rng), started = ...future.startTime, [01:27:57.110] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.110] version = "1.8"), class = "FutureResult") [01:27:57.110] }, finally = { [01:27:57.110] if (!identical(...future.workdir, getwd())) [01:27:57.110] setwd(...future.workdir) [01:27:57.110] { [01:27:57.110] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.110] ...future.oldOptions$nwarnings <- NULL [01:27:57.110] } [01:27:57.110] base::options(...future.oldOptions) [01:27:57.110] if (.Platform$OS.type == "windows") { [01:27:57.110] old_names <- names(...future.oldEnvVars) [01:27:57.110] envs <- base::Sys.getenv() [01:27:57.110] names <- names(envs) [01:27:57.110] common <- intersect(names, old_names) [01:27:57.110] added <- setdiff(names, old_names) [01:27:57.110] removed <- setdiff(old_names, names) [01:27:57.110] changed <- common[...future.oldEnvVars[common] != [01:27:57.110] envs[common]] [01:27:57.110] NAMES <- toupper(changed) [01:27:57.110] args <- list() [01:27:57.110] for (kk in seq_along(NAMES)) { [01:27:57.110] name <- changed[[kk]] [01:27:57.110] NAME <- NAMES[[kk]] [01:27:57.110] if (name != NAME && is.element(NAME, old_names)) [01:27:57.110] next [01:27:57.110] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.110] } [01:27:57.110] NAMES <- toupper(added) [01:27:57.110] for (kk in seq_along(NAMES)) { [01:27:57.110] name <- added[[kk]] [01:27:57.110] NAME <- NAMES[[kk]] [01:27:57.110] if (name != NAME && is.element(NAME, old_names)) [01:27:57.110] next [01:27:57.110] args[[name]] <- "" [01:27:57.110] } [01:27:57.110] NAMES <- toupper(removed) [01:27:57.110] for (kk in seq_along(NAMES)) { [01:27:57.110] name <- removed[[kk]] [01:27:57.110] NAME <- NAMES[[kk]] [01:27:57.110] if (name != NAME && is.element(NAME, old_names)) [01:27:57.110] next [01:27:57.110] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.110] } [01:27:57.110] if (length(args) > 0) [01:27:57.110] base::do.call(base::Sys.setenv, args = args) [01:27:57.110] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.110] } [01:27:57.110] { [01:27:57.110] if (base::length(...future.futureOptionsAdded) > [01:27:57.110] 0L) { [01:27:57.110] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.110] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.110] base::options(opts) [01:27:57.110] } [01:27:57.110] { [01:27:57.110] { [01:27:57.110] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.110] NULL [01:27:57.110] } [01:27:57.110] options(future.plan = NULL) [01:27:57.110] if (is.na(NA_character_)) [01:27:57.110] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.110] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.110] future::plan(list(function (..., workers = availableCores(), [01:27:57.110] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.110] envir = parent.frame()) [01:27:57.110] { [01:27:57.110] if (is.function(workers)) [01:27:57.110] workers <- workers() [01:27:57.110] workers <- structure(as.integer(workers), [01:27:57.110] class = class(workers)) [01:27:57.110] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.110] workers >= 1) [01:27:57.110] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.110] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.110] } [01:27:57.110] future <- MultisessionFuture(..., workers = workers, [01:27:57.110] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.110] envir = envir) [01:27:57.110] if (!future$lazy) [01:27:57.110] future <- run(future) [01:27:57.110] invisible(future) [01:27:57.110] }), .cleanup = FALSE, .init = FALSE) [01:27:57.110] } [01:27:57.110] } [01:27:57.110] } [01:27:57.110] }) [01:27:57.110] if (TRUE) { [01:27:57.110] base::sink(type = "output", split = FALSE) [01:27:57.110] if (TRUE) { [01:27:57.110] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.110] } [01:27:57.110] else { [01:27:57.110] ...future.result["stdout"] <- base::list(NULL) [01:27:57.110] } [01:27:57.110] base::close(...future.stdout) [01:27:57.110] ...future.stdout <- NULL [01:27:57.110] } [01:27:57.110] ...future.result$conditions <- ...future.conditions [01:27:57.110] ...future.result$finished <- base::Sys.time() [01:27:57.110] ...future.result [01:27:57.110] } [01:27:57.117] Exporting 2 global objects (896 bytes) to cluster node #1 ... [01:27:57.117] Exporting 'weight' (208 bytes) to cluster node #1 ... [01:27:57.118] Exporting 'weight' (208 bytes) to cluster node #1 ... DONE [01:27:57.118] Exporting 'group' (688 bytes) to cluster node #1 ... [01:27:57.118] Exporting 'group' (688 bytes) to cluster node #1 ... DONE [01:27:57.119] Exporting 2 global objects (896 bytes) to cluster node #1 ... DONE [01:27:57.120] MultisessionFuture started [01:27:57.120] - Launch lazy future ... done [01:27:57.121] run() for 'MultisessionFuture' ... done [01:27:57.121] result() for ClusterFuture ... [01:27:57.121] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.121] - Validating connection of MultisessionFuture [01:27:57.138] - received message: FutureResult [01:27:57.139] - Received FutureResult [01:27:57.139] - Erased future from FutureRegistry [01:27:57.139] result() for ClusterFuture ... [01:27:57.139] - result already collected: FutureResult [01:27:57.139] result() for ClusterFuture ... done [01:27:57.140] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.140] result() for ClusterFuture ... done [01:27:57.140] result() for ClusterFuture ... [01:27:57.140] - result already collected: FutureResult [01:27:57.140] result() for ClusterFuture ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:57.143] getGlobalsAndPackages() ... [01:27:57.143] Searching for globals... [01:27:57.145] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:57.146] Searching for globals ... DONE [01:27:57.146] Resolving globals: FALSE [01:27:57.147] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:57.147] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:57.147] - globals: [2] 'weight', 'group' [01:27:57.148] - packages: [1] 'stats' [01:27:57.148] getGlobalsAndPackages() ... DONE [01:27:57.148] run() for 'Future' ... [01:27:57.149] - state: 'created' [01:27:57.149] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.166] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.166] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.167] - Field: 'node' [01:27:57.167] - Field: 'label' [01:27:57.167] - Field: 'local' [01:27:57.167] - Field: 'owner' [01:27:57.168] - Field: 'envir' [01:27:57.168] - Field: 'workers' [01:27:57.168] - Field: 'packages' [01:27:57.168] - Field: 'gc' [01:27:57.168] - Field: 'conditions' [01:27:57.169] - Field: 'persistent' [01:27:57.169] - Field: 'expr' [01:27:57.169] - Field: 'uuid' [01:27:57.169] - Field: 'seed' [01:27:57.169] - Field: 'version' [01:27:57.170] - Field: 'result' [01:27:57.170] - Field: 'asynchronous' [01:27:57.170] - Field: 'calls' [01:27:57.170] - Field: 'globals' [01:27:57.171] - Field: 'stdout' [01:27:57.171] - Field: 'earlySignal' [01:27:57.171] - Field: 'lazy' [01:27:57.171] - Field: 'state' [01:27:57.171] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.172] - Launch lazy future ... [01:27:57.172] Packages needed by the future expression (n = 1): 'stats' [01:27:57.173] Packages needed by future strategies (n = 0): [01:27:57.179] { [01:27:57.179] { [01:27:57.179] { [01:27:57.179] ...future.startTime <- base::Sys.time() [01:27:57.179] { [01:27:57.179] { [01:27:57.179] { [01:27:57.179] { [01:27:57.179] { [01:27:57.179] base::local({ [01:27:57.179] has_future <- base::requireNamespace("future", [01:27:57.179] quietly = TRUE) [01:27:57.179] if (has_future) { [01:27:57.179] ns <- base::getNamespace("future") [01:27:57.179] version <- ns[[".package"]][["version"]] [01:27:57.179] if (is.null(version)) [01:27:57.179] version <- utils::packageVersion("future") [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] version <- NULL [01:27:57.179] } [01:27:57.179] if (!has_future || version < "1.8.0") { [01:27:57.179] info <- base::c(r_version = base::gsub("R version ", [01:27:57.179] "", base::R.version$version.string), [01:27:57.179] platform = base::sprintf("%s (%s-bit)", [01:27:57.179] base::R.version$platform, 8 * [01:27:57.179] base::.Machine$sizeof.pointer), [01:27:57.179] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.179] "release", "version")], collapse = " "), [01:27:57.179] hostname = base::Sys.info()[["nodename"]]) [01:27:57.179] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.179] info) [01:27:57.179] info <- base::paste(info, collapse = "; ") [01:27:57.179] if (!has_future) { [01:27:57.179] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.179] info) [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.179] info, version) [01:27:57.179] } [01:27:57.179] base::stop(msg) [01:27:57.179] } [01:27:57.179] }) [01:27:57.179] } [01:27:57.179] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.179] base::options(mc.cores = 1L) [01:27:57.179] } [01:27:57.179] base::local({ [01:27:57.179] for (pkg in "stats") { [01:27:57.179] base::loadNamespace(pkg) [01:27:57.179] base::library(pkg, character.only = TRUE) [01:27:57.179] } [01:27:57.179] }) [01:27:57.179] } [01:27:57.179] options(future.plan = NULL) [01:27:57.179] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.179] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.179] } [01:27:57.179] ...future.workdir <- getwd() [01:27:57.179] } [01:27:57.179] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.179] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.179] } [01:27:57.179] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.179] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.179] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.179] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.179] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.179] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.179] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.179] base::names(...future.oldOptions)) [01:27:57.179] } [01:27:57.179] if (FALSE) { [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] if (TRUE) { [01:27:57.179] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.179] open = "w") [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.179] windows = "NUL", "/dev/null"), open = "w") [01:27:57.179] } [01:27:57.179] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.179] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.179] base::sink(type = "output", split = FALSE) [01:27:57.179] base::close(...future.stdout) [01:27:57.179] }, add = TRUE) [01:27:57.179] } [01:27:57.179] ...future.frame <- base::sys.nframe() [01:27:57.179] ...future.conditions <- base::list() [01:27:57.179] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.179] if (FALSE) { [01:27:57.179] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.179] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.179] } [01:27:57.179] ...future.result <- base::tryCatch({ [01:27:57.179] base::withCallingHandlers({ [01:27:57.179] ...future.value <- base::withVisible(base::local({ [01:27:57.179] ...future.makeSendCondition <- base::local({ [01:27:57.179] sendCondition <- NULL [01:27:57.179] function(frame = 1L) { [01:27:57.179] if (is.function(sendCondition)) [01:27:57.179] return(sendCondition) [01:27:57.179] ns <- getNamespace("parallel") [01:27:57.179] if (exists("sendData", mode = "function", [01:27:57.179] envir = ns)) { [01:27:57.179] parallel_sendData <- get("sendData", mode = "function", [01:27:57.179] envir = ns) [01:27:57.179] envir <- sys.frame(frame) [01:27:57.179] master <- NULL [01:27:57.179] while (!identical(envir, .GlobalEnv) && [01:27:57.179] !identical(envir, emptyenv())) { [01:27:57.179] if (exists("master", mode = "list", envir = envir, [01:27:57.179] inherits = FALSE)) { [01:27:57.179] master <- get("master", mode = "list", [01:27:57.179] envir = envir, inherits = FALSE) [01:27:57.179] if (inherits(master, c("SOCKnode", [01:27:57.179] "SOCK0node"))) { [01:27:57.179] sendCondition <<- function(cond) { [01:27:57.179] data <- list(type = "VALUE", value = cond, [01:27:57.179] success = TRUE) [01:27:57.179] parallel_sendData(master, data) [01:27:57.179] } [01:27:57.179] return(sendCondition) [01:27:57.179] } [01:27:57.179] } [01:27:57.179] frame <- frame + 1L [01:27:57.179] envir <- sys.frame(frame) [01:27:57.179] } [01:27:57.179] } [01:27:57.179] sendCondition <<- function(cond) NULL [01:27:57.179] } [01:27:57.179] }) [01:27:57.179] withCallingHandlers({ [01:27:57.179] { [01:27:57.179] lm(weight ~ group - 1) [01:27:57.179] } [01:27:57.179] }, immediateCondition = function(cond) { [01:27:57.179] sendCondition <- ...future.makeSendCondition() [01:27:57.179] sendCondition(cond) [01:27:57.179] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.179] { [01:27:57.179] inherits <- base::inherits [01:27:57.179] invokeRestart <- base::invokeRestart [01:27:57.179] is.null <- base::is.null [01:27:57.179] muffled <- FALSE [01:27:57.179] if (inherits(cond, "message")) { [01:27:57.179] muffled <- grepl(pattern, "muffleMessage") [01:27:57.179] if (muffled) [01:27:57.179] invokeRestart("muffleMessage") [01:27:57.179] } [01:27:57.179] else if (inherits(cond, "warning")) { [01:27:57.179] muffled <- grepl(pattern, "muffleWarning") [01:27:57.179] if (muffled) [01:27:57.179] invokeRestart("muffleWarning") [01:27:57.179] } [01:27:57.179] else if (inherits(cond, "condition")) { [01:27:57.179] if (!is.null(pattern)) { [01:27:57.179] computeRestarts <- base::computeRestarts [01:27:57.179] grepl <- base::grepl [01:27:57.179] restarts <- computeRestarts(cond) [01:27:57.179] for (restart in restarts) { [01:27:57.179] name <- restart$name [01:27:57.179] if (is.null(name)) [01:27:57.179] next [01:27:57.179] if (!grepl(pattern, name)) [01:27:57.179] next [01:27:57.179] invokeRestart(restart) [01:27:57.179] muffled <- TRUE [01:27:57.179] break [01:27:57.179] } [01:27:57.179] } [01:27:57.179] } [01:27:57.179] invisible(muffled) [01:27:57.179] } [01:27:57.179] muffleCondition(cond) [01:27:57.179] }) [01:27:57.179] })) [01:27:57.179] future::FutureResult(value = ...future.value$value, [01:27:57.179] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.179] ...future.rng), globalenv = if (FALSE) [01:27:57.179] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.179] ...future.globalenv.names)) [01:27:57.179] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.179] }, condition = base::local({ [01:27:57.179] c <- base::c [01:27:57.179] inherits <- base::inherits [01:27:57.179] invokeRestart <- base::invokeRestart [01:27:57.179] length <- base::length [01:27:57.179] list <- base::list [01:27:57.179] seq.int <- base::seq.int [01:27:57.179] signalCondition <- base::signalCondition [01:27:57.179] sys.calls <- base::sys.calls [01:27:57.179] `[[` <- base::`[[` [01:27:57.179] `+` <- base::`+` [01:27:57.179] `<<-` <- base::`<<-` [01:27:57.179] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.179] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.179] 3L)] [01:27:57.179] } [01:27:57.179] function(cond) { [01:27:57.179] is_error <- inherits(cond, "error") [01:27:57.179] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.179] NULL) [01:27:57.179] if (is_error) { [01:27:57.179] sessionInformation <- function() { [01:27:57.179] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.179] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.179] search = base::search(), system = base::Sys.info()) [01:27:57.179] } [01:27:57.179] ...future.conditions[[length(...future.conditions) + [01:27:57.179] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.179] cond$call), session = sessionInformation(), [01:27:57.179] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.179] signalCondition(cond) [01:27:57.179] } [01:27:57.179] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.179] "immediateCondition"))) { [01:27:57.179] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.179] ...future.conditions[[length(...future.conditions) + [01:27:57.179] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.179] if (TRUE && !signal) { [01:27:57.179] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.179] { [01:27:57.179] inherits <- base::inherits [01:27:57.179] invokeRestart <- base::invokeRestart [01:27:57.179] is.null <- base::is.null [01:27:57.179] muffled <- FALSE [01:27:57.179] if (inherits(cond, "message")) { [01:27:57.179] muffled <- grepl(pattern, "muffleMessage") [01:27:57.179] if (muffled) [01:27:57.179] invokeRestart("muffleMessage") [01:27:57.179] } [01:27:57.179] else if (inherits(cond, "warning")) { [01:27:57.179] muffled <- grepl(pattern, "muffleWarning") [01:27:57.179] if (muffled) [01:27:57.179] invokeRestart("muffleWarning") [01:27:57.179] } [01:27:57.179] else if (inherits(cond, "condition")) { [01:27:57.179] if (!is.null(pattern)) { [01:27:57.179] computeRestarts <- base::computeRestarts [01:27:57.179] grepl <- base::grepl [01:27:57.179] restarts <- computeRestarts(cond) [01:27:57.179] for (restart in restarts) { [01:27:57.179] name <- restart$name [01:27:57.179] if (is.null(name)) [01:27:57.179] next [01:27:57.179] if (!grepl(pattern, name)) [01:27:57.179] next [01:27:57.179] invokeRestart(restart) [01:27:57.179] muffled <- TRUE [01:27:57.179] break [01:27:57.179] } [01:27:57.179] } [01:27:57.179] } [01:27:57.179] invisible(muffled) [01:27:57.179] } [01:27:57.179] muffleCondition(cond, pattern = "^muffle") [01:27:57.179] } [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] if (TRUE) { [01:27:57.179] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.179] { [01:27:57.179] inherits <- base::inherits [01:27:57.179] invokeRestart <- base::invokeRestart [01:27:57.179] is.null <- base::is.null [01:27:57.179] muffled <- FALSE [01:27:57.179] if (inherits(cond, "message")) { [01:27:57.179] muffled <- grepl(pattern, "muffleMessage") [01:27:57.179] if (muffled) [01:27:57.179] invokeRestart("muffleMessage") [01:27:57.179] } [01:27:57.179] else if (inherits(cond, "warning")) { [01:27:57.179] muffled <- grepl(pattern, "muffleWarning") [01:27:57.179] if (muffled) [01:27:57.179] invokeRestart("muffleWarning") [01:27:57.179] } [01:27:57.179] else if (inherits(cond, "condition")) { [01:27:57.179] if (!is.null(pattern)) { [01:27:57.179] computeRestarts <- base::computeRestarts [01:27:57.179] grepl <- base::grepl [01:27:57.179] restarts <- computeRestarts(cond) [01:27:57.179] for (restart in restarts) { [01:27:57.179] name <- restart$name [01:27:57.179] if (is.null(name)) [01:27:57.179] next [01:27:57.179] if (!grepl(pattern, name)) [01:27:57.179] next [01:27:57.179] invokeRestart(restart) [01:27:57.179] muffled <- TRUE [01:27:57.179] break [01:27:57.179] } [01:27:57.179] } [01:27:57.179] } [01:27:57.179] invisible(muffled) [01:27:57.179] } [01:27:57.179] muffleCondition(cond, pattern = "^muffle") [01:27:57.179] } [01:27:57.179] } [01:27:57.179] } [01:27:57.179] })) [01:27:57.179] }, error = function(ex) { [01:27:57.179] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.179] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.179] ...future.rng), started = ...future.startTime, [01:27:57.179] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.179] version = "1.8"), class = "FutureResult") [01:27:57.179] }, finally = { [01:27:57.179] if (!identical(...future.workdir, getwd())) [01:27:57.179] setwd(...future.workdir) [01:27:57.179] { [01:27:57.179] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.179] ...future.oldOptions$nwarnings <- NULL [01:27:57.179] } [01:27:57.179] base::options(...future.oldOptions) [01:27:57.179] if (.Platform$OS.type == "windows") { [01:27:57.179] old_names <- names(...future.oldEnvVars) [01:27:57.179] envs <- base::Sys.getenv() [01:27:57.179] names <- names(envs) [01:27:57.179] common <- intersect(names, old_names) [01:27:57.179] added <- setdiff(names, old_names) [01:27:57.179] removed <- setdiff(old_names, names) [01:27:57.179] changed <- common[...future.oldEnvVars[common] != [01:27:57.179] envs[common]] [01:27:57.179] NAMES <- toupper(changed) [01:27:57.179] args <- list() [01:27:57.179] for (kk in seq_along(NAMES)) { [01:27:57.179] name <- changed[[kk]] [01:27:57.179] NAME <- NAMES[[kk]] [01:27:57.179] if (name != NAME && is.element(NAME, old_names)) [01:27:57.179] next [01:27:57.179] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.179] } [01:27:57.179] NAMES <- toupper(added) [01:27:57.179] for (kk in seq_along(NAMES)) { [01:27:57.179] name <- added[[kk]] [01:27:57.179] NAME <- NAMES[[kk]] [01:27:57.179] if (name != NAME && is.element(NAME, old_names)) [01:27:57.179] next [01:27:57.179] args[[name]] <- "" [01:27:57.179] } [01:27:57.179] NAMES <- toupper(removed) [01:27:57.179] for (kk in seq_along(NAMES)) { [01:27:57.179] name <- removed[[kk]] [01:27:57.179] NAME <- NAMES[[kk]] [01:27:57.179] if (name != NAME && is.element(NAME, old_names)) [01:27:57.179] next [01:27:57.179] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.179] } [01:27:57.179] if (length(args) > 0) [01:27:57.179] base::do.call(base::Sys.setenv, args = args) [01:27:57.179] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.179] } [01:27:57.179] { [01:27:57.179] if (base::length(...future.futureOptionsAdded) > [01:27:57.179] 0L) { [01:27:57.179] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.179] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.179] base::options(opts) [01:27:57.179] } [01:27:57.179] { [01:27:57.179] { [01:27:57.179] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.179] NULL [01:27:57.179] } [01:27:57.179] options(future.plan = NULL) [01:27:57.179] if (is.na(NA_character_)) [01:27:57.179] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.179] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.179] future::plan(list(function (..., workers = availableCores(), [01:27:57.179] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.179] envir = parent.frame()) [01:27:57.179] { [01:27:57.179] if (is.function(workers)) [01:27:57.179] workers <- workers() [01:27:57.179] workers <- structure(as.integer(workers), [01:27:57.179] class = class(workers)) [01:27:57.179] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.179] workers >= 1) [01:27:57.179] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.179] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.179] } [01:27:57.179] future <- MultisessionFuture(..., workers = workers, [01:27:57.179] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.179] envir = envir) [01:27:57.179] if (!future$lazy) [01:27:57.179] future <- run(future) [01:27:57.179] invisible(future) [01:27:57.179] }), .cleanup = FALSE, .init = FALSE) [01:27:57.179] } [01:27:57.179] } [01:27:57.179] } [01:27:57.179] }) [01:27:57.179] if (TRUE) { [01:27:57.179] base::sink(type = "output", split = FALSE) [01:27:57.179] if (TRUE) { [01:27:57.179] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.179] } [01:27:57.179] else { [01:27:57.179] ...future.result["stdout"] <- base::list(NULL) [01:27:57.179] } [01:27:57.179] base::close(...future.stdout) [01:27:57.179] ...future.stdout <- NULL [01:27:57.179] } [01:27:57.179] ...future.result$conditions <- ...future.conditions [01:27:57.179] ...future.result$finished <- base::Sys.time() [01:27:57.179] ...future.result [01:27:57.179] } [01:27:57.185] Exporting 2 global objects (896 bytes) to cluster node #1 ... [01:27:57.185] Exporting 'weight' (208 bytes) to cluster node #1 ... [01:27:57.185] Exporting 'weight' (208 bytes) to cluster node #1 ... DONE [01:27:57.186] Exporting 'group' (688 bytes) to cluster node #1 ... [01:27:57.186] Exporting 'group' (688 bytes) to cluster node #1 ... DONE [01:27:57.186] Exporting 2 global objects (896 bytes) to cluster node #1 ... DONE [01:27:57.187] MultisessionFuture started [01:27:57.188] - Launch lazy future ... done [01:27:57.188] run() for 'MultisessionFuture' ... done [01:27:57.188] result() for ClusterFuture ... [01:27:57.189] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.189] - Validating connection of MultisessionFuture [01:27:57.205] - received message: FutureResult [01:27:57.205] - Received FutureResult [01:27:57.205] - Erased future from FutureRegistry [01:27:57.205] result() for ClusterFuture ... [01:27:57.205] - result already collected: FutureResult [01:27:57.205] result() for ClusterFuture ... done [01:27:57.206] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.206] result() for ClusterFuture ... done [01:27:57.206] result() for ClusterFuture ... [01:27:57.206] - result already collected: FutureResult [01:27:57.206] result() for ClusterFuture ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:57.210] getGlobalsAndPackages() ... [01:27:57.210] Searching for globals... [01:27:57.212] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:57.212] Searching for globals ... DONE [01:27:57.213] Resolving globals: FALSE [01:27:57.213] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:57.214] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:57.214] - globals: [2] 'weight', 'group' [01:27:57.214] - packages: [1] 'stats' [01:27:57.215] getGlobalsAndPackages() ... DONE [01:27:57.215] run() for 'Future' ... [01:27:57.215] - state: 'created' [01:27:57.216] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.231] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.232] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.232] - Field: 'node' [01:27:57.232] - Field: 'label' [01:27:57.232] - Field: 'local' [01:27:57.232] - Field: 'owner' [01:27:57.233] - Field: 'envir' [01:27:57.233] - Field: 'workers' [01:27:57.233] - Field: 'packages' [01:27:57.233] - Field: 'gc' [01:27:57.233] - Field: 'conditions' [01:27:57.234] - Field: 'persistent' [01:27:57.234] - Field: 'expr' [01:27:57.234] - Field: 'uuid' [01:27:57.234] - Field: 'seed' [01:27:57.234] - Field: 'version' [01:27:57.235] - Field: 'result' [01:27:57.235] - Field: 'asynchronous' [01:27:57.235] - Field: 'calls' [01:27:57.235] - Field: 'globals' [01:27:57.235] - Field: 'stdout' [01:27:57.235] - Field: 'earlySignal' [01:27:57.236] - Field: 'lazy' [01:27:57.236] - Field: 'state' [01:27:57.236] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.236] - Launch lazy future ... [01:27:57.237] Packages needed by the future expression (n = 1): 'stats' [01:27:57.237] Packages needed by future strategies (n = 0): [01:27:57.238] { [01:27:57.238] { [01:27:57.238] { [01:27:57.238] ...future.startTime <- base::Sys.time() [01:27:57.238] { [01:27:57.238] { [01:27:57.238] { [01:27:57.238] { [01:27:57.238] { [01:27:57.238] base::local({ [01:27:57.238] has_future <- base::requireNamespace("future", [01:27:57.238] quietly = TRUE) [01:27:57.238] if (has_future) { [01:27:57.238] ns <- base::getNamespace("future") [01:27:57.238] version <- ns[[".package"]][["version"]] [01:27:57.238] if (is.null(version)) [01:27:57.238] version <- utils::packageVersion("future") [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] version <- NULL [01:27:57.238] } [01:27:57.238] if (!has_future || version < "1.8.0") { [01:27:57.238] info <- base::c(r_version = base::gsub("R version ", [01:27:57.238] "", base::R.version$version.string), [01:27:57.238] platform = base::sprintf("%s (%s-bit)", [01:27:57.238] base::R.version$platform, 8 * [01:27:57.238] base::.Machine$sizeof.pointer), [01:27:57.238] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.238] "release", "version")], collapse = " "), [01:27:57.238] hostname = base::Sys.info()[["nodename"]]) [01:27:57.238] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.238] info) [01:27:57.238] info <- base::paste(info, collapse = "; ") [01:27:57.238] if (!has_future) { [01:27:57.238] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.238] info) [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.238] info, version) [01:27:57.238] } [01:27:57.238] base::stop(msg) [01:27:57.238] } [01:27:57.238] }) [01:27:57.238] } [01:27:57.238] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.238] base::options(mc.cores = 1L) [01:27:57.238] } [01:27:57.238] base::local({ [01:27:57.238] for (pkg in "stats") { [01:27:57.238] base::loadNamespace(pkg) [01:27:57.238] base::library(pkg, character.only = TRUE) [01:27:57.238] } [01:27:57.238] }) [01:27:57.238] } [01:27:57.238] options(future.plan = NULL) [01:27:57.238] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.238] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.238] } [01:27:57.238] ...future.workdir <- getwd() [01:27:57.238] } [01:27:57.238] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.238] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.238] } [01:27:57.238] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.238] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.238] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.238] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.238] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.238] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.238] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.238] base::names(...future.oldOptions)) [01:27:57.238] } [01:27:57.238] if (FALSE) { [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] if (TRUE) { [01:27:57.238] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.238] open = "w") [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.238] windows = "NUL", "/dev/null"), open = "w") [01:27:57.238] } [01:27:57.238] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.238] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.238] base::sink(type = "output", split = FALSE) [01:27:57.238] base::close(...future.stdout) [01:27:57.238] }, add = TRUE) [01:27:57.238] } [01:27:57.238] ...future.frame <- base::sys.nframe() [01:27:57.238] ...future.conditions <- base::list() [01:27:57.238] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.238] if (FALSE) { [01:27:57.238] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.238] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.238] } [01:27:57.238] ...future.result <- base::tryCatch({ [01:27:57.238] base::withCallingHandlers({ [01:27:57.238] ...future.value <- base::withVisible(base::local({ [01:27:57.238] ...future.makeSendCondition <- base::local({ [01:27:57.238] sendCondition <- NULL [01:27:57.238] function(frame = 1L) { [01:27:57.238] if (is.function(sendCondition)) [01:27:57.238] return(sendCondition) [01:27:57.238] ns <- getNamespace("parallel") [01:27:57.238] if (exists("sendData", mode = "function", [01:27:57.238] envir = ns)) { [01:27:57.238] parallel_sendData <- get("sendData", mode = "function", [01:27:57.238] envir = ns) [01:27:57.238] envir <- sys.frame(frame) [01:27:57.238] master <- NULL [01:27:57.238] while (!identical(envir, .GlobalEnv) && [01:27:57.238] !identical(envir, emptyenv())) { [01:27:57.238] if (exists("master", mode = "list", envir = envir, [01:27:57.238] inherits = FALSE)) { [01:27:57.238] master <- get("master", mode = "list", [01:27:57.238] envir = envir, inherits = FALSE) [01:27:57.238] if (inherits(master, c("SOCKnode", [01:27:57.238] "SOCK0node"))) { [01:27:57.238] sendCondition <<- function(cond) { [01:27:57.238] data <- list(type = "VALUE", value = cond, [01:27:57.238] success = TRUE) [01:27:57.238] parallel_sendData(master, data) [01:27:57.238] } [01:27:57.238] return(sendCondition) [01:27:57.238] } [01:27:57.238] } [01:27:57.238] frame <- frame + 1L [01:27:57.238] envir <- sys.frame(frame) [01:27:57.238] } [01:27:57.238] } [01:27:57.238] sendCondition <<- function(cond) NULL [01:27:57.238] } [01:27:57.238] }) [01:27:57.238] withCallingHandlers({ [01:27:57.238] { [01:27:57.238] lm(weight ~ group - 1) [01:27:57.238] } [01:27:57.238] }, immediateCondition = function(cond) { [01:27:57.238] sendCondition <- ...future.makeSendCondition() [01:27:57.238] sendCondition(cond) [01:27:57.238] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.238] { [01:27:57.238] inherits <- base::inherits [01:27:57.238] invokeRestart <- base::invokeRestart [01:27:57.238] is.null <- base::is.null [01:27:57.238] muffled <- FALSE [01:27:57.238] if (inherits(cond, "message")) { [01:27:57.238] muffled <- grepl(pattern, "muffleMessage") [01:27:57.238] if (muffled) [01:27:57.238] invokeRestart("muffleMessage") [01:27:57.238] } [01:27:57.238] else if (inherits(cond, "warning")) { [01:27:57.238] muffled <- grepl(pattern, "muffleWarning") [01:27:57.238] if (muffled) [01:27:57.238] invokeRestart("muffleWarning") [01:27:57.238] } [01:27:57.238] else if (inherits(cond, "condition")) { [01:27:57.238] if (!is.null(pattern)) { [01:27:57.238] computeRestarts <- base::computeRestarts [01:27:57.238] grepl <- base::grepl [01:27:57.238] restarts <- computeRestarts(cond) [01:27:57.238] for (restart in restarts) { [01:27:57.238] name <- restart$name [01:27:57.238] if (is.null(name)) [01:27:57.238] next [01:27:57.238] if (!grepl(pattern, name)) [01:27:57.238] next [01:27:57.238] invokeRestart(restart) [01:27:57.238] muffled <- TRUE [01:27:57.238] break [01:27:57.238] } [01:27:57.238] } [01:27:57.238] } [01:27:57.238] invisible(muffled) [01:27:57.238] } [01:27:57.238] muffleCondition(cond) [01:27:57.238] }) [01:27:57.238] })) [01:27:57.238] future::FutureResult(value = ...future.value$value, [01:27:57.238] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.238] ...future.rng), globalenv = if (FALSE) [01:27:57.238] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.238] ...future.globalenv.names)) [01:27:57.238] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.238] }, condition = base::local({ [01:27:57.238] c <- base::c [01:27:57.238] inherits <- base::inherits [01:27:57.238] invokeRestart <- base::invokeRestart [01:27:57.238] length <- base::length [01:27:57.238] list <- base::list [01:27:57.238] seq.int <- base::seq.int [01:27:57.238] signalCondition <- base::signalCondition [01:27:57.238] sys.calls <- base::sys.calls [01:27:57.238] `[[` <- base::`[[` [01:27:57.238] `+` <- base::`+` [01:27:57.238] `<<-` <- base::`<<-` [01:27:57.238] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.238] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.238] 3L)] [01:27:57.238] } [01:27:57.238] function(cond) { [01:27:57.238] is_error <- inherits(cond, "error") [01:27:57.238] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.238] NULL) [01:27:57.238] if (is_error) { [01:27:57.238] sessionInformation <- function() { [01:27:57.238] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.238] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.238] search = base::search(), system = base::Sys.info()) [01:27:57.238] } [01:27:57.238] ...future.conditions[[length(...future.conditions) + [01:27:57.238] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.238] cond$call), session = sessionInformation(), [01:27:57.238] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.238] signalCondition(cond) [01:27:57.238] } [01:27:57.238] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.238] "immediateCondition"))) { [01:27:57.238] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.238] ...future.conditions[[length(...future.conditions) + [01:27:57.238] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.238] if (TRUE && !signal) { [01:27:57.238] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.238] { [01:27:57.238] inherits <- base::inherits [01:27:57.238] invokeRestart <- base::invokeRestart [01:27:57.238] is.null <- base::is.null [01:27:57.238] muffled <- FALSE [01:27:57.238] if (inherits(cond, "message")) { [01:27:57.238] muffled <- grepl(pattern, "muffleMessage") [01:27:57.238] if (muffled) [01:27:57.238] invokeRestart("muffleMessage") [01:27:57.238] } [01:27:57.238] else if (inherits(cond, "warning")) { [01:27:57.238] muffled <- grepl(pattern, "muffleWarning") [01:27:57.238] if (muffled) [01:27:57.238] invokeRestart("muffleWarning") [01:27:57.238] } [01:27:57.238] else if (inherits(cond, "condition")) { [01:27:57.238] if (!is.null(pattern)) { [01:27:57.238] computeRestarts <- base::computeRestarts [01:27:57.238] grepl <- base::grepl [01:27:57.238] restarts <- computeRestarts(cond) [01:27:57.238] for (restart in restarts) { [01:27:57.238] name <- restart$name [01:27:57.238] if (is.null(name)) [01:27:57.238] next [01:27:57.238] if (!grepl(pattern, name)) [01:27:57.238] next [01:27:57.238] invokeRestart(restart) [01:27:57.238] muffled <- TRUE [01:27:57.238] break [01:27:57.238] } [01:27:57.238] } [01:27:57.238] } [01:27:57.238] invisible(muffled) [01:27:57.238] } [01:27:57.238] muffleCondition(cond, pattern = "^muffle") [01:27:57.238] } [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] if (TRUE) { [01:27:57.238] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.238] { [01:27:57.238] inherits <- base::inherits [01:27:57.238] invokeRestart <- base::invokeRestart [01:27:57.238] is.null <- base::is.null [01:27:57.238] muffled <- FALSE [01:27:57.238] if (inherits(cond, "message")) { [01:27:57.238] muffled <- grepl(pattern, "muffleMessage") [01:27:57.238] if (muffled) [01:27:57.238] invokeRestart("muffleMessage") [01:27:57.238] } [01:27:57.238] else if (inherits(cond, "warning")) { [01:27:57.238] muffled <- grepl(pattern, "muffleWarning") [01:27:57.238] if (muffled) [01:27:57.238] invokeRestart("muffleWarning") [01:27:57.238] } [01:27:57.238] else if (inherits(cond, "condition")) { [01:27:57.238] if (!is.null(pattern)) { [01:27:57.238] computeRestarts <- base::computeRestarts [01:27:57.238] grepl <- base::grepl [01:27:57.238] restarts <- computeRestarts(cond) [01:27:57.238] for (restart in restarts) { [01:27:57.238] name <- restart$name [01:27:57.238] if (is.null(name)) [01:27:57.238] next [01:27:57.238] if (!grepl(pattern, name)) [01:27:57.238] next [01:27:57.238] invokeRestart(restart) [01:27:57.238] muffled <- TRUE [01:27:57.238] break [01:27:57.238] } [01:27:57.238] } [01:27:57.238] } [01:27:57.238] invisible(muffled) [01:27:57.238] } [01:27:57.238] muffleCondition(cond, pattern = "^muffle") [01:27:57.238] } [01:27:57.238] } [01:27:57.238] } [01:27:57.238] })) [01:27:57.238] }, error = function(ex) { [01:27:57.238] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.238] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.238] ...future.rng), started = ...future.startTime, [01:27:57.238] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.238] version = "1.8"), class = "FutureResult") [01:27:57.238] }, finally = { [01:27:57.238] if (!identical(...future.workdir, getwd())) [01:27:57.238] setwd(...future.workdir) [01:27:57.238] { [01:27:57.238] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.238] ...future.oldOptions$nwarnings <- NULL [01:27:57.238] } [01:27:57.238] base::options(...future.oldOptions) [01:27:57.238] if (.Platform$OS.type == "windows") { [01:27:57.238] old_names <- names(...future.oldEnvVars) [01:27:57.238] envs <- base::Sys.getenv() [01:27:57.238] names <- names(envs) [01:27:57.238] common <- intersect(names, old_names) [01:27:57.238] added <- setdiff(names, old_names) [01:27:57.238] removed <- setdiff(old_names, names) [01:27:57.238] changed <- common[...future.oldEnvVars[common] != [01:27:57.238] envs[common]] [01:27:57.238] NAMES <- toupper(changed) [01:27:57.238] args <- list() [01:27:57.238] for (kk in seq_along(NAMES)) { [01:27:57.238] name <- changed[[kk]] [01:27:57.238] NAME <- NAMES[[kk]] [01:27:57.238] if (name != NAME && is.element(NAME, old_names)) [01:27:57.238] next [01:27:57.238] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.238] } [01:27:57.238] NAMES <- toupper(added) [01:27:57.238] for (kk in seq_along(NAMES)) { [01:27:57.238] name <- added[[kk]] [01:27:57.238] NAME <- NAMES[[kk]] [01:27:57.238] if (name != NAME && is.element(NAME, old_names)) [01:27:57.238] next [01:27:57.238] args[[name]] <- "" [01:27:57.238] } [01:27:57.238] NAMES <- toupper(removed) [01:27:57.238] for (kk in seq_along(NAMES)) { [01:27:57.238] name <- removed[[kk]] [01:27:57.238] NAME <- NAMES[[kk]] [01:27:57.238] if (name != NAME && is.element(NAME, old_names)) [01:27:57.238] next [01:27:57.238] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.238] } [01:27:57.238] if (length(args) > 0) [01:27:57.238] base::do.call(base::Sys.setenv, args = args) [01:27:57.238] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.238] } [01:27:57.238] { [01:27:57.238] if (base::length(...future.futureOptionsAdded) > [01:27:57.238] 0L) { [01:27:57.238] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.238] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.238] base::options(opts) [01:27:57.238] } [01:27:57.238] { [01:27:57.238] { [01:27:57.238] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.238] NULL [01:27:57.238] } [01:27:57.238] options(future.plan = NULL) [01:27:57.238] if (is.na(NA_character_)) [01:27:57.238] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.238] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.238] future::plan(list(function (..., workers = availableCores(), [01:27:57.238] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.238] envir = parent.frame()) [01:27:57.238] { [01:27:57.238] if (is.function(workers)) [01:27:57.238] workers <- workers() [01:27:57.238] workers <- structure(as.integer(workers), [01:27:57.238] class = class(workers)) [01:27:57.238] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.238] workers >= 1) [01:27:57.238] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.238] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.238] } [01:27:57.238] future <- MultisessionFuture(..., workers = workers, [01:27:57.238] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.238] envir = envir) [01:27:57.238] if (!future$lazy) [01:27:57.238] future <- run(future) [01:27:57.238] invisible(future) [01:27:57.238] }), .cleanup = FALSE, .init = FALSE) [01:27:57.238] } [01:27:57.238] } [01:27:57.238] } [01:27:57.238] }) [01:27:57.238] if (TRUE) { [01:27:57.238] base::sink(type = "output", split = FALSE) [01:27:57.238] if (TRUE) { [01:27:57.238] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.238] } [01:27:57.238] else { [01:27:57.238] ...future.result["stdout"] <- base::list(NULL) [01:27:57.238] } [01:27:57.238] base::close(...future.stdout) [01:27:57.238] ...future.stdout <- NULL [01:27:57.238] } [01:27:57.238] ...future.result$conditions <- ...future.conditions [01:27:57.238] ...future.result$finished <- base::Sys.time() [01:27:57.238] ...future.result [01:27:57.238] } [01:27:57.245] Exporting 2 global objects (896 bytes) to cluster node #1 ... [01:27:57.245] Exporting 'weight' (208 bytes) to cluster node #1 ... [01:27:57.245] Exporting 'weight' (208 bytes) to cluster node #1 ... DONE [01:27:57.246] Exporting 'group' (688 bytes) to cluster node #1 ... [01:27:57.246] Exporting 'group' (688 bytes) to cluster node #1 ... DONE [01:27:57.246] Exporting 2 global objects (896 bytes) to cluster node #1 ... DONE [01:27:57.247] MultisessionFuture started [01:27:57.247] - Launch lazy future ... done [01:27:57.247] run() for 'MultisessionFuture' ... done [01:27:57.248] result() for ClusterFuture ... [01:27:57.248] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.248] - Validating connection of MultisessionFuture [01:27:57.265] - received message: FutureResult [01:27:57.265] - Received FutureResult [01:27:57.266] - Erased future from FutureRegistry [01:27:57.266] result() for ClusterFuture ... [01:27:57.266] - result already collected: FutureResult [01:27:57.266] result() for ClusterFuture ... done [01:27:57.266] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.267] result() for ClusterFuture ... done [01:27:57.267] result() for ClusterFuture ... [01:27:57.267] - result already collected: FutureResult [01:27:57.267] result() for ClusterFuture ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 [01:27:57.270] getGlobalsAndPackages() ... [01:27:57.270] Searching for globals... [01:27:57.273] - globals found: [6] '{', 'lm', 'weight', '-', 'group', '~' [01:27:57.273] Searching for globals ... DONE [01:27:57.273] Resolving globals: FALSE [01:27:57.274] The total size of the 2 globals is 896 bytes (896 bytes) [01:27:57.274] The total size of the 2 globals exported for future expression ('{; lm(weight ~ group - 1); }') is 896 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'group' (688 bytes of class 'numeric') and 'weight' (208 bytes of class 'numeric') [01:27:57.274] - globals: [2] 'weight', 'group' [01:27:57.275] - packages: [1] 'stats' [01:27:57.275] getGlobalsAndPackages() ... DONE [01:27:57.275] run() for 'Future' ... [01:27:57.275] - state: 'created' [01:27:57.276] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.290] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.290] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.291] - Field: 'node' [01:27:57.291] - Field: 'label' [01:27:57.291] - Field: 'local' [01:27:57.291] - Field: 'owner' [01:27:57.291] - Field: 'envir' [01:27:57.292] - Field: 'workers' [01:27:57.292] - Field: 'packages' [01:27:57.292] - Field: 'gc' [01:27:57.292] - Field: 'conditions' [01:27:57.292] - Field: 'persistent' [01:27:57.293] - Field: 'expr' [01:27:57.293] - Field: 'uuid' [01:27:57.293] - Field: 'seed' [01:27:57.293] - Field: 'version' [01:27:57.294] - Field: 'result' [01:27:57.294] - Field: 'asynchronous' [01:27:57.294] - Field: 'calls' [01:27:57.294] - Field: 'globals' [01:27:57.294] - Field: 'stdout' [01:27:57.294] - Field: 'earlySignal' [01:27:57.295] - Field: 'lazy' [01:27:57.295] - Field: 'state' [01:27:57.295] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.295] - Launch lazy future ... [01:27:57.296] Packages needed by the future expression (n = 1): 'stats' [01:27:57.296] Packages needed by future strategies (n = 0): [01:27:57.297] { [01:27:57.297] { [01:27:57.297] { [01:27:57.297] ...future.startTime <- base::Sys.time() [01:27:57.297] { [01:27:57.297] { [01:27:57.297] { [01:27:57.297] { [01:27:57.297] { [01:27:57.297] base::local({ [01:27:57.297] has_future <- base::requireNamespace("future", [01:27:57.297] quietly = TRUE) [01:27:57.297] if (has_future) { [01:27:57.297] ns <- base::getNamespace("future") [01:27:57.297] version <- ns[[".package"]][["version"]] [01:27:57.297] if (is.null(version)) [01:27:57.297] version <- utils::packageVersion("future") [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] version <- NULL [01:27:57.297] } [01:27:57.297] if (!has_future || version < "1.8.0") { [01:27:57.297] info <- base::c(r_version = base::gsub("R version ", [01:27:57.297] "", base::R.version$version.string), [01:27:57.297] platform = base::sprintf("%s (%s-bit)", [01:27:57.297] base::R.version$platform, 8 * [01:27:57.297] base::.Machine$sizeof.pointer), [01:27:57.297] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.297] "release", "version")], collapse = " "), [01:27:57.297] hostname = base::Sys.info()[["nodename"]]) [01:27:57.297] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.297] info) [01:27:57.297] info <- base::paste(info, collapse = "; ") [01:27:57.297] if (!has_future) { [01:27:57.297] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.297] info) [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.297] info, version) [01:27:57.297] } [01:27:57.297] base::stop(msg) [01:27:57.297] } [01:27:57.297] }) [01:27:57.297] } [01:27:57.297] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.297] base::options(mc.cores = 1L) [01:27:57.297] } [01:27:57.297] base::local({ [01:27:57.297] for (pkg in "stats") { [01:27:57.297] base::loadNamespace(pkg) [01:27:57.297] base::library(pkg, character.only = TRUE) [01:27:57.297] } [01:27:57.297] }) [01:27:57.297] } [01:27:57.297] options(future.plan = NULL) [01:27:57.297] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.297] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.297] } [01:27:57.297] ...future.workdir <- getwd() [01:27:57.297] } [01:27:57.297] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.297] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.297] } [01:27:57.297] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.297] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.297] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.297] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.297] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.297] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.297] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.297] base::names(...future.oldOptions)) [01:27:57.297] } [01:27:57.297] if (FALSE) { [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] if (TRUE) { [01:27:57.297] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.297] open = "w") [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.297] windows = "NUL", "/dev/null"), open = "w") [01:27:57.297] } [01:27:57.297] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.297] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.297] base::sink(type = "output", split = FALSE) [01:27:57.297] base::close(...future.stdout) [01:27:57.297] }, add = TRUE) [01:27:57.297] } [01:27:57.297] ...future.frame <- base::sys.nframe() [01:27:57.297] ...future.conditions <- base::list() [01:27:57.297] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.297] if (FALSE) { [01:27:57.297] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.297] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.297] } [01:27:57.297] ...future.result <- base::tryCatch({ [01:27:57.297] base::withCallingHandlers({ [01:27:57.297] ...future.value <- base::withVisible(base::local({ [01:27:57.297] ...future.makeSendCondition <- base::local({ [01:27:57.297] sendCondition <- NULL [01:27:57.297] function(frame = 1L) { [01:27:57.297] if (is.function(sendCondition)) [01:27:57.297] return(sendCondition) [01:27:57.297] ns <- getNamespace("parallel") [01:27:57.297] if (exists("sendData", mode = "function", [01:27:57.297] envir = ns)) { [01:27:57.297] parallel_sendData <- get("sendData", mode = "function", [01:27:57.297] envir = ns) [01:27:57.297] envir <- sys.frame(frame) [01:27:57.297] master <- NULL [01:27:57.297] while (!identical(envir, .GlobalEnv) && [01:27:57.297] !identical(envir, emptyenv())) { [01:27:57.297] if (exists("master", mode = "list", envir = envir, [01:27:57.297] inherits = FALSE)) { [01:27:57.297] master <- get("master", mode = "list", [01:27:57.297] envir = envir, inherits = FALSE) [01:27:57.297] if (inherits(master, c("SOCKnode", [01:27:57.297] "SOCK0node"))) { [01:27:57.297] sendCondition <<- function(cond) { [01:27:57.297] data <- list(type = "VALUE", value = cond, [01:27:57.297] success = TRUE) [01:27:57.297] parallel_sendData(master, data) [01:27:57.297] } [01:27:57.297] return(sendCondition) [01:27:57.297] } [01:27:57.297] } [01:27:57.297] frame <- frame + 1L [01:27:57.297] envir <- sys.frame(frame) [01:27:57.297] } [01:27:57.297] } [01:27:57.297] sendCondition <<- function(cond) NULL [01:27:57.297] } [01:27:57.297] }) [01:27:57.297] withCallingHandlers({ [01:27:57.297] { [01:27:57.297] lm(weight ~ group - 1) [01:27:57.297] } [01:27:57.297] }, immediateCondition = function(cond) { [01:27:57.297] sendCondition <- ...future.makeSendCondition() [01:27:57.297] sendCondition(cond) [01:27:57.297] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.297] { [01:27:57.297] inherits <- base::inherits [01:27:57.297] invokeRestart <- base::invokeRestart [01:27:57.297] is.null <- base::is.null [01:27:57.297] muffled <- FALSE [01:27:57.297] if (inherits(cond, "message")) { [01:27:57.297] muffled <- grepl(pattern, "muffleMessage") [01:27:57.297] if (muffled) [01:27:57.297] invokeRestart("muffleMessage") [01:27:57.297] } [01:27:57.297] else if (inherits(cond, "warning")) { [01:27:57.297] muffled <- grepl(pattern, "muffleWarning") [01:27:57.297] if (muffled) [01:27:57.297] invokeRestart("muffleWarning") [01:27:57.297] } [01:27:57.297] else if (inherits(cond, "condition")) { [01:27:57.297] if (!is.null(pattern)) { [01:27:57.297] computeRestarts <- base::computeRestarts [01:27:57.297] grepl <- base::grepl [01:27:57.297] restarts <- computeRestarts(cond) [01:27:57.297] for (restart in restarts) { [01:27:57.297] name <- restart$name [01:27:57.297] if (is.null(name)) [01:27:57.297] next [01:27:57.297] if (!grepl(pattern, name)) [01:27:57.297] next [01:27:57.297] invokeRestart(restart) [01:27:57.297] muffled <- TRUE [01:27:57.297] break [01:27:57.297] } [01:27:57.297] } [01:27:57.297] } [01:27:57.297] invisible(muffled) [01:27:57.297] } [01:27:57.297] muffleCondition(cond) [01:27:57.297] }) [01:27:57.297] })) [01:27:57.297] future::FutureResult(value = ...future.value$value, [01:27:57.297] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.297] ...future.rng), globalenv = if (FALSE) [01:27:57.297] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.297] ...future.globalenv.names)) [01:27:57.297] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.297] }, condition = base::local({ [01:27:57.297] c <- base::c [01:27:57.297] inherits <- base::inherits [01:27:57.297] invokeRestart <- base::invokeRestart [01:27:57.297] length <- base::length [01:27:57.297] list <- base::list [01:27:57.297] seq.int <- base::seq.int [01:27:57.297] signalCondition <- base::signalCondition [01:27:57.297] sys.calls <- base::sys.calls [01:27:57.297] `[[` <- base::`[[` [01:27:57.297] `+` <- base::`+` [01:27:57.297] `<<-` <- base::`<<-` [01:27:57.297] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.297] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.297] 3L)] [01:27:57.297] } [01:27:57.297] function(cond) { [01:27:57.297] is_error <- inherits(cond, "error") [01:27:57.297] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.297] NULL) [01:27:57.297] if (is_error) { [01:27:57.297] sessionInformation <- function() { [01:27:57.297] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.297] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.297] search = base::search(), system = base::Sys.info()) [01:27:57.297] } [01:27:57.297] ...future.conditions[[length(...future.conditions) + [01:27:57.297] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.297] cond$call), session = sessionInformation(), [01:27:57.297] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.297] signalCondition(cond) [01:27:57.297] } [01:27:57.297] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.297] "immediateCondition"))) { [01:27:57.297] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.297] ...future.conditions[[length(...future.conditions) + [01:27:57.297] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.297] if (TRUE && !signal) { [01:27:57.297] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.297] { [01:27:57.297] inherits <- base::inherits [01:27:57.297] invokeRestart <- base::invokeRestart [01:27:57.297] is.null <- base::is.null [01:27:57.297] muffled <- FALSE [01:27:57.297] if (inherits(cond, "message")) { [01:27:57.297] muffled <- grepl(pattern, "muffleMessage") [01:27:57.297] if (muffled) [01:27:57.297] invokeRestart("muffleMessage") [01:27:57.297] } [01:27:57.297] else if (inherits(cond, "warning")) { [01:27:57.297] muffled <- grepl(pattern, "muffleWarning") [01:27:57.297] if (muffled) [01:27:57.297] invokeRestart("muffleWarning") [01:27:57.297] } [01:27:57.297] else if (inherits(cond, "condition")) { [01:27:57.297] if (!is.null(pattern)) { [01:27:57.297] computeRestarts <- base::computeRestarts [01:27:57.297] grepl <- base::grepl [01:27:57.297] restarts <- computeRestarts(cond) [01:27:57.297] for (restart in restarts) { [01:27:57.297] name <- restart$name [01:27:57.297] if (is.null(name)) [01:27:57.297] next [01:27:57.297] if (!grepl(pattern, name)) [01:27:57.297] next [01:27:57.297] invokeRestart(restart) [01:27:57.297] muffled <- TRUE [01:27:57.297] break [01:27:57.297] } [01:27:57.297] } [01:27:57.297] } [01:27:57.297] invisible(muffled) [01:27:57.297] } [01:27:57.297] muffleCondition(cond, pattern = "^muffle") [01:27:57.297] } [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] if (TRUE) { [01:27:57.297] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.297] { [01:27:57.297] inherits <- base::inherits [01:27:57.297] invokeRestart <- base::invokeRestart [01:27:57.297] is.null <- base::is.null [01:27:57.297] muffled <- FALSE [01:27:57.297] if (inherits(cond, "message")) { [01:27:57.297] muffled <- grepl(pattern, "muffleMessage") [01:27:57.297] if (muffled) [01:27:57.297] invokeRestart("muffleMessage") [01:27:57.297] } [01:27:57.297] else if (inherits(cond, "warning")) { [01:27:57.297] muffled <- grepl(pattern, "muffleWarning") [01:27:57.297] if (muffled) [01:27:57.297] invokeRestart("muffleWarning") [01:27:57.297] } [01:27:57.297] else if (inherits(cond, "condition")) { [01:27:57.297] if (!is.null(pattern)) { [01:27:57.297] computeRestarts <- base::computeRestarts [01:27:57.297] grepl <- base::grepl [01:27:57.297] restarts <- computeRestarts(cond) [01:27:57.297] for (restart in restarts) { [01:27:57.297] name <- restart$name [01:27:57.297] if (is.null(name)) [01:27:57.297] next [01:27:57.297] if (!grepl(pattern, name)) [01:27:57.297] next [01:27:57.297] invokeRestart(restart) [01:27:57.297] muffled <- TRUE [01:27:57.297] break [01:27:57.297] } [01:27:57.297] } [01:27:57.297] } [01:27:57.297] invisible(muffled) [01:27:57.297] } [01:27:57.297] muffleCondition(cond, pattern = "^muffle") [01:27:57.297] } [01:27:57.297] } [01:27:57.297] } [01:27:57.297] })) [01:27:57.297] }, error = function(ex) { [01:27:57.297] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.297] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.297] ...future.rng), started = ...future.startTime, [01:27:57.297] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.297] version = "1.8"), class = "FutureResult") [01:27:57.297] }, finally = { [01:27:57.297] if (!identical(...future.workdir, getwd())) [01:27:57.297] setwd(...future.workdir) [01:27:57.297] { [01:27:57.297] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.297] ...future.oldOptions$nwarnings <- NULL [01:27:57.297] } [01:27:57.297] base::options(...future.oldOptions) [01:27:57.297] if (.Platform$OS.type == "windows") { [01:27:57.297] old_names <- names(...future.oldEnvVars) [01:27:57.297] envs <- base::Sys.getenv() [01:27:57.297] names <- names(envs) [01:27:57.297] common <- intersect(names, old_names) [01:27:57.297] added <- setdiff(names, old_names) [01:27:57.297] removed <- setdiff(old_names, names) [01:27:57.297] changed <- common[...future.oldEnvVars[common] != [01:27:57.297] envs[common]] [01:27:57.297] NAMES <- toupper(changed) [01:27:57.297] args <- list() [01:27:57.297] for (kk in seq_along(NAMES)) { [01:27:57.297] name <- changed[[kk]] [01:27:57.297] NAME <- NAMES[[kk]] [01:27:57.297] if (name != NAME && is.element(NAME, old_names)) [01:27:57.297] next [01:27:57.297] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.297] } [01:27:57.297] NAMES <- toupper(added) [01:27:57.297] for (kk in seq_along(NAMES)) { [01:27:57.297] name <- added[[kk]] [01:27:57.297] NAME <- NAMES[[kk]] [01:27:57.297] if (name != NAME && is.element(NAME, old_names)) [01:27:57.297] next [01:27:57.297] args[[name]] <- "" [01:27:57.297] } [01:27:57.297] NAMES <- toupper(removed) [01:27:57.297] for (kk in seq_along(NAMES)) { [01:27:57.297] name <- removed[[kk]] [01:27:57.297] NAME <- NAMES[[kk]] [01:27:57.297] if (name != NAME && is.element(NAME, old_names)) [01:27:57.297] next [01:27:57.297] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.297] } [01:27:57.297] if (length(args) > 0) [01:27:57.297] base::do.call(base::Sys.setenv, args = args) [01:27:57.297] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.297] } [01:27:57.297] { [01:27:57.297] if (base::length(...future.futureOptionsAdded) > [01:27:57.297] 0L) { [01:27:57.297] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.297] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.297] base::options(opts) [01:27:57.297] } [01:27:57.297] { [01:27:57.297] { [01:27:57.297] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.297] NULL [01:27:57.297] } [01:27:57.297] options(future.plan = NULL) [01:27:57.297] if (is.na(NA_character_)) [01:27:57.297] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.297] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.297] future::plan(list(function (..., workers = availableCores(), [01:27:57.297] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.297] envir = parent.frame()) [01:27:57.297] { [01:27:57.297] if (is.function(workers)) [01:27:57.297] workers <- workers() [01:27:57.297] workers <- structure(as.integer(workers), [01:27:57.297] class = class(workers)) [01:27:57.297] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.297] workers >= 1) [01:27:57.297] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.297] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.297] } [01:27:57.297] future <- MultisessionFuture(..., workers = workers, [01:27:57.297] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.297] envir = envir) [01:27:57.297] if (!future$lazy) [01:27:57.297] future <- run(future) [01:27:57.297] invisible(future) [01:27:57.297] }), .cleanup = FALSE, .init = FALSE) [01:27:57.297] } [01:27:57.297] } [01:27:57.297] } [01:27:57.297] }) [01:27:57.297] if (TRUE) { [01:27:57.297] base::sink(type = "output", split = FALSE) [01:27:57.297] if (TRUE) { [01:27:57.297] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.297] } [01:27:57.297] else { [01:27:57.297] ...future.result["stdout"] <- base::list(NULL) [01:27:57.297] } [01:27:57.297] base::close(...future.stdout) [01:27:57.297] ...future.stdout <- NULL [01:27:57.297] } [01:27:57.297] ...future.result$conditions <- ...future.conditions [01:27:57.297] ...future.result$finished <- base::Sys.time() [01:27:57.297] ...future.result [01:27:57.297] } [01:27:57.302] Exporting 2 global objects (896 bytes) to cluster node #1 ... [01:27:57.303] Exporting 'weight' (208 bytes) to cluster node #1 ... [01:27:57.303] Exporting 'weight' (208 bytes) to cluster node #1 ... DONE [01:27:57.303] Exporting 'group' (688 bytes) to cluster node #1 ... [01:27:57.304] Exporting 'group' (688 bytes) to cluster node #1 ... DONE [01:27:57.304] Exporting 2 global objects (896 bytes) to cluster node #1 ... DONE [01:27:57.305] MultisessionFuture started [01:27:57.305] - Launch lazy future ... done [01:27:57.305] run() for 'MultisessionFuture' ... done [01:27:57.305] result() for ClusterFuture ... [01:27:57.306] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.306] - Validating connection of MultisessionFuture [01:27:57.322] - received message: FutureResult [01:27:57.323] - Received FutureResult [01:27:57.323] - Erased future from FutureRegistry [01:27:57.323] result() for ClusterFuture ... [01:27:57.323] - result already collected: FutureResult [01:27:57.323] result() for ClusterFuture ... done [01:27:57.324] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.324] result() for ClusterFuture ... done [01:27:57.324] result() for ClusterFuture ... [01:27:57.324] - result already collected: FutureResult [01:27:57.324] result() for ClusterFuture ... done Call: lm(formula = weight ~ group - 1) Coefficients: groupCtl groupTrt 5.032 4.661 - Globals - one-side formulas, e.g. xtabs(~ x) ... [01:27:57.326] getGlobalsAndPackages() ... [01:27:57.327] Searching for globals... [01:27:57.328] - globals found: [4] '{', 'xtabs', 'x', '~' [01:27:57.328] Searching for globals ... DONE [01:27:57.328] Resolving globals: FALSE [01:27:57.329] The total size of the 1 globals is 96 bytes (96 bytes) [01:27:57.329] The total size of the 1 globals exported for future expression ('{; xtabs(~x); }') is 96 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'x' (96 bytes of class 'numeric') [01:27:57.330] - globals: [1] 'x' [01:27:57.330] - packages: [1] 'stats' [01:27:57.330] getGlobalsAndPackages() ... DONE [01:27:57.331] run() for 'Future' ... [01:27:57.331] - state: 'created' [01:27:57.331] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.345] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.345] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.346] - Field: 'node' [01:27:57.346] - Field: 'label' [01:27:57.346] - Field: 'local' [01:27:57.346] - Field: 'owner' [01:27:57.347] - Field: 'envir' [01:27:57.347] - Field: 'workers' [01:27:57.347] - Field: 'packages' [01:27:57.347] - Field: 'gc' [01:27:57.347] - Field: 'conditions' [01:27:57.348] - Field: 'persistent' [01:27:57.348] - Field: 'expr' [01:27:57.348] - Field: 'uuid' [01:27:57.348] - Field: 'seed' [01:27:57.348] - Field: 'version' [01:27:57.349] - Field: 'result' [01:27:57.349] - Field: 'asynchronous' [01:27:57.349] - Field: 'calls' [01:27:57.349] - Field: 'globals' [01:27:57.349] - Field: 'stdout' [01:27:57.349] - Field: 'earlySignal' [01:27:57.350] - Field: 'lazy' [01:27:57.350] - Field: 'state' [01:27:57.350] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.350] - Launch lazy future ... [01:27:57.350] Packages needed by the future expression (n = 1): 'stats' [01:27:57.351] Packages needed by future strategies (n = 0): [01:27:57.351] { [01:27:57.351] { [01:27:57.351] { [01:27:57.351] ...future.startTime <- base::Sys.time() [01:27:57.351] { [01:27:57.351] { [01:27:57.351] { [01:27:57.351] { [01:27:57.351] { [01:27:57.351] base::local({ [01:27:57.351] has_future <- base::requireNamespace("future", [01:27:57.351] quietly = TRUE) [01:27:57.351] if (has_future) { [01:27:57.351] ns <- base::getNamespace("future") [01:27:57.351] version <- ns[[".package"]][["version"]] [01:27:57.351] if (is.null(version)) [01:27:57.351] version <- utils::packageVersion("future") [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] version <- NULL [01:27:57.351] } [01:27:57.351] if (!has_future || version < "1.8.0") { [01:27:57.351] info <- base::c(r_version = base::gsub("R version ", [01:27:57.351] "", base::R.version$version.string), [01:27:57.351] platform = base::sprintf("%s (%s-bit)", [01:27:57.351] base::R.version$platform, 8 * [01:27:57.351] base::.Machine$sizeof.pointer), [01:27:57.351] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.351] "release", "version")], collapse = " "), [01:27:57.351] hostname = base::Sys.info()[["nodename"]]) [01:27:57.351] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.351] info) [01:27:57.351] info <- base::paste(info, collapse = "; ") [01:27:57.351] if (!has_future) { [01:27:57.351] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.351] info) [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.351] info, version) [01:27:57.351] } [01:27:57.351] base::stop(msg) [01:27:57.351] } [01:27:57.351] }) [01:27:57.351] } [01:27:57.351] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.351] base::options(mc.cores = 1L) [01:27:57.351] } [01:27:57.351] base::local({ [01:27:57.351] for (pkg in "stats") { [01:27:57.351] base::loadNamespace(pkg) [01:27:57.351] base::library(pkg, character.only = TRUE) [01:27:57.351] } [01:27:57.351] }) [01:27:57.351] } [01:27:57.351] options(future.plan = NULL) [01:27:57.351] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.351] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.351] } [01:27:57.351] ...future.workdir <- getwd() [01:27:57.351] } [01:27:57.351] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.351] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.351] } [01:27:57.351] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.351] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.351] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.351] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.351] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.351] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.351] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.351] base::names(...future.oldOptions)) [01:27:57.351] } [01:27:57.351] if (FALSE) { [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] if (TRUE) { [01:27:57.351] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.351] open = "w") [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.351] windows = "NUL", "/dev/null"), open = "w") [01:27:57.351] } [01:27:57.351] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.351] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.351] base::sink(type = "output", split = FALSE) [01:27:57.351] base::close(...future.stdout) [01:27:57.351] }, add = TRUE) [01:27:57.351] } [01:27:57.351] ...future.frame <- base::sys.nframe() [01:27:57.351] ...future.conditions <- base::list() [01:27:57.351] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.351] if (FALSE) { [01:27:57.351] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.351] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.351] } [01:27:57.351] ...future.result <- base::tryCatch({ [01:27:57.351] base::withCallingHandlers({ [01:27:57.351] ...future.value <- base::withVisible(base::local({ [01:27:57.351] ...future.makeSendCondition <- base::local({ [01:27:57.351] sendCondition <- NULL [01:27:57.351] function(frame = 1L) { [01:27:57.351] if (is.function(sendCondition)) [01:27:57.351] return(sendCondition) [01:27:57.351] ns <- getNamespace("parallel") [01:27:57.351] if (exists("sendData", mode = "function", [01:27:57.351] envir = ns)) { [01:27:57.351] parallel_sendData <- get("sendData", mode = "function", [01:27:57.351] envir = ns) [01:27:57.351] envir <- sys.frame(frame) [01:27:57.351] master <- NULL [01:27:57.351] while (!identical(envir, .GlobalEnv) && [01:27:57.351] !identical(envir, emptyenv())) { [01:27:57.351] if (exists("master", mode = "list", envir = envir, [01:27:57.351] inherits = FALSE)) { [01:27:57.351] master <- get("master", mode = "list", [01:27:57.351] envir = envir, inherits = FALSE) [01:27:57.351] if (inherits(master, c("SOCKnode", [01:27:57.351] "SOCK0node"))) { [01:27:57.351] sendCondition <<- function(cond) { [01:27:57.351] data <- list(type = "VALUE", value = cond, [01:27:57.351] success = TRUE) [01:27:57.351] parallel_sendData(master, data) [01:27:57.351] } [01:27:57.351] return(sendCondition) [01:27:57.351] } [01:27:57.351] } [01:27:57.351] frame <- frame + 1L [01:27:57.351] envir <- sys.frame(frame) [01:27:57.351] } [01:27:57.351] } [01:27:57.351] sendCondition <<- function(cond) NULL [01:27:57.351] } [01:27:57.351] }) [01:27:57.351] withCallingHandlers({ [01:27:57.351] { [01:27:57.351] xtabs(~x) [01:27:57.351] } [01:27:57.351] }, immediateCondition = function(cond) { [01:27:57.351] sendCondition <- ...future.makeSendCondition() [01:27:57.351] sendCondition(cond) [01:27:57.351] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.351] { [01:27:57.351] inherits <- base::inherits [01:27:57.351] invokeRestart <- base::invokeRestart [01:27:57.351] is.null <- base::is.null [01:27:57.351] muffled <- FALSE [01:27:57.351] if (inherits(cond, "message")) { [01:27:57.351] muffled <- grepl(pattern, "muffleMessage") [01:27:57.351] if (muffled) [01:27:57.351] invokeRestart("muffleMessage") [01:27:57.351] } [01:27:57.351] else if (inherits(cond, "warning")) { [01:27:57.351] muffled <- grepl(pattern, "muffleWarning") [01:27:57.351] if (muffled) [01:27:57.351] invokeRestart("muffleWarning") [01:27:57.351] } [01:27:57.351] else if (inherits(cond, "condition")) { [01:27:57.351] if (!is.null(pattern)) { [01:27:57.351] computeRestarts <- base::computeRestarts [01:27:57.351] grepl <- base::grepl [01:27:57.351] restarts <- computeRestarts(cond) [01:27:57.351] for (restart in restarts) { [01:27:57.351] name <- restart$name [01:27:57.351] if (is.null(name)) [01:27:57.351] next [01:27:57.351] if (!grepl(pattern, name)) [01:27:57.351] next [01:27:57.351] invokeRestart(restart) [01:27:57.351] muffled <- TRUE [01:27:57.351] break [01:27:57.351] } [01:27:57.351] } [01:27:57.351] } [01:27:57.351] invisible(muffled) [01:27:57.351] } [01:27:57.351] muffleCondition(cond) [01:27:57.351] }) [01:27:57.351] })) [01:27:57.351] future::FutureResult(value = ...future.value$value, [01:27:57.351] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.351] ...future.rng), globalenv = if (FALSE) [01:27:57.351] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.351] ...future.globalenv.names)) [01:27:57.351] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.351] }, condition = base::local({ [01:27:57.351] c <- base::c [01:27:57.351] inherits <- base::inherits [01:27:57.351] invokeRestart <- base::invokeRestart [01:27:57.351] length <- base::length [01:27:57.351] list <- base::list [01:27:57.351] seq.int <- base::seq.int [01:27:57.351] signalCondition <- base::signalCondition [01:27:57.351] sys.calls <- base::sys.calls [01:27:57.351] `[[` <- base::`[[` [01:27:57.351] `+` <- base::`+` [01:27:57.351] `<<-` <- base::`<<-` [01:27:57.351] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.351] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.351] 3L)] [01:27:57.351] } [01:27:57.351] function(cond) { [01:27:57.351] is_error <- inherits(cond, "error") [01:27:57.351] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.351] NULL) [01:27:57.351] if (is_error) { [01:27:57.351] sessionInformation <- function() { [01:27:57.351] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.351] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.351] search = base::search(), system = base::Sys.info()) [01:27:57.351] } [01:27:57.351] ...future.conditions[[length(...future.conditions) + [01:27:57.351] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.351] cond$call), session = sessionInformation(), [01:27:57.351] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.351] signalCondition(cond) [01:27:57.351] } [01:27:57.351] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.351] "immediateCondition"))) { [01:27:57.351] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.351] ...future.conditions[[length(...future.conditions) + [01:27:57.351] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.351] if (TRUE && !signal) { [01:27:57.351] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.351] { [01:27:57.351] inherits <- base::inherits [01:27:57.351] invokeRestart <- base::invokeRestart [01:27:57.351] is.null <- base::is.null [01:27:57.351] muffled <- FALSE [01:27:57.351] if (inherits(cond, "message")) { [01:27:57.351] muffled <- grepl(pattern, "muffleMessage") [01:27:57.351] if (muffled) [01:27:57.351] invokeRestart("muffleMessage") [01:27:57.351] } [01:27:57.351] else if (inherits(cond, "warning")) { [01:27:57.351] muffled <- grepl(pattern, "muffleWarning") [01:27:57.351] if (muffled) [01:27:57.351] invokeRestart("muffleWarning") [01:27:57.351] } [01:27:57.351] else if (inherits(cond, "condition")) { [01:27:57.351] if (!is.null(pattern)) { [01:27:57.351] computeRestarts <- base::computeRestarts [01:27:57.351] grepl <- base::grepl [01:27:57.351] restarts <- computeRestarts(cond) [01:27:57.351] for (restart in restarts) { [01:27:57.351] name <- restart$name [01:27:57.351] if (is.null(name)) [01:27:57.351] next [01:27:57.351] if (!grepl(pattern, name)) [01:27:57.351] next [01:27:57.351] invokeRestart(restart) [01:27:57.351] muffled <- TRUE [01:27:57.351] break [01:27:57.351] } [01:27:57.351] } [01:27:57.351] } [01:27:57.351] invisible(muffled) [01:27:57.351] } [01:27:57.351] muffleCondition(cond, pattern = "^muffle") [01:27:57.351] } [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] if (TRUE) { [01:27:57.351] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.351] { [01:27:57.351] inherits <- base::inherits [01:27:57.351] invokeRestart <- base::invokeRestart [01:27:57.351] is.null <- base::is.null [01:27:57.351] muffled <- FALSE [01:27:57.351] if (inherits(cond, "message")) { [01:27:57.351] muffled <- grepl(pattern, "muffleMessage") [01:27:57.351] if (muffled) [01:27:57.351] invokeRestart("muffleMessage") [01:27:57.351] } [01:27:57.351] else if (inherits(cond, "warning")) { [01:27:57.351] muffled <- grepl(pattern, "muffleWarning") [01:27:57.351] if (muffled) [01:27:57.351] invokeRestart("muffleWarning") [01:27:57.351] } [01:27:57.351] else if (inherits(cond, "condition")) { [01:27:57.351] if (!is.null(pattern)) { [01:27:57.351] computeRestarts <- base::computeRestarts [01:27:57.351] grepl <- base::grepl [01:27:57.351] restarts <- computeRestarts(cond) [01:27:57.351] for (restart in restarts) { [01:27:57.351] name <- restart$name [01:27:57.351] if (is.null(name)) [01:27:57.351] next [01:27:57.351] if (!grepl(pattern, name)) [01:27:57.351] next [01:27:57.351] invokeRestart(restart) [01:27:57.351] muffled <- TRUE [01:27:57.351] break [01:27:57.351] } [01:27:57.351] } [01:27:57.351] } [01:27:57.351] invisible(muffled) [01:27:57.351] } [01:27:57.351] muffleCondition(cond, pattern = "^muffle") [01:27:57.351] } [01:27:57.351] } [01:27:57.351] } [01:27:57.351] })) [01:27:57.351] }, error = function(ex) { [01:27:57.351] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.351] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.351] ...future.rng), started = ...future.startTime, [01:27:57.351] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.351] version = "1.8"), class = "FutureResult") [01:27:57.351] }, finally = { [01:27:57.351] if (!identical(...future.workdir, getwd())) [01:27:57.351] setwd(...future.workdir) [01:27:57.351] { [01:27:57.351] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.351] ...future.oldOptions$nwarnings <- NULL [01:27:57.351] } [01:27:57.351] base::options(...future.oldOptions) [01:27:57.351] if (.Platform$OS.type == "windows") { [01:27:57.351] old_names <- names(...future.oldEnvVars) [01:27:57.351] envs <- base::Sys.getenv() [01:27:57.351] names <- names(envs) [01:27:57.351] common <- intersect(names, old_names) [01:27:57.351] added <- setdiff(names, old_names) [01:27:57.351] removed <- setdiff(old_names, names) [01:27:57.351] changed <- common[...future.oldEnvVars[common] != [01:27:57.351] envs[common]] [01:27:57.351] NAMES <- toupper(changed) [01:27:57.351] args <- list() [01:27:57.351] for (kk in seq_along(NAMES)) { [01:27:57.351] name <- changed[[kk]] [01:27:57.351] NAME <- NAMES[[kk]] [01:27:57.351] if (name != NAME && is.element(NAME, old_names)) [01:27:57.351] next [01:27:57.351] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.351] } [01:27:57.351] NAMES <- toupper(added) [01:27:57.351] for (kk in seq_along(NAMES)) { [01:27:57.351] name <- added[[kk]] [01:27:57.351] NAME <- NAMES[[kk]] [01:27:57.351] if (name != NAME && is.element(NAME, old_names)) [01:27:57.351] next [01:27:57.351] args[[name]] <- "" [01:27:57.351] } [01:27:57.351] NAMES <- toupper(removed) [01:27:57.351] for (kk in seq_along(NAMES)) { [01:27:57.351] name <- removed[[kk]] [01:27:57.351] NAME <- NAMES[[kk]] [01:27:57.351] if (name != NAME && is.element(NAME, old_names)) [01:27:57.351] next [01:27:57.351] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.351] } [01:27:57.351] if (length(args) > 0) [01:27:57.351] base::do.call(base::Sys.setenv, args = args) [01:27:57.351] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.351] } [01:27:57.351] { [01:27:57.351] if (base::length(...future.futureOptionsAdded) > [01:27:57.351] 0L) { [01:27:57.351] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.351] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.351] base::options(opts) [01:27:57.351] } [01:27:57.351] { [01:27:57.351] { [01:27:57.351] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.351] NULL [01:27:57.351] } [01:27:57.351] options(future.plan = NULL) [01:27:57.351] if (is.na(NA_character_)) [01:27:57.351] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.351] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.351] future::plan(list(function (..., workers = availableCores(), [01:27:57.351] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.351] envir = parent.frame()) [01:27:57.351] { [01:27:57.351] if (is.function(workers)) [01:27:57.351] workers <- workers() [01:27:57.351] workers <- structure(as.integer(workers), [01:27:57.351] class = class(workers)) [01:27:57.351] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.351] workers >= 1) [01:27:57.351] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.351] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.351] } [01:27:57.351] future <- MultisessionFuture(..., workers = workers, [01:27:57.351] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.351] envir = envir) [01:27:57.351] if (!future$lazy) [01:27:57.351] future <- run(future) [01:27:57.351] invisible(future) [01:27:57.351] }), .cleanup = FALSE, .init = FALSE) [01:27:57.351] } [01:27:57.351] } [01:27:57.351] } [01:27:57.351] }) [01:27:57.351] if (TRUE) { [01:27:57.351] base::sink(type = "output", split = FALSE) [01:27:57.351] if (TRUE) { [01:27:57.351] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.351] } [01:27:57.351] else { [01:27:57.351] ...future.result["stdout"] <- base::list(NULL) [01:27:57.351] } [01:27:57.351] base::close(...future.stdout) [01:27:57.351] ...future.stdout <- NULL [01:27:57.351] } [01:27:57.351] ...future.result$conditions <- ...future.conditions [01:27:57.351] ...future.result$finished <- base::Sys.time() [01:27:57.351] ...future.result [01:27:57.351] } [01:27:57.357] Exporting 1 global objects (96 bytes) to cluster node #1 ... [01:27:57.357] Exporting 'x' (96 bytes) to cluster node #1 ... [01:27:57.358] Exporting 'x' (96 bytes) to cluster node #1 ... DONE [01:27:57.358] Exporting 1 global objects (96 bytes) to cluster node #1 ... DONE [01:27:57.359] MultisessionFuture started [01:27:57.359] - Launch lazy future ... done [01:27:57.359] run() for 'MultisessionFuture' ... done [01:27:57.359] result() for ClusterFuture ... [01:27:57.360] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.360] - Validating connection of MultisessionFuture [01:27:57.376] - received message: FutureResult [01:27:57.377] - Received FutureResult [01:27:57.377] - Erased future from FutureRegistry [01:27:57.377] result() for ClusterFuture ... [01:27:57.377] - result already collected: FutureResult [01:27:57.377] result() for ClusterFuture ... done [01:27:57.377] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.378] result() for ClusterFuture ... done [01:27:57.378] result() for ClusterFuture ... [01:27:57.378] - result already collected: FutureResult [01:27:57.378] result() for ClusterFuture ... done x 1 2 2 3 [01:27:57.379] getGlobalsAndPackages() ... [01:27:57.379] Searching for globals... [01:27:57.381] - globals found: [4] '{', 'xtabs', 'x', '~' [01:27:57.381] Searching for globals ... DONE [01:27:57.381] Resolving globals: FALSE [01:27:57.382] The total size of the 1 globals is 96 bytes (96 bytes) [01:27:57.382] The total size of the 1 globals exported for future expression ('{; xtabs(~x); }') is 96 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'x' (96 bytes of class 'numeric') [01:27:57.382] - globals: [1] 'x' [01:27:57.383] - packages: [1] 'stats' [01:27:57.383] getGlobalsAndPackages() ... DONE [01:27:57.383] run() for 'Future' ... [01:27:57.383] - state: 'created' [01:27:57.383] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.398] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.398] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.398] - Field: 'node' [01:27:57.399] - Field: 'label' [01:27:57.399] - Field: 'local' [01:27:57.399] - Field: 'owner' [01:27:57.399] - Field: 'envir' [01:27:57.399] - Field: 'workers' [01:27:57.400] - Field: 'packages' [01:27:57.400] - Field: 'gc' [01:27:57.400] - Field: 'conditions' [01:27:57.400] - Field: 'persistent' [01:27:57.400] - Field: 'expr' [01:27:57.400] - Field: 'uuid' [01:27:57.401] - Field: 'seed' [01:27:57.401] - Field: 'version' [01:27:57.401] - Field: 'result' [01:27:57.401] - Field: 'asynchronous' [01:27:57.401] - Field: 'calls' [01:27:57.402] - Field: 'globals' [01:27:57.402] - Field: 'stdout' [01:27:57.402] - Field: 'earlySignal' [01:27:57.402] - Field: 'lazy' [01:27:57.402] - Field: 'state' [01:27:57.402] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.403] - Launch lazy future ... [01:27:57.403] Packages needed by the future expression (n = 1): 'stats' [01:27:57.403] Packages needed by future strategies (n = 0): [01:27:57.404] { [01:27:57.404] { [01:27:57.404] { [01:27:57.404] ...future.startTime <- base::Sys.time() [01:27:57.404] { [01:27:57.404] { [01:27:57.404] { [01:27:57.404] { [01:27:57.404] { [01:27:57.404] base::local({ [01:27:57.404] has_future <- base::requireNamespace("future", [01:27:57.404] quietly = TRUE) [01:27:57.404] if (has_future) { [01:27:57.404] ns <- base::getNamespace("future") [01:27:57.404] version <- ns[[".package"]][["version"]] [01:27:57.404] if (is.null(version)) [01:27:57.404] version <- utils::packageVersion("future") [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] version <- NULL [01:27:57.404] } [01:27:57.404] if (!has_future || version < "1.8.0") { [01:27:57.404] info <- base::c(r_version = base::gsub("R version ", [01:27:57.404] "", base::R.version$version.string), [01:27:57.404] platform = base::sprintf("%s (%s-bit)", [01:27:57.404] base::R.version$platform, 8 * [01:27:57.404] base::.Machine$sizeof.pointer), [01:27:57.404] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.404] "release", "version")], collapse = " "), [01:27:57.404] hostname = base::Sys.info()[["nodename"]]) [01:27:57.404] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.404] info) [01:27:57.404] info <- base::paste(info, collapse = "; ") [01:27:57.404] if (!has_future) { [01:27:57.404] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.404] info) [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.404] info, version) [01:27:57.404] } [01:27:57.404] base::stop(msg) [01:27:57.404] } [01:27:57.404] }) [01:27:57.404] } [01:27:57.404] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.404] base::options(mc.cores = 1L) [01:27:57.404] } [01:27:57.404] base::local({ [01:27:57.404] for (pkg in "stats") { [01:27:57.404] base::loadNamespace(pkg) [01:27:57.404] base::library(pkg, character.only = TRUE) [01:27:57.404] } [01:27:57.404] }) [01:27:57.404] } [01:27:57.404] options(future.plan = NULL) [01:27:57.404] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.404] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.404] } [01:27:57.404] ...future.workdir <- getwd() [01:27:57.404] } [01:27:57.404] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.404] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.404] } [01:27:57.404] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.404] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.404] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.404] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.404] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.404] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.404] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.404] base::names(...future.oldOptions)) [01:27:57.404] } [01:27:57.404] if (FALSE) { [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] if (TRUE) { [01:27:57.404] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.404] open = "w") [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.404] windows = "NUL", "/dev/null"), open = "w") [01:27:57.404] } [01:27:57.404] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.404] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.404] base::sink(type = "output", split = FALSE) [01:27:57.404] base::close(...future.stdout) [01:27:57.404] }, add = TRUE) [01:27:57.404] } [01:27:57.404] ...future.frame <- base::sys.nframe() [01:27:57.404] ...future.conditions <- base::list() [01:27:57.404] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.404] if (FALSE) { [01:27:57.404] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.404] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.404] } [01:27:57.404] ...future.result <- base::tryCatch({ [01:27:57.404] base::withCallingHandlers({ [01:27:57.404] ...future.value <- base::withVisible(base::local({ [01:27:57.404] ...future.makeSendCondition <- base::local({ [01:27:57.404] sendCondition <- NULL [01:27:57.404] function(frame = 1L) { [01:27:57.404] if (is.function(sendCondition)) [01:27:57.404] return(sendCondition) [01:27:57.404] ns <- getNamespace("parallel") [01:27:57.404] if (exists("sendData", mode = "function", [01:27:57.404] envir = ns)) { [01:27:57.404] parallel_sendData <- get("sendData", mode = "function", [01:27:57.404] envir = ns) [01:27:57.404] envir <- sys.frame(frame) [01:27:57.404] master <- NULL [01:27:57.404] while (!identical(envir, .GlobalEnv) && [01:27:57.404] !identical(envir, emptyenv())) { [01:27:57.404] if (exists("master", mode = "list", envir = envir, [01:27:57.404] inherits = FALSE)) { [01:27:57.404] master <- get("master", mode = "list", [01:27:57.404] envir = envir, inherits = FALSE) [01:27:57.404] if (inherits(master, c("SOCKnode", [01:27:57.404] "SOCK0node"))) { [01:27:57.404] sendCondition <<- function(cond) { [01:27:57.404] data <- list(type = "VALUE", value = cond, [01:27:57.404] success = TRUE) [01:27:57.404] parallel_sendData(master, data) [01:27:57.404] } [01:27:57.404] return(sendCondition) [01:27:57.404] } [01:27:57.404] } [01:27:57.404] frame <- frame + 1L [01:27:57.404] envir <- sys.frame(frame) [01:27:57.404] } [01:27:57.404] } [01:27:57.404] sendCondition <<- function(cond) NULL [01:27:57.404] } [01:27:57.404] }) [01:27:57.404] withCallingHandlers({ [01:27:57.404] { [01:27:57.404] xtabs(~x) [01:27:57.404] } [01:27:57.404] }, immediateCondition = function(cond) { [01:27:57.404] sendCondition <- ...future.makeSendCondition() [01:27:57.404] sendCondition(cond) [01:27:57.404] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.404] { [01:27:57.404] inherits <- base::inherits [01:27:57.404] invokeRestart <- base::invokeRestart [01:27:57.404] is.null <- base::is.null [01:27:57.404] muffled <- FALSE [01:27:57.404] if (inherits(cond, "message")) { [01:27:57.404] muffled <- grepl(pattern, "muffleMessage") [01:27:57.404] if (muffled) [01:27:57.404] invokeRestart("muffleMessage") [01:27:57.404] } [01:27:57.404] else if (inherits(cond, "warning")) { [01:27:57.404] muffled <- grepl(pattern, "muffleWarning") [01:27:57.404] if (muffled) [01:27:57.404] invokeRestart("muffleWarning") [01:27:57.404] } [01:27:57.404] else if (inherits(cond, "condition")) { [01:27:57.404] if (!is.null(pattern)) { [01:27:57.404] computeRestarts <- base::computeRestarts [01:27:57.404] grepl <- base::grepl [01:27:57.404] restarts <- computeRestarts(cond) [01:27:57.404] for (restart in restarts) { [01:27:57.404] name <- restart$name [01:27:57.404] if (is.null(name)) [01:27:57.404] next [01:27:57.404] if (!grepl(pattern, name)) [01:27:57.404] next [01:27:57.404] invokeRestart(restart) [01:27:57.404] muffled <- TRUE [01:27:57.404] break [01:27:57.404] } [01:27:57.404] } [01:27:57.404] } [01:27:57.404] invisible(muffled) [01:27:57.404] } [01:27:57.404] muffleCondition(cond) [01:27:57.404] }) [01:27:57.404] })) [01:27:57.404] future::FutureResult(value = ...future.value$value, [01:27:57.404] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.404] ...future.rng), globalenv = if (FALSE) [01:27:57.404] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.404] ...future.globalenv.names)) [01:27:57.404] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.404] }, condition = base::local({ [01:27:57.404] c <- base::c [01:27:57.404] inherits <- base::inherits [01:27:57.404] invokeRestart <- base::invokeRestart [01:27:57.404] length <- base::length [01:27:57.404] list <- base::list [01:27:57.404] seq.int <- base::seq.int [01:27:57.404] signalCondition <- base::signalCondition [01:27:57.404] sys.calls <- base::sys.calls [01:27:57.404] `[[` <- base::`[[` [01:27:57.404] `+` <- base::`+` [01:27:57.404] `<<-` <- base::`<<-` [01:27:57.404] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.404] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.404] 3L)] [01:27:57.404] } [01:27:57.404] function(cond) { [01:27:57.404] is_error <- inherits(cond, "error") [01:27:57.404] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.404] NULL) [01:27:57.404] if (is_error) { [01:27:57.404] sessionInformation <- function() { [01:27:57.404] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.404] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.404] search = base::search(), system = base::Sys.info()) [01:27:57.404] } [01:27:57.404] ...future.conditions[[length(...future.conditions) + [01:27:57.404] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.404] cond$call), session = sessionInformation(), [01:27:57.404] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.404] signalCondition(cond) [01:27:57.404] } [01:27:57.404] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.404] "immediateCondition"))) { [01:27:57.404] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.404] ...future.conditions[[length(...future.conditions) + [01:27:57.404] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.404] if (TRUE && !signal) { [01:27:57.404] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.404] { [01:27:57.404] inherits <- base::inherits [01:27:57.404] invokeRestart <- base::invokeRestart [01:27:57.404] is.null <- base::is.null [01:27:57.404] muffled <- FALSE [01:27:57.404] if (inherits(cond, "message")) { [01:27:57.404] muffled <- grepl(pattern, "muffleMessage") [01:27:57.404] if (muffled) [01:27:57.404] invokeRestart("muffleMessage") [01:27:57.404] } [01:27:57.404] else if (inherits(cond, "warning")) { [01:27:57.404] muffled <- grepl(pattern, "muffleWarning") [01:27:57.404] if (muffled) [01:27:57.404] invokeRestart("muffleWarning") [01:27:57.404] } [01:27:57.404] else if (inherits(cond, "condition")) { [01:27:57.404] if (!is.null(pattern)) { [01:27:57.404] computeRestarts <- base::computeRestarts [01:27:57.404] grepl <- base::grepl [01:27:57.404] restarts <- computeRestarts(cond) [01:27:57.404] for (restart in restarts) { [01:27:57.404] name <- restart$name [01:27:57.404] if (is.null(name)) [01:27:57.404] next [01:27:57.404] if (!grepl(pattern, name)) [01:27:57.404] next [01:27:57.404] invokeRestart(restart) [01:27:57.404] muffled <- TRUE [01:27:57.404] break [01:27:57.404] } [01:27:57.404] } [01:27:57.404] } [01:27:57.404] invisible(muffled) [01:27:57.404] } [01:27:57.404] muffleCondition(cond, pattern = "^muffle") [01:27:57.404] } [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] if (TRUE) { [01:27:57.404] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.404] { [01:27:57.404] inherits <- base::inherits [01:27:57.404] invokeRestart <- base::invokeRestart [01:27:57.404] is.null <- base::is.null [01:27:57.404] muffled <- FALSE [01:27:57.404] if (inherits(cond, "message")) { [01:27:57.404] muffled <- grepl(pattern, "muffleMessage") [01:27:57.404] if (muffled) [01:27:57.404] invokeRestart("muffleMessage") [01:27:57.404] } [01:27:57.404] else if (inherits(cond, "warning")) { [01:27:57.404] muffled <- grepl(pattern, "muffleWarning") [01:27:57.404] if (muffled) [01:27:57.404] invokeRestart("muffleWarning") [01:27:57.404] } [01:27:57.404] else if (inherits(cond, "condition")) { [01:27:57.404] if (!is.null(pattern)) { [01:27:57.404] computeRestarts <- base::computeRestarts [01:27:57.404] grepl <- base::grepl [01:27:57.404] restarts <- computeRestarts(cond) [01:27:57.404] for (restart in restarts) { [01:27:57.404] name <- restart$name [01:27:57.404] if (is.null(name)) [01:27:57.404] next [01:27:57.404] if (!grepl(pattern, name)) [01:27:57.404] next [01:27:57.404] invokeRestart(restart) [01:27:57.404] muffled <- TRUE [01:27:57.404] break [01:27:57.404] } [01:27:57.404] } [01:27:57.404] } [01:27:57.404] invisible(muffled) [01:27:57.404] } [01:27:57.404] muffleCondition(cond, pattern = "^muffle") [01:27:57.404] } [01:27:57.404] } [01:27:57.404] } [01:27:57.404] })) [01:27:57.404] }, error = function(ex) { [01:27:57.404] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.404] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.404] ...future.rng), started = ...future.startTime, [01:27:57.404] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.404] version = "1.8"), class = "FutureResult") [01:27:57.404] }, finally = { [01:27:57.404] if (!identical(...future.workdir, getwd())) [01:27:57.404] setwd(...future.workdir) [01:27:57.404] { [01:27:57.404] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.404] ...future.oldOptions$nwarnings <- NULL [01:27:57.404] } [01:27:57.404] base::options(...future.oldOptions) [01:27:57.404] if (.Platform$OS.type == "windows") { [01:27:57.404] old_names <- names(...future.oldEnvVars) [01:27:57.404] envs <- base::Sys.getenv() [01:27:57.404] names <- names(envs) [01:27:57.404] common <- intersect(names, old_names) [01:27:57.404] added <- setdiff(names, old_names) [01:27:57.404] removed <- setdiff(old_names, names) [01:27:57.404] changed <- common[...future.oldEnvVars[common] != [01:27:57.404] envs[common]] [01:27:57.404] NAMES <- toupper(changed) [01:27:57.404] args <- list() [01:27:57.404] for (kk in seq_along(NAMES)) { [01:27:57.404] name <- changed[[kk]] [01:27:57.404] NAME <- NAMES[[kk]] [01:27:57.404] if (name != NAME && is.element(NAME, old_names)) [01:27:57.404] next [01:27:57.404] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.404] } [01:27:57.404] NAMES <- toupper(added) [01:27:57.404] for (kk in seq_along(NAMES)) { [01:27:57.404] name <- added[[kk]] [01:27:57.404] NAME <- NAMES[[kk]] [01:27:57.404] if (name != NAME && is.element(NAME, old_names)) [01:27:57.404] next [01:27:57.404] args[[name]] <- "" [01:27:57.404] } [01:27:57.404] NAMES <- toupper(removed) [01:27:57.404] for (kk in seq_along(NAMES)) { [01:27:57.404] name <- removed[[kk]] [01:27:57.404] NAME <- NAMES[[kk]] [01:27:57.404] if (name != NAME && is.element(NAME, old_names)) [01:27:57.404] next [01:27:57.404] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.404] } [01:27:57.404] if (length(args) > 0) [01:27:57.404] base::do.call(base::Sys.setenv, args = args) [01:27:57.404] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.404] } [01:27:57.404] { [01:27:57.404] if (base::length(...future.futureOptionsAdded) > [01:27:57.404] 0L) { [01:27:57.404] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.404] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.404] base::options(opts) [01:27:57.404] } [01:27:57.404] { [01:27:57.404] { [01:27:57.404] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.404] NULL [01:27:57.404] } [01:27:57.404] options(future.plan = NULL) [01:27:57.404] if (is.na(NA_character_)) [01:27:57.404] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.404] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.404] future::plan(list(function (..., workers = availableCores(), [01:27:57.404] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.404] envir = parent.frame()) [01:27:57.404] { [01:27:57.404] if (is.function(workers)) [01:27:57.404] workers <- workers() [01:27:57.404] workers <- structure(as.integer(workers), [01:27:57.404] class = class(workers)) [01:27:57.404] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.404] workers >= 1) [01:27:57.404] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.404] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.404] } [01:27:57.404] future <- MultisessionFuture(..., workers = workers, [01:27:57.404] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.404] envir = envir) [01:27:57.404] if (!future$lazy) [01:27:57.404] future <- run(future) [01:27:57.404] invisible(future) [01:27:57.404] }), .cleanup = FALSE, .init = FALSE) [01:27:57.404] } [01:27:57.404] } [01:27:57.404] } [01:27:57.404] }) [01:27:57.404] if (TRUE) { [01:27:57.404] base::sink(type = "output", split = FALSE) [01:27:57.404] if (TRUE) { [01:27:57.404] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.404] } [01:27:57.404] else { [01:27:57.404] ...future.result["stdout"] <- base::list(NULL) [01:27:57.404] } [01:27:57.404] base::close(...future.stdout) [01:27:57.404] ...future.stdout <- NULL [01:27:57.404] } [01:27:57.404] ...future.result$conditions <- ...future.conditions [01:27:57.404] ...future.result$finished <- base::Sys.time() [01:27:57.404] ...future.result [01:27:57.404] } [01:27:57.410] Exporting 1 global objects (96 bytes) to cluster node #1 ... [01:27:57.410] Exporting 'x' (96 bytes) to cluster node #1 ... [01:27:57.410] Exporting 'x' (96 bytes) to cluster node #1 ... DONE [01:27:57.411] Exporting 1 global objects (96 bytes) to cluster node #1 ... DONE [01:27:57.411] MultisessionFuture started [01:27:57.412] - Launch lazy future ... done [01:27:57.412] run() for 'MultisessionFuture' ... done [01:27:57.412] result() for ClusterFuture ... [01:27:57.412] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.412] - Validating connection of MultisessionFuture [01:27:57.427] - received message: FutureResult [01:27:57.428] - Received FutureResult [01:27:57.428] - Erased future from FutureRegistry [01:27:57.428] result() for ClusterFuture ... [01:27:57.428] - result already collected: FutureResult [01:27:57.429] result() for ClusterFuture ... done [01:27:57.429] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.429] result() for ClusterFuture ... done [01:27:57.429] result() for ClusterFuture ... [01:27:57.429] - result already collected: FutureResult [01:27:57.429] result() for ClusterFuture ... done x 1 2 2 3 - Globals - lm(, data = cars) ... - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ . - 1, data = cars) Coefficients: speed 2.909 [01:27:57.432] getGlobalsAndPackages() ... [01:27:57.432] Searching for globals... [01:27:57.434] - globals found: [7] '{', 'lm', 'dist', '-', '.', '~', 'cars' [01:27:57.435] Searching for globals ... DONE [01:27:57.435] Resolving globals: FALSE [01:27:57.435] [01:27:57.436] - packages: [2] 'stats', 'datasets' [01:27:57.436] getGlobalsAndPackages() ... DONE [01:27:57.436] run() for 'Future' ... [01:27:57.436] - state: 'created' [01:27:57.437] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.451] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.451] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.452] - Field: 'node' [01:27:57.452] - Field: 'label' [01:27:57.452] - Field: 'local' [01:27:57.452] - Field: 'owner' [01:27:57.452] - Field: 'envir' [01:27:57.453] - Field: 'workers' [01:27:57.453] - Field: 'packages' [01:27:57.453] - Field: 'gc' [01:27:57.453] - Field: 'conditions' [01:27:57.453] - Field: 'persistent' [01:27:57.454] - Field: 'expr' [01:27:57.454] - Field: 'uuid' [01:27:57.454] - Field: 'seed' [01:27:57.454] - Field: 'version' [01:27:57.454] - Field: 'result' [01:27:57.454] - Field: 'asynchronous' [01:27:57.455] - Field: 'calls' [01:27:57.455] - Field: 'globals' [01:27:57.455] - Field: 'stdout' [01:27:57.455] - Field: 'earlySignal' [01:27:57.455] - Field: 'lazy' [01:27:57.456] - Field: 'state' [01:27:57.456] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.456] - Launch lazy future ... [01:27:57.456] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:57.456] Packages needed by future strategies (n = 0): [01:27:57.457] { [01:27:57.457] { [01:27:57.457] { [01:27:57.457] ...future.startTime <- base::Sys.time() [01:27:57.457] { [01:27:57.457] { [01:27:57.457] { [01:27:57.457] { [01:27:57.457] { [01:27:57.457] base::local({ [01:27:57.457] has_future <- base::requireNamespace("future", [01:27:57.457] quietly = TRUE) [01:27:57.457] if (has_future) { [01:27:57.457] ns <- base::getNamespace("future") [01:27:57.457] version <- ns[[".package"]][["version"]] [01:27:57.457] if (is.null(version)) [01:27:57.457] version <- utils::packageVersion("future") [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] version <- NULL [01:27:57.457] } [01:27:57.457] if (!has_future || version < "1.8.0") { [01:27:57.457] info <- base::c(r_version = base::gsub("R version ", [01:27:57.457] "", base::R.version$version.string), [01:27:57.457] platform = base::sprintf("%s (%s-bit)", [01:27:57.457] base::R.version$platform, 8 * [01:27:57.457] base::.Machine$sizeof.pointer), [01:27:57.457] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.457] "release", "version")], collapse = " "), [01:27:57.457] hostname = base::Sys.info()[["nodename"]]) [01:27:57.457] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.457] info) [01:27:57.457] info <- base::paste(info, collapse = "; ") [01:27:57.457] if (!has_future) { [01:27:57.457] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.457] info) [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.457] info, version) [01:27:57.457] } [01:27:57.457] base::stop(msg) [01:27:57.457] } [01:27:57.457] }) [01:27:57.457] } [01:27:57.457] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.457] base::options(mc.cores = 1L) [01:27:57.457] } [01:27:57.457] base::local({ [01:27:57.457] for (pkg in c("stats", "datasets")) { [01:27:57.457] base::loadNamespace(pkg) [01:27:57.457] base::library(pkg, character.only = TRUE) [01:27:57.457] } [01:27:57.457] }) [01:27:57.457] } [01:27:57.457] options(future.plan = NULL) [01:27:57.457] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.457] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.457] } [01:27:57.457] ...future.workdir <- getwd() [01:27:57.457] } [01:27:57.457] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.457] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.457] } [01:27:57.457] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.457] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.457] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.457] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.457] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.457] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.457] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.457] base::names(...future.oldOptions)) [01:27:57.457] } [01:27:57.457] if (FALSE) { [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] if (TRUE) { [01:27:57.457] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.457] open = "w") [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.457] windows = "NUL", "/dev/null"), open = "w") [01:27:57.457] } [01:27:57.457] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.457] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.457] base::sink(type = "output", split = FALSE) [01:27:57.457] base::close(...future.stdout) [01:27:57.457] }, add = TRUE) [01:27:57.457] } [01:27:57.457] ...future.frame <- base::sys.nframe() [01:27:57.457] ...future.conditions <- base::list() [01:27:57.457] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.457] if (FALSE) { [01:27:57.457] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.457] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.457] } [01:27:57.457] ...future.result <- base::tryCatch({ [01:27:57.457] base::withCallingHandlers({ [01:27:57.457] ...future.value <- base::withVisible(base::local({ [01:27:57.457] ...future.makeSendCondition <- base::local({ [01:27:57.457] sendCondition <- NULL [01:27:57.457] function(frame = 1L) { [01:27:57.457] if (is.function(sendCondition)) [01:27:57.457] return(sendCondition) [01:27:57.457] ns <- getNamespace("parallel") [01:27:57.457] if (exists("sendData", mode = "function", [01:27:57.457] envir = ns)) { [01:27:57.457] parallel_sendData <- get("sendData", mode = "function", [01:27:57.457] envir = ns) [01:27:57.457] envir <- sys.frame(frame) [01:27:57.457] master <- NULL [01:27:57.457] while (!identical(envir, .GlobalEnv) && [01:27:57.457] !identical(envir, emptyenv())) { [01:27:57.457] if (exists("master", mode = "list", envir = envir, [01:27:57.457] inherits = FALSE)) { [01:27:57.457] master <- get("master", mode = "list", [01:27:57.457] envir = envir, inherits = FALSE) [01:27:57.457] if (inherits(master, c("SOCKnode", [01:27:57.457] "SOCK0node"))) { [01:27:57.457] sendCondition <<- function(cond) { [01:27:57.457] data <- list(type = "VALUE", value = cond, [01:27:57.457] success = TRUE) [01:27:57.457] parallel_sendData(master, data) [01:27:57.457] } [01:27:57.457] return(sendCondition) [01:27:57.457] } [01:27:57.457] } [01:27:57.457] frame <- frame + 1L [01:27:57.457] envir <- sys.frame(frame) [01:27:57.457] } [01:27:57.457] } [01:27:57.457] sendCondition <<- function(cond) NULL [01:27:57.457] } [01:27:57.457] }) [01:27:57.457] withCallingHandlers({ [01:27:57.457] { [01:27:57.457] lm(dist ~ . - 1, data = cars) [01:27:57.457] } [01:27:57.457] }, immediateCondition = function(cond) { [01:27:57.457] sendCondition <- ...future.makeSendCondition() [01:27:57.457] sendCondition(cond) [01:27:57.457] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.457] { [01:27:57.457] inherits <- base::inherits [01:27:57.457] invokeRestart <- base::invokeRestart [01:27:57.457] is.null <- base::is.null [01:27:57.457] muffled <- FALSE [01:27:57.457] if (inherits(cond, "message")) { [01:27:57.457] muffled <- grepl(pattern, "muffleMessage") [01:27:57.457] if (muffled) [01:27:57.457] invokeRestart("muffleMessage") [01:27:57.457] } [01:27:57.457] else if (inherits(cond, "warning")) { [01:27:57.457] muffled <- grepl(pattern, "muffleWarning") [01:27:57.457] if (muffled) [01:27:57.457] invokeRestart("muffleWarning") [01:27:57.457] } [01:27:57.457] else if (inherits(cond, "condition")) { [01:27:57.457] if (!is.null(pattern)) { [01:27:57.457] computeRestarts <- base::computeRestarts [01:27:57.457] grepl <- base::grepl [01:27:57.457] restarts <- computeRestarts(cond) [01:27:57.457] for (restart in restarts) { [01:27:57.457] name <- restart$name [01:27:57.457] if (is.null(name)) [01:27:57.457] next [01:27:57.457] if (!grepl(pattern, name)) [01:27:57.457] next [01:27:57.457] invokeRestart(restart) [01:27:57.457] muffled <- TRUE [01:27:57.457] break [01:27:57.457] } [01:27:57.457] } [01:27:57.457] } [01:27:57.457] invisible(muffled) [01:27:57.457] } [01:27:57.457] muffleCondition(cond) [01:27:57.457] }) [01:27:57.457] })) [01:27:57.457] future::FutureResult(value = ...future.value$value, [01:27:57.457] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.457] ...future.rng), globalenv = if (FALSE) [01:27:57.457] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.457] ...future.globalenv.names)) [01:27:57.457] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.457] }, condition = base::local({ [01:27:57.457] c <- base::c [01:27:57.457] inherits <- base::inherits [01:27:57.457] invokeRestart <- base::invokeRestart [01:27:57.457] length <- base::length [01:27:57.457] list <- base::list [01:27:57.457] seq.int <- base::seq.int [01:27:57.457] signalCondition <- base::signalCondition [01:27:57.457] sys.calls <- base::sys.calls [01:27:57.457] `[[` <- base::`[[` [01:27:57.457] `+` <- base::`+` [01:27:57.457] `<<-` <- base::`<<-` [01:27:57.457] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.457] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.457] 3L)] [01:27:57.457] } [01:27:57.457] function(cond) { [01:27:57.457] is_error <- inherits(cond, "error") [01:27:57.457] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.457] NULL) [01:27:57.457] if (is_error) { [01:27:57.457] sessionInformation <- function() { [01:27:57.457] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.457] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.457] search = base::search(), system = base::Sys.info()) [01:27:57.457] } [01:27:57.457] ...future.conditions[[length(...future.conditions) + [01:27:57.457] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.457] cond$call), session = sessionInformation(), [01:27:57.457] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.457] signalCondition(cond) [01:27:57.457] } [01:27:57.457] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.457] "immediateCondition"))) { [01:27:57.457] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.457] ...future.conditions[[length(...future.conditions) + [01:27:57.457] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.457] if (TRUE && !signal) { [01:27:57.457] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.457] { [01:27:57.457] inherits <- base::inherits [01:27:57.457] invokeRestart <- base::invokeRestart [01:27:57.457] is.null <- base::is.null [01:27:57.457] muffled <- FALSE [01:27:57.457] if (inherits(cond, "message")) { [01:27:57.457] muffled <- grepl(pattern, "muffleMessage") [01:27:57.457] if (muffled) [01:27:57.457] invokeRestart("muffleMessage") [01:27:57.457] } [01:27:57.457] else if (inherits(cond, "warning")) { [01:27:57.457] muffled <- grepl(pattern, "muffleWarning") [01:27:57.457] if (muffled) [01:27:57.457] invokeRestart("muffleWarning") [01:27:57.457] } [01:27:57.457] else if (inherits(cond, "condition")) { [01:27:57.457] if (!is.null(pattern)) { [01:27:57.457] computeRestarts <- base::computeRestarts [01:27:57.457] grepl <- base::grepl [01:27:57.457] restarts <- computeRestarts(cond) [01:27:57.457] for (restart in restarts) { [01:27:57.457] name <- restart$name [01:27:57.457] if (is.null(name)) [01:27:57.457] next [01:27:57.457] if (!grepl(pattern, name)) [01:27:57.457] next [01:27:57.457] invokeRestart(restart) [01:27:57.457] muffled <- TRUE [01:27:57.457] break [01:27:57.457] } [01:27:57.457] } [01:27:57.457] } [01:27:57.457] invisible(muffled) [01:27:57.457] } [01:27:57.457] muffleCondition(cond, pattern = "^muffle") [01:27:57.457] } [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] if (TRUE) { [01:27:57.457] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.457] { [01:27:57.457] inherits <- base::inherits [01:27:57.457] invokeRestart <- base::invokeRestart [01:27:57.457] is.null <- base::is.null [01:27:57.457] muffled <- FALSE [01:27:57.457] if (inherits(cond, "message")) { [01:27:57.457] muffled <- grepl(pattern, "muffleMessage") [01:27:57.457] if (muffled) [01:27:57.457] invokeRestart("muffleMessage") [01:27:57.457] } [01:27:57.457] else if (inherits(cond, "warning")) { [01:27:57.457] muffled <- grepl(pattern, "muffleWarning") [01:27:57.457] if (muffled) [01:27:57.457] invokeRestart("muffleWarning") [01:27:57.457] } [01:27:57.457] else if (inherits(cond, "condition")) { [01:27:57.457] if (!is.null(pattern)) { [01:27:57.457] computeRestarts <- base::computeRestarts [01:27:57.457] grepl <- base::grepl [01:27:57.457] restarts <- computeRestarts(cond) [01:27:57.457] for (restart in restarts) { [01:27:57.457] name <- restart$name [01:27:57.457] if (is.null(name)) [01:27:57.457] next [01:27:57.457] if (!grepl(pattern, name)) [01:27:57.457] next [01:27:57.457] invokeRestart(restart) [01:27:57.457] muffled <- TRUE [01:27:57.457] break [01:27:57.457] } [01:27:57.457] } [01:27:57.457] } [01:27:57.457] invisible(muffled) [01:27:57.457] } [01:27:57.457] muffleCondition(cond, pattern = "^muffle") [01:27:57.457] } [01:27:57.457] } [01:27:57.457] } [01:27:57.457] })) [01:27:57.457] }, error = function(ex) { [01:27:57.457] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.457] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.457] ...future.rng), started = ...future.startTime, [01:27:57.457] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.457] version = "1.8"), class = "FutureResult") [01:27:57.457] }, finally = { [01:27:57.457] if (!identical(...future.workdir, getwd())) [01:27:57.457] setwd(...future.workdir) [01:27:57.457] { [01:27:57.457] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.457] ...future.oldOptions$nwarnings <- NULL [01:27:57.457] } [01:27:57.457] base::options(...future.oldOptions) [01:27:57.457] if (.Platform$OS.type == "windows") { [01:27:57.457] old_names <- names(...future.oldEnvVars) [01:27:57.457] envs <- base::Sys.getenv() [01:27:57.457] names <- names(envs) [01:27:57.457] common <- intersect(names, old_names) [01:27:57.457] added <- setdiff(names, old_names) [01:27:57.457] removed <- setdiff(old_names, names) [01:27:57.457] changed <- common[...future.oldEnvVars[common] != [01:27:57.457] envs[common]] [01:27:57.457] NAMES <- toupper(changed) [01:27:57.457] args <- list() [01:27:57.457] for (kk in seq_along(NAMES)) { [01:27:57.457] name <- changed[[kk]] [01:27:57.457] NAME <- NAMES[[kk]] [01:27:57.457] if (name != NAME && is.element(NAME, old_names)) [01:27:57.457] next [01:27:57.457] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.457] } [01:27:57.457] NAMES <- toupper(added) [01:27:57.457] for (kk in seq_along(NAMES)) { [01:27:57.457] name <- added[[kk]] [01:27:57.457] NAME <- NAMES[[kk]] [01:27:57.457] if (name != NAME && is.element(NAME, old_names)) [01:27:57.457] next [01:27:57.457] args[[name]] <- "" [01:27:57.457] } [01:27:57.457] NAMES <- toupper(removed) [01:27:57.457] for (kk in seq_along(NAMES)) { [01:27:57.457] name <- removed[[kk]] [01:27:57.457] NAME <- NAMES[[kk]] [01:27:57.457] if (name != NAME && is.element(NAME, old_names)) [01:27:57.457] next [01:27:57.457] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.457] } [01:27:57.457] if (length(args) > 0) [01:27:57.457] base::do.call(base::Sys.setenv, args = args) [01:27:57.457] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.457] } [01:27:57.457] { [01:27:57.457] if (base::length(...future.futureOptionsAdded) > [01:27:57.457] 0L) { [01:27:57.457] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.457] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.457] base::options(opts) [01:27:57.457] } [01:27:57.457] { [01:27:57.457] { [01:27:57.457] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.457] NULL [01:27:57.457] } [01:27:57.457] options(future.plan = NULL) [01:27:57.457] if (is.na(NA_character_)) [01:27:57.457] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.457] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.457] future::plan(list(function (..., workers = availableCores(), [01:27:57.457] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.457] envir = parent.frame()) [01:27:57.457] { [01:27:57.457] if (is.function(workers)) [01:27:57.457] workers <- workers() [01:27:57.457] workers <- structure(as.integer(workers), [01:27:57.457] class = class(workers)) [01:27:57.457] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.457] workers >= 1) [01:27:57.457] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.457] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.457] } [01:27:57.457] future <- MultisessionFuture(..., workers = workers, [01:27:57.457] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.457] envir = envir) [01:27:57.457] if (!future$lazy) [01:27:57.457] future <- run(future) [01:27:57.457] invisible(future) [01:27:57.457] }), .cleanup = FALSE, .init = FALSE) [01:27:57.457] } [01:27:57.457] } [01:27:57.457] } [01:27:57.457] }) [01:27:57.457] if (TRUE) { [01:27:57.457] base::sink(type = "output", split = FALSE) [01:27:57.457] if (TRUE) { [01:27:57.457] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.457] } [01:27:57.457] else { [01:27:57.457] ...future.result["stdout"] <- base::list(NULL) [01:27:57.457] } [01:27:57.457] base::close(...future.stdout) [01:27:57.457] ...future.stdout <- NULL [01:27:57.457] } [01:27:57.457] ...future.result$conditions <- ...future.conditions [01:27:57.457] ...future.result$finished <- base::Sys.time() [01:27:57.457] ...future.result [01:27:57.457] } [01:27:57.464] MultisessionFuture started [01:27:57.464] - Launch lazy future ... done [01:27:57.464] run() for 'MultisessionFuture' ... done [01:27:57.464] result() for ClusterFuture ... [01:27:57.464] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.465] - Validating connection of MultisessionFuture [01:27:57.482] - received message: FutureResult [01:27:57.482] - Received FutureResult [01:27:57.482] - Erased future from FutureRegistry [01:27:57.482] result() for ClusterFuture ... [01:27:57.482] - result already collected: FutureResult [01:27:57.483] result() for ClusterFuture ... done [01:27:57.483] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.483] result() for ClusterFuture ... done [01:27:57.483] result() for ClusterFuture ... [01:27:57.484] - result already collected: FutureResult [01:27:57.484] result() for ClusterFuture ... done Call: lm(formula = dist ~ . - 1, data = cars) Coefficients: speed 2.909 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ . + 0, data = cars) Coefficients: speed 2.909 [01:27:57.492] getGlobalsAndPackages() ... [01:27:57.492] Searching for globals... [01:27:57.494] - globals found: [7] '{', 'lm', 'dist', '+', '.', '~', 'cars' [01:27:57.494] Searching for globals ... DONE [01:27:57.495] Resolving globals: FALSE [01:27:57.495] [01:27:57.496] - packages: [2] 'stats', 'datasets' [01:27:57.496] getGlobalsAndPackages() ... DONE [01:27:57.496] run() for 'Future' ... [01:27:57.497] - state: 'created' [01:27:57.497] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.511] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.512] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.512] - Field: 'node' [01:27:57.512] - Field: 'label' [01:27:57.512] - Field: 'local' [01:27:57.512] - Field: 'owner' [01:27:57.513] - Field: 'envir' [01:27:57.513] - Field: 'workers' [01:27:57.513] - Field: 'packages' [01:27:57.513] - Field: 'gc' [01:27:57.513] - Field: 'conditions' [01:27:57.514] - Field: 'persistent' [01:27:57.514] - Field: 'expr' [01:27:57.514] - Field: 'uuid' [01:27:57.514] - Field: 'seed' [01:27:57.514] - Field: 'version' [01:27:57.515] - Field: 'result' [01:27:57.515] - Field: 'asynchronous' [01:27:57.515] - Field: 'calls' [01:27:57.515] - Field: 'globals' [01:27:57.515] - Field: 'stdout' [01:27:57.516] - Field: 'earlySignal' [01:27:57.516] - Field: 'lazy' [01:27:57.516] - Field: 'state' [01:27:57.516] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.516] - Launch lazy future ... [01:27:57.517] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:57.517] Packages needed by future strategies (n = 0): [01:27:57.518] { [01:27:57.518] { [01:27:57.518] { [01:27:57.518] ...future.startTime <- base::Sys.time() [01:27:57.518] { [01:27:57.518] { [01:27:57.518] { [01:27:57.518] { [01:27:57.518] { [01:27:57.518] base::local({ [01:27:57.518] has_future <- base::requireNamespace("future", [01:27:57.518] quietly = TRUE) [01:27:57.518] if (has_future) { [01:27:57.518] ns <- base::getNamespace("future") [01:27:57.518] version <- ns[[".package"]][["version"]] [01:27:57.518] if (is.null(version)) [01:27:57.518] version <- utils::packageVersion("future") [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] version <- NULL [01:27:57.518] } [01:27:57.518] if (!has_future || version < "1.8.0") { [01:27:57.518] info <- base::c(r_version = base::gsub("R version ", [01:27:57.518] "", base::R.version$version.string), [01:27:57.518] platform = base::sprintf("%s (%s-bit)", [01:27:57.518] base::R.version$platform, 8 * [01:27:57.518] base::.Machine$sizeof.pointer), [01:27:57.518] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.518] "release", "version")], collapse = " "), [01:27:57.518] hostname = base::Sys.info()[["nodename"]]) [01:27:57.518] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.518] info) [01:27:57.518] info <- base::paste(info, collapse = "; ") [01:27:57.518] if (!has_future) { [01:27:57.518] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.518] info) [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.518] info, version) [01:27:57.518] } [01:27:57.518] base::stop(msg) [01:27:57.518] } [01:27:57.518] }) [01:27:57.518] } [01:27:57.518] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.518] base::options(mc.cores = 1L) [01:27:57.518] } [01:27:57.518] base::local({ [01:27:57.518] for (pkg in c("stats", "datasets")) { [01:27:57.518] base::loadNamespace(pkg) [01:27:57.518] base::library(pkg, character.only = TRUE) [01:27:57.518] } [01:27:57.518] }) [01:27:57.518] } [01:27:57.518] options(future.plan = NULL) [01:27:57.518] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.518] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.518] } [01:27:57.518] ...future.workdir <- getwd() [01:27:57.518] } [01:27:57.518] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.518] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.518] } [01:27:57.518] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.518] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.518] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.518] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.518] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.518] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.518] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.518] base::names(...future.oldOptions)) [01:27:57.518] } [01:27:57.518] if (FALSE) { [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] if (TRUE) { [01:27:57.518] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.518] open = "w") [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.518] windows = "NUL", "/dev/null"), open = "w") [01:27:57.518] } [01:27:57.518] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.518] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.518] base::sink(type = "output", split = FALSE) [01:27:57.518] base::close(...future.stdout) [01:27:57.518] }, add = TRUE) [01:27:57.518] } [01:27:57.518] ...future.frame <- base::sys.nframe() [01:27:57.518] ...future.conditions <- base::list() [01:27:57.518] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.518] if (FALSE) { [01:27:57.518] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.518] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.518] } [01:27:57.518] ...future.result <- base::tryCatch({ [01:27:57.518] base::withCallingHandlers({ [01:27:57.518] ...future.value <- base::withVisible(base::local({ [01:27:57.518] ...future.makeSendCondition <- base::local({ [01:27:57.518] sendCondition <- NULL [01:27:57.518] function(frame = 1L) { [01:27:57.518] if (is.function(sendCondition)) [01:27:57.518] return(sendCondition) [01:27:57.518] ns <- getNamespace("parallel") [01:27:57.518] if (exists("sendData", mode = "function", [01:27:57.518] envir = ns)) { [01:27:57.518] parallel_sendData <- get("sendData", mode = "function", [01:27:57.518] envir = ns) [01:27:57.518] envir <- sys.frame(frame) [01:27:57.518] master <- NULL [01:27:57.518] while (!identical(envir, .GlobalEnv) && [01:27:57.518] !identical(envir, emptyenv())) { [01:27:57.518] if (exists("master", mode = "list", envir = envir, [01:27:57.518] inherits = FALSE)) { [01:27:57.518] master <- get("master", mode = "list", [01:27:57.518] envir = envir, inherits = FALSE) [01:27:57.518] if (inherits(master, c("SOCKnode", [01:27:57.518] "SOCK0node"))) { [01:27:57.518] sendCondition <<- function(cond) { [01:27:57.518] data <- list(type = "VALUE", value = cond, [01:27:57.518] success = TRUE) [01:27:57.518] parallel_sendData(master, data) [01:27:57.518] } [01:27:57.518] return(sendCondition) [01:27:57.518] } [01:27:57.518] } [01:27:57.518] frame <- frame + 1L [01:27:57.518] envir <- sys.frame(frame) [01:27:57.518] } [01:27:57.518] } [01:27:57.518] sendCondition <<- function(cond) NULL [01:27:57.518] } [01:27:57.518] }) [01:27:57.518] withCallingHandlers({ [01:27:57.518] { [01:27:57.518] lm(dist ~ . + 0, data = cars) [01:27:57.518] } [01:27:57.518] }, immediateCondition = function(cond) { [01:27:57.518] sendCondition <- ...future.makeSendCondition() [01:27:57.518] sendCondition(cond) [01:27:57.518] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.518] { [01:27:57.518] inherits <- base::inherits [01:27:57.518] invokeRestart <- base::invokeRestart [01:27:57.518] is.null <- base::is.null [01:27:57.518] muffled <- FALSE [01:27:57.518] if (inherits(cond, "message")) { [01:27:57.518] muffled <- grepl(pattern, "muffleMessage") [01:27:57.518] if (muffled) [01:27:57.518] invokeRestart("muffleMessage") [01:27:57.518] } [01:27:57.518] else if (inherits(cond, "warning")) { [01:27:57.518] muffled <- grepl(pattern, "muffleWarning") [01:27:57.518] if (muffled) [01:27:57.518] invokeRestart("muffleWarning") [01:27:57.518] } [01:27:57.518] else if (inherits(cond, "condition")) { [01:27:57.518] if (!is.null(pattern)) { [01:27:57.518] computeRestarts <- base::computeRestarts [01:27:57.518] grepl <- base::grepl [01:27:57.518] restarts <- computeRestarts(cond) [01:27:57.518] for (restart in restarts) { [01:27:57.518] name <- restart$name [01:27:57.518] if (is.null(name)) [01:27:57.518] next [01:27:57.518] if (!grepl(pattern, name)) [01:27:57.518] next [01:27:57.518] invokeRestart(restart) [01:27:57.518] muffled <- TRUE [01:27:57.518] break [01:27:57.518] } [01:27:57.518] } [01:27:57.518] } [01:27:57.518] invisible(muffled) [01:27:57.518] } [01:27:57.518] muffleCondition(cond) [01:27:57.518] }) [01:27:57.518] })) [01:27:57.518] future::FutureResult(value = ...future.value$value, [01:27:57.518] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.518] ...future.rng), globalenv = if (FALSE) [01:27:57.518] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.518] ...future.globalenv.names)) [01:27:57.518] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.518] }, condition = base::local({ [01:27:57.518] c <- base::c [01:27:57.518] inherits <- base::inherits [01:27:57.518] invokeRestart <- base::invokeRestart [01:27:57.518] length <- base::length [01:27:57.518] list <- base::list [01:27:57.518] seq.int <- base::seq.int [01:27:57.518] signalCondition <- base::signalCondition [01:27:57.518] sys.calls <- base::sys.calls [01:27:57.518] `[[` <- base::`[[` [01:27:57.518] `+` <- base::`+` [01:27:57.518] `<<-` <- base::`<<-` [01:27:57.518] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.518] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.518] 3L)] [01:27:57.518] } [01:27:57.518] function(cond) { [01:27:57.518] is_error <- inherits(cond, "error") [01:27:57.518] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.518] NULL) [01:27:57.518] if (is_error) { [01:27:57.518] sessionInformation <- function() { [01:27:57.518] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.518] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.518] search = base::search(), system = base::Sys.info()) [01:27:57.518] } [01:27:57.518] ...future.conditions[[length(...future.conditions) + [01:27:57.518] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.518] cond$call), session = sessionInformation(), [01:27:57.518] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.518] signalCondition(cond) [01:27:57.518] } [01:27:57.518] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.518] "immediateCondition"))) { [01:27:57.518] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.518] ...future.conditions[[length(...future.conditions) + [01:27:57.518] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.518] if (TRUE && !signal) { [01:27:57.518] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.518] { [01:27:57.518] inherits <- base::inherits [01:27:57.518] invokeRestart <- base::invokeRestart [01:27:57.518] is.null <- base::is.null [01:27:57.518] muffled <- FALSE [01:27:57.518] if (inherits(cond, "message")) { [01:27:57.518] muffled <- grepl(pattern, "muffleMessage") [01:27:57.518] if (muffled) [01:27:57.518] invokeRestart("muffleMessage") [01:27:57.518] } [01:27:57.518] else if (inherits(cond, "warning")) { [01:27:57.518] muffled <- grepl(pattern, "muffleWarning") [01:27:57.518] if (muffled) [01:27:57.518] invokeRestart("muffleWarning") [01:27:57.518] } [01:27:57.518] else if (inherits(cond, "condition")) { [01:27:57.518] if (!is.null(pattern)) { [01:27:57.518] computeRestarts <- base::computeRestarts [01:27:57.518] grepl <- base::grepl [01:27:57.518] restarts <- computeRestarts(cond) [01:27:57.518] for (restart in restarts) { [01:27:57.518] name <- restart$name [01:27:57.518] if (is.null(name)) [01:27:57.518] next [01:27:57.518] if (!grepl(pattern, name)) [01:27:57.518] next [01:27:57.518] invokeRestart(restart) [01:27:57.518] muffled <- TRUE [01:27:57.518] break [01:27:57.518] } [01:27:57.518] } [01:27:57.518] } [01:27:57.518] invisible(muffled) [01:27:57.518] } [01:27:57.518] muffleCondition(cond, pattern = "^muffle") [01:27:57.518] } [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] if (TRUE) { [01:27:57.518] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.518] { [01:27:57.518] inherits <- base::inherits [01:27:57.518] invokeRestart <- base::invokeRestart [01:27:57.518] is.null <- base::is.null [01:27:57.518] muffled <- FALSE [01:27:57.518] if (inherits(cond, "message")) { [01:27:57.518] muffled <- grepl(pattern, "muffleMessage") [01:27:57.518] if (muffled) [01:27:57.518] invokeRestart("muffleMessage") [01:27:57.518] } [01:27:57.518] else if (inherits(cond, "warning")) { [01:27:57.518] muffled <- grepl(pattern, "muffleWarning") [01:27:57.518] if (muffled) [01:27:57.518] invokeRestart("muffleWarning") [01:27:57.518] } [01:27:57.518] else if (inherits(cond, "condition")) { [01:27:57.518] if (!is.null(pattern)) { [01:27:57.518] computeRestarts <- base::computeRestarts [01:27:57.518] grepl <- base::grepl [01:27:57.518] restarts <- computeRestarts(cond) [01:27:57.518] for (restart in restarts) { [01:27:57.518] name <- restart$name [01:27:57.518] if (is.null(name)) [01:27:57.518] next [01:27:57.518] if (!grepl(pattern, name)) [01:27:57.518] next [01:27:57.518] invokeRestart(restart) [01:27:57.518] muffled <- TRUE [01:27:57.518] break [01:27:57.518] } [01:27:57.518] } [01:27:57.518] } [01:27:57.518] invisible(muffled) [01:27:57.518] } [01:27:57.518] muffleCondition(cond, pattern = "^muffle") [01:27:57.518] } [01:27:57.518] } [01:27:57.518] } [01:27:57.518] })) [01:27:57.518] }, error = function(ex) { [01:27:57.518] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.518] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.518] ...future.rng), started = ...future.startTime, [01:27:57.518] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.518] version = "1.8"), class = "FutureResult") [01:27:57.518] }, finally = { [01:27:57.518] if (!identical(...future.workdir, getwd())) [01:27:57.518] setwd(...future.workdir) [01:27:57.518] { [01:27:57.518] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.518] ...future.oldOptions$nwarnings <- NULL [01:27:57.518] } [01:27:57.518] base::options(...future.oldOptions) [01:27:57.518] if (.Platform$OS.type == "windows") { [01:27:57.518] old_names <- names(...future.oldEnvVars) [01:27:57.518] envs <- base::Sys.getenv() [01:27:57.518] names <- names(envs) [01:27:57.518] common <- intersect(names, old_names) [01:27:57.518] added <- setdiff(names, old_names) [01:27:57.518] removed <- setdiff(old_names, names) [01:27:57.518] changed <- common[...future.oldEnvVars[common] != [01:27:57.518] envs[common]] [01:27:57.518] NAMES <- toupper(changed) [01:27:57.518] args <- list() [01:27:57.518] for (kk in seq_along(NAMES)) { [01:27:57.518] name <- changed[[kk]] [01:27:57.518] NAME <- NAMES[[kk]] [01:27:57.518] if (name != NAME && is.element(NAME, old_names)) [01:27:57.518] next [01:27:57.518] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.518] } [01:27:57.518] NAMES <- toupper(added) [01:27:57.518] for (kk in seq_along(NAMES)) { [01:27:57.518] name <- added[[kk]] [01:27:57.518] NAME <- NAMES[[kk]] [01:27:57.518] if (name != NAME && is.element(NAME, old_names)) [01:27:57.518] next [01:27:57.518] args[[name]] <- "" [01:27:57.518] } [01:27:57.518] NAMES <- toupper(removed) [01:27:57.518] for (kk in seq_along(NAMES)) { [01:27:57.518] name <- removed[[kk]] [01:27:57.518] NAME <- NAMES[[kk]] [01:27:57.518] if (name != NAME && is.element(NAME, old_names)) [01:27:57.518] next [01:27:57.518] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.518] } [01:27:57.518] if (length(args) > 0) [01:27:57.518] base::do.call(base::Sys.setenv, args = args) [01:27:57.518] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.518] } [01:27:57.518] { [01:27:57.518] if (base::length(...future.futureOptionsAdded) > [01:27:57.518] 0L) { [01:27:57.518] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.518] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.518] base::options(opts) [01:27:57.518] } [01:27:57.518] { [01:27:57.518] { [01:27:57.518] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.518] NULL [01:27:57.518] } [01:27:57.518] options(future.plan = NULL) [01:27:57.518] if (is.na(NA_character_)) [01:27:57.518] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.518] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.518] future::plan(list(function (..., workers = availableCores(), [01:27:57.518] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.518] envir = parent.frame()) [01:27:57.518] { [01:27:57.518] if (is.function(workers)) [01:27:57.518] workers <- workers() [01:27:57.518] workers <- structure(as.integer(workers), [01:27:57.518] class = class(workers)) [01:27:57.518] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.518] workers >= 1) [01:27:57.518] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.518] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.518] } [01:27:57.518] future <- MultisessionFuture(..., workers = workers, [01:27:57.518] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.518] envir = envir) [01:27:57.518] if (!future$lazy) [01:27:57.518] future <- run(future) [01:27:57.518] invisible(future) [01:27:57.518] }), .cleanup = FALSE, .init = FALSE) [01:27:57.518] } [01:27:57.518] } [01:27:57.518] } [01:27:57.518] }) [01:27:57.518] if (TRUE) { [01:27:57.518] base::sink(type = "output", split = FALSE) [01:27:57.518] if (TRUE) { [01:27:57.518] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.518] } [01:27:57.518] else { [01:27:57.518] ...future.result["stdout"] <- base::list(NULL) [01:27:57.518] } [01:27:57.518] base::close(...future.stdout) [01:27:57.518] ...future.stdout <- NULL [01:27:57.518] } [01:27:57.518] ...future.result$conditions <- ...future.conditions [01:27:57.518] ...future.result$finished <- base::Sys.time() [01:27:57.518] ...future.result [01:27:57.518] } [01:27:57.524] MultisessionFuture started [01:27:57.524] - Launch lazy future ... done [01:27:57.524] run() for 'MultisessionFuture' ... done [01:27:57.524] result() for ClusterFuture ... [01:27:57.524] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.525] - Validating connection of MultisessionFuture [01:27:57.542] - received message: FutureResult [01:27:57.542] - Received FutureResult [01:27:57.542] - Erased future from FutureRegistry [01:27:57.542] result() for ClusterFuture ... [01:27:57.542] - result already collected: FutureResult [01:27:57.543] result() for ClusterFuture ... done [01:27:57.543] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.543] result() for ClusterFuture ... done [01:27:57.543] result() for ClusterFuture ... [01:27:57.543] - result already collected: FutureResult [01:27:57.544] result() for ClusterFuture ... done Call: lm(formula = dist ~ . + 0, data = cars) Coefficients: speed 2.909 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ speed + speed^2, data = cars) Coefficients: (Intercept) speed -17.579 3.932 [01:27:57.547] getGlobalsAndPackages() ... [01:27:57.548] Searching for globals... [01:27:57.550] - globals found: [8] '{', 'lm', 'dist', '+', 'speed', '^', '~', 'cars' [01:27:57.551] Searching for globals ... DONE [01:27:57.551] Resolving globals: FALSE [01:27:57.552] [01:27:57.552] - packages: [2] 'stats', 'datasets' [01:27:57.552] getGlobalsAndPackages() ... DONE [01:27:57.552] run() for 'Future' ... [01:27:57.553] - state: 'created' [01:27:57.553] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.567] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.568] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.568] - Field: 'node' [01:27:57.568] - Field: 'label' [01:27:57.568] - Field: 'local' [01:27:57.568] - Field: 'owner' [01:27:57.569] - Field: 'envir' [01:27:57.569] - Field: 'workers' [01:27:57.569] - Field: 'packages' [01:27:57.569] - Field: 'gc' [01:27:57.569] - Field: 'conditions' [01:27:57.570] - Field: 'persistent' [01:27:57.570] - Field: 'expr' [01:27:57.570] - Field: 'uuid' [01:27:57.570] - Field: 'seed' [01:27:57.570] - Field: 'version' [01:27:57.571] - Field: 'result' [01:27:57.571] - Field: 'asynchronous' [01:27:57.571] - Field: 'calls' [01:27:57.571] - Field: 'globals' [01:27:57.571] - Field: 'stdout' [01:27:57.572] - Field: 'earlySignal' [01:27:57.572] - Field: 'lazy' [01:27:57.572] - Field: 'state' [01:27:57.572] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.572] - Launch lazy future ... [01:27:57.573] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:57.573] Packages needed by future strategies (n = 0): [01:27:57.574] { [01:27:57.574] { [01:27:57.574] { [01:27:57.574] ...future.startTime <- base::Sys.time() [01:27:57.574] { [01:27:57.574] { [01:27:57.574] { [01:27:57.574] { [01:27:57.574] { [01:27:57.574] base::local({ [01:27:57.574] has_future <- base::requireNamespace("future", [01:27:57.574] quietly = TRUE) [01:27:57.574] if (has_future) { [01:27:57.574] ns <- base::getNamespace("future") [01:27:57.574] version <- ns[[".package"]][["version"]] [01:27:57.574] if (is.null(version)) [01:27:57.574] version <- utils::packageVersion("future") [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] version <- NULL [01:27:57.574] } [01:27:57.574] if (!has_future || version < "1.8.0") { [01:27:57.574] info <- base::c(r_version = base::gsub("R version ", [01:27:57.574] "", base::R.version$version.string), [01:27:57.574] platform = base::sprintf("%s (%s-bit)", [01:27:57.574] base::R.version$platform, 8 * [01:27:57.574] base::.Machine$sizeof.pointer), [01:27:57.574] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.574] "release", "version")], collapse = " "), [01:27:57.574] hostname = base::Sys.info()[["nodename"]]) [01:27:57.574] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.574] info) [01:27:57.574] info <- base::paste(info, collapse = "; ") [01:27:57.574] if (!has_future) { [01:27:57.574] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.574] info) [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.574] info, version) [01:27:57.574] } [01:27:57.574] base::stop(msg) [01:27:57.574] } [01:27:57.574] }) [01:27:57.574] } [01:27:57.574] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.574] base::options(mc.cores = 1L) [01:27:57.574] } [01:27:57.574] base::local({ [01:27:57.574] for (pkg in c("stats", "datasets")) { [01:27:57.574] base::loadNamespace(pkg) [01:27:57.574] base::library(pkg, character.only = TRUE) [01:27:57.574] } [01:27:57.574] }) [01:27:57.574] } [01:27:57.574] options(future.plan = NULL) [01:27:57.574] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.574] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.574] } [01:27:57.574] ...future.workdir <- getwd() [01:27:57.574] } [01:27:57.574] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.574] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.574] } [01:27:57.574] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.574] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.574] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.574] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.574] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.574] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.574] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.574] base::names(...future.oldOptions)) [01:27:57.574] } [01:27:57.574] if (FALSE) { [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] if (TRUE) { [01:27:57.574] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.574] open = "w") [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.574] windows = "NUL", "/dev/null"), open = "w") [01:27:57.574] } [01:27:57.574] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.574] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.574] base::sink(type = "output", split = FALSE) [01:27:57.574] base::close(...future.stdout) [01:27:57.574] }, add = TRUE) [01:27:57.574] } [01:27:57.574] ...future.frame <- base::sys.nframe() [01:27:57.574] ...future.conditions <- base::list() [01:27:57.574] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.574] if (FALSE) { [01:27:57.574] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.574] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.574] } [01:27:57.574] ...future.result <- base::tryCatch({ [01:27:57.574] base::withCallingHandlers({ [01:27:57.574] ...future.value <- base::withVisible(base::local({ [01:27:57.574] ...future.makeSendCondition <- base::local({ [01:27:57.574] sendCondition <- NULL [01:27:57.574] function(frame = 1L) { [01:27:57.574] if (is.function(sendCondition)) [01:27:57.574] return(sendCondition) [01:27:57.574] ns <- getNamespace("parallel") [01:27:57.574] if (exists("sendData", mode = "function", [01:27:57.574] envir = ns)) { [01:27:57.574] parallel_sendData <- get("sendData", mode = "function", [01:27:57.574] envir = ns) [01:27:57.574] envir <- sys.frame(frame) [01:27:57.574] master <- NULL [01:27:57.574] while (!identical(envir, .GlobalEnv) && [01:27:57.574] !identical(envir, emptyenv())) { [01:27:57.574] if (exists("master", mode = "list", envir = envir, [01:27:57.574] inherits = FALSE)) { [01:27:57.574] master <- get("master", mode = "list", [01:27:57.574] envir = envir, inherits = FALSE) [01:27:57.574] if (inherits(master, c("SOCKnode", [01:27:57.574] "SOCK0node"))) { [01:27:57.574] sendCondition <<- function(cond) { [01:27:57.574] data <- list(type = "VALUE", value = cond, [01:27:57.574] success = TRUE) [01:27:57.574] parallel_sendData(master, data) [01:27:57.574] } [01:27:57.574] return(sendCondition) [01:27:57.574] } [01:27:57.574] } [01:27:57.574] frame <- frame + 1L [01:27:57.574] envir <- sys.frame(frame) [01:27:57.574] } [01:27:57.574] } [01:27:57.574] sendCondition <<- function(cond) NULL [01:27:57.574] } [01:27:57.574] }) [01:27:57.574] withCallingHandlers({ [01:27:57.574] { [01:27:57.574] lm(dist ~ speed + speed^2, data = cars) [01:27:57.574] } [01:27:57.574] }, immediateCondition = function(cond) { [01:27:57.574] sendCondition <- ...future.makeSendCondition() [01:27:57.574] sendCondition(cond) [01:27:57.574] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.574] { [01:27:57.574] inherits <- base::inherits [01:27:57.574] invokeRestart <- base::invokeRestart [01:27:57.574] is.null <- base::is.null [01:27:57.574] muffled <- FALSE [01:27:57.574] if (inherits(cond, "message")) { [01:27:57.574] muffled <- grepl(pattern, "muffleMessage") [01:27:57.574] if (muffled) [01:27:57.574] invokeRestart("muffleMessage") [01:27:57.574] } [01:27:57.574] else if (inherits(cond, "warning")) { [01:27:57.574] muffled <- grepl(pattern, "muffleWarning") [01:27:57.574] if (muffled) [01:27:57.574] invokeRestart("muffleWarning") [01:27:57.574] } [01:27:57.574] else if (inherits(cond, "condition")) { [01:27:57.574] if (!is.null(pattern)) { [01:27:57.574] computeRestarts <- base::computeRestarts [01:27:57.574] grepl <- base::grepl [01:27:57.574] restarts <- computeRestarts(cond) [01:27:57.574] for (restart in restarts) { [01:27:57.574] name <- restart$name [01:27:57.574] if (is.null(name)) [01:27:57.574] next [01:27:57.574] if (!grepl(pattern, name)) [01:27:57.574] next [01:27:57.574] invokeRestart(restart) [01:27:57.574] muffled <- TRUE [01:27:57.574] break [01:27:57.574] } [01:27:57.574] } [01:27:57.574] } [01:27:57.574] invisible(muffled) [01:27:57.574] } [01:27:57.574] muffleCondition(cond) [01:27:57.574] }) [01:27:57.574] })) [01:27:57.574] future::FutureResult(value = ...future.value$value, [01:27:57.574] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.574] ...future.rng), globalenv = if (FALSE) [01:27:57.574] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.574] ...future.globalenv.names)) [01:27:57.574] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.574] }, condition = base::local({ [01:27:57.574] c <- base::c [01:27:57.574] inherits <- base::inherits [01:27:57.574] invokeRestart <- base::invokeRestart [01:27:57.574] length <- base::length [01:27:57.574] list <- base::list [01:27:57.574] seq.int <- base::seq.int [01:27:57.574] signalCondition <- base::signalCondition [01:27:57.574] sys.calls <- base::sys.calls [01:27:57.574] `[[` <- base::`[[` [01:27:57.574] `+` <- base::`+` [01:27:57.574] `<<-` <- base::`<<-` [01:27:57.574] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.574] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.574] 3L)] [01:27:57.574] } [01:27:57.574] function(cond) { [01:27:57.574] is_error <- inherits(cond, "error") [01:27:57.574] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.574] NULL) [01:27:57.574] if (is_error) { [01:27:57.574] sessionInformation <- function() { [01:27:57.574] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.574] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.574] search = base::search(), system = base::Sys.info()) [01:27:57.574] } [01:27:57.574] ...future.conditions[[length(...future.conditions) + [01:27:57.574] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.574] cond$call), session = sessionInformation(), [01:27:57.574] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.574] signalCondition(cond) [01:27:57.574] } [01:27:57.574] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.574] "immediateCondition"))) { [01:27:57.574] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.574] ...future.conditions[[length(...future.conditions) + [01:27:57.574] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.574] if (TRUE && !signal) { [01:27:57.574] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.574] { [01:27:57.574] inherits <- base::inherits [01:27:57.574] invokeRestart <- base::invokeRestart [01:27:57.574] is.null <- base::is.null [01:27:57.574] muffled <- FALSE [01:27:57.574] if (inherits(cond, "message")) { [01:27:57.574] muffled <- grepl(pattern, "muffleMessage") [01:27:57.574] if (muffled) [01:27:57.574] invokeRestart("muffleMessage") [01:27:57.574] } [01:27:57.574] else if (inherits(cond, "warning")) { [01:27:57.574] muffled <- grepl(pattern, "muffleWarning") [01:27:57.574] if (muffled) [01:27:57.574] invokeRestart("muffleWarning") [01:27:57.574] } [01:27:57.574] else if (inherits(cond, "condition")) { [01:27:57.574] if (!is.null(pattern)) { [01:27:57.574] computeRestarts <- base::computeRestarts [01:27:57.574] grepl <- base::grepl [01:27:57.574] restarts <- computeRestarts(cond) [01:27:57.574] for (restart in restarts) { [01:27:57.574] name <- restart$name [01:27:57.574] if (is.null(name)) [01:27:57.574] next [01:27:57.574] if (!grepl(pattern, name)) [01:27:57.574] next [01:27:57.574] invokeRestart(restart) [01:27:57.574] muffled <- TRUE [01:27:57.574] break [01:27:57.574] } [01:27:57.574] } [01:27:57.574] } [01:27:57.574] invisible(muffled) [01:27:57.574] } [01:27:57.574] muffleCondition(cond, pattern = "^muffle") [01:27:57.574] } [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] if (TRUE) { [01:27:57.574] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.574] { [01:27:57.574] inherits <- base::inherits [01:27:57.574] invokeRestart <- base::invokeRestart [01:27:57.574] is.null <- base::is.null [01:27:57.574] muffled <- FALSE [01:27:57.574] if (inherits(cond, "message")) { [01:27:57.574] muffled <- grepl(pattern, "muffleMessage") [01:27:57.574] if (muffled) [01:27:57.574] invokeRestart("muffleMessage") [01:27:57.574] } [01:27:57.574] else if (inherits(cond, "warning")) { [01:27:57.574] muffled <- grepl(pattern, "muffleWarning") [01:27:57.574] if (muffled) [01:27:57.574] invokeRestart("muffleWarning") [01:27:57.574] } [01:27:57.574] else if (inherits(cond, "condition")) { [01:27:57.574] if (!is.null(pattern)) { [01:27:57.574] computeRestarts <- base::computeRestarts [01:27:57.574] grepl <- base::grepl [01:27:57.574] restarts <- computeRestarts(cond) [01:27:57.574] for (restart in restarts) { [01:27:57.574] name <- restart$name [01:27:57.574] if (is.null(name)) [01:27:57.574] next [01:27:57.574] if (!grepl(pattern, name)) [01:27:57.574] next [01:27:57.574] invokeRestart(restart) [01:27:57.574] muffled <- TRUE [01:27:57.574] break [01:27:57.574] } [01:27:57.574] } [01:27:57.574] } [01:27:57.574] invisible(muffled) [01:27:57.574] } [01:27:57.574] muffleCondition(cond, pattern = "^muffle") [01:27:57.574] } [01:27:57.574] } [01:27:57.574] } [01:27:57.574] })) [01:27:57.574] }, error = function(ex) { [01:27:57.574] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.574] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.574] ...future.rng), started = ...future.startTime, [01:27:57.574] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.574] version = "1.8"), class = "FutureResult") [01:27:57.574] }, finally = { [01:27:57.574] if (!identical(...future.workdir, getwd())) [01:27:57.574] setwd(...future.workdir) [01:27:57.574] { [01:27:57.574] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.574] ...future.oldOptions$nwarnings <- NULL [01:27:57.574] } [01:27:57.574] base::options(...future.oldOptions) [01:27:57.574] if (.Platform$OS.type == "windows") { [01:27:57.574] old_names <- names(...future.oldEnvVars) [01:27:57.574] envs <- base::Sys.getenv() [01:27:57.574] names <- names(envs) [01:27:57.574] common <- intersect(names, old_names) [01:27:57.574] added <- setdiff(names, old_names) [01:27:57.574] removed <- setdiff(old_names, names) [01:27:57.574] changed <- common[...future.oldEnvVars[common] != [01:27:57.574] envs[common]] [01:27:57.574] NAMES <- toupper(changed) [01:27:57.574] args <- list() [01:27:57.574] for (kk in seq_along(NAMES)) { [01:27:57.574] name <- changed[[kk]] [01:27:57.574] NAME <- NAMES[[kk]] [01:27:57.574] if (name != NAME && is.element(NAME, old_names)) [01:27:57.574] next [01:27:57.574] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.574] } [01:27:57.574] NAMES <- toupper(added) [01:27:57.574] for (kk in seq_along(NAMES)) { [01:27:57.574] name <- added[[kk]] [01:27:57.574] NAME <- NAMES[[kk]] [01:27:57.574] if (name != NAME && is.element(NAME, old_names)) [01:27:57.574] next [01:27:57.574] args[[name]] <- "" [01:27:57.574] } [01:27:57.574] NAMES <- toupper(removed) [01:27:57.574] for (kk in seq_along(NAMES)) { [01:27:57.574] name <- removed[[kk]] [01:27:57.574] NAME <- NAMES[[kk]] [01:27:57.574] if (name != NAME && is.element(NAME, old_names)) [01:27:57.574] next [01:27:57.574] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.574] } [01:27:57.574] if (length(args) > 0) [01:27:57.574] base::do.call(base::Sys.setenv, args = args) [01:27:57.574] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.574] } [01:27:57.574] { [01:27:57.574] if (base::length(...future.futureOptionsAdded) > [01:27:57.574] 0L) { [01:27:57.574] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.574] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.574] base::options(opts) [01:27:57.574] } [01:27:57.574] { [01:27:57.574] { [01:27:57.574] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.574] NULL [01:27:57.574] } [01:27:57.574] options(future.plan = NULL) [01:27:57.574] if (is.na(NA_character_)) [01:27:57.574] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.574] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.574] future::plan(list(function (..., workers = availableCores(), [01:27:57.574] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.574] envir = parent.frame()) [01:27:57.574] { [01:27:57.574] if (is.function(workers)) [01:27:57.574] workers <- workers() [01:27:57.574] workers <- structure(as.integer(workers), [01:27:57.574] class = class(workers)) [01:27:57.574] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.574] workers >= 1) [01:27:57.574] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.574] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.574] } [01:27:57.574] future <- MultisessionFuture(..., workers = workers, [01:27:57.574] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.574] envir = envir) [01:27:57.574] if (!future$lazy) [01:27:57.574] future <- run(future) [01:27:57.574] invisible(future) [01:27:57.574] }), .cleanup = FALSE, .init = FALSE) [01:27:57.574] } [01:27:57.574] } [01:27:57.574] } [01:27:57.574] }) [01:27:57.574] if (TRUE) { [01:27:57.574] base::sink(type = "output", split = FALSE) [01:27:57.574] if (TRUE) { [01:27:57.574] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.574] } [01:27:57.574] else { [01:27:57.574] ...future.result["stdout"] <- base::list(NULL) [01:27:57.574] } [01:27:57.574] base::close(...future.stdout) [01:27:57.574] ...future.stdout <- NULL [01:27:57.574] } [01:27:57.574] ...future.result$conditions <- ...future.conditions [01:27:57.574] ...future.result$finished <- base::Sys.time() [01:27:57.574] ...future.result [01:27:57.574] } [01:27:57.579] MultisessionFuture started [01:27:57.580] - Launch lazy future ... done [01:27:57.580] run() for 'MultisessionFuture' ... done [01:27:57.580] result() for ClusterFuture ... [01:27:57.580] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.581] - Validating connection of MultisessionFuture [01:27:57.596] - received message: FutureResult [01:27:57.596] - Received FutureResult [01:27:57.597] - Erased future from FutureRegistry [01:27:57.597] result() for ClusterFuture ... [01:27:57.597] - result already collected: FutureResult [01:27:57.597] result() for ClusterFuture ... done [01:27:57.597] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.597] result() for ClusterFuture ... done [01:27:57.598] result() for ClusterFuture ... [01:27:57.598] - result already collected: FutureResult [01:27:57.598] result() for ClusterFuture ... done Call: lm(formula = dist ~ speed + speed^2, data = cars) Coefficients: (Intercept) speed -17.579 3.932 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ speed + I(speed^2), data = cars) Coefficients: (Intercept) speed I(speed^2) 2.47014 0.91329 0.09996 [01:27:57.601] getGlobalsAndPackages() ... [01:27:57.601] Searching for globals... [01:27:57.604] - globals found: [9] '{', 'lm', 'dist', '+', 'speed', 'I', '^', '~', 'cars' [01:27:57.605] Searching for globals ... DONE [01:27:57.605] Resolving globals: FALSE [01:27:57.605] [01:27:57.606] - packages: [2] 'stats', 'datasets' [01:27:57.606] getGlobalsAndPackages() ... DONE [01:27:57.606] run() for 'Future' ... [01:27:57.606] - state: 'created' [01:27:57.607] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.621] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.621] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.621] - Field: 'node' [01:27:57.622] - Field: 'label' [01:27:57.622] - Field: 'local' [01:27:57.622] - Field: 'owner' [01:27:57.622] - Field: 'envir' [01:27:57.622] - Field: 'workers' [01:27:57.623] - Field: 'packages' [01:27:57.623] - Field: 'gc' [01:27:57.623] - Field: 'conditions' [01:27:57.623] - Field: 'persistent' [01:27:57.623] - Field: 'expr' [01:27:57.624] - Field: 'uuid' [01:27:57.624] - Field: 'seed' [01:27:57.624] - Field: 'version' [01:27:57.624] - Field: 'result' [01:27:57.624] - Field: 'asynchronous' [01:27:57.624] - Field: 'calls' [01:27:57.625] - Field: 'globals' [01:27:57.625] - Field: 'stdout' [01:27:57.625] - Field: 'earlySignal' [01:27:57.625] - Field: 'lazy' [01:27:57.625] - Field: 'state' [01:27:57.626] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.626] - Launch lazy future ... [01:27:57.626] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:57.626] Packages needed by future strategies (n = 0): [01:27:57.627] { [01:27:57.627] { [01:27:57.627] { [01:27:57.627] ...future.startTime <- base::Sys.time() [01:27:57.627] { [01:27:57.627] { [01:27:57.627] { [01:27:57.627] { [01:27:57.627] { [01:27:57.627] base::local({ [01:27:57.627] has_future <- base::requireNamespace("future", [01:27:57.627] quietly = TRUE) [01:27:57.627] if (has_future) { [01:27:57.627] ns <- base::getNamespace("future") [01:27:57.627] version <- ns[[".package"]][["version"]] [01:27:57.627] if (is.null(version)) [01:27:57.627] version <- utils::packageVersion("future") [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] version <- NULL [01:27:57.627] } [01:27:57.627] if (!has_future || version < "1.8.0") { [01:27:57.627] info <- base::c(r_version = base::gsub("R version ", [01:27:57.627] "", base::R.version$version.string), [01:27:57.627] platform = base::sprintf("%s (%s-bit)", [01:27:57.627] base::R.version$platform, 8 * [01:27:57.627] base::.Machine$sizeof.pointer), [01:27:57.627] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.627] "release", "version")], collapse = " "), [01:27:57.627] hostname = base::Sys.info()[["nodename"]]) [01:27:57.627] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.627] info) [01:27:57.627] info <- base::paste(info, collapse = "; ") [01:27:57.627] if (!has_future) { [01:27:57.627] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.627] info) [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.627] info, version) [01:27:57.627] } [01:27:57.627] base::stop(msg) [01:27:57.627] } [01:27:57.627] }) [01:27:57.627] } [01:27:57.627] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.627] base::options(mc.cores = 1L) [01:27:57.627] } [01:27:57.627] base::local({ [01:27:57.627] for (pkg in c("stats", "datasets")) { [01:27:57.627] base::loadNamespace(pkg) [01:27:57.627] base::library(pkg, character.only = TRUE) [01:27:57.627] } [01:27:57.627] }) [01:27:57.627] } [01:27:57.627] options(future.plan = NULL) [01:27:57.627] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.627] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.627] } [01:27:57.627] ...future.workdir <- getwd() [01:27:57.627] } [01:27:57.627] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.627] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.627] } [01:27:57.627] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.627] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.627] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.627] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.627] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.627] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.627] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.627] base::names(...future.oldOptions)) [01:27:57.627] } [01:27:57.627] if (FALSE) { [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] if (TRUE) { [01:27:57.627] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.627] open = "w") [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.627] windows = "NUL", "/dev/null"), open = "w") [01:27:57.627] } [01:27:57.627] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.627] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.627] base::sink(type = "output", split = FALSE) [01:27:57.627] base::close(...future.stdout) [01:27:57.627] }, add = TRUE) [01:27:57.627] } [01:27:57.627] ...future.frame <- base::sys.nframe() [01:27:57.627] ...future.conditions <- base::list() [01:27:57.627] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.627] if (FALSE) { [01:27:57.627] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.627] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.627] } [01:27:57.627] ...future.result <- base::tryCatch({ [01:27:57.627] base::withCallingHandlers({ [01:27:57.627] ...future.value <- base::withVisible(base::local({ [01:27:57.627] ...future.makeSendCondition <- base::local({ [01:27:57.627] sendCondition <- NULL [01:27:57.627] function(frame = 1L) { [01:27:57.627] if (is.function(sendCondition)) [01:27:57.627] return(sendCondition) [01:27:57.627] ns <- getNamespace("parallel") [01:27:57.627] if (exists("sendData", mode = "function", [01:27:57.627] envir = ns)) { [01:27:57.627] parallel_sendData <- get("sendData", mode = "function", [01:27:57.627] envir = ns) [01:27:57.627] envir <- sys.frame(frame) [01:27:57.627] master <- NULL [01:27:57.627] while (!identical(envir, .GlobalEnv) && [01:27:57.627] !identical(envir, emptyenv())) { [01:27:57.627] if (exists("master", mode = "list", envir = envir, [01:27:57.627] inherits = FALSE)) { [01:27:57.627] master <- get("master", mode = "list", [01:27:57.627] envir = envir, inherits = FALSE) [01:27:57.627] if (inherits(master, c("SOCKnode", [01:27:57.627] "SOCK0node"))) { [01:27:57.627] sendCondition <<- function(cond) { [01:27:57.627] data <- list(type = "VALUE", value = cond, [01:27:57.627] success = TRUE) [01:27:57.627] parallel_sendData(master, data) [01:27:57.627] } [01:27:57.627] return(sendCondition) [01:27:57.627] } [01:27:57.627] } [01:27:57.627] frame <- frame + 1L [01:27:57.627] envir <- sys.frame(frame) [01:27:57.627] } [01:27:57.627] } [01:27:57.627] sendCondition <<- function(cond) NULL [01:27:57.627] } [01:27:57.627] }) [01:27:57.627] withCallingHandlers({ [01:27:57.627] { [01:27:57.627] lm(dist ~ speed + I(speed^2), data = cars) [01:27:57.627] } [01:27:57.627] }, immediateCondition = function(cond) { [01:27:57.627] sendCondition <- ...future.makeSendCondition() [01:27:57.627] sendCondition(cond) [01:27:57.627] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.627] { [01:27:57.627] inherits <- base::inherits [01:27:57.627] invokeRestart <- base::invokeRestart [01:27:57.627] is.null <- base::is.null [01:27:57.627] muffled <- FALSE [01:27:57.627] if (inherits(cond, "message")) { [01:27:57.627] muffled <- grepl(pattern, "muffleMessage") [01:27:57.627] if (muffled) [01:27:57.627] invokeRestart("muffleMessage") [01:27:57.627] } [01:27:57.627] else if (inherits(cond, "warning")) { [01:27:57.627] muffled <- grepl(pattern, "muffleWarning") [01:27:57.627] if (muffled) [01:27:57.627] invokeRestart("muffleWarning") [01:27:57.627] } [01:27:57.627] else if (inherits(cond, "condition")) { [01:27:57.627] if (!is.null(pattern)) { [01:27:57.627] computeRestarts <- base::computeRestarts [01:27:57.627] grepl <- base::grepl [01:27:57.627] restarts <- computeRestarts(cond) [01:27:57.627] for (restart in restarts) { [01:27:57.627] name <- restart$name [01:27:57.627] if (is.null(name)) [01:27:57.627] next [01:27:57.627] if (!grepl(pattern, name)) [01:27:57.627] next [01:27:57.627] invokeRestart(restart) [01:27:57.627] muffled <- TRUE [01:27:57.627] break [01:27:57.627] } [01:27:57.627] } [01:27:57.627] } [01:27:57.627] invisible(muffled) [01:27:57.627] } [01:27:57.627] muffleCondition(cond) [01:27:57.627] }) [01:27:57.627] })) [01:27:57.627] future::FutureResult(value = ...future.value$value, [01:27:57.627] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.627] ...future.rng), globalenv = if (FALSE) [01:27:57.627] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.627] ...future.globalenv.names)) [01:27:57.627] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.627] }, condition = base::local({ [01:27:57.627] c <- base::c [01:27:57.627] inherits <- base::inherits [01:27:57.627] invokeRestart <- base::invokeRestart [01:27:57.627] length <- base::length [01:27:57.627] list <- base::list [01:27:57.627] seq.int <- base::seq.int [01:27:57.627] signalCondition <- base::signalCondition [01:27:57.627] sys.calls <- base::sys.calls [01:27:57.627] `[[` <- base::`[[` [01:27:57.627] `+` <- base::`+` [01:27:57.627] `<<-` <- base::`<<-` [01:27:57.627] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.627] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.627] 3L)] [01:27:57.627] } [01:27:57.627] function(cond) { [01:27:57.627] is_error <- inherits(cond, "error") [01:27:57.627] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.627] NULL) [01:27:57.627] if (is_error) { [01:27:57.627] sessionInformation <- function() { [01:27:57.627] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.627] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.627] search = base::search(), system = base::Sys.info()) [01:27:57.627] } [01:27:57.627] ...future.conditions[[length(...future.conditions) + [01:27:57.627] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.627] cond$call), session = sessionInformation(), [01:27:57.627] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.627] signalCondition(cond) [01:27:57.627] } [01:27:57.627] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.627] "immediateCondition"))) { [01:27:57.627] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.627] ...future.conditions[[length(...future.conditions) + [01:27:57.627] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.627] if (TRUE && !signal) { [01:27:57.627] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.627] { [01:27:57.627] inherits <- base::inherits [01:27:57.627] invokeRestart <- base::invokeRestart [01:27:57.627] is.null <- base::is.null [01:27:57.627] muffled <- FALSE [01:27:57.627] if (inherits(cond, "message")) { [01:27:57.627] muffled <- grepl(pattern, "muffleMessage") [01:27:57.627] if (muffled) [01:27:57.627] invokeRestart("muffleMessage") [01:27:57.627] } [01:27:57.627] else if (inherits(cond, "warning")) { [01:27:57.627] muffled <- grepl(pattern, "muffleWarning") [01:27:57.627] if (muffled) [01:27:57.627] invokeRestart("muffleWarning") [01:27:57.627] } [01:27:57.627] else if (inherits(cond, "condition")) { [01:27:57.627] if (!is.null(pattern)) { [01:27:57.627] computeRestarts <- base::computeRestarts [01:27:57.627] grepl <- base::grepl [01:27:57.627] restarts <- computeRestarts(cond) [01:27:57.627] for (restart in restarts) { [01:27:57.627] name <- restart$name [01:27:57.627] if (is.null(name)) [01:27:57.627] next [01:27:57.627] if (!grepl(pattern, name)) [01:27:57.627] next [01:27:57.627] invokeRestart(restart) [01:27:57.627] muffled <- TRUE [01:27:57.627] break [01:27:57.627] } [01:27:57.627] } [01:27:57.627] } [01:27:57.627] invisible(muffled) [01:27:57.627] } [01:27:57.627] muffleCondition(cond, pattern = "^muffle") [01:27:57.627] } [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] if (TRUE) { [01:27:57.627] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.627] { [01:27:57.627] inherits <- base::inherits [01:27:57.627] invokeRestart <- base::invokeRestart [01:27:57.627] is.null <- base::is.null [01:27:57.627] muffled <- FALSE [01:27:57.627] if (inherits(cond, "message")) { [01:27:57.627] muffled <- grepl(pattern, "muffleMessage") [01:27:57.627] if (muffled) [01:27:57.627] invokeRestart("muffleMessage") [01:27:57.627] } [01:27:57.627] else if (inherits(cond, "warning")) { [01:27:57.627] muffled <- grepl(pattern, "muffleWarning") [01:27:57.627] if (muffled) [01:27:57.627] invokeRestart("muffleWarning") [01:27:57.627] } [01:27:57.627] else if (inherits(cond, "condition")) { [01:27:57.627] if (!is.null(pattern)) { [01:27:57.627] computeRestarts <- base::computeRestarts [01:27:57.627] grepl <- base::grepl [01:27:57.627] restarts <- computeRestarts(cond) [01:27:57.627] for (restart in restarts) { [01:27:57.627] name <- restart$name [01:27:57.627] if (is.null(name)) [01:27:57.627] next [01:27:57.627] if (!grepl(pattern, name)) [01:27:57.627] next [01:27:57.627] invokeRestart(restart) [01:27:57.627] muffled <- TRUE [01:27:57.627] break [01:27:57.627] } [01:27:57.627] } [01:27:57.627] } [01:27:57.627] invisible(muffled) [01:27:57.627] } [01:27:57.627] muffleCondition(cond, pattern = "^muffle") [01:27:57.627] } [01:27:57.627] } [01:27:57.627] } [01:27:57.627] })) [01:27:57.627] }, error = function(ex) { [01:27:57.627] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.627] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.627] ...future.rng), started = ...future.startTime, [01:27:57.627] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.627] version = "1.8"), class = "FutureResult") [01:27:57.627] }, finally = { [01:27:57.627] if (!identical(...future.workdir, getwd())) [01:27:57.627] setwd(...future.workdir) [01:27:57.627] { [01:27:57.627] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.627] ...future.oldOptions$nwarnings <- NULL [01:27:57.627] } [01:27:57.627] base::options(...future.oldOptions) [01:27:57.627] if (.Platform$OS.type == "windows") { [01:27:57.627] old_names <- names(...future.oldEnvVars) [01:27:57.627] envs <- base::Sys.getenv() [01:27:57.627] names <- names(envs) [01:27:57.627] common <- intersect(names, old_names) [01:27:57.627] added <- setdiff(names, old_names) [01:27:57.627] removed <- setdiff(old_names, names) [01:27:57.627] changed <- common[...future.oldEnvVars[common] != [01:27:57.627] envs[common]] [01:27:57.627] NAMES <- toupper(changed) [01:27:57.627] args <- list() [01:27:57.627] for (kk in seq_along(NAMES)) { [01:27:57.627] name <- changed[[kk]] [01:27:57.627] NAME <- NAMES[[kk]] [01:27:57.627] if (name != NAME && is.element(NAME, old_names)) [01:27:57.627] next [01:27:57.627] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.627] } [01:27:57.627] NAMES <- toupper(added) [01:27:57.627] for (kk in seq_along(NAMES)) { [01:27:57.627] name <- added[[kk]] [01:27:57.627] NAME <- NAMES[[kk]] [01:27:57.627] if (name != NAME && is.element(NAME, old_names)) [01:27:57.627] next [01:27:57.627] args[[name]] <- "" [01:27:57.627] } [01:27:57.627] NAMES <- toupper(removed) [01:27:57.627] for (kk in seq_along(NAMES)) { [01:27:57.627] name <- removed[[kk]] [01:27:57.627] NAME <- NAMES[[kk]] [01:27:57.627] if (name != NAME && is.element(NAME, old_names)) [01:27:57.627] next [01:27:57.627] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.627] } [01:27:57.627] if (length(args) > 0) [01:27:57.627] base::do.call(base::Sys.setenv, args = args) [01:27:57.627] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.627] } [01:27:57.627] { [01:27:57.627] if (base::length(...future.futureOptionsAdded) > [01:27:57.627] 0L) { [01:27:57.627] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.627] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.627] base::options(opts) [01:27:57.627] } [01:27:57.627] { [01:27:57.627] { [01:27:57.627] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.627] NULL [01:27:57.627] } [01:27:57.627] options(future.plan = NULL) [01:27:57.627] if (is.na(NA_character_)) [01:27:57.627] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.627] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.627] future::plan(list(function (..., workers = availableCores(), [01:27:57.627] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.627] envir = parent.frame()) [01:27:57.627] { [01:27:57.627] if (is.function(workers)) [01:27:57.627] workers <- workers() [01:27:57.627] workers <- structure(as.integer(workers), [01:27:57.627] class = class(workers)) [01:27:57.627] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.627] workers >= 1) [01:27:57.627] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.627] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.627] } [01:27:57.627] future <- MultisessionFuture(..., workers = workers, [01:27:57.627] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.627] envir = envir) [01:27:57.627] if (!future$lazy) [01:27:57.627] future <- run(future) [01:27:57.627] invisible(future) [01:27:57.627] }), .cleanup = FALSE, .init = FALSE) [01:27:57.627] } [01:27:57.627] } [01:27:57.627] } [01:27:57.627] }) [01:27:57.627] if (TRUE) { [01:27:57.627] base::sink(type = "output", split = FALSE) [01:27:57.627] if (TRUE) { [01:27:57.627] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.627] } [01:27:57.627] else { [01:27:57.627] ...future.result["stdout"] <- base::list(NULL) [01:27:57.627] } [01:27:57.627] base::close(...future.stdout) [01:27:57.627] ...future.stdout <- NULL [01:27:57.627] } [01:27:57.627] ...future.result$conditions <- ...future.conditions [01:27:57.627] ...future.result$finished <- base::Sys.time() [01:27:57.627] ...future.result [01:27:57.627] } [01:27:57.633] MultisessionFuture started [01:27:57.633] - Launch lazy future ... done [01:27:57.633] run() for 'MultisessionFuture' ... done [01:27:57.634] result() for ClusterFuture ... [01:27:57.634] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.634] - Validating connection of MultisessionFuture [01:27:57.651] - received message: FutureResult [01:27:57.651] - Received FutureResult [01:27:57.651] - Erased future from FutureRegistry [01:27:57.651] result() for ClusterFuture ... [01:27:57.652] - result already collected: FutureResult [01:27:57.652] result() for ClusterFuture ... done [01:27:57.652] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.652] result() for ClusterFuture ... done [01:27:57.652] result() for ClusterFuture ... [01:27:57.652] - result already collected: FutureResult [01:27:57.652] result() for ClusterFuture ... done Call: lm(formula = dist ~ speed + I(speed^2), data = cars) Coefficients: (Intercept) speed I(speed^2) 2.47014 0.91329 0.09996 - Globals - lm(, data = cars) ... Call: lm(formula = dist ~ poly(speed, 2), data = cars) Coefficients: (Intercept) poly(speed, 2)1 poly(speed, 2)2 42.98 145.55 23.00 [01:27:57.656] getGlobalsAndPackages() ... [01:27:57.656] Searching for globals... [01:27:57.658] - globals found: [7] '{', 'lm', 'dist', 'poly', 'speed', '~', 'cars' [01:27:57.658] Searching for globals ... DONE [01:27:57.659] Resolving globals: FALSE [01:27:57.659] [01:27:57.659] - packages: [2] 'stats', 'datasets' [01:27:57.660] getGlobalsAndPackages() ... DONE [01:27:57.660] run() for 'Future' ... [01:27:57.660] - state: 'created' [01:27:57.660] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.674] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.675] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.675] - Field: 'node' [01:27:57.675] - Field: 'label' [01:27:57.675] - Field: 'local' [01:27:57.675] - Field: 'owner' [01:27:57.676] - Field: 'envir' [01:27:57.676] - Field: 'workers' [01:27:57.676] - Field: 'packages' [01:27:57.676] - Field: 'gc' [01:27:57.676] - Field: 'conditions' [01:27:57.677] - Field: 'persistent' [01:27:57.677] - Field: 'expr' [01:27:57.677] - Field: 'uuid' [01:27:57.677] - Field: 'seed' [01:27:57.677] - Field: 'version' [01:27:57.677] - Field: 'result' [01:27:57.678] - Field: 'asynchronous' [01:27:57.678] - Field: 'calls' [01:27:57.678] - Field: 'globals' [01:27:57.678] - Field: 'stdout' [01:27:57.678] - Field: 'earlySignal' [01:27:57.679] - Field: 'lazy' [01:27:57.679] - Field: 'state' [01:27:57.679] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.679] - Launch lazy future ... [01:27:57.679] Packages needed by the future expression (n = 2): 'stats', 'datasets' [01:27:57.680] Packages needed by future strategies (n = 0): [01:27:57.680] { [01:27:57.680] { [01:27:57.680] { [01:27:57.680] ...future.startTime <- base::Sys.time() [01:27:57.680] { [01:27:57.680] { [01:27:57.680] { [01:27:57.680] { [01:27:57.680] { [01:27:57.680] base::local({ [01:27:57.680] has_future <- base::requireNamespace("future", [01:27:57.680] quietly = TRUE) [01:27:57.680] if (has_future) { [01:27:57.680] ns <- base::getNamespace("future") [01:27:57.680] version <- ns[[".package"]][["version"]] [01:27:57.680] if (is.null(version)) [01:27:57.680] version <- utils::packageVersion("future") [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] version <- NULL [01:27:57.680] } [01:27:57.680] if (!has_future || version < "1.8.0") { [01:27:57.680] info <- base::c(r_version = base::gsub("R version ", [01:27:57.680] "", base::R.version$version.string), [01:27:57.680] platform = base::sprintf("%s (%s-bit)", [01:27:57.680] base::R.version$platform, 8 * [01:27:57.680] base::.Machine$sizeof.pointer), [01:27:57.680] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.680] "release", "version")], collapse = " "), [01:27:57.680] hostname = base::Sys.info()[["nodename"]]) [01:27:57.680] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.680] info) [01:27:57.680] info <- base::paste(info, collapse = "; ") [01:27:57.680] if (!has_future) { [01:27:57.680] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.680] info) [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.680] info, version) [01:27:57.680] } [01:27:57.680] base::stop(msg) [01:27:57.680] } [01:27:57.680] }) [01:27:57.680] } [01:27:57.680] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.680] base::options(mc.cores = 1L) [01:27:57.680] } [01:27:57.680] base::local({ [01:27:57.680] for (pkg in c("stats", "datasets")) { [01:27:57.680] base::loadNamespace(pkg) [01:27:57.680] base::library(pkg, character.only = TRUE) [01:27:57.680] } [01:27:57.680] }) [01:27:57.680] } [01:27:57.680] options(future.plan = NULL) [01:27:57.680] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.680] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.680] } [01:27:57.680] ...future.workdir <- getwd() [01:27:57.680] } [01:27:57.680] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.680] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.680] } [01:27:57.680] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.680] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.680] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.680] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.680] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.680] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.680] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.680] base::names(...future.oldOptions)) [01:27:57.680] } [01:27:57.680] if (FALSE) { [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] if (TRUE) { [01:27:57.680] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.680] open = "w") [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.680] windows = "NUL", "/dev/null"), open = "w") [01:27:57.680] } [01:27:57.680] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.680] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.680] base::sink(type = "output", split = FALSE) [01:27:57.680] base::close(...future.stdout) [01:27:57.680] }, add = TRUE) [01:27:57.680] } [01:27:57.680] ...future.frame <- base::sys.nframe() [01:27:57.680] ...future.conditions <- base::list() [01:27:57.680] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.680] if (FALSE) { [01:27:57.680] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.680] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.680] } [01:27:57.680] ...future.result <- base::tryCatch({ [01:27:57.680] base::withCallingHandlers({ [01:27:57.680] ...future.value <- base::withVisible(base::local({ [01:27:57.680] ...future.makeSendCondition <- base::local({ [01:27:57.680] sendCondition <- NULL [01:27:57.680] function(frame = 1L) { [01:27:57.680] if (is.function(sendCondition)) [01:27:57.680] return(sendCondition) [01:27:57.680] ns <- getNamespace("parallel") [01:27:57.680] if (exists("sendData", mode = "function", [01:27:57.680] envir = ns)) { [01:27:57.680] parallel_sendData <- get("sendData", mode = "function", [01:27:57.680] envir = ns) [01:27:57.680] envir <- sys.frame(frame) [01:27:57.680] master <- NULL [01:27:57.680] while (!identical(envir, .GlobalEnv) && [01:27:57.680] !identical(envir, emptyenv())) { [01:27:57.680] if (exists("master", mode = "list", envir = envir, [01:27:57.680] inherits = FALSE)) { [01:27:57.680] master <- get("master", mode = "list", [01:27:57.680] envir = envir, inherits = FALSE) [01:27:57.680] if (inherits(master, c("SOCKnode", [01:27:57.680] "SOCK0node"))) { [01:27:57.680] sendCondition <<- function(cond) { [01:27:57.680] data <- list(type = "VALUE", value = cond, [01:27:57.680] success = TRUE) [01:27:57.680] parallel_sendData(master, data) [01:27:57.680] } [01:27:57.680] return(sendCondition) [01:27:57.680] } [01:27:57.680] } [01:27:57.680] frame <- frame + 1L [01:27:57.680] envir <- sys.frame(frame) [01:27:57.680] } [01:27:57.680] } [01:27:57.680] sendCondition <<- function(cond) NULL [01:27:57.680] } [01:27:57.680] }) [01:27:57.680] withCallingHandlers({ [01:27:57.680] { [01:27:57.680] lm(dist ~ poly(speed, 2), data = cars) [01:27:57.680] } [01:27:57.680] }, immediateCondition = function(cond) { [01:27:57.680] sendCondition <- ...future.makeSendCondition() [01:27:57.680] sendCondition(cond) [01:27:57.680] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.680] { [01:27:57.680] inherits <- base::inherits [01:27:57.680] invokeRestart <- base::invokeRestart [01:27:57.680] is.null <- base::is.null [01:27:57.680] muffled <- FALSE [01:27:57.680] if (inherits(cond, "message")) { [01:27:57.680] muffled <- grepl(pattern, "muffleMessage") [01:27:57.680] if (muffled) [01:27:57.680] invokeRestart("muffleMessage") [01:27:57.680] } [01:27:57.680] else if (inherits(cond, "warning")) { [01:27:57.680] muffled <- grepl(pattern, "muffleWarning") [01:27:57.680] if (muffled) [01:27:57.680] invokeRestart("muffleWarning") [01:27:57.680] } [01:27:57.680] else if (inherits(cond, "condition")) { [01:27:57.680] if (!is.null(pattern)) { [01:27:57.680] computeRestarts <- base::computeRestarts [01:27:57.680] grepl <- base::grepl [01:27:57.680] restarts <- computeRestarts(cond) [01:27:57.680] for (restart in restarts) { [01:27:57.680] name <- restart$name [01:27:57.680] if (is.null(name)) [01:27:57.680] next [01:27:57.680] if (!grepl(pattern, name)) [01:27:57.680] next [01:27:57.680] invokeRestart(restart) [01:27:57.680] muffled <- TRUE [01:27:57.680] break [01:27:57.680] } [01:27:57.680] } [01:27:57.680] } [01:27:57.680] invisible(muffled) [01:27:57.680] } [01:27:57.680] muffleCondition(cond) [01:27:57.680] }) [01:27:57.680] })) [01:27:57.680] future::FutureResult(value = ...future.value$value, [01:27:57.680] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.680] ...future.rng), globalenv = if (FALSE) [01:27:57.680] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.680] ...future.globalenv.names)) [01:27:57.680] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.680] }, condition = base::local({ [01:27:57.680] c <- base::c [01:27:57.680] inherits <- base::inherits [01:27:57.680] invokeRestart <- base::invokeRestart [01:27:57.680] length <- base::length [01:27:57.680] list <- base::list [01:27:57.680] seq.int <- base::seq.int [01:27:57.680] signalCondition <- base::signalCondition [01:27:57.680] sys.calls <- base::sys.calls [01:27:57.680] `[[` <- base::`[[` [01:27:57.680] `+` <- base::`+` [01:27:57.680] `<<-` <- base::`<<-` [01:27:57.680] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.680] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.680] 3L)] [01:27:57.680] } [01:27:57.680] function(cond) { [01:27:57.680] is_error <- inherits(cond, "error") [01:27:57.680] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.680] NULL) [01:27:57.680] if (is_error) { [01:27:57.680] sessionInformation <- function() { [01:27:57.680] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.680] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.680] search = base::search(), system = base::Sys.info()) [01:27:57.680] } [01:27:57.680] ...future.conditions[[length(...future.conditions) + [01:27:57.680] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.680] cond$call), session = sessionInformation(), [01:27:57.680] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.680] signalCondition(cond) [01:27:57.680] } [01:27:57.680] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.680] "immediateCondition"))) { [01:27:57.680] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.680] ...future.conditions[[length(...future.conditions) + [01:27:57.680] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.680] if (TRUE && !signal) { [01:27:57.680] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.680] { [01:27:57.680] inherits <- base::inherits [01:27:57.680] invokeRestart <- base::invokeRestart [01:27:57.680] is.null <- base::is.null [01:27:57.680] muffled <- FALSE [01:27:57.680] if (inherits(cond, "message")) { [01:27:57.680] muffled <- grepl(pattern, "muffleMessage") [01:27:57.680] if (muffled) [01:27:57.680] invokeRestart("muffleMessage") [01:27:57.680] } [01:27:57.680] else if (inherits(cond, "warning")) { [01:27:57.680] muffled <- grepl(pattern, "muffleWarning") [01:27:57.680] if (muffled) [01:27:57.680] invokeRestart("muffleWarning") [01:27:57.680] } [01:27:57.680] else if (inherits(cond, "condition")) { [01:27:57.680] if (!is.null(pattern)) { [01:27:57.680] computeRestarts <- base::computeRestarts [01:27:57.680] grepl <- base::grepl [01:27:57.680] restarts <- computeRestarts(cond) [01:27:57.680] for (restart in restarts) { [01:27:57.680] name <- restart$name [01:27:57.680] if (is.null(name)) [01:27:57.680] next [01:27:57.680] if (!grepl(pattern, name)) [01:27:57.680] next [01:27:57.680] invokeRestart(restart) [01:27:57.680] muffled <- TRUE [01:27:57.680] break [01:27:57.680] } [01:27:57.680] } [01:27:57.680] } [01:27:57.680] invisible(muffled) [01:27:57.680] } [01:27:57.680] muffleCondition(cond, pattern = "^muffle") [01:27:57.680] } [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] if (TRUE) { [01:27:57.680] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.680] { [01:27:57.680] inherits <- base::inherits [01:27:57.680] invokeRestart <- base::invokeRestart [01:27:57.680] is.null <- base::is.null [01:27:57.680] muffled <- FALSE [01:27:57.680] if (inherits(cond, "message")) { [01:27:57.680] muffled <- grepl(pattern, "muffleMessage") [01:27:57.680] if (muffled) [01:27:57.680] invokeRestart("muffleMessage") [01:27:57.680] } [01:27:57.680] else if (inherits(cond, "warning")) { [01:27:57.680] muffled <- grepl(pattern, "muffleWarning") [01:27:57.680] if (muffled) [01:27:57.680] invokeRestart("muffleWarning") [01:27:57.680] } [01:27:57.680] else if (inherits(cond, "condition")) { [01:27:57.680] if (!is.null(pattern)) { [01:27:57.680] computeRestarts <- base::computeRestarts [01:27:57.680] grepl <- base::grepl [01:27:57.680] restarts <- computeRestarts(cond) [01:27:57.680] for (restart in restarts) { [01:27:57.680] name <- restart$name [01:27:57.680] if (is.null(name)) [01:27:57.680] next [01:27:57.680] if (!grepl(pattern, name)) [01:27:57.680] next [01:27:57.680] invokeRestart(restart) [01:27:57.680] muffled <- TRUE [01:27:57.680] break [01:27:57.680] } [01:27:57.680] } [01:27:57.680] } [01:27:57.680] invisible(muffled) [01:27:57.680] } [01:27:57.680] muffleCondition(cond, pattern = "^muffle") [01:27:57.680] } [01:27:57.680] } [01:27:57.680] } [01:27:57.680] })) [01:27:57.680] }, error = function(ex) { [01:27:57.680] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.680] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.680] ...future.rng), started = ...future.startTime, [01:27:57.680] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.680] version = "1.8"), class = "FutureResult") [01:27:57.680] }, finally = { [01:27:57.680] if (!identical(...future.workdir, getwd())) [01:27:57.680] setwd(...future.workdir) [01:27:57.680] { [01:27:57.680] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.680] ...future.oldOptions$nwarnings <- NULL [01:27:57.680] } [01:27:57.680] base::options(...future.oldOptions) [01:27:57.680] if (.Platform$OS.type == "windows") { [01:27:57.680] old_names <- names(...future.oldEnvVars) [01:27:57.680] envs <- base::Sys.getenv() [01:27:57.680] names <- names(envs) [01:27:57.680] common <- intersect(names, old_names) [01:27:57.680] added <- setdiff(names, old_names) [01:27:57.680] removed <- setdiff(old_names, names) [01:27:57.680] changed <- common[...future.oldEnvVars[common] != [01:27:57.680] envs[common]] [01:27:57.680] NAMES <- toupper(changed) [01:27:57.680] args <- list() [01:27:57.680] for (kk in seq_along(NAMES)) { [01:27:57.680] name <- changed[[kk]] [01:27:57.680] NAME <- NAMES[[kk]] [01:27:57.680] if (name != NAME && is.element(NAME, old_names)) [01:27:57.680] next [01:27:57.680] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.680] } [01:27:57.680] NAMES <- toupper(added) [01:27:57.680] for (kk in seq_along(NAMES)) { [01:27:57.680] name <- added[[kk]] [01:27:57.680] NAME <- NAMES[[kk]] [01:27:57.680] if (name != NAME && is.element(NAME, old_names)) [01:27:57.680] next [01:27:57.680] args[[name]] <- "" [01:27:57.680] } [01:27:57.680] NAMES <- toupper(removed) [01:27:57.680] for (kk in seq_along(NAMES)) { [01:27:57.680] name <- removed[[kk]] [01:27:57.680] NAME <- NAMES[[kk]] [01:27:57.680] if (name != NAME && is.element(NAME, old_names)) [01:27:57.680] next [01:27:57.680] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.680] } [01:27:57.680] if (length(args) > 0) [01:27:57.680] base::do.call(base::Sys.setenv, args = args) [01:27:57.680] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.680] } [01:27:57.680] { [01:27:57.680] if (base::length(...future.futureOptionsAdded) > [01:27:57.680] 0L) { [01:27:57.680] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.680] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.680] base::options(opts) [01:27:57.680] } [01:27:57.680] { [01:27:57.680] { [01:27:57.680] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.680] NULL [01:27:57.680] } [01:27:57.680] options(future.plan = NULL) [01:27:57.680] if (is.na(NA_character_)) [01:27:57.680] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.680] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.680] future::plan(list(function (..., workers = availableCores(), [01:27:57.680] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.680] envir = parent.frame()) [01:27:57.680] { [01:27:57.680] if (is.function(workers)) [01:27:57.680] workers <- workers() [01:27:57.680] workers <- structure(as.integer(workers), [01:27:57.680] class = class(workers)) [01:27:57.680] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.680] workers >= 1) [01:27:57.680] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.680] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.680] } [01:27:57.680] future <- MultisessionFuture(..., workers = workers, [01:27:57.680] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.680] envir = envir) [01:27:57.680] if (!future$lazy) [01:27:57.680] future <- run(future) [01:27:57.680] invisible(future) [01:27:57.680] }), .cleanup = FALSE, .init = FALSE) [01:27:57.680] } [01:27:57.680] } [01:27:57.680] } [01:27:57.680] }) [01:27:57.680] if (TRUE) { [01:27:57.680] base::sink(type = "output", split = FALSE) [01:27:57.680] if (TRUE) { [01:27:57.680] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.680] } [01:27:57.680] else { [01:27:57.680] ...future.result["stdout"] <- base::list(NULL) [01:27:57.680] } [01:27:57.680] base::close(...future.stdout) [01:27:57.680] ...future.stdout <- NULL [01:27:57.680] } [01:27:57.680] ...future.result$conditions <- ...future.conditions [01:27:57.680] ...future.result$finished <- base::Sys.time() [01:27:57.680] ...future.result [01:27:57.680] } [01:27:57.686] MultisessionFuture started [01:27:57.686] - Launch lazy future ... done [01:27:57.687] run() for 'MultisessionFuture' ... done [01:27:57.687] result() for ClusterFuture ... [01:27:57.687] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.687] - Validating connection of MultisessionFuture [01:27:57.705] - received message: FutureResult [01:27:57.705] - Received FutureResult [01:27:57.706] - Erased future from FutureRegistry [01:27:57.706] result() for ClusterFuture ... [01:27:57.706] - result already collected: FutureResult [01:27:57.706] result() for ClusterFuture ... done [01:27:57.706] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.707] result() for ClusterFuture ... done [01:27:57.707] result() for ClusterFuture ... [01:27:57.707] - result already collected: FutureResult [01:27:57.707] result() for ClusterFuture ... done Call: lm(formula = dist ~ poly(speed, 2), data = cars) Coefficients: (Intercept) poly(speed, 2)1 poly(speed, 2)2 42.98 145.55 23.00 - Globals - map(x, ~ expr) ... [01:27:57.710] getGlobalsAndPackages() ... [01:27:57.710] Searching for globals... [01:27:57.716] - globals found: [16] '{', 'outer_function', 'map', ':', '~', 'inner_function', '.x', 'if', 'inherits', '<-', '[[', '-', 'eval', 'bquote', 'lapply', '+' [01:27:57.716] Searching for globals ... DONE [01:27:57.716] Resolving globals: FALSE [01:27:57.717] The total size of the 3 globals is 7.52 KiB (7704 bytes) [01:27:57.718] The total size of the 3 globals exported for future expression ('{; outer_function(1L); }') is 7.52 KiB.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are three globals: 'map' (4.43 KiB of class 'function'), 'inner_function' (1.78 KiB of class 'function') and 'outer_function' (1.31 KiB of class 'function') [01:27:57.718] - globals: [3] 'outer_function', 'map', 'inner_function' [01:27:57.718] [01:27:57.718] getGlobalsAndPackages() ... DONE [01:27:57.718] run() for 'Future' ... [01:27:57.719] - state: 'created' [01:27:57.719] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.733] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.733] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.733] - Field: 'node' [01:27:57.734] - Field: 'label' [01:27:57.734] - Field: 'local' [01:27:57.734] - Field: 'owner' [01:27:57.734] - Field: 'envir' [01:27:57.734] - Field: 'workers' [01:27:57.735] - Field: 'packages' [01:27:57.735] - Field: 'gc' [01:27:57.735] - Field: 'conditions' [01:27:57.735] - Field: 'persistent' [01:27:57.736] - Field: 'expr' [01:27:57.736] - Field: 'uuid' [01:27:57.736] - Field: 'seed' [01:27:57.736] - Field: 'version' [01:27:57.736] - Field: 'result' [01:27:57.737] - Field: 'asynchronous' [01:27:57.737] - Field: 'calls' [01:27:57.737] - Field: 'globals' [01:27:57.737] - Field: 'stdout' [01:27:57.737] - Field: 'earlySignal' [01:27:57.738] - Field: 'lazy' [01:27:57.738] - Field: 'state' [01:27:57.738] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.738] - Launch lazy future ... [01:27:57.742] Packages needed by the future expression (n = 0): [01:27:57.743] Packages needed by future strategies (n = 0): [01:27:57.743] { [01:27:57.743] { [01:27:57.743] { [01:27:57.743] ...future.startTime <- base::Sys.time() [01:27:57.743] { [01:27:57.743] { [01:27:57.743] { [01:27:57.743] { [01:27:57.743] base::local({ [01:27:57.743] has_future <- base::requireNamespace("future", [01:27:57.743] quietly = TRUE) [01:27:57.743] if (has_future) { [01:27:57.743] ns <- base::getNamespace("future") [01:27:57.743] version <- ns[[".package"]][["version"]] [01:27:57.743] if (is.null(version)) [01:27:57.743] version <- utils::packageVersion("future") [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] version <- NULL [01:27:57.743] } [01:27:57.743] if (!has_future || version < "1.8.0") { [01:27:57.743] info <- base::c(r_version = base::gsub("R version ", [01:27:57.743] "", base::R.version$version.string), [01:27:57.743] platform = base::sprintf("%s (%s-bit)", [01:27:57.743] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:57.743] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.743] "release", "version")], collapse = " "), [01:27:57.743] hostname = base::Sys.info()[["nodename"]]) [01:27:57.743] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.743] info) [01:27:57.743] info <- base::paste(info, collapse = "; ") [01:27:57.743] if (!has_future) { [01:27:57.743] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.743] info) [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.743] info, version) [01:27:57.743] } [01:27:57.743] base::stop(msg) [01:27:57.743] } [01:27:57.743] }) [01:27:57.743] } [01:27:57.743] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.743] base::options(mc.cores = 1L) [01:27:57.743] } [01:27:57.743] options(future.plan = NULL) [01:27:57.743] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.743] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.743] } [01:27:57.743] ...future.workdir <- getwd() [01:27:57.743] } [01:27:57.743] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.743] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.743] } [01:27:57.743] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.743] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.743] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.743] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.743] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.743] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.743] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.743] base::names(...future.oldOptions)) [01:27:57.743] } [01:27:57.743] if (FALSE) { [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] if (TRUE) { [01:27:57.743] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.743] open = "w") [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.743] windows = "NUL", "/dev/null"), open = "w") [01:27:57.743] } [01:27:57.743] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.743] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.743] base::sink(type = "output", split = FALSE) [01:27:57.743] base::close(...future.stdout) [01:27:57.743] }, add = TRUE) [01:27:57.743] } [01:27:57.743] ...future.frame <- base::sys.nframe() [01:27:57.743] ...future.conditions <- base::list() [01:27:57.743] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.743] if (FALSE) { [01:27:57.743] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.743] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.743] } [01:27:57.743] ...future.result <- base::tryCatch({ [01:27:57.743] base::withCallingHandlers({ [01:27:57.743] ...future.value <- base::withVisible(base::local({ [01:27:57.743] ...future.makeSendCondition <- base::local({ [01:27:57.743] sendCondition <- NULL [01:27:57.743] function(frame = 1L) { [01:27:57.743] if (is.function(sendCondition)) [01:27:57.743] return(sendCondition) [01:27:57.743] ns <- getNamespace("parallel") [01:27:57.743] if (exists("sendData", mode = "function", [01:27:57.743] envir = ns)) { [01:27:57.743] parallel_sendData <- get("sendData", mode = "function", [01:27:57.743] envir = ns) [01:27:57.743] envir <- sys.frame(frame) [01:27:57.743] master <- NULL [01:27:57.743] while (!identical(envir, .GlobalEnv) && [01:27:57.743] !identical(envir, emptyenv())) { [01:27:57.743] if (exists("master", mode = "list", envir = envir, [01:27:57.743] inherits = FALSE)) { [01:27:57.743] master <- get("master", mode = "list", [01:27:57.743] envir = envir, inherits = FALSE) [01:27:57.743] if (inherits(master, c("SOCKnode", [01:27:57.743] "SOCK0node"))) { [01:27:57.743] sendCondition <<- function(cond) { [01:27:57.743] data <- list(type = "VALUE", value = cond, [01:27:57.743] success = TRUE) [01:27:57.743] parallel_sendData(master, data) [01:27:57.743] } [01:27:57.743] return(sendCondition) [01:27:57.743] } [01:27:57.743] } [01:27:57.743] frame <- frame + 1L [01:27:57.743] envir <- sys.frame(frame) [01:27:57.743] } [01:27:57.743] } [01:27:57.743] sendCondition <<- function(cond) NULL [01:27:57.743] } [01:27:57.743] }) [01:27:57.743] withCallingHandlers({ [01:27:57.743] { [01:27:57.743] outer_function(1L) [01:27:57.743] } [01:27:57.743] }, immediateCondition = function(cond) { [01:27:57.743] sendCondition <- ...future.makeSendCondition() [01:27:57.743] sendCondition(cond) [01:27:57.743] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.743] { [01:27:57.743] inherits <- base::inherits [01:27:57.743] invokeRestart <- base::invokeRestart [01:27:57.743] is.null <- base::is.null [01:27:57.743] muffled <- FALSE [01:27:57.743] if (inherits(cond, "message")) { [01:27:57.743] muffled <- grepl(pattern, "muffleMessage") [01:27:57.743] if (muffled) [01:27:57.743] invokeRestart("muffleMessage") [01:27:57.743] } [01:27:57.743] else if (inherits(cond, "warning")) { [01:27:57.743] muffled <- grepl(pattern, "muffleWarning") [01:27:57.743] if (muffled) [01:27:57.743] invokeRestart("muffleWarning") [01:27:57.743] } [01:27:57.743] else if (inherits(cond, "condition")) { [01:27:57.743] if (!is.null(pattern)) { [01:27:57.743] computeRestarts <- base::computeRestarts [01:27:57.743] grepl <- base::grepl [01:27:57.743] restarts <- computeRestarts(cond) [01:27:57.743] for (restart in restarts) { [01:27:57.743] name <- restart$name [01:27:57.743] if (is.null(name)) [01:27:57.743] next [01:27:57.743] if (!grepl(pattern, name)) [01:27:57.743] next [01:27:57.743] invokeRestart(restart) [01:27:57.743] muffled <- TRUE [01:27:57.743] break [01:27:57.743] } [01:27:57.743] } [01:27:57.743] } [01:27:57.743] invisible(muffled) [01:27:57.743] } [01:27:57.743] muffleCondition(cond) [01:27:57.743] }) [01:27:57.743] })) [01:27:57.743] future::FutureResult(value = ...future.value$value, [01:27:57.743] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.743] ...future.rng), globalenv = if (FALSE) [01:27:57.743] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.743] ...future.globalenv.names)) [01:27:57.743] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.743] }, condition = base::local({ [01:27:57.743] c <- base::c [01:27:57.743] inherits <- base::inherits [01:27:57.743] invokeRestart <- base::invokeRestart [01:27:57.743] length <- base::length [01:27:57.743] list <- base::list [01:27:57.743] seq.int <- base::seq.int [01:27:57.743] signalCondition <- base::signalCondition [01:27:57.743] sys.calls <- base::sys.calls [01:27:57.743] `[[` <- base::`[[` [01:27:57.743] `+` <- base::`+` [01:27:57.743] `<<-` <- base::`<<-` [01:27:57.743] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.743] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.743] 3L)] [01:27:57.743] } [01:27:57.743] function(cond) { [01:27:57.743] is_error <- inherits(cond, "error") [01:27:57.743] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.743] NULL) [01:27:57.743] if (is_error) { [01:27:57.743] sessionInformation <- function() { [01:27:57.743] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.743] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.743] search = base::search(), system = base::Sys.info()) [01:27:57.743] } [01:27:57.743] ...future.conditions[[length(...future.conditions) + [01:27:57.743] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.743] cond$call), session = sessionInformation(), [01:27:57.743] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.743] signalCondition(cond) [01:27:57.743] } [01:27:57.743] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.743] "immediateCondition"))) { [01:27:57.743] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.743] ...future.conditions[[length(...future.conditions) + [01:27:57.743] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.743] if (TRUE && !signal) { [01:27:57.743] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.743] { [01:27:57.743] inherits <- base::inherits [01:27:57.743] invokeRestart <- base::invokeRestart [01:27:57.743] is.null <- base::is.null [01:27:57.743] muffled <- FALSE [01:27:57.743] if (inherits(cond, "message")) { [01:27:57.743] muffled <- grepl(pattern, "muffleMessage") [01:27:57.743] if (muffled) [01:27:57.743] invokeRestart("muffleMessage") [01:27:57.743] } [01:27:57.743] else if (inherits(cond, "warning")) { [01:27:57.743] muffled <- grepl(pattern, "muffleWarning") [01:27:57.743] if (muffled) [01:27:57.743] invokeRestart("muffleWarning") [01:27:57.743] } [01:27:57.743] else if (inherits(cond, "condition")) { [01:27:57.743] if (!is.null(pattern)) { [01:27:57.743] computeRestarts <- base::computeRestarts [01:27:57.743] grepl <- base::grepl [01:27:57.743] restarts <- computeRestarts(cond) [01:27:57.743] for (restart in restarts) { [01:27:57.743] name <- restart$name [01:27:57.743] if (is.null(name)) [01:27:57.743] next [01:27:57.743] if (!grepl(pattern, name)) [01:27:57.743] next [01:27:57.743] invokeRestart(restart) [01:27:57.743] muffled <- TRUE [01:27:57.743] break [01:27:57.743] } [01:27:57.743] } [01:27:57.743] } [01:27:57.743] invisible(muffled) [01:27:57.743] } [01:27:57.743] muffleCondition(cond, pattern = "^muffle") [01:27:57.743] } [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] if (TRUE) { [01:27:57.743] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.743] { [01:27:57.743] inherits <- base::inherits [01:27:57.743] invokeRestart <- base::invokeRestart [01:27:57.743] is.null <- base::is.null [01:27:57.743] muffled <- FALSE [01:27:57.743] if (inherits(cond, "message")) { [01:27:57.743] muffled <- grepl(pattern, "muffleMessage") [01:27:57.743] if (muffled) [01:27:57.743] invokeRestart("muffleMessage") [01:27:57.743] } [01:27:57.743] else if (inherits(cond, "warning")) { [01:27:57.743] muffled <- grepl(pattern, "muffleWarning") [01:27:57.743] if (muffled) [01:27:57.743] invokeRestart("muffleWarning") [01:27:57.743] } [01:27:57.743] else if (inherits(cond, "condition")) { [01:27:57.743] if (!is.null(pattern)) { [01:27:57.743] computeRestarts <- base::computeRestarts [01:27:57.743] grepl <- base::grepl [01:27:57.743] restarts <- computeRestarts(cond) [01:27:57.743] for (restart in restarts) { [01:27:57.743] name <- restart$name [01:27:57.743] if (is.null(name)) [01:27:57.743] next [01:27:57.743] if (!grepl(pattern, name)) [01:27:57.743] next [01:27:57.743] invokeRestart(restart) [01:27:57.743] muffled <- TRUE [01:27:57.743] break [01:27:57.743] } [01:27:57.743] } [01:27:57.743] } [01:27:57.743] invisible(muffled) [01:27:57.743] } [01:27:57.743] muffleCondition(cond, pattern = "^muffle") [01:27:57.743] } [01:27:57.743] } [01:27:57.743] } [01:27:57.743] })) [01:27:57.743] }, error = function(ex) { [01:27:57.743] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.743] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.743] ...future.rng), started = ...future.startTime, [01:27:57.743] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.743] version = "1.8"), class = "FutureResult") [01:27:57.743] }, finally = { [01:27:57.743] if (!identical(...future.workdir, getwd())) [01:27:57.743] setwd(...future.workdir) [01:27:57.743] { [01:27:57.743] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.743] ...future.oldOptions$nwarnings <- NULL [01:27:57.743] } [01:27:57.743] base::options(...future.oldOptions) [01:27:57.743] if (.Platform$OS.type == "windows") { [01:27:57.743] old_names <- names(...future.oldEnvVars) [01:27:57.743] envs <- base::Sys.getenv() [01:27:57.743] names <- names(envs) [01:27:57.743] common <- intersect(names, old_names) [01:27:57.743] added <- setdiff(names, old_names) [01:27:57.743] removed <- setdiff(old_names, names) [01:27:57.743] changed <- common[...future.oldEnvVars[common] != [01:27:57.743] envs[common]] [01:27:57.743] NAMES <- toupper(changed) [01:27:57.743] args <- list() [01:27:57.743] for (kk in seq_along(NAMES)) { [01:27:57.743] name <- changed[[kk]] [01:27:57.743] NAME <- NAMES[[kk]] [01:27:57.743] if (name != NAME && is.element(NAME, old_names)) [01:27:57.743] next [01:27:57.743] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.743] } [01:27:57.743] NAMES <- toupper(added) [01:27:57.743] for (kk in seq_along(NAMES)) { [01:27:57.743] name <- added[[kk]] [01:27:57.743] NAME <- NAMES[[kk]] [01:27:57.743] if (name != NAME && is.element(NAME, old_names)) [01:27:57.743] next [01:27:57.743] args[[name]] <- "" [01:27:57.743] } [01:27:57.743] NAMES <- toupper(removed) [01:27:57.743] for (kk in seq_along(NAMES)) { [01:27:57.743] name <- removed[[kk]] [01:27:57.743] NAME <- NAMES[[kk]] [01:27:57.743] if (name != NAME && is.element(NAME, old_names)) [01:27:57.743] next [01:27:57.743] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.743] } [01:27:57.743] if (length(args) > 0) [01:27:57.743] base::do.call(base::Sys.setenv, args = args) [01:27:57.743] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.743] } [01:27:57.743] { [01:27:57.743] if (base::length(...future.futureOptionsAdded) > [01:27:57.743] 0L) { [01:27:57.743] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.743] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.743] base::options(opts) [01:27:57.743] } [01:27:57.743] { [01:27:57.743] { [01:27:57.743] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.743] NULL [01:27:57.743] } [01:27:57.743] options(future.plan = NULL) [01:27:57.743] if (is.na(NA_character_)) [01:27:57.743] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.743] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.743] future::plan(list(function (..., workers = availableCores(), [01:27:57.743] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.743] envir = parent.frame()) [01:27:57.743] { [01:27:57.743] if (is.function(workers)) [01:27:57.743] workers <- workers() [01:27:57.743] workers <- structure(as.integer(workers), [01:27:57.743] class = class(workers)) [01:27:57.743] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.743] workers >= 1) [01:27:57.743] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.743] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.743] } [01:27:57.743] future <- MultisessionFuture(..., workers = workers, [01:27:57.743] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.743] envir = envir) [01:27:57.743] if (!future$lazy) [01:27:57.743] future <- run(future) [01:27:57.743] invisible(future) [01:27:57.743] }), .cleanup = FALSE, .init = FALSE) [01:27:57.743] } [01:27:57.743] } [01:27:57.743] } [01:27:57.743] }) [01:27:57.743] if (TRUE) { [01:27:57.743] base::sink(type = "output", split = FALSE) [01:27:57.743] if (TRUE) { [01:27:57.743] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.743] } [01:27:57.743] else { [01:27:57.743] ...future.result["stdout"] <- base::list(NULL) [01:27:57.743] } [01:27:57.743] base::close(...future.stdout) [01:27:57.743] ...future.stdout <- NULL [01:27:57.743] } [01:27:57.743] ...future.result$conditions <- ...future.conditions [01:27:57.743] ...future.result$finished <- base::Sys.time() [01:27:57.743] ...future.result [01:27:57.743] } [01:27:57.749] Exporting 3 global objects (7.52 KiB) to cluster node #1 ... [01:27:57.749] Exporting 'outer_function' (1.31 KiB) to cluster node #1 ... [01:27:57.749] Exporting 'outer_function' (1.31 KiB) to cluster node #1 ... DONE [01:27:57.750] Exporting 'map' (4.43 KiB) to cluster node #1 ... [01:27:57.750] Exporting 'map' (4.43 KiB) to cluster node #1 ... DONE [01:27:57.750] Exporting 'inner_function' (1.78 KiB) to cluster node #1 ... [01:27:57.751] Exporting 'inner_function' (1.78 KiB) to cluster node #1 ... DONE [01:27:57.751] Exporting 3 global objects (7.52 KiB) to cluster node #1 ... DONE [01:27:57.752] MultisessionFuture started [01:27:57.752] - Launch lazy future ... done [01:27:57.752] run() for 'MultisessionFuture' ... done [01:27:57.752] result() for ClusterFuture ... [01:27:57.753] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.753] - Validating connection of MultisessionFuture [01:27:57.773] - received message: FutureResult [01:27:57.773] - Received FutureResult [01:27:57.773] - Erased future from FutureRegistry [01:27:57.774] result() for ClusterFuture ... [01:27:57.774] - result already collected: FutureResult [01:27:57.774] result() for ClusterFuture ... done [01:27:57.774] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.774] result() for ClusterFuture ... done [01:27:57.775] result() for ClusterFuture ... [01:27:57.775] - result already collected: FutureResult [01:27:57.775] result() for ClusterFuture ... done List of 2 $ : num [1:2] 2 3 $ : num [1:2] 2 3 [01:27:57.777] getGlobalsAndPackages() ... [01:27:57.777] Searching for globals... [01:27:57.783] - globals found: [16] '{', 'outer_function', 'map', ':', '~', 'inner_function', '.x', 'if', 'inherits', '<-', '[[', '-', 'eval', 'bquote', 'lapply', '+' [01:27:57.783] Searching for globals ... DONE [01:27:57.783] Resolving globals: FALSE [01:27:57.784] The total size of the 3 globals is 7.52 KiB (7704 bytes) [01:27:57.785] The total size of the 3 globals exported for future expression ('{; outer_function(1L); }') is 7.52 KiB.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are three globals: 'map' (4.43 KiB of class 'function'), 'inner_function' (1.78 KiB of class 'function') and 'outer_function' (1.31 KiB of class 'function') [01:27:57.785] - globals: [3] 'outer_function', 'map', 'inner_function' [01:27:57.785] [01:27:57.785] getGlobalsAndPackages() ... DONE [01:27:57.786] run() for 'Future' ... [01:27:57.786] - state: 'created' [01:27:57.786] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [01:27:57.801] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [01:27:57.801] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [01:27:57.802] - Field: 'node' [01:27:57.802] - Field: 'label' [01:27:57.802] - Field: 'local' [01:27:57.802] - Field: 'owner' [01:27:57.802] - Field: 'envir' [01:27:57.803] - Field: 'workers' [01:27:57.803] - Field: 'packages' [01:27:57.803] - Field: 'gc' [01:27:57.803] - Field: 'conditions' [01:27:57.804] - Field: 'persistent' [01:27:57.804] - Field: 'expr' [01:27:57.804] - Field: 'uuid' [01:27:57.804] - Field: 'seed' [01:27:57.804] - Field: 'version' [01:27:57.805] - Field: 'result' [01:27:57.805] - Field: 'asynchronous' [01:27:57.805] - Field: 'calls' [01:27:57.805] - Field: 'globals' [01:27:57.805] - Field: 'stdout' [01:27:57.806] - Field: 'earlySignal' [01:27:57.806] - Field: 'lazy' [01:27:57.806] - Field: 'state' [01:27:57.806] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [01:27:57.807] - Launch lazy future ... [01:27:57.807] Packages needed by the future expression (n = 0): [01:27:57.807] Packages needed by future strategies (n = 0): [01:27:57.808] { [01:27:57.808] { [01:27:57.808] { [01:27:57.808] ...future.startTime <- base::Sys.time() [01:27:57.808] { [01:27:57.808] { [01:27:57.808] { [01:27:57.808] { [01:27:57.808] base::local({ [01:27:57.808] has_future <- base::requireNamespace("future", [01:27:57.808] quietly = TRUE) [01:27:57.808] if (has_future) { [01:27:57.808] ns <- base::getNamespace("future") [01:27:57.808] version <- ns[[".package"]][["version"]] [01:27:57.808] if (is.null(version)) [01:27:57.808] version <- utils::packageVersion("future") [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] version <- NULL [01:27:57.808] } [01:27:57.808] if (!has_future || version < "1.8.0") { [01:27:57.808] info <- base::c(r_version = base::gsub("R version ", [01:27:57.808] "", base::R.version$version.string), [01:27:57.808] platform = base::sprintf("%s (%s-bit)", [01:27:57.808] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [01:27:57.808] os = base::paste(base::Sys.info()[base::c("sysname", [01:27:57.808] "release", "version")], collapse = " "), [01:27:57.808] hostname = base::Sys.info()[["nodename"]]) [01:27:57.808] info <- base::sprintf("%s: %s", base::names(info), [01:27:57.808] info) [01:27:57.808] info <- base::paste(info, collapse = "; ") [01:27:57.808] if (!has_future) { [01:27:57.808] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [01:27:57.808] info) [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [01:27:57.808] info, version) [01:27:57.808] } [01:27:57.808] base::stop(msg) [01:27:57.808] } [01:27:57.808] }) [01:27:57.808] } [01:27:57.808] ...future.mc.cores.old <- base::getOption("mc.cores") [01:27:57.808] base::options(mc.cores = 1L) [01:27:57.808] } [01:27:57.808] options(future.plan = NULL) [01:27:57.808] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.808] future::plan("default", .cleanup = FALSE, .init = FALSE) [01:27:57.808] } [01:27:57.808] ...future.workdir <- getwd() [01:27:57.808] } [01:27:57.808] ...future.oldOptions <- base::as.list(base::.Options) [01:27:57.808] ...future.oldEnvVars <- base::Sys.getenv() [01:27:57.808] } [01:27:57.808] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [01:27:57.808] future.globals.maxSize = NULL, future.globals.method = NULL, [01:27:57.808] future.globals.onMissing = NULL, future.globals.onReference = NULL, [01:27:57.808] future.globals.resolve = NULL, future.resolve.recursive = NULL, [01:27:57.808] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [01:27:57.808] future.stdout.windows.reencode = NULL, width = 80L) [01:27:57.808] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [01:27:57.808] base::names(...future.oldOptions)) [01:27:57.808] } [01:27:57.808] if (FALSE) { [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] if (TRUE) { [01:27:57.808] ...future.stdout <- base::rawConnection(base::raw(0L), [01:27:57.808] open = "w") [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [01:27:57.808] windows = "NUL", "/dev/null"), open = "w") [01:27:57.808] } [01:27:57.808] base::sink(...future.stdout, type = "output", split = FALSE) [01:27:57.808] base::on.exit(if (!base::is.null(...future.stdout)) { [01:27:57.808] base::sink(type = "output", split = FALSE) [01:27:57.808] base::close(...future.stdout) [01:27:57.808] }, add = TRUE) [01:27:57.808] } [01:27:57.808] ...future.frame <- base::sys.nframe() [01:27:57.808] ...future.conditions <- base::list() [01:27:57.808] ...future.rng <- base::globalenv()$.Random.seed [01:27:57.808] if (FALSE) { [01:27:57.808] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [01:27:57.808] "...future.value", "...future.globalenv.names", ".Random.seed") [01:27:57.808] } [01:27:57.808] ...future.result <- base::tryCatch({ [01:27:57.808] base::withCallingHandlers({ [01:27:57.808] ...future.value <- base::withVisible(base::local({ [01:27:57.808] ...future.makeSendCondition <- base::local({ [01:27:57.808] sendCondition <- NULL [01:27:57.808] function(frame = 1L) { [01:27:57.808] if (is.function(sendCondition)) [01:27:57.808] return(sendCondition) [01:27:57.808] ns <- getNamespace("parallel") [01:27:57.808] if (exists("sendData", mode = "function", [01:27:57.808] envir = ns)) { [01:27:57.808] parallel_sendData <- get("sendData", mode = "function", [01:27:57.808] envir = ns) [01:27:57.808] envir <- sys.frame(frame) [01:27:57.808] master <- NULL [01:27:57.808] while (!identical(envir, .GlobalEnv) && [01:27:57.808] !identical(envir, emptyenv())) { [01:27:57.808] if (exists("master", mode = "list", envir = envir, [01:27:57.808] inherits = FALSE)) { [01:27:57.808] master <- get("master", mode = "list", [01:27:57.808] envir = envir, inherits = FALSE) [01:27:57.808] if (inherits(master, c("SOCKnode", [01:27:57.808] "SOCK0node"))) { [01:27:57.808] sendCondition <<- function(cond) { [01:27:57.808] data <- list(type = "VALUE", value = cond, [01:27:57.808] success = TRUE) [01:27:57.808] parallel_sendData(master, data) [01:27:57.808] } [01:27:57.808] return(sendCondition) [01:27:57.808] } [01:27:57.808] } [01:27:57.808] frame <- frame + 1L [01:27:57.808] envir <- sys.frame(frame) [01:27:57.808] } [01:27:57.808] } [01:27:57.808] sendCondition <<- function(cond) NULL [01:27:57.808] } [01:27:57.808] }) [01:27:57.808] withCallingHandlers({ [01:27:57.808] { [01:27:57.808] outer_function(1L) [01:27:57.808] } [01:27:57.808] }, immediateCondition = function(cond) { [01:27:57.808] sendCondition <- ...future.makeSendCondition() [01:27:57.808] sendCondition(cond) [01:27:57.808] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.808] { [01:27:57.808] inherits <- base::inherits [01:27:57.808] invokeRestart <- base::invokeRestart [01:27:57.808] is.null <- base::is.null [01:27:57.808] muffled <- FALSE [01:27:57.808] if (inherits(cond, "message")) { [01:27:57.808] muffled <- grepl(pattern, "muffleMessage") [01:27:57.808] if (muffled) [01:27:57.808] invokeRestart("muffleMessage") [01:27:57.808] } [01:27:57.808] else if (inherits(cond, "warning")) { [01:27:57.808] muffled <- grepl(pattern, "muffleWarning") [01:27:57.808] if (muffled) [01:27:57.808] invokeRestart("muffleWarning") [01:27:57.808] } [01:27:57.808] else if (inherits(cond, "condition")) { [01:27:57.808] if (!is.null(pattern)) { [01:27:57.808] computeRestarts <- base::computeRestarts [01:27:57.808] grepl <- base::grepl [01:27:57.808] restarts <- computeRestarts(cond) [01:27:57.808] for (restart in restarts) { [01:27:57.808] name <- restart$name [01:27:57.808] if (is.null(name)) [01:27:57.808] next [01:27:57.808] if (!grepl(pattern, name)) [01:27:57.808] next [01:27:57.808] invokeRestart(restart) [01:27:57.808] muffled <- TRUE [01:27:57.808] break [01:27:57.808] } [01:27:57.808] } [01:27:57.808] } [01:27:57.808] invisible(muffled) [01:27:57.808] } [01:27:57.808] muffleCondition(cond) [01:27:57.808] }) [01:27:57.808] })) [01:27:57.808] future::FutureResult(value = ...future.value$value, [01:27:57.808] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.808] ...future.rng), globalenv = if (FALSE) [01:27:57.808] list(added = base::setdiff(base::names(base::.GlobalEnv), [01:27:57.808] ...future.globalenv.names)) [01:27:57.808] else NULL, started = ...future.startTime, version = "1.8") [01:27:57.808] }, condition = base::local({ [01:27:57.808] c <- base::c [01:27:57.808] inherits <- base::inherits [01:27:57.808] invokeRestart <- base::invokeRestart [01:27:57.808] length <- base::length [01:27:57.808] list <- base::list [01:27:57.808] seq.int <- base::seq.int [01:27:57.808] signalCondition <- base::signalCondition [01:27:57.808] sys.calls <- base::sys.calls [01:27:57.808] `[[` <- base::`[[` [01:27:57.808] `+` <- base::`+` [01:27:57.808] `<<-` <- base::`<<-` [01:27:57.808] sysCalls <- function(calls = sys.calls(), from = 1L) { [01:27:57.808] calls[seq.int(from = from + 12L, to = length(calls) - [01:27:57.808] 3L)] [01:27:57.808] } [01:27:57.808] function(cond) { [01:27:57.808] is_error <- inherits(cond, "error") [01:27:57.808] ignore <- !is_error && !is.null(NULL) && inherits(cond, [01:27:57.808] NULL) [01:27:57.808] if (is_error) { [01:27:57.808] sessionInformation <- function() { [01:27:57.808] list(r = base::R.Version(), locale = base::Sys.getlocale(), [01:27:57.808] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [01:27:57.808] search = base::search(), system = base::Sys.info()) [01:27:57.808] } [01:27:57.808] ...future.conditions[[length(...future.conditions) + [01:27:57.808] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [01:27:57.808] cond$call), session = sessionInformation(), [01:27:57.808] timestamp = base::Sys.time(), signaled = 0L) [01:27:57.808] signalCondition(cond) [01:27:57.808] } [01:27:57.808] else if (!ignore && TRUE && inherits(cond, c("condition", [01:27:57.808] "immediateCondition"))) { [01:27:57.808] signal <- TRUE && inherits(cond, "immediateCondition") [01:27:57.808] ...future.conditions[[length(...future.conditions) + [01:27:57.808] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [01:27:57.808] if (TRUE && !signal) { [01:27:57.808] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.808] { [01:27:57.808] inherits <- base::inherits [01:27:57.808] invokeRestart <- base::invokeRestart [01:27:57.808] is.null <- base::is.null [01:27:57.808] muffled <- FALSE [01:27:57.808] if (inherits(cond, "message")) { [01:27:57.808] muffled <- grepl(pattern, "muffleMessage") [01:27:57.808] if (muffled) [01:27:57.808] invokeRestart("muffleMessage") [01:27:57.808] } [01:27:57.808] else if (inherits(cond, "warning")) { [01:27:57.808] muffled <- grepl(pattern, "muffleWarning") [01:27:57.808] if (muffled) [01:27:57.808] invokeRestart("muffleWarning") [01:27:57.808] } [01:27:57.808] else if (inherits(cond, "condition")) { [01:27:57.808] if (!is.null(pattern)) { [01:27:57.808] computeRestarts <- base::computeRestarts [01:27:57.808] grepl <- base::grepl [01:27:57.808] restarts <- computeRestarts(cond) [01:27:57.808] for (restart in restarts) { [01:27:57.808] name <- restart$name [01:27:57.808] if (is.null(name)) [01:27:57.808] next [01:27:57.808] if (!grepl(pattern, name)) [01:27:57.808] next [01:27:57.808] invokeRestart(restart) [01:27:57.808] muffled <- TRUE [01:27:57.808] break [01:27:57.808] } [01:27:57.808] } [01:27:57.808] } [01:27:57.808] invisible(muffled) [01:27:57.808] } [01:27:57.808] muffleCondition(cond, pattern = "^muffle") [01:27:57.808] } [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] if (TRUE) { [01:27:57.808] muffleCondition <- function (cond, pattern = "^muffle") [01:27:57.808] { [01:27:57.808] inherits <- base::inherits [01:27:57.808] invokeRestart <- base::invokeRestart [01:27:57.808] is.null <- base::is.null [01:27:57.808] muffled <- FALSE [01:27:57.808] if (inherits(cond, "message")) { [01:27:57.808] muffled <- grepl(pattern, "muffleMessage") [01:27:57.808] if (muffled) [01:27:57.808] invokeRestart("muffleMessage") [01:27:57.808] } [01:27:57.808] else if (inherits(cond, "warning")) { [01:27:57.808] muffled <- grepl(pattern, "muffleWarning") [01:27:57.808] if (muffled) [01:27:57.808] invokeRestart("muffleWarning") [01:27:57.808] } [01:27:57.808] else if (inherits(cond, "condition")) { [01:27:57.808] if (!is.null(pattern)) { [01:27:57.808] computeRestarts <- base::computeRestarts [01:27:57.808] grepl <- base::grepl [01:27:57.808] restarts <- computeRestarts(cond) [01:27:57.808] for (restart in restarts) { [01:27:57.808] name <- restart$name [01:27:57.808] if (is.null(name)) [01:27:57.808] next [01:27:57.808] if (!grepl(pattern, name)) [01:27:57.808] next [01:27:57.808] invokeRestart(restart) [01:27:57.808] muffled <- TRUE [01:27:57.808] break [01:27:57.808] } [01:27:57.808] } [01:27:57.808] } [01:27:57.808] invisible(muffled) [01:27:57.808] } [01:27:57.808] muffleCondition(cond, pattern = "^muffle") [01:27:57.808] } [01:27:57.808] } [01:27:57.808] } [01:27:57.808] })) [01:27:57.808] }, error = function(ex) { [01:27:57.808] base::structure(base::list(value = NULL, visible = NULL, [01:27:57.808] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [01:27:57.808] ...future.rng), started = ...future.startTime, [01:27:57.808] finished = Sys.time(), session_uuid = NA_character_, [01:27:57.808] version = "1.8"), class = "FutureResult") [01:27:57.808] }, finally = { [01:27:57.808] if (!identical(...future.workdir, getwd())) [01:27:57.808] setwd(...future.workdir) [01:27:57.808] { [01:27:57.808] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [01:27:57.808] ...future.oldOptions$nwarnings <- NULL [01:27:57.808] } [01:27:57.808] base::options(...future.oldOptions) [01:27:57.808] if (.Platform$OS.type == "windows") { [01:27:57.808] old_names <- names(...future.oldEnvVars) [01:27:57.808] envs <- base::Sys.getenv() [01:27:57.808] names <- names(envs) [01:27:57.808] common <- intersect(names, old_names) [01:27:57.808] added <- setdiff(names, old_names) [01:27:57.808] removed <- setdiff(old_names, names) [01:27:57.808] changed <- common[...future.oldEnvVars[common] != [01:27:57.808] envs[common]] [01:27:57.808] NAMES <- toupper(changed) [01:27:57.808] args <- list() [01:27:57.808] for (kk in seq_along(NAMES)) { [01:27:57.808] name <- changed[[kk]] [01:27:57.808] NAME <- NAMES[[kk]] [01:27:57.808] if (name != NAME && is.element(NAME, old_names)) [01:27:57.808] next [01:27:57.808] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.808] } [01:27:57.808] NAMES <- toupper(added) [01:27:57.808] for (kk in seq_along(NAMES)) { [01:27:57.808] name <- added[[kk]] [01:27:57.808] NAME <- NAMES[[kk]] [01:27:57.808] if (name != NAME && is.element(NAME, old_names)) [01:27:57.808] next [01:27:57.808] args[[name]] <- "" [01:27:57.808] } [01:27:57.808] NAMES <- toupper(removed) [01:27:57.808] for (kk in seq_along(NAMES)) { [01:27:57.808] name <- removed[[kk]] [01:27:57.808] NAME <- NAMES[[kk]] [01:27:57.808] if (name != NAME && is.element(NAME, old_names)) [01:27:57.808] next [01:27:57.808] args[[name]] <- ...future.oldEnvVars[[name]] [01:27:57.808] } [01:27:57.808] if (length(args) > 0) [01:27:57.808] base::do.call(base::Sys.setenv, args = args) [01:27:57.808] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [01:27:57.808] } [01:27:57.808] { [01:27:57.808] if (base::length(...future.futureOptionsAdded) > [01:27:57.808] 0L) { [01:27:57.808] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [01:27:57.808] base::names(opts) <- ...future.futureOptionsAdded [01:27:57.808] base::options(opts) [01:27:57.808] } [01:27:57.808] { [01:27:57.808] { [01:27:57.808] base::options(mc.cores = ...future.mc.cores.old) [01:27:57.808] NULL [01:27:57.808] } [01:27:57.808] options(future.plan = NULL) [01:27:57.808] if (is.na(NA_character_)) [01:27:57.808] Sys.unsetenv("R_FUTURE_PLAN") [01:27:57.808] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [01:27:57.808] future::plan(list(function (..., workers = availableCores(), [01:27:57.808] lazy = FALSE, rscript_libs = .libPaths(), [01:27:57.808] envir = parent.frame()) [01:27:57.808] { [01:27:57.808] if (is.function(workers)) [01:27:57.808] workers <- workers() [01:27:57.808] workers <- structure(as.integer(workers), [01:27:57.808] class = class(workers)) [01:27:57.808] stop_if_not(length(workers) == 1, is.finite(workers), [01:27:57.808] workers >= 1) [01:27:57.808] if (workers == 1L && !inherits(workers, "AsIs")) { [01:27:57.808] return(sequential(..., lazy = TRUE, envir = envir)) [01:27:57.808] } [01:27:57.808] future <- MultisessionFuture(..., workers = workers, [01:27:57.808] lazy = lazy, rscript_libs = rscript_libs, [01:27:57.808] envir = envir) [01:27:57.808] if (!future$lazy) [01:27:57.808] future <- run(future) [01:27:57.808] invisible(future) [01:27:57.808] }), .cleanup = FALSE, .init = FALSE) [01:27:57.808] } [01:27:57.808] } [01:27:57.808] } [01:27:57.808] }) [01:27:57.808] if (TRUE) { [01:27:57.808] base::sink(type = "output", split = FALSE) [01:27:57.808] if (TRUE) { [01:27:57.808] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [01:27:57.808] } [01:27:57.808] else { [01:27:57.808] ...future.result["stdout"] <- base::list(NULL) [01:27:57.808] } [01:27:57.808] base::close(...future.stdout) [01:27:57.808] ...future.stdout <- NULL [01:27:57.808] } [01:27:57.808] ...future.result$conditions <- ...future.conditions [01:27:57.808] ...future.result$finished <- base::Sys.time() [01:27:57.808] ...future.result [01:27:57.808] } [01:27:57.813] Exporting 3 global objects (7.52 KiB) to cluster node #1 ... [01:27:57.813] Exporting 'outer_function' (1.31 KiB) to cluster node #1 ... [01:27:57.814] Exporting 'outer_function' (1.31 KiB) to cluster node #1 ... DONE [01:27:57.814] Exporting 'map' (4.43 KiB) to cluster node #1 ... [01:27:57.815] Exporting 'map' (4.43 KiB) to cluster node #1 ... DONE [01:27:57.815] Exporting 'inner_function' (1.78 KiB) to cluster node #1 ... [01:27:57.815] Exporting 'inner_function' (1.78 KiB) to cluster node #1 ... DONE [01:27:57.816] Exporting 3 global objects (7.52 KiB) to cluster node #1 ... DONE [01:27:57.816] MultisessionFuture started [01:27:57.816] - Launch lazy future ... done [01:27:57.817] run() for 'MultisessionFuture' ... done [01:27:57.817] result() for ClusterFuture ... [01:27:57.817] receiveMessageFromWorker() for ClusterFuture ... [01:27:57.817] - Validating connection of MultisessionFuture [01:27:57.833] - received message: FutureResult [01:27:57.833] - Received FutureResult [01:27:57.833] - Erased future from FutureRegistry [01:27:57.833] result() for ClusterFuture ... [01:27:57.834] - result already collected: FutureResult [01:27:57.834] result() for ClusterFuture ... done [01:27:57.834] receiveMessageFromWorker() for ClusterFuture ... done [01:27:57.834] result() for ClusterFuture ... done [01:27:57.834] result() for ClusterFuture ... [01:27:57.834] - result already collected: FutureResult [01:27:57.835] result() for ClusterFuture ... done List of 2 $ : num [1:2] 2 3 $ : num [1:2] 2 3 Testing with 2 cores ... DONE > > message("*** Globals - formulas ... DONE") *** Globals - formulas ... DONE > > source("incl/end.R") [01:27:57.837] plan(): Setting new future strategy stack: [01:27:57.837] List of future strategies: [01:27:57.837] 1. FutureStrategy: [01:27:57.837] - args: function (..., envir = parent.frame(), workers = "") [01:27:57.837] - tweaked: FALSE [01:27:57.837] - call: future::plan(oplan) [01:27:57.839] plan(): nbrOfWorkers() = 1 Failed to undo environment variables: - Expected environment variables: [n=204] '!ExitCode', 'ALLUSERSPROFILE', 'APPDATA', 'BIBINPUTS', 'BINDIR', 'BSTINPUTS', 'COMMONPROGRAMFILES', 'COMPUTERNAME', 'COMSPEC', 'CURL_CA_BUNDLE', 'CYGWIN', 'CommonProgramFiles(x86)', 'CommonProgramW6432', 'DriverData', 'HOME', 'HOMEDRIVE', 'HOMEPATH', 'JAGS_ROOT', 'JAVA_HOME', 'LANGUAGE', 'LC_COLLATE', 'LC_MONETARY', 'LC_TIME', 'LOCALAPPDATA', 'LOGONSERVER', 'LS_HOME', 'LS_LICENSE_PATH', 'MAKE', 'MAKEFLAGS', 'MAKELEVEL', 'MFLAGS', 'MSMPI_BENCHMARKS', 'MSMPI_BIN', 'MSYS2_ENV_CONV_EXCL', 'NUMBER_OF_PROCESSORS', 'OCL', 'OMP_THREAD_LIMIT', 'OS', 'PATH', 'PATHEXT', 'PROCESSOR_ARCHITECTURE', 'PROCESSOR_IDENTIFIER', 'PROCESSOR_LEVEL', 'PROCESSOR_REVISION', 'PROGRAMFILES', 'PROMPT', 'PSModulePath', 'PUBLIC', 'PWD', 'ProgramData', 'ProgramFiles(x86)', 'ProgramW6432', 'RTOOLS43_HOME', '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_MBCS_CONVERSION_FAILURE_', '_R_CHECK_NATIVE_ROUTINE_REGISTRATION_', '_R_CHECK_NEWS_IN_PLAIN_TEXT_', '_R_CHECK_NO_RECOMMENDED_', '_R_CHECK_NO_STOP_ON_TEST_ERROR_', '_R_CHECK_ORPHANED_', '_R_CHECK_OVERWRITE_REGISTERED_S3_METHODS_', '_R_CHECK_PACKAGES_USED_IGNORE_UNUSED_IMPORTS_', '_R_CHECK_PACKAGES_USED_IN_TESTS_USE_SUBDIRS_', '_R_CHECK_PACKAGE_DATASETS_SUPPRESS_NOTES_', '_R_CHECK_PACKAGE_NAME_', '_R_CHECK_PKG_SIZES_', '_R_CHECK_PKG_SIZES_THRESHOLD_', '_R_CHECK_PRAGMAS_', '_R_CHECK_RD_EXAMPLES_T_AND_F_', '_R_CHECK_RD_LINE_WIDTHS_', '_R_CHECK_RD_MATH_RENDERING_', '_R_CHECK_RD_NOTE_LOST_BRACES_', '_R_CHECK_RD_VALIDATE_RD2HTML_', '_R_CHECK_REPLACING_IMPORTS_', '_R_CHECK_R_DEPENDS_', '_R_CHECK_S3_METHODS_SHOW_POSSIBLE_ISSUES_', '_R_CHECK_SCREEN_DEVICE_', '_R_CHECK_SERIALIZATION_', '_R_CHECK_SHLIB_OPENMP_FLAGS_', '_R_CHECK_SRC_MINUS_W_IMPLICIT_', '_R_CHECK_SUBDIRS_NOCASE_', '_R_CHECK_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_', '__R_CHECK_DOC_FILES_NOTE_IF_ALL_SPECIAL__', 'maj.version', 'nextArg--timingsnextArg--install' - Environment variables still there: [n=0] - Environment variables missing: [n=1] 'MAKEFLAGS' Differences environment variable by environment variable: List of 3 $ name : chr "MAKEFLAGS" $ expected: 'Dlist' chr "" $ actual : 'Dlist' chr NA > > proc.time() user system elapsed 1.62 0.15 2.70