R Under development (unstable) (2024-10-26 r87273 ucrt) -- "Unsuffered Consequences" Copyright (C) 2024 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > source("incl/start.R") Loading required package: future [18:40:54.096] plan(): Setting new future strategy stack: [18:40:54.098] List of future strategies: [18:40:54.098] 1. sequential: [18:40:54.098] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.098] - tweaked: FALSE [18:40:54.098] - call: future::plan("sequential") [18:40:54.110] plan(): nbrOfWorkers() = 1 > > message("*** future_eapply() ...") *** future_eapply() ... > > message("- From example(eapply) ...") - From example(eapply) ... > > for (strategy in supportedStrategies()) { + message(sprintf("*** strategy = %s ...", sQuote(strategy))) + plan(strategy) + + env <- new.env(hash = FALSE) + env$a <- 1:10 + env$beta <- exp(-3:3) + env$logic <- c(TRUE, FALSE, FALSE, TRUE) + + y0 <- unlist(eapply(env, mean, USE.NAMES = FALSE)) + y1 <- unlist(future_eapply(env, mean, USE.NAMES = FALSE)) + stopifnot(all.equal(y1, y0)) + + y0 <- eapply(env, quantile, probs = 1:3/4) + y1 <- future_eapply(env, quantile, probs = 1:3/4) + stopifnot(all.equal(y1, y0)) + + y0 <- eapply(env, quantile) + y1 <- future_eapply(env, quantile) + stopifnot(all.equal(y1, y0)) + y2 <- future_eapply(env, "quantile") + stopifnot(all.equal(y2, y0)) + + plan(sequential) + message(sprintf("*** strategy = %s ... done", sQuote(strategy))) + } ## for (strategy in ...) *** strategy = 'sequential' ... [18:40:54.133] plan(): Setting new future strategy stack: [18:40:54.133] List of future strategies: [18:40:54.133] 1. sequential: [18:40:54.133] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.133] - tweaked: FALSE [18:40:54.133] - call: plan(strategy) [18:40:54.146] plan(): nbrOfWorkers() = 1 [18:40:54.147] future_lapply() ... [18:40:54.151] Number of chunks: 1 [18:40:54.152] getGlobalsAndPackagesXApply() ... [18:40:54.152] - future.globals: TRUE [18:40:54.152] getGlobalsAndPackages() ... [18:40:54.153] Searching for globals... [18:40:54.155] - globals found: [2] 'FUN', 'UseMethod' [18:40:54.155] Searching for globals ... DONE [18:40:54.155] Resolving globals: FALSE [18:40:54.156] The total size of the 1 globals is 273 bytes (273 bytes) [18:40:54.157] The total size of the 1 globals exported for future expression ('FUN()') is 273 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (273 bytes of class 'function') [18:40:54.157] - globals: [1] 'FUN' [18:40:54.157] [18:40:54.157] getGlobalsAndPackages() ... DONE [18:40:54.158] - globals found/used: [n=1] 'FUN' [18:40:54.158] - needed namespaces: [n=0] [18:40:54.158] Finding globals ... DONE [18:40:54.158] - use_args: TRUE [18:40:54.158] - Getting '...' globals ... [18:40:54.159] resolve() on list ... [18:40:54.159] recursive: 0 [18:40:54.160] length: 1 [18:40:54.160] elements: '...' [18:40:54.160] length: 0 (resolved future 1) [18:40:54.160] resolve() on list ... DONE [18:40:54.160] - '...' content: [n=0] [18:40:54.161] List of 1 [18:40:54.161] $ ...: list() [18:40:54.161] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.161] - attr(*, "where")=List of 1 [18:40:54.161] ..$ ...: [18:40:54.161] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.161] - attr(*, "resolved")= logi TRUE [18:40:54.161] - attr(*, "total_size")= num NA [18:40:54.166] - Getting '...' globals ... DONE [18:40:54.166] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:54.166] List of 2 [18:40:54.166] $ ...future.FUN:function (x, ...) [18:40:54.166] $ ... : list() [18:40:54.166] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.166] - attr(*, "where")=List of 2 [18:40:54.166] ..$ ...future.FUN: [18:40:54.166] ..$ ... : [18:40:54.166] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.166] - attr(*, "resolved")= logi FALSE [18:40:54.166] - attr(*, "total_size")= int 5249 [18:40:54.170] Packages to be attached in all futures: [n=0] [18:40:54.170] getGlobalsAndPackagesXApply() ... DONE [18:40:54.170] Number of futures (= number of chunks): 1 [18:40:54.171] Launching 1 futures (chunks) ... [18:40:54.171] Chunk #1 of 1 ... [18:40:54.171] - Finding globals in 'X' for chunk #1 ... [18:40:54.171] getGlobalsAndPackages() ... [18:40:54.171] Searching for globals... [18:40:54.172] [18:40:54.172] Searching for globals ... DONE [18:40:54.172] - globals: [0] [18:40:54.172] getGlobalsAndPackages() ... DONE [18:40:54.172] + additional globals found: [n=0] [18:40:54.173] + additional namespaces needed: [n=0] [18:40:54.173] - Finding globals in 'X' for chunk #1 ... DONE [18:40:54.173] - seeds: [18:40:54.173] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.173] getGlobalsAndPackages() ... [18:40:54.173] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.174] Resolving globals: FALSE [18:40:54.174] Tweak future expression to call with '...' arguments ... [18:40:54.174] { [18:40:54.174] do.call(function(...) { [18:40:54.174] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.174] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.174] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.174] on.exit(options(oopts), add = TRUE) [18:40:54.174] } [18:40:54.174] { [18:40:54.174] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.174] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.174] ...future.FUN(...future.X_jj, ...) [18:40:54.174] }) [18:40:54.174] } [18:40:54.174] }, args = future.call.arguments) [18:40:54.174] } [18:40:54.174] Tweak future expression to call with '...' arguments ... DONE [18:40:54.175] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.175] [18:40:54.175] getGlobalsAndPackages() ... DONE [18:40:54.176] run() for 'Future' ... [18:40:54.176] - state: 'created' [18:40:54.177] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:40:54.177] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.177] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:40:54.177] - Field: 'label' [18:40:54.178] - Field: 'local' [18:40:54.178] - Field: 'owner' [18:40:54.178] - Field: 'envir' [18:40:54.178] - Field: 'packages' [18:40:54.178] - Field: 'gc' [18:40:54.179] - Field: 'conditions' [18:40:54.179] - Field: 'expr' [18:40:54.179] - Field: 'uuid' [18:40:54.179] - Field: 'seed' [18:40:54.179] - Field: 'version' [18:40:54.179] - Field: 'result' [18:40:54.180] - Field: 'asynchronous' [18:40:54.180] - Field: 'calls' [18:40:54.180] - Field: 'globals' [18:40:54.182] - Field: 'stdout' [18:40:54.182] - Field: 'earlySignal' [18:40:54.182] - Field: 'lazy' [18:40:54.182] - Field: 'state' [18:40:54.183] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:40:54.183] - Launch lazy future ... [18:40:54.184] Packages needed by the future expression (n = 0): [18:40:54.184] Packages needed by future strategies (n = 0): [18:40:54.185] { [18:40:54.185] { [18:40:54.185] { [18:40:54.185] ...future.startTime <- base::Sys.time() [18:40:54.185] { [18:40:54.185] { [18:40:54.185] { [18:40:54.185] base::local({ [18:40:54.185] has_future <- base::requireNamespace("future", [18:40:54.185] quietly = TRUE) [18:40:54.185] if (has_future) { [18:40:54.185] ns <- base::getNamespace("future") [18:40:54.185] version <- ns[[".package"]][["version"]] [18:40:54.185] if (is.null(version)) [18:40:54.185] version <- utils::packageVersion("future") [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] version <- NULL [18:40:54.185] } [18:40:54.185] if (!has_future || version < "1.8.0") { [18:40:54.185] info <- base::c(r_version = base::gsub("R version ", [18:40:54.185] "", base::R.version$version.string), [18:40:54.185] platform = base::sprintf("%s (%s-bit)", [18:40:54.185] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:54.185] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:54.185] "release", "version")], collapse = " "), [18:40:54.185] hostname = base::Sys.info()[["nodename"]]) [18:40:54.185] info <- base::sprintf("%s: %s", base::names(info), [18:40:54.185] info) [18:40:54.185] info <- base::paste(info, collapse = "; ") [18:40:54.185] if (!has_future) { [18:40:54.185] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:54.185] info) [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:54.185] info, version) [18:40:54.185] } [18:40:54.185] base::stop(msg) [18:40:54.185] } [18:40:54.185] }) [18:40:54.185] } [18:40:54.185] ...future.strategy.old <- future::plan("list") [18:40:54.185] options(future.plan = NULL) [18:40:54.185] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.185] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:54.185] } [18:40:54.185] ...future.workdir <- getwd() [18:40:54.185] } [18:40:54.185] ...future.oldOptions <- base::as.list(base::.Options) [18:40:54.185] ...future.oldEnvVars <- base::Sys.getenv() [18:40:54.185] } [18:40:54.185] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:54.185] future.globals.maxSize = NULL, future.globals.method = NULL, [18:40:54.185] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:54.185] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:54.185] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:54.185] future.stdout.windows.reencode = NULL, width = 80L) [18:40:54.185] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:54.185] base::names(...future.oldOptions)) [18:40:54.185] } [18:40:54.185] if (FALSE) { [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] if (TRUE) { [18:40:54.185] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:54.185] open = "w") [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:54.185] windows = "NUL", "/dev/null"), open = "w") [18:40:54.185] } [18:40:54.185] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:54.185] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:54.185] base::sink(type = "output", split = FALSE) [18:40:54.185] base::close(...future.stdout) [18:40:54.185] }, add = TRUE) [18:40:54.185] } [18:40:54.185] ...future.frame <- base::sys.nframe() [18:40:54.185] ...future.conditions <- base::list() [18:40:54.185] ...future.rng <- base::globalenv()$.Random.seed [18:40:54.185] if (FALSE) { [18:40:54.185] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:54.185] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:54.185] } [18:40:54.185] ...future.result <- base::tryCatch({ [18:40:54.185] base::withCallingHandlers({ [18:40:54.185] ...future.value <- base::withVisible(base::local({ [18:40:54.185] do.call(function(...) { [18:40:54.185] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.185] if (!identical(...future.globals.maxSize.org, [18:40:54.185] ...future.globals.maxSize)) { [18:40:54.185] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.185] on.exit(options(oopts), add = TRUE) [18:40:54.185] } [18:40:54.185] { [18:40:54.185] lapply(seq_along(...future.elements_ii), [18:40:54.185] FUN = function(jj) { [18:40:54.185] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.185] ...future.FUN(...future.X_jj, ...) [18:40:54.185] }) [18:40:54.185] } [18:40:54.185] }, args = future.call.arguments) [18:40:54.185] })) [18:40:54.185] future::FutureResult(value = ...future.value$value, [18:40:54.185] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.185] ...future.rng), globalenv = if (FALSE) [18:40:54.185] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:54.185] ...future.globalenv.names)) [18:40:54.185] else NULL, started = ...future.startTime, version = "1.8") [18:40:54.185] }, condition = base::local({ [18:40:54.185] c <- base::c [18:40:54.185] inherits <- base::inherits [18:40:54.185] invokeRestart <- base::invokeRestart [18:40:54.185] length <- base::length [18:40:54.185] list <- base::list [18:40:54.185] seq.int <- base::seq.int [18:40:54.185] signalCondition <- base::signalCondition [18:40:54.185] sys.calls <- base::sys.calls [18:40:54.185] `[[` <- base::`[[` [18:40:54.185] `+` <- base::`+` [18:40:54.185] `<<-` <- base::`<<-` [18:40:54.185] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:54.185] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:54.185] 3L)] [18:40:54.185] } [18:40:54.185] function(cond) { [18:40:54.185] is_error <- inherits(cond, "error") [18:40:54.185] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:54.185] NULL) [18:40:54.185] if (is_error) { [18:40:54.185] sessionInformation <- function() { [18:40:54.185] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:54.185] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:54.185] search = base::search(), system = base::Sys.info()) [18:40:54.185] } [18:40:54.185] ...future.conditions[[length(...future.conditions) + [18:40:54.185] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:54.185] cond$call), session = sessionInformation(), [18:40:54.185] timestamp = base::Sys.time(), signaled = 0L) [18:40:54.185] signalCondition(cond) [18:40:54.185] } [18:40:54.185] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:54.185] "immediateCondition"))) { [18:40:54.185] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:54.185] ...future.conditions[[length(...future.conditions) + [18:40:54.185] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:54.185] if (TRUE && !signal) { [18:40:54.185] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.185] { [18:40:54.185] inherits <- base::inherits [18:40:54.185] invokeRestart <- base::invokeRestart [18:40:54.185] is.null <- base::is.null [18:40:54.185] muffled <- FALSE [18:40:54.185] if (inherits(cond, "message")) { [18:40:54.185] muffled <- grepl(pattern, "muffleMessage") [18:40:54.185] if (muffled) [18:40:54.185] invokeRestart("muffleMessage") [18:40:54.185] } [18:40:54.185] else if (inherits(cond, "warning")) { [18:40:54.185] muffled <- grepl(pattern, "muffleWarning") [18:40:54.185] if (muffled) [18:40:54.185] invokeRestart("muffleWarning") [18:40:54.185] } [18:40:54.185] else if (inherits(cond, "condition")) { [18:40:54.185] if (!is.null(pattern)) { [18:40:54.185] computeRestarts <- base::computeRestarts [18:40:54.185] grepl <- base::grepl [18:40:54.185] restarts <- computeRestarts(cond) [18:40:54.185] for (restart in restarts) { [18:40:54.185] name <- restart$name [18:40:54.185] if (is.null(name)) [18:40:54.185] next [18:40:54.185] if (!grepl(pattern, name)) [18:40:54.185] next [18:40:54.185] invokeRestart(restart) [18:40:54.185] muffled <- TRUE [18:40:54.185] break [18:40:54.185] } [18:40:54.185] } [18:40:54.185] } [18:40:54.185] invisible(muffled) [18:40:54.185] } [18:40:54.185] muffleCondition(cond, pattern = "^muffle") [18:40:54.185] } [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] if (TRUE) { [18:40:54.185] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.185] { [18:40:54.185] inherits <- base::inherits [18:40:54.185] invokeRestart <- base::invokeRestart [18:40:54.185] is.null <- base::is.null [18:40:54.185] muffled <- FALSE [18:40:54.185] if (inherits(cond, "message")) { [18:40:54.185] muffled <- grepl(pattern, "muffleMessage") [18:40:54.185] if (muffled) [18:40:54.185] invokeRestart("muffleMessage") [18:40:54.185] } [18:40:54.185] else if (inherits(cond, "warning")) { [18:40:54.185] muffled <- grepl(pattern, "muffleWarning") [18:40:54.185] if (muffled) [18:40:54.185] invokeRestart("muffleWarning") [18:40:54.185] } [18:40:54.185] else if (inherits(cond, "condition")) { [18:40:54.185] if (!is.null(pattern)) { [18:40:54.185] computeRestarts <- base::computeRestarts [18:40:54.185] grepl <- base::grepl [18:40:54.185] restarts <- computeRestarts(cond) [18:40:54.185] for (restart in restarts) { [18:40:54.185] name <- restart$name [18:40:54.185] if (is.null(name)) [18:40:54.185] next [18:40:54.185] if (!grepl(pattern, name)) [18:40:54.185] next [18:40:54.185] invokeRestart(restart) [18:40:54.185] muffled <- TRUE [18:40:54.185] break [18:40:54.185] } [18:40:54.185] } [18:40:54.185] } [18:40:54.185] invisible(muffled) [18:40:54.185] } [18:40:54.185] muffleCondition(cond, pattern = "^muffle") [18:40:54.185] } [18:40:54.185] } [18:40:54.185] } [18:40:54.185] })) [18:40:54.185] }, error = function(ex) { [18:40:54.185] base::structure(base::list(value = NULL, visible = NULL, [18:40:54.185] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.185] ...future.rng), started = ...future.startTime, [18:40:54.185] finished = Sys.time(), session_uuid = NA_character_, [18:40:54.185] version = "1.8"), class = "FutureResult") [18:40:54.185] }, finally = { [18:40:54.185] if (!identical(...future.workdir, getwd())) [18:40:54.185] setwd(...future.workdir) [18:40:54.185] { [18:40:54.185] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:54.185] ...future.oldOptions$nwarnings <- NULL [18:40:54.185] } [18:40:54.185] base::options(...future.oldOptions) [18:40:54.185] if (.Platform$OS.type == "windows") { [18:40:54.185] old_names <- names(...future.oldEnvVars) [18:40:54.185] envs <- base::Sys.getenv() [18:40:54.185] names <- names(envs) [18:40:54.185] common <- intersect(names, old_names) [18:40:54.185] added <- setdiff(names, old_names) [18:40:54.185] removed <- setdiff(old_names, names) [18:40:54.185] changed <- common[...future.oldEnvVars[common] != [18:40:54.185] envs[common]] [18:40:54.185] NAMES <- toupper(changed) [18:40:54.185] args <- list() [18:40:54.185] for (kk in seq_along(NAMES)) { [18:40:54.185] name <- changed[[kk]] [18:40:54.185] NAME <- NAMES[[kk]] [18:40:54.185] if (name != NAME && is.element(NAME, old_names)) [18:40:54.185] next [18:40:54.185] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.185] } [18:40:54.185] NAMES <- toupper(added) [18:40:54.185] for (kk in seq_along(NAMES)) { [18:40:54.185] name <- added[[kk]] [18:40:54.185] NAME <- NAMES[[kk]] [18:40:54.185] if (name != NAME && is.element(NAME, old_names)) [18:40:54.185] next [18:40:54.185] args[[name]] <- "" [18:40:54.185] } [18:40:54.185] NAMES <- toupper(removed) [18:40:54.185] for (kk in seq_along(NAMES)) { [18:40:54.185] name <- removed[[kk]] [18:40:54.185] NAME <- NAMES[[kk]] [18:40:54.185] if (name != NAME && is.element(NAME, old_names)) [18:40:54.185] next [18:40:54.185] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.185] } [18:40:54.185] if (length(args) > 0) [18:40:54.185] base::do.call(base::Sys.setenv, args = args) [18:40:54.185] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:54.185] } [18:40:54.185] { [18:40:54.185] if (base::length(...future.futureOptionsAdded) > [18:40:54.185] 0L) { [18:40:54.185] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:54.185] base::names(opts) <- ...future.futureOptionsAdded [18:40:54.185] base::options(opts) [18:40:54.185] } [18:40:54.185] { [18:40:54.185] { [18:40:54.185] NULL [18:40:54.185] RNGkind("Mersenne-Twister") [18:40:54.185] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:40:54.185] inherits = FALSE) [18:40:54.185] } [18:40:54.185] options(future.plan = NULL) [18:40:54.185] if (is.na(NA_character_)) [18:40:54.185] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.185] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:54.185] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:54.185] .init = FALSE) [18:40:54.185] } [18:40:54.185] } [18:40:54.185] } [18:40:54.185] }) [18:40:54.185] if (TRUE) { [18:40:54.185] base::sink(type = "output", split = FALSE) [18:40:54.185] if (TRUE) { [18:40:54.185] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:54.185] } [18:40:54.185] else { [18:40:54.185] ...future.result["stdout"] <- base::list(NULL) [18:40:54.185] } [18:40:54.185] base::close(...future.stdout) [18:40:54.185] ...future.stdout <- NULL [18:40:54.185] } [18:40:54.185] ...future.result$conditions <- ...future.conditions [18:40:54.185] ...future.result$finished <- base::Sys.time() [18:40:54.185] ...future.result [18:40:54.185] } [18:40:54.189] assign_globals() ... [18:40:54.189] List of 5 [18:40:54.189] $ ...future.FUN :function (x, ...) [18:40:54.189] $ future.call.arguments : list() [18:40:54.189] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.189] $ ...future.elements_ii :List of 3 [18:40:54.189] ..$ : logi [1:4] TRUE FALSE FALSE TRUE [18:40:54.189] ..$ : num [1:7] 0.0498 0.1353 0.3679 1 2.7183 ... [18:40:54.189] ..$ : int [1:10] 1 2 3 4 5 6 7 8 9 10 [18:40:54.189] $ ...future.seeds_ii : NULL [18:40:54.189] $ ...future.globals.maxSize: NULL [18:40:54.189] - attr(*, "where")=List of 5 [18:40:54.189] ..$ ...future.FUN : [18:40:54.189] ..$ future.call.arguments : [18:40:54.189] ..$ ...future.elements_ii : [18:40:54.189] ..$ ...future.seeds_ii : [18:40:54.189] ..$ ...future.globals.maxSize: [18:40:54.189] - attr(*, "resolved")= logi FALSE [18:40:54.189] - attr(*, "total_size")= num 5249 [18:40:54.189] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.189] - attr(*, "already-done")= logi TRUE [18:40:54.195] - copied '...future.FUN' to environment [18:40:54.196] - copied 'future.call.arguments' to environment [18:40:54.196] - copied '...future.elements_ii' to environment [18:40:54.196] - copied '...future.seeds_ii' to environment [18:40:54.196] - copied '...future.globals.maxSize' to environment [18:40:54.196] assign_globals() ... done [18:40:54.197] plan(): Setting new future strategy stack: [18:40:54.197] List of future strategies: [18:40:54.197] 1. sequential: [18:40:54.197] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.197] - tweaked: FALSE [18:40:54.197] - call: NULL [18:40:54.198] plan(): nbrOfWorkers() = 1 [18:40:54.200] plan(): Setting new future strategy stack: [18:40:54.200] List of future strategies: [18:40:54.200] 1. sequential: [18:40:54.200] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.200] - tweaked: FALSE [18:40:54.200] - call: plan(strategy) [18:40:54.201] plan(): nbrOfWorkers() = 1 [18:40:54.201] SequentialFuture started (and completed) [18:40:54.201] - Launch lazy future ... done [18:40:54.202] run() for 'SequentialFuture' ... done [18:40:54.202] Created future: [18:40:54.202] SequentialFuture: [18:40:54.202] Label: 'future_eapply-1' [18:40:54.202] Expression: [18:40:54.202] { [18:40:54.202] do.call(function(...) { [18:40:54.202] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.202] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.202] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.202] on.exit(options(oopts), add = TRUE) [18:40:54.202] } [18:40:54.202] { [18:40:54.202] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.202] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.202] ...future.FUN(...future.X_jj, ...) [18:40:54.202] }) [18:40:54.202] } [18:40:54.202] }, args = future.call.arguments) [18:40:54.202] } [18:40:54.202] Lazy evaluation: FALSE [18:40:54.202] Asynchronous evaluation: FALSE [18:40:54.202] Local evaluation: TRUE [18:40:54.202] Environment: R_GlobalEnv [18:40:54.202] Capture standard output: TRUE [18:40:54.202] Capture condition classes: 'condition' (excluding 'nothing') [18:40:54.202] Globals: 5 objects totaling 653 bytes (function '...future.FUN' of 273 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 229 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:54.202] Packages: [18:40:54.202] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:54.202] Resolved: TRUE [18:40:54.202] Value: 79 bytes of class 'list' [18:40:54.202] Early signaling: FALSE [18:40:54.202] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:54.202] Class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.203] Chunk #1 of 1 ... DONE [18:40:54.204] Launching 1 futures (chunks) ... DONE [18:40:54.204] Resolving 1 futures (chunks) ... [18:40:54.204] resolve() on list ... [18:40:54.204] recursive: 0 [18:40:54.204] length: 1 [18:40:54.204] [18:40:54.205] resolved() for 'SequentialFuture' ... [18:40:54.205] - state: 'finished' [18:40:54.205] - run: TRUE [18:40:54.205] - result: 'FutureResult' [18:40:54.205] resolved() for 'SequentialFuture' ... done [18:40:54.206] Future #1 [18:40:54.206] signalConditionsASAP(SequentialFuture, pos=1) ... [18:40:54.206] - nx: 1 [18:40:54.206] - relay: TRUE [18:40:54.207] - stdout: TRUE [18:40:54.207] - signal: TRUE [18:40:54.207] - resignal: FALSE [18:40:54.207] - force: TRUE [18:40:54.207] - relayed: [n=1] FALSE [18:40:54.207] - queued futures: [n=1] FALSE [18:40:54.207] - until=1 [18:40:54.208] - relaying element #1 [18:40:54.208] - relayed: [n=1] TRUE [18:40:54.208] - queued futures: [n=1] TRUE [18:40:54.208] signalConditionsASAP(SequentialFuture, pos=1) ... done [18:40:54.209] length: 0 (resolved future 1) [18:40:54.209] Relaying remaining futures [18:40:54.209] signalConditionsASAP(NULL, pos=0) ... [18:40:54.209] - nx: 1 [18:40:54.209] - relay: TRUE [18:40:54.209] - stdout: TRUE [18:40:54.209] - signal: TRUE [18:40:54.210] - resignal: FALSE [18:40:54.210] - force: TRUE [18:40:54.210] - relayed: [n=1] TRUE [18:40:54.210] - queued futures: [n=1] TRUE - flush all [18:40:54.210] - relayed: [n=1] TRUE [18:40:54.210] - queued futures: [n=1] TRUE [18:40:54.211] signalConditionsASAP(NULL, pos=0) ... done [18:40:54.211] resolve() on list ... DONE [18:40:54.211] - Number of value chunks collected: 1 [18:40:54.211] Resolving 1 futures (chunks) ... DONE [18:40:54.211] Reducing values from 1 chunks ... [18:40:54.211] - Number of values collected after concatenation: 3 [18:40:54.212] - Number of values expected: 3 [18:40:54.212] Reducing values from 1 chunks ... DONE [18:40:54.212] future_lapply() ... DONE [18:40:54.215] future_lapply() ... [18:40:54.216] Number of chunks: 1 [18:40:54.216] getGlobalsAndPackagesXApply() ... [18:40:54.216] - future.globals: TRUE [18:40:54.216] getGlobalsAndPackages() ... [18:40:54.216] Searching for globals... [18:40:54.218] - globals found: [2] 'FUN', 'UseMethod' [18:40:54.218] Searching for globals ... DONE [18:40:54.218] Resolving globals: FALSE [18:40:54.218] The total size of the 1 globals is 311 bytes (311 bytes) [18:40:54.219] The total size of the 1 globals exported for future expression ('FUN(probs = c(0.25, 0.5, 0.75))') is 311 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (311 bytes of class 'function') [18:40:54.219] - globals: [1] 'FUN' [18:40:54.219] - packages: [1] 'stats' [18:40:54.220] getGlobalsAndPackages() ... DONE [18:40:54.220] - globals found/used: [n=1] 'FUN' [18:40:54.220] - needed namespaces: [n=1] 'stats' [18:40:54.220] Finding globals ... DONE [18:40:54.220] - use_args: TRUE [18:40:54.220] - Getting '...' globals ... [18:40:54.221] resolve() on list ... [18:40:54.221] recursive: 0 [18:40:54.221] length: 1 [18:40:54.221] elements: '...' [18:40:54.221] length: 0 (resolved future 1) [18:40:54.222] resolve() on list ... DONE [18:40:54.222] - '...' content: [n=1] 'probs' [18:40:54.222] List of 1 [18:40:54.222] $ ...:List of 1 [18:40:54.222] ..$ probs: num [1:3] 0.25 0.5 0.75 [18:40:54.222] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.222] - attr(*, "where")=List of 1 [18:40:54.222] ..$ ...: [18:40:54.222] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.222] - attr(*, "resolved")= logi TRUE [18:40:54.222] - attr(*, "total_size")= num NA [18:40:54.225] - Getting '...' globals ... DONE [18:40:54.225] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:54.226] List of 2 [18:40:54.226] $ ...future.FUN:function (x, ...) [18:40:54.226] $ ... :List of 1 [18:40:54.226] ..$ probs: num [1:3] 0.25 0.5 0.75 [18:40:54.226] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.226] - attr(*, "where")=List of 2 [18:40:54.226] ..$ ...future.FUN: [18:40:54.226] ..$ ... : [18:40:54.226] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.226] - attr(*, "resolved")= logi FALSE [18:40:54.226] - attr(*, "total_size")= int 6525 [18:40:54.229] Packages to be attached in all futures: [n=1] 'stats' [18:40:54.229] getGlobalsAndPackagesXApply() ... DONE [18:40:54.230] Number of futures (= number of chunks): 1 [18:40:54.230] Launching 1 futures (chunks) ... [18:40:54.230] Chunk #1 of 1 ... [18:40:54.230] - Finding globals in 'X' for chunk #1 ... [18:40:54.230] getGlobalsAndPackages() ... [18:40:54.230] Searching for globals... [18:40:54.231] [18:40:54.231] Searching for globals ... DONE [18:40:54.231] - globals: [0] [18:40:54.231] getGlobalsAndPackages() ... DONE [18:40:54.231] + additional globals found: [n=0] [18:40:54.232] + additional namespaces needed: [n=0] [18:40:54.232] - Finding globals in 'X' for chunk #1 ... DONE [18:40:54.232] - seeds: [18:40:54.232] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.232] getGlobalsAndPackages() ... [18:40:54.232] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.233] Resolving globals: FALSE [18:40:54.233] Tweak future expression to call with '...' arguments ... [18:40:54.233] { [18:40:54.233] do.call(function(...) { [18:40:54.233] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.233] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.233] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.233] on.exit(options(oopts), add = TRUE) [18:40:54.233] } [18:40:54.233] { [18:40:54.233] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.233] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.233] ...future.FUN(...future.X_jj, ...) [18:40:54.233] }) [18:40:54.233] } [18:40:54.233] }, args = future.call.arguments) [18:40:54.233] } [18:40:54.233] Tweak future expression to call with '...' arguments ... DONE [18:40:54.234] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.234] - packages: [1] 'stats' [18:40:54.234] getGlobalsAndPackages() ... DONE [18:40:54.235] run() for 'Future' ... [18:40:54.235] - state: 'created' [18:40:54.235] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:40:54.235] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.235] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:40:54.236] - Field: 'label' [18:40:54.236] - Field: 'local' [18:40:54.237] - Field: 'owner' [18:40:54.237] - Field: 'envir' [18:40:54.237] - Field: 'packages' [18:40:54.237] - Field: 'gc' [18:40:54.238] - Field: 'conditions' [18:40:54.238] - Field: 'expr' [18:40:54.238] - Field: 'uuid' [18:40:54.238] - Field: 'seed' [18:40:54.238] - Field: 'version' [18:40:54.238] - Field: 'result' [18:40:54.239] - Field: 'asynchronous' [18:40:54.239] - Field: 'calls' [18:40:54.239] - Field: 'globals' [18:40:54.239] - Field: 'stdout' [18:40:54.239] - Field: 'earlySignal' [18:40:54.239] - Field: 'lazy' [18:40:54.240] - Field: 'state' [18:40:54.240] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:40:54.240] - Launch lazy future ... [18:40:54.240] Packages needed by the future expression (n = 1): 'stats' [18:40:54.240] Packages needed by future strategies (n = 0): [18:40:54.241] { [18:40:54.241] { [18:40:54.241] { [18:40:54.241] ...future.startTime <- base::Sys.time() [18:40:54.241] { [18:40:54.241] { [18:40:54.241] { [18:40:54.241] { [18:40:54.241] base::local({ [18:40:54.241] has_future <- base::requireNamespace("future", [18:40:54.241] quietly = TRUE) [18:40:54.241] if (has_future) { [18:40:54.241] ns <- base::getNamespace("future") [18:40:54.241] version <- ns[[".package"]][["version"]] [18:40:54.241] if (is.null(version)) [18:40:54.241] version <- utils::packageVersion("future") [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] version <- NULL [18:40:54.241] } [18:40:54.241] if (!has_future || version < "1.8.0") { [18:40:54.241] info <- base::c(r_version = base::gsub("R version ", [18:40:54.241] "", base::R.version$version.string), [18:40:54.241] platform = base::sprintf("%s (%s-bit)", [18:40:54.241] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:54.241] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:54.241] "release", "version")], collapse = " "), [18:40:54.241] hostname = base::Sys.info()[["nodename"]]) [18:40:54.241] info <- base::sprintf("%s: %s", base::names(info), [18:40:54.241] info) [18:40:54.241] info <- base::paste(info, collapse = "; ") [18:40:54.241] if (!has_future) { [18:40:54.241] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:54.241] info) [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:54.241] info, version) [18:40:54.241] } [18:40:54.241] base::stop(msg) [18:40:54.241] } [18:40:54.241] }) [18:40:54.241] } [18:40:54.241] base::local({ [18:40:54.241] for (pkg in "stats") { [18:40:54.241] base::loadNamespace(pkg) [18:40:54.241] base::library(pkg, character.only = TRUE) [18:40:54.241] } [18:40:54.241] }) [18:40:54.241] } [18:40:54.241] ...future.strategy.old <- future::plan("list") [18:40:54.241] options(future.plan = NULL) [18:40:54.241] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.241] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:54.241] } [18:40:54.241] ...future.workdir <- getwd() [18:40:54.241] } [18:40:54.241] ...future.oldOptions <- base::as.list(base::.Options) [18:40:54.241] ...future.oldEnvVars <- base::Sys.getenv() [18:40:54.241] } [18:40:54.241] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:54.241] future.globals.maxSize = NULL, future.globals.method = NULL, [18:40:54.241] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:54.241] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:54.241] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:54.241] future.stdout.windows.reencode = NULL, width = 80L) [18:40:54.241] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:54.241] base::names(...future.oldOptions)) [18:40:54.241] } [18:40:54.241] if (FALSE) { [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] if (TRUE) { [18:40:54.241] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:54.241] open = "w") [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:54.241] windows = "NUL", "/dev/null"), open = "w") [18:40:54.241] } [18:40:54.241] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:54.241] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:54.241] base::sink(type = "output", split = FALSE) [18:40:54.241] base::close(...future.stdout) [18:40:54.241] }, add = TRUE) [18:40:54.241] } [18:40:54.241] ...future.frame <- base::sys.nframe() [18:40:54.241] ...future.conditions <- base::list() [18:40:54.241] ...future.rng <- base::globalenv()$.Random.seed [18:40:54.241] if (FALSE) { [18:40:54.241] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:54.241] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:54.241] } [18:40:54.241] ...future.result <- base::tryCatch({ [18:40:54.241] base::withCallingHandlers({ [18:40:54.241] ...future.value <- base::withVisible(base::local({ [18:40:54.241] do.call(function(...) { [18:40:54.241] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.241] if (!identical(...future.globals.maxSize.org, [18:40:54.241] ...future.globals.maxSize)) { [18:40:54.241] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.241] on.exit(options(oopts), add = TRUE) [18:40:54.241] } [18:40:54.241] { [18:40:54.241] lapply(seq_along(...future.elements_ii), [18:40:54.241] FUN = function(jj) { [18:40:54.241] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.241] ...future.FUN(...future.X_jj, ...) [18:40:54.241] }) [18:40:54.241] } [18:40:54.241] }, args = future.call.arguments) [18:40:54.241] })) [18:40:54.241] future::FutureResult(value = ...future.value$value, [18:40:54.241] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.241] ...future.rng), globalenv = if (FALSE) [18:40:54.241] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:54.241] ...future.globalenv.names)) [18:40:54.241] else NULL, started = ...future.startTime, version = "1.8") [18:40:54.241] }, condition = base::local({ [18:40:54.241] c <- base::c [18:40:54.241] inherits <- base::inherits [18:40:54.241] invokeRestart <- base::invokeRestart [18:40:54.241] length <- base::length [18:40:54.241] list <- base::list [18:40:54.241] seq.int <- base::seq.int [18:40:54.241] signalCondition <- base::signalCondition [18:40:54.241] sys.calls <- base::sys.calls [18:40:54.241] `[[` <- base::`[[` [18:40:54.241] `+` <- base::`+` [18:40:54.241] `<<-` <- base::`<<-` [18:40:54.241] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:54.241] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:54.241] 3L)] [18:40:54.241] } [18:40:54.241] function(cond) { [18:40:54.241] is_error <- inherits(cond, "error") [18:40:54.241] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:54.241] NULL) [18:40:54.241] if (is_error) { [18:40:54.241] sessionInformation <- function() { [18:40:54.241] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:54.241] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:54.241] search = base::search(), system = base::Sys.info()) [18:40:54.241] } [18:40:54.241] ...future.conditions[[length(...future.conditions) + [18:40:54.241] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:54.241] cond$call), session = sessionInformation(), [18:40:54.241] timestamp = base::Sys.time(), signaled = 0L) [18:40:54.241] signalCondition(cond) [18:40:54.241] } [18:40:54.241] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:54.241] "immediateCondition"))) { [18:40:54.241] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:54.241] ...future.conditions[[length(...future.conditions) + [18:40:54.241] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:54.241] if (TRUE && !signal) { [18:40:54.241] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.241] { [18:40:54.241] inherits <- base::inherits [18:40:54.241] invokeRestart <- base::invokeRestart [18:40:54.241] is.null <- base::is.null [18:40:54.241] muffled <- FALSE [18:40:54.241] if (inherits(cond, "message")) { [18:40:54.241] muffled <- grepl(pattern, "muffleMessage") [18:40:54.241] if (muffled) [18:40:54.241] invokeRestart("muffleMessage") [18:40:54.241] } [18:40:54.241] else if (inherits(cond, "warning")) { [18:40:54.241] muffled <- grepl(pattern, "muffleWarning") [18:40:54.241] if (muffled) [18:40:54.241] invokeRestart("muffleWarning") [18:40:54.241] } [18:40:54.241] else if (inherits(cond, "condition")) { [18:40:54.241] if (!is.null(pattern)) { [18:40:54.241] computeRestarts <- base::computeRestarts [18:40:54.241] grepl <- base::grepl [18:40:54.241] restarts <- computeRestarts(cond) [18:40:54.241] for (restart in restarts) { [18:40:54.241] name <- restart$name [18:40:54.241] if (is.null(name)) [18:40:54.241] next [18:40:54.241] if (!grepl(pattern, name)) [18:40:54.241] next [18:40:54.241] invokeRestart(restart) [18:40:54.241] muffled <- TRUE [18:40:54.241] break [18:40:54.241] } [18:40:54.241] } [18:40:54.241] } [18:40:54.241] invisible(muffled) [18:40:54.241] } [18:40:54.241] muffleCondition(cond, pattern = "^muffle") [18:40:54.241] } [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] if (TRUE) { [18:40:54.241] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.241] { [18:40:54.241] inherits <- base::inherits [18:40:54.241] invokeRestart <- base::invokeRestart [18:40:54.241] is.null <- base::is.null [18:40:54.241] muffled <- FALSE [18:40:54.241] if (inherits(cond, "message")) { [18:40:54.241] muffled <- grepl(pattern, "muffleMessage") [18:40:54.241] if (muffled) [18:40:54.241] invokeRestart("muffleMessage") [18:40:54.241] } [18:40:54.241] else if (inherits(cond, "warning")) { [18:40:54.241] muffled <- grepl(pattern, "muffleWarning") [18:40:54.241] if (muffled) [18:40:54.241] invokeRestart("muffleWarning") [18:40:54.241] } [18:40:54.241] else if (inherits(cond, "condition")) { [18:40:54.241] if (!is.null(pattern)) { [18:40:54.241] computeRestarts <- base::computeRestarts [18:40:54.241] grepl <- base::grepl [18:40:54.241] restarts <- computeRestarts(cond) [18:40:54.241] for (restart in restarts) { [18:40:54.241] name <- restart$name [18:40:54.241] if (is.null(name)) [18:40:54.241] next [18:40:54.241] if (!grepl(pattern, name)) [18:40:54.241] next [18:40:54.241] invokeRestart(restart) [18:40:54.241] muffled <- TRUE [18:40:54.241] break [18:40:54.241] } [18:40:54.241] } [18:40:54.241] } [18:40:54.241] invisible(muffled) [18:40:54.241] } [18:40:54.241] muffleCondition(cond, pattern = "^muffle") [18:40:54.241] } [18:40:54.241] } [18:40:54.241] } [18:40:54.241] })) [18:40:54.241] }, error = function(ex) { [18:40:54.241] base::structure(base::list(value = NULL, visible = NULL, [18:40:54.241] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.241] ...future.rng), started = ...future.startTime, [18:40:54.241] finished = Sys.time(), session_uuid = NA_character_, [18:40:54.241] version = "1.8"), class = "FutureResult") [18:40:54.241] }, finally = { [18:40:54.241] if (!identical(...future.workdir, getwd())) [18:40:54.241] setwd(...future.workdir) [18:40:54.241] { [18:40:54.241] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:54.241] ...future.oldOptions$nwarnings <- NULL [18:40:54.241] } [18:40:54.241] base::options(...future.oldOptions) [18:40:54.241] if (.Platform$OS.type == "windows") { [18:40:54.241] old_names <- names(...future.oldEnvVars) [18:40:54.241] envs <- base::Sys.getenv() [18:40:54.241] names <- names(envs) [18:40:54.241] common <- intersect(names, old_names) [18:40:54.241] added <- setdiff(names, old_names) [18:40:54.241] removed <- setdiff(old_names, names) [18:40:54.241] changed <- common[...future.oldEnvVars[common] != [18:40:54.241] envs[common]] [18:40:54.241] NAMES <- toupper(changed) [18:40:54.241] args <- list() [18:40:54.241] for (kk in seq_along(NAMES)) { [18:40:54.241] name <- changed[[kk]] [18:40:54.241] NAME <- NAMES[[kk]] [18:40:54.241] if (name != NAME && is.element(NAME, old_names)) [18:40:54.241] next [18:40:54.241] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.241] } [18:40:54.241] NAMES <- toupper(added) [18:40:54.241] for (kk in seq_along(NAMES)) { [18:40:54.241] name <- added[[kk]] [18:40:54.241] NAME <- NAMES[[kk]] [18:40:54.241] if (name != NAME && is.element(NAME, old_names)) [18:40:54.241] next [18:40:54.241] args[[name]] <- "" [18:40:54.241] } [18:40:54.241] NAMES <- toupper(removed) [18:40:54.241] for (kk in seq_along(NAMES)) { [18:40:54.241] name <- removed[[kk]] [18:40:54.241] NAME <- NAMES[[kk]] [18:40:54.241] if (name != NAME && is.element(NAME, old_names)) [18:40:54.241] next [18:40:54.241] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.241] } [18:40:54.241] if (length(args) > 0) [18:40:54.241] base::do.call(base::Sys.setenv, args = args) [18:40:54.241] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:54.241] } [18:40:54.241] { [18:40:54.241] if (base::length(...future.futureOptionsAdded) > [18:40:54.241] 0L) { [18:40:54.241] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:54.241] base::names(opts) <- ...future.futureOptionsAdded [18:40:54.241] base::options(opts) [18:40:54.241] } [18:40:54.241] { [18:40:54.241] { [18:40:54.241] NULL [18:40:54.241] RNGkind("Mersenne-Twister") [18:40:54.241] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:40:54.241] inherits = FALSE) [18:40:54.241] } [18:40:54.241] options(future.plan = NULL) [18:40:54.241] if (is.na(NA_character_)) [18:40:54.241] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.241] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:54.241] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:54.241] .init = FALSE) [18:40:54.241] } [18:40:54.241] } [18:40:54.241] } [18:40:54.241] }) [18:40:54.241] if (TRUE) { [18:40:54.241] base::sink(type = "output", split = FALSE) [18:40:54.241] if (TRUE) { [18:40:54.241] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:54.241] } [18:40:54.241] else { [18:40:54.241] ...future.result["stdout"] <- base::list(NULL) [18:40:54.241] } [18:40:54.241] base::close(...future.stdout) [18:40:54.241] ...future.stdout <- NULL [18:40:54.241] } [18:40:54.241] ...future.result$conditions <- ...future.conditions [18:40:54.241] ...future.result$finished <- base::Sys.time() [18:40:54.241] ...future.result [18:40:54.241] } [18:40:54.245] assign_globals() ... [18:40:54.245] List of 5 [18:40:54.245] $ ...future.FUN :function (x, ...) [18:40:54.245] $ future.call.arguments :List of 1 [18:40:54.245] ..$ probs: num [1:3] 0.25 0.5 0.75 [18:40:54.245] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.245] $ ...future.elements_ii :List of 3 [18:40:54.245] ..$ logic: logi [1:4] TRUE FALSE FALSE TRUE [18:40:54.245] ..$ beta : num [1:7] 0.0498 0.1353 0.3679 1 2.7183 ... [18:40:54.245] ..$ a : int [1:10] 1 2 3 4 5 6 7 8 9 10 [18:40:54.245] $ ...future.seeds_ii : NULL [18:40:54.245] $ ...future.globals.maxSize: NULL [18:40:54.245] - attr(*, "where")=List of 5 [18:40:54.245] ..$ ...future.FUN : [18:40:54.245] ..$ future.call.arguments : [18:40:54.245] ..$ ...future.elements_ii : [18:40:54.245] ..$ ...future.seeds_ii : [18:40:54.245] ..$ ...future.globals.maxSize: [18:40:54.245] - attr(*, "resolved")= logi FALSE [18:40:54.245] - attr(*, "total_size")= num 6525 [18:40:54.245] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.245] - attr(*, "already-done")= logi TRUE [18:40:54.252] - copied '...future.FUN' to environment [18:40:54.252] - copied 'future.call.arguments' to environment [18:40:54.252] - copied '...future.elements_ii' to environment [18:40:54.252] - copied '...future.seeds_ii' to environment [18:40:54.253] - copied '...future.globals.maxSize' to environment [18:40:54.253] assign_globals() ... done [18:40:54.253] plan(): Setting new future strategy stack: [18:40:54.254] List of future strategies: [18:40:54.254] 1. sequential: [18:40:54.254] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.254] - tweaked: FALSE [18:40:54.254] - call: NULL [18:40:54.254] plan(): nbrOfWorkers() = 1 [18:40:54.256] plan(): Setting new future strategy stack: [18:40:54.256] List of future strategies: [18:40:54.256] 1. sequential: [18:40:54.256] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.256] - tweaked: FALSE [18:40:54.256] - call: plan(strategy) [18:40:54.257] plan(): nbrOfWorkers() = 1 [18:40:54.257] SequentialFuture started (and completed) [18:40:54.257] - Launch lazy future ... done [18:40:54.257] run() for 'SequentialFuture' ... done [18:40:54.257] Created future: [18:40:54.258] SequentialFuture: [18:40:54.258] Label: 'future_eapply-1' [18:40:54.258] Expression: [18:40:54.258] { [18:40:54.258] do.call(function(...) { [18:40:54.258] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.258] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.258] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.258] on.exit(options(oopts), add = TRUE) [18:40:54.258] } [18:40:54.258] { [18:40:54.258] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.258] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.258] ...future.FUN(...future.X_jj, ...) [18:40:54.258] }) [18:40:54.258] } [18:40:54.258] }, args = future.call.arguments) [18:40:54.258] } [18:40:54.258] Lazy evaluation: FALSE [18:40:54.258] Asynchronous evaluation: FALSE [18:40:54.258] Local evaluation: TRUE [18:40:54.258] Environment: R_GlobalEnv [18:40:54.258] Capture standard output: TRUE [18:40:54.258] Capture condition classes: 'condition' (excluding 'nothing') [18:40:54.258] Globals: 5 objects totaling 832 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 171 bytes, list '...future.elements_ii' of 296 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:54.258] Packages: 1 packages ('stats') [18:40:54.258] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:54.258] Resolved: TRUE [18:40:54.258] Value: 299 bytes of class 'list' [18:40:54.258] Early signaling: FALSE [18:40:54.258] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:54.258] Class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.259] Chunk #1 of 1 ... DONE [18:40:54.259] Launching 1 futures (chunks) ... DONE [18:40:54.259] Resolving 1 futures (chunks) ... [18:40:54.259] resolve() on list ... [18:40:54.259] recursive: 0 [18:40:54.259] length: 1 [18:40:54.260] [18:40:54.260] resolved() for 'SequentialFuture' ... [18:40:54.260] - state: 'finished' [18:40:54.260] - run: TRUE [18:40:54.260] - result: 'FutureResult' [18:40:54.260] resolved() for 'SequentialFuture' ... done [18:40:54.261] Future #1 [18:40:54.261] signalConditionsASAP(SequentialFuture, pos=1) ... [18:40:54.261] - nx: 1 [18:40:54.261] - relay: TRUE [18:40:54.261] - stdout: TRUE [18:40:54.261] - signal: TRUE [18:40:54.262] - resignal: FALSE [18:40:54.262] - force: TRUE [18:40:54.262] - relayed: [n=1] FALSE [18:40:54.262] - queued futures: [n=1] FALSE [18:40:54.262] - until=1 [18:40:54.263] - relaying element #1 [18:40:54.263] - relayed: [n=1] TRUE [18:40:54.264] - queued futures: [n=1] TRUE [18:40:54.264] signalConditionsASAP(SequentialFuture, pos=1) ... done [18:40:54.264] length: 0 (resolved future 1) [18:40:54.264] Relaying remaining futures [18:40:54.264] signalConditionsASAP(NULL, pos=0) ... [18:40:54.264] - nx: 1 [18:40:54.265] - relay: TRUE [18:40:54.265] - stdout: TRUE [18:40:54.265] - signal: TRUE [18:40:54.265] - resignal: FALSE [18:40:54.265] - force: TRUE [18:40:54.265] - relayed: [n=1] TRUE [18:40:54.265] - queued futures: [n=1] TRUE - flush all [18:40:54.266] - relayed: [n=1] TRUE [18:40:54.266] - queued futures: [n=1] TRUE [18:40:54.266] signalConditionsASAP(NULL, pos=0) ... done [18:40:54.266] resolve() on list ... DONE [18:40:54.266] - Number of value chunks collected: 1 [18:40:54.266] Resolving 1 futures (chunks) ... DONE [18:40:54.267] Reducing values from 1 chunks ... [18:40:54.267] - Number of values collected after concatenation: 3 [18:40:54.267] - Number of values expected: 3 [18:40:54.267] Reducing values from 1 chunks ... DONE [18:40:54.267] future_lapply() ... DONE [18:40:54.269] future_lapply() ... [18:40:54.269] Number of chunks: 1 [18:40:54.269] getGlobalsAndPackagesXApply() ... [18:40:54.270] - future.globals: TRUE [18:40:54.270] getGlobalsAndPackages() ... [18:40:54.270] Searching for globals... [18:40:54.271] - globals found: [2] 'FUN', 'UseMethod' [18:40:54.271] Searching for globals ... DONE [18:40:54.271] Resolving globals: FALSE [18:40:54.272] The total size of the 1 globals is 311 bytes (311 bytes) [18:40:54.272] The total size of the 1 globals exported for future expression ('FUN()') is 311 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (311 bytes of class 'function') [18:40:54.273] - globals: [1] 'FUN' [18:40:54.273] - packages: [1] 'stats' [18:40:54.273] getGlobalsAndPackages() ... DONE [18:40:54.273] - globals found/used: [n=1] 'FUN' [18:40:54.273] - needed namespaces: [n=1] 'stats' [18:40:54.273] Finding globals ... DONE [18:40:54.274] - use_args: TRUE [18:40:54.274] - Getting '...' globals ... [18:40:54.274] resolve() on list ... [18:40:54.274] recursive: 0 [18:40:54.274] length: 1 [18:40:54.275] elements: '...' [18:40:54.275] length: 0 (resolved future 1) [18:40:54.275] resolve() on list ... DONE [18:40:54.275] - '...' content: [n=0] [18:40:54.275] List of 1 [18:40:54.275] $ ...: list() [18:40:54.275] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.275] - attr(*, "where")=List of 1 [18:40:54.275] ..$ ...: [18:40:54.275] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.275] - attr(*, "resolved")= logi TRUE [18:40:54.275] - attr(*, "total_size")= num NA [18:40:54.278] - Getting '...' globals ... DONE [18:40:54.278] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:54.278] List of 2 [18:40:54.278] $ ...future.FUN:function (x, ...) [18:40:54.278] $ ... : list() [18:40:54.278] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.278] - attr(*, "where")=List of 2 [18:40:54.278] ..$ ...future.FUN: [18:40:54.278] ..$ ... : [18:40:54.278] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.278] - attr(*, "resolved")= logi FALSE [18:40:54.278] - attr(*, "total_size")= int 5433 [18:40:54.281] Packages to be attached in all futures: [n=1] 'stats' [18:40:54.282] getGlobalsAndPackagesXApply() ... DONE [18:40:54.282] Number of futures (= number of chunks): 1 [18:40:54.282] Launching 1 futures (chunks) ... [18:40:54.282] Chunk #1 of 1 ... [18:40:54.282] - Finding globals in 'X' for chunk #1 ... [18:40:54.283] getGlobalsAndPackages() ... [18:40:54.283] Searching for globals... [18:40:54.283] [18:40:54.283] Searching for globals ... DONE [18:40:54.283] - globals: [0] [18:40:54.284] getGlobalsAndPackages() ... DONE [18:40:54.284] + additional globals found: [n=0] [18:40:54.284] + additional namespaces needed: [n=0] [18:40:54.285] - Finding globals in 'X' for chunk #1 ... DONE [18:40:54.285] - seeds: [18:40:54.285] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.285] getGlobalsAndPackages() ... [18:40:54.286] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.286] Resolving globals: FALSE [18:40:54.286] Tweak future expression to call with '...' arguments ... [18:40:54.286] { [18:40:54.286] do.call(function(...) { [18:40:54.286] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.286] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.286] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.286] on.exit(options(oopts), add = TRUE) [18:40:54.286] } [18:40:54.286] { [18:40:54.286] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.286] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.286] ...future.FUN(...future.X_jj, ...) [18:40:54.286] }) [18:40:54.286] } [18:40:54.286] }, args = future.call.arguments) [18:40:54.286] } [18:40:54.287] Tweak future expression to call with '...' arguments ... DONE [18:40:54.287] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.287] - packages: [1] 'stats' [18:40:54.287] getGlobalsAndPackages() ... DONE [18:40:54.288] run() for 'Future' ... [18:40:54.288] - state: 'created' [18:40:54.288] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:40:54.289] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.289] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:40:54.289] - Field: 'label' [18:40:54.289] - Field: 'local' [18:40:54.289] - Field: 'owner' [18:40:54.289] - Field: 'envir' [18:40:54.290] - Field: 'packages' [18:40:54.290] - Field: 'gc' [18:40:54.290] - Field: 'conditions' [18:40:54.290] - Field: 'expr' [18:40:54.290] - Field: 'uuid' [18:40:54.290] - Field: 'seed' [18:40:54.291] - Field: 'version' [18:40:54.291] - Field: 'result' [18:40:54.291] - Field: 'asynchronous' [18:40:54.291] - Field: 'calls' [18:40:54.291] - Field: 'globals' [18:40:54.291] - Field: 'stdout' [18:40:54.292] - Field: 'earlySignal' [18:40:54.292] - Field: 'lazy' [18:40:54.292] - Field: 'state' [18:40:54.292] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:40:54.292] - Launch lazy future ... [18:40:54.292] Packages needed by the future expression (n = 1): 'stats' [18:40:54.293] Packages needed by future strategies (n = 0): [18:40:54.293] { [18:40:54.293] { [18:40:54.293] { [18:40:54.293] ...future.startTime <- base::Sys.time() [18:40:54.293] { [18:40:54.293] { [18:40:54.293] { [18:40:54.293] { [18:40:54.293] base::local({ [18:40:54.293] has_future <- base::requireNamespace("future", [18:40:54.293] quietly = TRUE) [18:40:54.293] if (has_future) { [18:40:54.293] ns <- base::getNamespace("future") [18:40:54.293] version <- ns[[".package"]][["version"]] [18:40:54.293] if (is.null(version)) [18:40:54.293] version <- utils::packageVersion("future") [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] version <- NULL [18:40:54.293] } [18:40:54.293] if (!has_future || version < "1.8.0") { [18:40:54.293] info <- base::c(r_version = base::gsub("R version ", [18:40:54.293] "", base::R.version$version.string), [18:40:54.293] platform = base::sprintf("%s (%s-bit)", [18:40:54.293] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:54.293] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:54.293] "release", "version")], collapse = " "), [18:40:54.293] hostname = base::Sys.info()[["nodename"]]) [18:40:54.293] info <- base::sprintf("%s: %s", base::names(info), [18:40:54.293] info) [18:40:54.293] info <- base::paste(info, collapse = "; ") [18:40:54.293] if (!has_future) { [18:40:54.293] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:54.293] info) [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:54.293] info, version) [18:40:54.293] } [18:40:54.293] base::stop(msg) [18:40:54.293] } [18:40:54.293] }) [18:40:54.293] } [18:40:54.293] base::local({ [18:40:54.293] for (pkg in "stats") { [18:40:54.293] base::loadNamespace(pkg) [18:40:54.293] base::library(pkg, character.only = TRUE) [18:40:54.293] } [18:40:54.293] }) [18:40:54.293] } [18:40:54.293] ...future.strategy.old <- future::plan("list") [18:40:54.293] options(future.plan = NULL) [18:40:54.293] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.293] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:54.293] } [18:40:54.293] ...future.workdir <- getwd() [18:40:54.293] } [18:40:54.293] ...future.oldOptions <- base::as.list(base::.Options) [18:40:54.293] ...future.oldEnvVars <- base::Sys.getenv() [18:40:54.293] } [18:40:54.293] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:54.293] future.globals.maxSize = NULL, future.globals.method = NULL, [18:40:54.293] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:54.293] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:54.293] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:54.293] future.stdout.windows.reencode = NULL, width = 80L) [18:40:54.293] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:54.293] base::names(...future.oldOptions)) [18:40:54.293] } [18:40:54.293] if (FALSE) { [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] if (TRUE) { [18:40:54.293] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:54.293] open = "w") [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:54.293] windows = "NUL", "/dev/null"), open = "w") [18:40:54.293] } [18:40:54.293] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:54.293] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:54.293] base::sink(type = "output", split = FALSE) [18:40:54.293] base::close(...future.stdout) [18:40:54.293] }, add = TRUE) [18:40:54.293] } [18:40:54.293] ...future.frame <- base::sys.nframe() [18:40:54.293] ...future.conditions <- base::list() [18:40:54.293] ...future.rng <- base::globalenv()$.Random.seed [18:40:54.293] if (FALSE) { [18:40:54.293] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:54.293] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:54.293] } [18:40:54.293] ...future.result <- base::tryCatch({ [18:40:54.293] base::withCallingHandlers({ [18:40:54.293] ...future.value <- base::withVisible(base::local({ [18:40:54.293] do.call(function(...) { [18:40:54.293] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.293] if (!identical(...future.globals.maxSize.org, [18:40:54.293] ...future.globals.maxSize)) { [18:40:54.293] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.293] on.exit(options(oopts), add = TRUE) [18:40:54.293] } [18:40:54.293] { [18:40:54.293] lapply(seq_along(...future.elements_ii), [18:40:54.293] FUN = function(jj) { [18:40:54.293] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.293] ...future.FUN(...future.X_jj, ...) [18:40:54.293] }) [18:40:54.293] } [18:40:54.293] }, args = future.call.arguments) [18:40:54.293] })) [18:40:54.293] future::FutureResult(value = ...future.value$value, [18:40:54.293] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.293] ...future.rng), globalenv = if (FALSE) [18:40:54.293] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:54.293] ...future.globalenv.names)) [18:40:54.293] else NULL, started = ...future.startTime, version = "1.8") [18:40:54.293] }, condition = base::local({ [18:40:54.293] c <- base::c [18:40:54.293] inherits <- base::inherits [18:40:54.293] invokeRestart <- base::invokeRestart [18:40:54.293] length <- base::length [18:40:54.293] list <- base::list [18:40:54.293] seq.int <- base::seq.int [18:40:54.293] signalCondition <- base::signalCondition [18:40:54.293] sys.calls <- base::sys.calls [18:40:54.293] `[[` <- base::`[[` [18:40:54.293] `+` <- base::`+` [18:40:54.293] `<<-` <- base::`<<-` [18:40:54.293] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:54.293] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:54.293] 3L)] [18:40:54.293] } [18:40:54.293] function(cond) { [18:40:54.293] is_error <- inherits(cond, "error") [18:40:54.293] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:54.293] NULL) [18:40:54.293] if (is_error) { [18:40:54.293] sessionInformation <- function() { [18:40:54.293] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:54.293] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:54.293] search = base::search(), system = base::Sys.info()) [18:40:54.293] } [18:40:54.293] ...future.conditions[[length(...future.conditions) + [18:40:54.293] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:54.293] cond$call), session = sessionInformation(), [18:40:54.293] timestamp = base::Sys.time(), signaled = 0L) [18:40:54.293] signalCondition(cond) [18:40:54.293] } [18:40:54.293] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:54.293] "immediateCondition"))) { [18:40:54.293] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:54.293] ...future.conditions[[length(...future.conditions) + [18:40:54.293] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:54.293] if (TRUE && !signal) { [18:40:54.293] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.293] { [18:40:54.293] inherits <- base::inherits [18:40:54.293] invokeRestart <- base::invokeRestart [18:40:54.293] is.null <- base::is.null [18:40:54.293] muffled <- FALSE [18:40:54.293] if (inherits(cond, "message")) { [18:40:54.293] muffled <- grepl(pattern, "muffleMessage") [18:40:54.293] if (muffled) [18:40:54.293] invokeRestart("muffleMessage") [18:40:54.293] } [18:40:54.293] else if (inherits(cond, "warning")) { [18:40:54.293] muffled <- grepl(pattern, "muffleWarning") [18:40:54.293] if (muffled) [18:40:54.293] invokeRestart("muffleWarning") [18:40:54.293] } [18:40:54.293] else if (inherits(cond, "condition")) { [18:40:54.293] if (!is.null(pattern)) { [18:40:54.293] computeRestarts <- base::computeRestarts [18:40:54.293] grepl <- base::grepl [18:40:54.293] restarts <- computeRestarts(cond) [18:40:54.293] for (restart in restarts) { [18:40:54.293] name <- restart$name [18:40:54.293] if (is.null(name)) [18:40:54.293] next [18:40:54.293] if (!grepl(pattern, name)) [18:40:54.293] next [18:40:54.293] invokeRestart(restart) [18:40:54.293] muffled <- TRUE [18:40:54.293] break [18:40:54.293] } [18:40:54.293] } [18:40:54.293] } [18:40:54.293] invisible(muffled) [18:40:54.293] } [18:40:54.293] muffleCondition(cond, pattern = "^muffle") [18:40:54.293] } [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] if (TRUE) { [18:40:54.293] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.293] { [18:40:54.293] inherits <- base::inherits [18:40:54.293] invokeRestart <- base::invokeRestart [18:40:54.293] is.null <- base::is.null [18:40:54.293] muffled <- FALSE [18:40:54.293] if (inherits(cond, "message")) { [18:40:54.293] muffled <- grepl(pattern, "muffleMessage") [18:40:54.293] if (muffled) [18:40:54.293] invokeRestart("muffleMessage") [18:40:54.293] } [18:40:54.293] else if (inherits(cond, "warning")) { [18:40:54.293] muffled <- grepl(pattern, "muffleWarning") [18:40:54.293] if (muffled) [18:40:54.293] invokeRestart("muffleWarning") [18:40:54.293] } [18:40:54.293] else if (inherits(cond, "condition")) { [18:40:54.293] if (!is.null(pattern)) { [18:40:54.293] computeRestarts <- base::computeRestarts [18:40:54.293] grepl <- base::grepl [18:40:54.293] restarts <- computeRestarts(cond) [18:40:54.293] for (restart in restarts) { [18:40:54.293] name <- restart$name [18:40:54.293] if (is.null(name)) [18:40:54.293] next [18:40:54.293] if (!grepl(pattern, name)) [18:40:54.293] next [18:40:54.293] invokeRestart(restart) [18:40:54.293] muffled <- TRUE [18:40:54.293] break [18:40:54.293] } [18:40:54.293] } [18:40:54.293] } [18:40:54.293] invisible(muffled) [18:40:54.293] } [18:40:54.293] muffleCondition(cond, pattern = "^muffle") [18:40:54.293] } [18:40:54.293] } [18:40:54.293] } [18:40:54.293] })) [18:40:54.293] }, error = function(ex) { [18:40:54.293] base::structure(base::list(value = NULL, visible = NULL, [18:40:54.293] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.293] ...future.rng), started = ...future.startTime, [18:40:54.293] finished = Sys.time(), session_uuid = NA_character_, [18:40:54.293] version = "1.8"), class = "FutureResult") [18:40:54.293] }, finally = { [18:40:54.293] if (!identical(...future.workdir, getwd())) [18:40:54.293] setwd(...future.workdir) [18:40:54.293] { [18:40:54.293] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:54.293] ...future.oldOptions$nwarnings <- NULL [18:40:54.293] } [18:40:54.293] base::options(...future.oldOptions) [18:40:54.293] if (.Platform$OS.type == "windows") { [18:40:54.293] old_names <- names(...future.oldEnvVars) [18:40:54.293] envs <- base::Sys.getenv() [18:40:54.293] names <- names(envs) [18:40:54.293] common <- intersect(names, old_names) [18:40:54.293] added <- setdiff(names, old_names) [18:40:54.293] removed <- setdiff(old_names, names) [18:40:54.293] changed <- common[...future.oldEnvVars[common] != [18:40:54.293] envs[common]] [18:40:54.293] NAMES <- toupper(changed) [18:40:54.293] args <- list() [18:40:54.293] for (kk in seq_along(NAMES)) { [18:40:54.293] name <- changed[[kk]] [18:40:54.293] NAME <- NAMES[[kk]] [18:40:54.293] if (name != NAME && is.element(NAME, old_names)) [18:40:54.293] next [18:40:54.293] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.293] } [18:40:54.293] NAMES <- toupper(added) [18:40:54.293] for (kk in seq_along(NAMES)) { [18:40:54.293] name <- added[[kk]] [18:40:54.293] NAME <- NAMES[[kk]] [18:40:54.293] if (name != NAME && is.element(NAME, old_names)) [18:40:54.293] next [18:40:54.293] args[[name]] <- "" [18:40:54.293] } [18:40:54.293] NAMES <- toupper(removed) [18:40:54.293] for (kk in seq_along(NAMES)) { [18:40:54.293] name <- removed[[kk]] [18:40:54.293] NAME <- NAMES[[kk]] [18:40:54.293] if (name != NAME && is.element(NAME, old_names)) [18:40:54.293] next [18:40:54.293] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.293] } [18:40:54.293] if (length(args) > 0) [18:40:54.293] base::do.call(base::Sys.setenv, args = args) [18:40:54.293] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:54.293] } [18:40:54.293] { [18:40:54.293] if (base::length(...future.futureOptionsAdded) > [18:40:54.293] 0L) { [18:40:54.293] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:54.293] base::names(opts) <- ...future.futureOptionsAdded [18:40:54.293] base::options(opts) [18:40:54.293] } [18:40:54.293] { [18:40:54.293] { [18:40:54.293] NULL [18:40:54.293] RNGkind("Mersenne-Twister") [18:40:54.293] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:40:54.293] inherits = FALSE) [18:40:54.293] } [18:40:54.293] options(future.plan = NULL) [18:40:54.293] if (is.na(NA_character_)) [18:40:54.293] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.293] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:54.293] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:54.293] .init = FALSE) [18:40:54.293] } [18:40:54.293] } [18:40:54.293] } [18:40:54.293] }) [18:40:54.293] if (TRUE) { [18:40:54.293] base::sink(type = "output", split = FALSE) [18:40:54.293] if (TRUE) { [18:40:54.293] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:54.293] } [18:40:54.293] else { [18:40:54.293] ...future.result["stdout"] <- base::list(NULL) [18:40:54.293] } [18:40:54.293] base::close(...future.stdout) [18:40:54.293] ...future.stdout <- NULL [18:40:54.293] } [18:40:54.293] ...future.result$conditions <- ...future.conditions [18:40:54.293] ...future.result$finished <- base::Sys.time() [18:40:54.293] ...future.result [18:40:54.293] } [18:40:54.297] assign_globals() ... [18:40:54.297] List of 5 [18:40:54.297] $ ...future.FUN :function (x, ...) [18:40:54.297] $ future.call.arguments : list() [18:40:54.297] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.297] $ ...future.elements_ii :List of 3 [18:40:54.297] ..$ logic: logi [1:4] TRUE FALSE FALSE TRUE [18:40:54.297] ..$ beta : num [1:7] 0.0498 0.1353 0.3679 1 2.7183 ... [18:40:54.297] ..$ a : int [1:10] 1 2 3 4 5 6 7 8 9 10 [18:40:54.297] $ ...future.seeds_ii : NULL [18:40:54.297] $ ...future.globals.maxSize: NULL [18:40:54.297] - attr(*, "where")=List of 5 [18:40:54.297] ..$ ...future.FUN : [18:40:54.297] ..$ future.call.arguments : [18:40:54.297] ..$ ...future.elements_ii : [18:40:54.297] ..$ ...future.seeds_ii : [18:40:54.297] ..$ ...future.globals.maxSize: [18:40:54.297] - attr(*, "resolved")= logi FALSE [18:40:54.297] - attr(*, "total_size")= num 5433 [18:40:54.297] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.297] - attr(*, "already-done")= logi TRUE [18:40:54.304] - copied '...future.FUN' to environment [18:40:54.304] - copied 'future.call.arguments' to environment [18:40:54.304] - copied '...future.elements_ii' to environment [18:40:54.304] - copied '...future.seeds_ii' to environment [18:40:54.304] - copied '...future.globals.maxSize' to environment [18:40:54.304] assign_globals() ... done [18:40:54.305] plan(): Setting new future strategy stack: [18:40:54.305] List of future strategies: [18:40:54.305] 1. sequential: [18:40:54.305] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.305] - tweaked: FALSE [18:40:54.305] - call: NULL [18:40:54.306] plan(): nbrOfWorkers() = 1 [18:40:54.308] plan(): Setting new future strategy stack: [18:40:54.308] List of future strategies: [18:40:54.308] 1. sequential: [18:40:54.308] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.308] - tweaked: FALSE [18:40:54.308] - call: plan(strategy) [18:40:54.308] plan(): nbrOfWorkers() = 1 [18:40:54.309] SequentialFuture started (and completed) [18:40:54.309] - Launch lazy future ... done [18:40:54.309] run() for 'SequentialFuture' ... done [18:40:54.309] Created future: [18:40:54.309] SequentialFuture: [18:40:54.309] Label: 'future_eapply-1' [18:40:54.309] Expression: [18:40:54.309] { [18:40:54.309] do.call(function(...) { [18:40:54.309] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.309] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.309] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.309] on.exit(options(oopts), add = TRUE) [18:40:54.309] } [18:40:54.309] { [18:40:54.309] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.309] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.309] ...future.FUN(...future.X_jj, ...) [18:40:54.309] }) [18:40:54.309] } [18:40:54.309] }, args = future.call.arguments) [18:40:54.309] } [18:40:54.309] Lazy evaluation: FALSE [18:40:54.309] Asynchronous evaluation: FALSE [18:40:54.309] Local evaluation: TRUE [18:40:54.309] Environment: R_GlobalEnv [18:40:54.309] Capture standard output: TRUE [18:40:54.309] Capture condition classes: 'condition' (excluding 'nothing') [18:40:54.309] Globals: 5 objects totaling 758 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 296 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:54.309] Packages: 1 packages ('stats') [18:40:54.309] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:54.309] Resolved: TRUE [18:40:54.309] Value: 413 bytes of class 'list' [18:40:54.309] Early signaling: FALSE [18:40:54.309] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:54.309] Class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.333] Chunk #1 of 1 ... DONE [18:40:54.333] Launching 1 futures (chunks) ... DONE [18:40:54.333] Resolving 1 futures (chunks) ... [18:40:54.333] resolve() on list ... [18:40:54.333] recursive: 0 [18:40:54.334] length: 1 [18:40:54.334] [18:40:54.334] resolved() for 'SequentialFuture' ... [18:40:54.334] - state: 'finished' [18:40:54.334] - run: TRUE [18:40:54.334] - result: 'FutureResult' [18:40:54.335] resolved() for 'SequentialFuture' ... done [18:40:54.335] Future #1 [18:40:54.335] signalConditionsASAP(SequentialFuture, pos=1) ... [18:40:54.335] - nx: 1 [18:40:54.335] - relay: TRUE [18:40:54.336] - stdout: TRUE [18:40:54.336] - signal: TRUE [18:40:54.336] - resignal: FALSE [18:40:54.336] - force: TRUE [18:40:54.336] - relayed: [n=1] FALSE [18:40:54.336] - queued futures: [n=1] FALSE [18:40:54.336] - until=1 [18:40:54.337] - relaying element #1 [18:40:54.337] - relayed: [n=1] TRUE [18:40:54.337] - queued futures: [n=1] TRUE [18:40:54.337] signalConditionsASAP(SequentialFuture, pos=1) ... done [18:40:54.337] length: 0 (resolved future 1) [18:40:54.338] Relaying remaining futures [18:40:54.338] signalConditionsASAP(NULL, pos=0) ... [18:40:54.338] - nx: 1 [18:40:54.338] - relay: TRUE [18:40:54.338] - stdout: TRUE [18:40:54.338] - signal: TRUE [18:40:54.338] - resignal: FALSE [18:40:54.339] - force: TRUE [18:40:54.339] - relayed: [n=1] TRUE [18:40:54.339] - queued futures: [n=1] TRUE - flush all [18:40:54.339] - relayed: [n=1] TRUE [18:40:54.339] - queued futures: [n=1] TRUE [18:40:54.339] signalConditionsASAP(NULL, pos=0) ... done [18:40:54.340] resolve() on list ... DONE [18:40:54.340] - Number of value chunks collected: 1 [18:40:54.340] Resolving 1 futures (chunks) ... DONE [18:40:54.340] Reducing values from 1 chunks ... [18:40:54.340] - Number of values collected after concatenation: 3 [18:40:54.340] - Number of values expected: 3 [18:40:54.341] Reducing values from 1 chunks ... DONE [18:40:54.341] future_lapply() ... DONE [18:40:54.341] future_lapply() ... [18:40:54.342] Number of chunks: 1 [18:40:54.342] getGlobalsAndPackagesXApply() ... [18:40:54.342] - future.globals: TRUE [18:40:54.342] getGlobalsAndPackages() ... [18:40:54.342] Searching for globals... [18:40:54.344] - globals found: [2] 'FUN', 'UseMethod' [18:40:54.344] Searching for globals ... DONE [18:40:54.344] Resolving globals: FALSE [18:40:54.345] The total size of the 1 globals is 311 bytes (311 bytes) [18:40:54.345] The total size of the 1 globals exported for future expression ('FUN()') is 311 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (311 bytes of class 'function') [18:40:54.345] - globals: [1] 'FUN' [18:40:54.345] - packages: [1] 'stats' [18:40:54.346] getGlobalsAndPackages() ... DONE [18:40:54.346] - globals found/used: [n=1] 'FUN' [18:40:54.346] - needed namespaces: [n=1] 'stats' [18:40:54.346] Finding globals ... DONE [18:40:54.346] - use_args: TRUE [18:40:54.346] - Getting '...' globals ... [18:40:54.347] resolve() on list ... [18:40:54.347] recursive: 0 [18:40:54.347] length: 1 [18:40:54.347] elements: '...' [18:40:54.348] length: 0 (resolved future 1) [18:40:54.348] resolve() on list ... DONE [18:40:54.348] - '...' content: [n=0] [18:40:54.348] List of 1 [18:40:54.348] $ ...: list() [18:40:54.348] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.348] - attr(*, "where")=List of 1 [18:40:54.348] ..$ ...: [18:40:54.348] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.348] - attr(*, "resolved")= logi TRUE [18:40:54.348] - attr(*, "total_size")= num NA [18:40:54.351] - Getting '...' globals ... DONE [18:40:54.351] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:54.351] List of 2 [18:40:54.351] $ ...future.FUN:function (x, ...) [18:40:54.351] $ ... : list() [18:40:54.351] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.351] - attr(*, "where")=List of 2 [18:40:54.351] ..$ ...future.FUN: [18:40:54.351] ..$ ... : [18:40:54.351] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.351] - attr(*, "resolved")= logi FALSE [18:40:54.351] - attr(*, "total_size")= int 5437 [18:40:54.354] Packages to be attached in all futures: [n=1] 'stats' [18:40:54.355] getGlobalsAndPackagesXApply() ... DONE [18:40:54.355] Number of futures (= number of chunks): 1 [18:40:54.355] Launching 1 futures (chunks) ... [18:40:54.355] Chunk #1 of 1 ... [18:40:54.356] - Finding globals in 'X' for chunk #1 ... [18:40:54.356] getGlobalsAndPackages() ... [18:40:54.356] Searching for globals... [18:40:54.357] [18:40:54.357] Searching for globals ... DONE [18:40:54.357] - globals: [0] [18:40:54.357] getGlobalsAndPackages() ... DONE [18:40:54.357] + additional globals found: [n=0] [18:40:54.358] + additional namespaces needed: [n=0] [18:40:54.358] - Finding globals in 'X' for chunk #1 ... DONE [18:40:54.358] - seeds: [18:40:54.358] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.358] getGlobalsAndPackages() ... [18:40:54.358] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.359] Resolving globals: FALSE [18:40:54.359] Tweak future expression to call with '...' arguments ... [18:40:54.359] { [18:40:54.359] do.call(function(...) { [18:40:54.359] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.359] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.359] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.359] on.exit(options(oopts), add = TRUE) [18:40:54.359] } [18:40:54.359] { [18:40:54.359] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.359] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.359] ...future.FUN(...future.X_jj, ...) [18:40:54.359] }) [18:40:54.359] } [18:40:54.359] }, args = future.call.arguments) [18:40:54.359] } [18:40:54.359] Tweak future expression to call with '...' arguments ... DONE [18:40:54.360] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:54.360] - packages: [1] 'stats' [18:40:54.360] getGlobalsAndPackages() ... DONE [18:40:54.361] run() for 'Future' ... [18:40:54.361] - state: 'created' [18:40:54.361] - Future backend: 'FutureStrategy', 'sequential', 'uniprocess', 'future', 'function' [18:40:54.361] - Future class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.362] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... [18:40:54.362] - Field: 'label' [18:40:54.362] - Field: 'local' [18:40:54.362] - Field: 'owner' [18:40:54.362] - Field: 'envir' [18:40:54.362] - Field: 'packages' [18:40:54.363] - Field: 'gc' [18:40:54.363] - Field: 'conditions' [18:40:54.363] - Field: 'expr' [18:40:54.363] - Field: 'uuid' [18:40:54.363] - Field: 'seed' [18:40:54.363] - Field: 'version' [18:40:54.364] - Field: 'result' [18:40:54.364] - Field: 'asynchronous' [18:40:54.364] - Field: 'calls' [18:40:54.364] - Field: 'globals' [18:40:54.364] - Field: 'stdout' [18:40:54.364] - Field: 'earlySignal' [18:40:54.365] - Field: 'lazy' [18:40:54.365] - Field: 'state' [18:40:54.365] - Copy elements of temporary 'SequentialFuture' to final 'Future' object ... done [18:40:54.365] - Launch lazy future ... [18:40:54.365] Packages needed by the future expression (n = 1): 'stats' [18:40:54.366] Packages needed by future strategies (n = 0): [18:40:54.366] { [18:40:54.366] { [18:40:54.366] { [18:40:54.366] ...future.startTime <- base::Sys.time() [18:40:54.366] { [18:40:54.366] { [18:40:54.366] { [18:40:54.366] { [18:40:54.366] base::local({ [18:40:54.366] has_future <- base::requireNamespace("future", [18:40:54.366] quietly = TRUE) [18:40:54.366] if (has_future) { [18:40:54.366] ns <- base::getNamespace("future") [18:40:54.366] version <- ns[[".package"]][["version"]] [18:40:54.366] if (is.null(version)) [18:40:54.366] version <- utils::packageVersion("future") [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] version <- NULL [18:40:54.366] } [18:40:54.366] if (!has_future || version < "1.8.0") { [18:40:54.366] info <- base::c(r_version = base::gsub("R version ", [18:40:54.366] "", base::R.version$version.string), [18:40:54.366] platform = base::sprintf("%s (%s-bit)", [18:40:54.366] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:54.366] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:54.366] "release", "version")], collapse = " "), [18:40:54.366] hostname = base::Sys.info()[["nodename"]]) [18:40:54.366] info <- base::sprintf("%s: %s", base::names(info), [18:40:54.366] info) [18:40:54.366] info <- base::paste(info, collapse = "; ") [18:40:54.366] if (!has_future) { [18:40:54.366] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:54.366] info) [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:54.366] info, version) [18:40:54.366] } [18:40:54.366] base::stop(msg) [18:40:54.366] } [18:40:54.366] }) [18:40:54.366] } [18:40:54.366] base::local({ [18:40:54.366] for (pkg in "stats") { [18:40:54.366] base::loadNamespace(pkg) [18:40:54.366] base::library(pkg, character.only = TRUE) [18:40:54.366] } [18:40:54.366] }) [18:40:54.366] } [18:40:54.366] ...future.strategy.old <- future::plan("list") [18:40:54.366] options(future.plan = NULL) [18:40:54.366] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.366] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:54.366] } [18:40:54.366] ...future.workdir <- getwd() [18:40:54.366] } [18:40:54.366] ...future.oldOptions <- base::as.list(base::.Options) [18:40:54.366] ...future.oldEnvVars <- base::Sys.getenv() [18:40:54.366] } [18:40:54.366] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:54.366] future.globals.maxSize = NULL, future.globals.method = NULL, [18:40:54.366] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:54.366] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:54.366] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:54.366] future.stdout.windows.reencode = NULL, width = 80L) [18:40:54.366] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:54.366] base::names(...future.oldOptions)) [18:40:54.366] } [18:40:54.366] if (FALSE) { [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] if (TRUE) { [18:40:54.366] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:54.366] open = "w") [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:54.366] windows = "NUL", "/dev/null"), open = "w") [18:40:54.366] } [18:40:54.366] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:54.366] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:54.366] base::sink(type = "output", split = FALSE) [18:40:54.366] base::close(...future.stdout) [18:40:54.366] }, add = TRUE) [18:40:54.366] } [18:40:54.366] ...future.frame <- base::sys.nframe() [18:40:54.366] ...future.conditions <- base::list() [18:40:54.366] ...future.rng <- base::globalenv()$.Random.seed [18:40:54.366] if (FALSE) { [18:40:54.366] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:54.366] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:54.366] } [18:40:54.366] ...future.result <- base::tryCatch({ [18:40:54.366] base::withCallingHandlers({ [18:40:54.366] ...future.value <- base::withVisible(base::local({ [18:40:54.366] do.call(function(...) { [18:40:54.366] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.366] if (!identical(...future.globals.maxSize.org, [18:40:54.366] ...future.globals.maxSize)) { [18:40:54.366] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.366] on.exit(options(oopts), add = TRUE) [18:40:54.366] } [18:40:54.366] { [18:40:54.366] lapply(seq_along(...future.elements_ii), [18:40:54.366] FUN = function(jj) { [18:40:54.366] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.366] ...future.FUN(...future.X_jj, ...) [18:40:54.366] }) [18:40:54.366] } [18:40:54.366] }, args = future.call.arguments) [18:40:54.366] })) [18:40:54.366] future::FutureResult(value = ...future.value$value, [18:40:54.366] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.366] ...future.rng), globalenv = if (FALSE) [18:40:54.366] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:54.366] ...future.globalenv.names)) [18:40:54.366] else NULL, started = ...future.startTime, version = "1.8") [18:40:54.366] }, condition = base::local({ [18:40:54.366] c <- base::c [18:40:54.366] inherits <- base::inherits [18:40:54.366] invokeRestart <- base::invokeRestart [18:40:54.366] length <- base::length [18:40:54.366] list <- base::list [18:40:54.366] seq.int <- base::seq.int [18:40:54.366] signalCondition <- base::signalCondition [18:40:54.366] sys.calls <- base::sys.calls [18:40:54.366] `[[` <- base::`[[` [18:40:54.366] `+` <- base::`+` [18:40:54.366] `<<-` <- base::`<<-` [18:40:54.366] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:54.366] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:54.366] 3L)] [18:40:54.366] } [18:40:54.366] function(cond) { [18:40:54.366] is_error <- inherits(cond, "error") [18:40:54.366] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:54.366] NULL) [18:40:54.366] if (is_error) { [18:40:54.366] sessionInformation <- function() { [18:40:54.366] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:54.366] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:54.366] search = base::search(), system = base::Sys.info()) [18:40:54.366] } [18:40:54.366] ...future.conditions[[length(...future.conditions) + [18:40:54.366] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:54.366] cond$call), session = sessionInformation(), [18:40:54.366] timestamp = base::Sys.time(), signaled = 0L) [18:40:54.366] signalCondition(cond) [18:40:54.366] } [18:40:54.366] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:54.366] "immediateCondition"))) { [18:40:54.366] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:54.366] ...future.conditions[[length(...future.conditions) + [18:40:54.366] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:54.366] if (TRUE && !signal) { [18:40:54.366] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.366] { [18:40:54.366] inherits <- base::inherits [18:40:54.366] invokeRestart <- base::invokeRestart [18:40:54.366] is.null <- base::is.null [18:40:54.366] muffled <- FALSE [18:40:54.366] if (inherits(cond, "message")) { [18:40:54.366] muffled <- grepl(pattern, "muffleMessage") [18:40:54.366] if (muffled) [18:40:54.366] invokeRestart("muffleMessage") [18:40:54.366] } [18:40:54.366] else if (inherits(cond, "warning")) { [18:40:54.366] muffled <- grepl(pattern, "muffleWarning") [18:40:54.366] if (muffled) [18:40:54.366] invokeRestart("muffleWarning") [18:40:54.366] } [18:40:54.366] else if (inherits(cond, "condition")) { [18:40:54.366] if (!is.null(pattern)) { [18:40:54.366] computeRestarts <- base::computeRestarts [18:40:54.366] grepl <- base::grepl [18:40:54.366] restarts <- computeRestarts(cond) [18:40:54.366] for (restart in restarts) { [18:40:54.366] name <- restart$name [18:40:54.366] if (is.null(name)) [18:40:54.366] next [18:40:54.366] if (!grepl(pattern, name)) [18:40:54.366] next [18:40:54.366] invokeRestart(restart) [18:40:54.366] muffled <- TRUE [18:40:54.366] break [18:40:54.366] } [18:40:54.366] } [18:40:54.366] } [18:40:54.366] invisible(muffled) [18:40:54.366] } [18:40:54.366] muffleCondition(cond, pattern = "^muffle") [18:40:54.366] } [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] if (TRUE) { [18:40:54.366] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.366] { [18:40:54.366] inherits <- base::inherits [18:40:54.366] invokeRestart <- base::invokeRestart [18:40:54.366] is.null <- base::is.null [18:40:54.366] muffled <- FALSE [18:40:54.366] if (inherits(cond, "message")) { [18:40:54.366] muffled <- grepl(pattern, "muffleMessage") [18:40:54.366] if (muffled) [18:40:54.366] invokeRestart("muffleMessage") [18:40:54.366] } [18:40:54.366] else if (inherits(cond, "warning")) { [18:40:54.366] muffled <- grepl(pattern, "muffleWarning") [18:40:54.366] if (muffled) [18:40:54.366] invokeRestart("muffleWarning") [18:40:54.366] } [18:40:54.366] else if (inherits(cond, "condition")) { [18:40:54.366] if (!is.null(pattern)) { [18:40:54.366] computeRestarts <- base::computeRestarts [18:40:54.366] grepl <- base::grepl [18:40:54.366] restarts <- computeRestarts(cond) [18:40:54.366] for (restart in restarts) { [18:40:54.366] name <- restart$name [18:40:54.366] if (is.null(name)) [18:40:54.366] next [18:40:54.366] if (!grepl(pattern, name)) [18:40:54.366] next [18:40:54.366] invokeRestart(restart) [18:40:54.366] muffled <- TRUE [18:40:54.366] break [18:40:54.366] } [18:40:54.366] } [18:40:54.366] } [18:40:54.366] invisible(muffled) [18:40:54.366] } [18:40:54.366] muffleCondition(cond, pattern = "^muffle") [18:40:54.366] } [18:40:54.366] } [18:40:54.366] } [18:40:54.366] })) [18:40:54.366] }, error = function(ex) { [18:40:54.366] base::structure(base::list(value = NULL, visible = NULL, [18:40:54.366] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.366] ...future.rng), started = ...future.startTime, [18:40:54.366] finished = Sys.time(), session_uuid = NA_character_, [18:40:54.366] version = "1.8"), class = "FutureResult") [18:40:54.366] }, finally = { [18:40:54.366] if (!identical(...future.workdir, getwd())) [18:40:54.366] setwd(...future.workdir) [18:40:54.366] { [18:40:54.366] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:54.366] ...future.oldOptions$nwarnings <- NULL [18:40:54.366] } [18:40:54.366] base::options(...future.oldOptions) [18:40:54.366] if (.Platform$OS.type == "windows") { [18:40:54.366] old_names <- names(...future.oldEnvVars) [18:40:54.366] envs <- base::Sys.getenv() [18:40:54.366] names <- names(envs) [18:40:54.366] common <- intersect(names, old_names) [18:40:54.366] added <- setdiff(names, old_names) [18:40:54.366] removed <- setdiff(old_names, names) [18:40:54.366] changed <- common[...future.oldEnvVars[common] != [18:40:54.366] envs[common]] [18:40:54.366] NAMES <- toupper(changed) [18:40:54.366] args <- list() [18:40:54.366] for (kk in seq_along(NAMES)) { [18:40:54.366] name <- changed[[kk]] [18:40:54.366] NAME <- NAMES[[kk]] [18:40:54.366] if (name != NAME && is.element(NAME, old_names)) [18:40:54.366] next [18:40:54.366] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.366] } [18:40:54.366] NAMES <- toupper(added) [18:40:54.366] for (kk in seq_along(NAMES)) { [18:40:54.366] name <- added[[kk]] [18:40:54.366] NAME <- NAMES[[kk]] [18:40:54.366] if (name != NAME && is.element(NAME, old_names)) [18:40:54.366] next [18:40:54.366] args[[name]] <- "" [18:40:54.366] } [18:40:54.366] NAMES <- toupper(removed) [18:40:54.366] for (kk in seq_along(NAMES)) { [18:40:54.366] name <- removed[[kk]] [18:40:54.366] NAME <- NAMES[[kk]] [18:40:54.366] if (name != NAME && is.element(NAME, old_names)) [18:40:54.366] next [18:40:54.366] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.366] } [18:40:54.366] if (length(args) > 0) [18:40:54.366] base::do.call(base::Sys.setenv, args = args) [18:40:54.366] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:54.366] } [18:40:54.366] { [18:40:54.366] if (base::length(...future.futureOptionsAdded) > [18:40:54.366] 0L) { [18:40:54.366] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:54.366] base::names(opts) <- ...future.futureOptionsAdded [18:40:54.366] base::options(opts) [18:40:54.366] } [18:40:54.366] { [18:40:54.366] { [18:40:54.366] NULL [18:40:54.366] RNGkind("Mersenne-Twister") [18:40:54.366] base::rm(list = ".Random.seed", envir = base::globalenv(), [18:40:54.366] inherits = FALSE) [18:40:54.366] } [18:40:54.366] options(future.plan = NULL) [18:40:54.366] if (is.na(NA_character_)) [18:40:54.366] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.366] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:54.366] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:54.366] .init = FALSE) [18:40:54.366] } [18:40:54.366] } [18:40:54.366] } [18:40:54.366] }) [18:40:54.366] if (TRUE) { [18:40:54.366] base::sink(type = "output", split = FALSE) [18:40:54.366] if (TRUE) { [18:40:54.366] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:54.366] } [18:40:54.366] else { [18:40:54.366] ...future.result["stdout"] <- base::list(NULL) [18:40:54.366] } [18:40:54.366] base::close(...future.stdout) [18:40:54.366] ...future.stdout <- NULL [18:40:54.366] } [18:40:54.366] ...future.result$conditions <- ...future.conditions [18:40:54.366] ...future.result$finished <- base::Sys.time() [18:40:54.366] ...future.result [18:40:54.366] } [18:40:54.370] assign_globals() ... [18:40:54.370] List of 5 [18:40:54.370] $ ...future.FUN :function (x, ...) [18:40:54.370] $ future.call.arguments : list() [18:40:54.370] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:54.370] $ ...future.elements_ii :List of 3 [18:40:54.370] ..$ logic: logi [1:4] TRUE FALSE FALSE TRUE [18:40:54.370] ..$ beta : num [1:7] 0.0498 0.1353 0.3679 1 2.7183 ... [18:40:54.370] ..$ a : int [1:10] 1 2 3 4 5 6 7 8 9 10 [18:40:54.370] $ ...future.seeds_ii : NULL [18:40:54.370] $ ...future.globals.maxSize: NULL [18:40:54.370] - attr(*, "where")=List of 5 [18:40:54.370] ..$ ...future.FUN : [18:40:54.370] ..$ future.call.arguments : [18:40:54.370] ..$ ...future.elements_ii : [18:40:54.370] ..$ ...future.seeds_ii : [18:40:54.370] ..$ ...future.globals.maxSize: [18:40:54.370] - attr(*, "resolved")= logi FALSE [18:40:54.370] - attr(*, "total_size")= num 5437 [18:40:54.370] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:54.370] - attr(*, "already-done")= logi TRUE [18:40:54.376] - copied '...future.FUN' to environment [18:40:54.377] - copied 'future.call.arguments' to environment [18:40:54.377] - copied '...future.elements_ii' to environment [18:40:54.377] - copied '...future.seeds_ii' to environment [18:40:54.377] - copied '...future.globals.maxSize' to environment [18:40:54.377] assign_globals() ... done [18:40:54.378] plan(): Setting new future strategy stack: [18:40:54.378] List of future strategies: [18:40:54.378] 1. sequential: [18:40:54.378] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.378] - tweaked: FALSE [18:40:54.378] - call: NULL [18:40:54.379] plan(): nbrOfWorkers() = 1 [18:40:54.381] plan(): Setting new future strategy stack: [18:40:54.381] List of future strategies: [18:40:54.381] 1. sequential: [18:40:54.381] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.381] - tweaked: FALSE [18:40:54.381] - call: plan(strategy) [18:40:54.381] plan(): nbrOfWorkers() = 1 [18:40:54.382] SequentialFuture started (and completed) [18:40:54.382] - Launch lazy future ... done [18:40:54.382] run() for 'SequentialFuture' ... done [18:40:54.382] Created future: [18:40:54.382] SequentialFuture: [18:40:54.382] Label: 'future_eapply-1' [18:40:54.382] Expression: [18:40:54.382] { [18:40:54.382] do.call(function(...) { [18:40:54.382] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:54.382] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:54.382] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:54.382] on.exit(options(oopts), add = TRUE) [18:40:54.382] } [18:40:54.382] { [18:40:54.382] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:54.382] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:54.382] ...future.FUN(...future.X_jj, ...) [18:40:54.382] }) [18:40:54.382] } [18:40:54.382] }, args = future.call.arguments) [18:40:54.382] } [18:40:54.382] Lazy evaluation: FALSE [18:40:54.382] Asynchronous evaluation: FALSE [18:40:54.382] Local evaluation: TRUE [18:40:54.382] Environment: R_GlobalEnv [18:40:54.382] Capture standard output: TRUE [18:40:54.382] Capture condition classes: 'condition' (excluding 'nothing') [18:40:54.382] Globals: 5 objects totaling 758 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 296 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:54.382] Packages: 1 packages ('stats') [18:40:54.382] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:54.382] Resolved: TRUE [18:40:54.382] Value: 413 bytes of class 'list' [18:40:54.382] Early signaling: FALSE [18:40:54.382] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:54.382] Class: 'SequentialFuture', 'UniprocessFuture', 'Future', 'environment' [18:40:54.384] Chunk #1 of 1 ... DONE [18:40:54.384] Launching 1 futures (chunks) ... DONE [18:40:54.384] Resolving 1 futures (chunks) ... [18:40:54.385] resolve() on list ... [18:40:54.385] recursive: 0 [18:40:54.385] length: 1 [18:40:54.385] [18:40:54.385] resolved() for 'SequentialFuture' ... [18:40:54.386] - state: 'finished' [18:40:54.386] - run: TRUE [18:40:54.386] - result: 'FutureResult' [18:40:54.386] resolved() for 'SequentialFuture' ... done [18:40:54.386] Future #1 [18:40:54.387] signalConditionsASAP(SequentialFuture, pos=1) ... [18:40:54.387] - nx: 1 [18:40:54.387] - relay: TRUE [18:40:54.387] - stdout: TRUE [18:40:54.387] - signal: TRUE [18:40:54.387] - resignal: FALSE [18:40:54.387] - force: TRUE [18:40:54.388] - relayed: [n=1] FALSE [18:40:54.388] - queued futures: [n=1] FALSE [18:40:54.388] - until=1 [18:40:54.388] - relaying element #1 [18:40:54.388] - relayed: [n=1] TRUE [18:40:54.388] - queued futures: [n=1] TRUE [18:40:54.389] signalConditionsASAP(SequentialFuture, pos=1) ... done [18:40:54.389] length: 0 (resolved future 1) [18:40:54.389] Relaying remaining futures [18:40:54.389] signalConditionsASAP(NULL, pos=0) ... [18:40:54.389] - nx: 1 [18:40:54.389] - relay: TRUE [18:40:54.390] - stdout: TRUE [18:40:54.390] - signal: TRUE [18:40:54.390] - resignal: FALSE [18:40:54.390] - force: TRUE [18:40:54.390] - relayed: [n=1] TRUE [18:40:54.390] - queued futures: [n=1] TRUE - flush all [18:40:54.391] - relayed: [n=1] TRUE [18:40:54.391] - queued futures: [n=1] TRUE [18:40:54.391] signalConditionsASAP(NULL, pos=0) ... done [18:40:54.391] resolve() on list ... DONE [18:40:54.391] - Number of value chunks collected: 1 [18:40:54.392] Resolving 1 futures (chunks) ... DONE [18:40:54.392] Reducing values from 1 chunks ... [18:40:54.392] - Number of values collected after concatenation: 3 [18:40:54.392] - Number of values expected: 3 [18:40:54.392] Reducing values from 1 chunks ... DONE [18:40:54.392] future_lapply() ... DONE [18:40:54.393] plan(): Setting new future strategy stack: [18:40:54.393] List of future strategies: [18:40:54.393] 1. sequential: [18:40:54.393] - args: function (..., envir = parent.frame(), workers = "") [18:40:54.393] - tweaked: FALSE [18:40:54.393] - call: plan(sequential) [18:40:54.393] plan(): nbrOfWorkers() = 1 *** strategy = 'sequential' ... done *** strategy = 'multisession' ... [18:40:54.394] plan(): Setting new future strategy stack: [18:40:54.394] List of future strategies: [18:40:54.394] 1. multisession: [18:40:54.394] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [18:40:54.394] - tweaked: FALSE [18:40:54.394] - call: plan(strategy) [18:40:54.395] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... [18:40:54.395] multisession: [18:40:54.395] - args: function (..., workers = availableCores(), lazy = FALSE, rscript_libs = .libPaths(), envir = parent.frame()) [18:40:54.395] - tweaked: FALSE [18:40:54.395] - call: plan(strategy) [18:40:54.398] getGlobalsAndPackages() ... [18:40:54.399] Not searching for globals [18:40:54.399] - globals: [0] [18:40:54.399] getGlobalsAndPackages() ... DONE [18:40:54.400] [local output] makeClusterPSOCK() ... [18:40:54.429] [local output] Workers: [n = 2] 'localhost', 'localhost' [18:40:54.436] [local output] Base port: 36044 [18:40:54.436] [local output] Getting setup options for 2 cluster nodes ... [18:40:54.437] [local output] - Node #1 of 2 ... [18:40:54.437] [local output] localMachine=TRUE => revtunnel=FALSE [18:40:54.439] Testing if worker's PID can be inferred: '"D:/RCompile/recent/R/bin/x64/Rscript" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/Rtmp823VCa/worker.rank=1.parallelly.parent=90676.162347aa33d0a.pid\")), silent = TRUE)" -e "file.exists(\"D:/temp/Rtmp823VCa/worker.rank=1.parallelly.parent=90676.162347aa33d0a.pid\")"' [18:40:54.656] - Possible to infer worker's PID: TRUE [18:40:54.657] [local output] Rscript port: 36044 [18:40:54.658] [local output] - Node #2 of 2 ... [18:40:54.658] [local output] localMachine=TRUE => revtunnel=FALSE [18:40:54.660] [local output] Rscript port: 36044 [18:40:54.661] [local output] Getting setup options for 2 cluster nodes ... done [18:40:54.661] [local output] - Parallel setup requested for some PSOCK nodes [18:40:54.662] [local output] Setting up PSOCK nodes in parallel [18:40:54.662] List of 36 [18:40:54.662] $ worker : chr "localhost" [18:40:54.662] ..- attr(*, "localhost")= logi TRUE [18:40:54.662] $ master : chr "localhost" [18:40:54.662] $ port : int 36044 [18:40:54.662] $ connectTimeout : num 120 [18:40:54.662] $ timeout : num 120 [18:40:54.662] $ rscript : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\"" [18:40:54.662] $ homogeneous : logi TRUE [18:40:54.662] $ rscript_args : chr "--default-packages=datasets,utils,grDevices,graphics,stats,methods -e \"#label=future_eapply.R:90676:CRANWIN3:C"| __truncated__ [18:40:54.662] $ rscript_envs : NULL [18:40:54.662] $ rscript_libs : chr [1:2] "D:/temp/Rtmpi4y3mu/RLIBS_25080533fa8" "D:/RCompile/recent/R/library" [18:40:54.662] $ rscript_startup : NULL [18:40:54.662] $ rscript_sh : chr [1:2] "cmd" "cmd" [18:40:54.662] $ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [18:40:54.662] $ methods : logi TRUE [18:40:54.662] $ socketOptions : chr "no-delay" [18:40:54.662] $ useXDR : logi FALSE [18:40:54.662] $ outfile : chr "/dev/null" [18:40:54.662] $ renice : int NA [18:40:54.662] $ rshcmd : NULL [18:40:54.662] $ user : chr(0) [18:40:54.662] $ revtunnel : logi FALSE [18:40:54.662] $ rshlogfile : NULL [18:40:54.662] $ rshopts : chr(0) [18:40:54.662] $ rank : int 1 [18:40:54.662] $ manual : logi FALSE [18:40:54.662] $ dryrun : logi FALSE [18:40:54.662] $ quiet : logi FALSE [18:40:54.662] $ setup_strategy : chr "parallel" [18:40:54.662] $ local_cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [18:40:54.662] $ pidfile : chr "D:/temp/Rtmp823VCa/worker.rank=1.parallelly.parent=90676.162347aa33d0a.pid" [18:40:54.662] $ rshcmd_label : NULL [18:40:54.662] $ rsh_call : NULL [18:40:54.662] $ cmd : chr "\"D:/RCompile/recent/R/bin/x64/Rscript\" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "| __truncated__ [18:40:54.662] $ localMachine : logi TRUE [18:40:54.662] $ make_fcn :function (worker = getOption2("parallelly.localhost.hostname", "localhost"), [18:40:54.662] master = NULL, port, connectTimeout = getOption2("parallelly.makeNodePSOCK.connectTimeout", [18:40:54.662] 2 * 60), timeout = getOption2("parallelly.makeNodePSOCK.timeout", [18:40:54.662] 30 * 24 * 60 * 60), rscript = NULL, homogeneous = NULL, rscript_args = NULL, [18:40:54.662] rscript_envs = NULL, rscript_libs = NULL, rscript_startup = NULL, rscript_sh = c("auto", [18:40:54.662] "cmd", "sh", "none"), default_packages = c("datasets", "utils", [18:40:54.662] "grDevices", "graphics", "stats", if (methods) "methods"), methods = TRUE, [18:40:54.662] socketOptions = getOption2("parallelly.makeNodePSOCK.socketOptions", [18:40:54.662] "no-delay"), useXDR = getOption2("parallelly.makeNodePSOCK.useXDR", [18:40:54.662] FALSE), outfile = "/dev/null", renice = NA_integer_, rshcmd = getOption2("parallelly.makeNodePSOCK.rshcmd", [18:40:54.662] NULL), user = NULL, revtunnel = NA, rshlogfile = NULL, rshopts = getOption2("parallelly.makeNodePSOCK.rshopts", [18:40:54.662] NULL), rank = 1L, manual = FALSE, dryrun = FALSE, quiet = FALSE, [18:40:54.662] setup_strategy = getOption2("parallelly.makeNodePSOCK.setup_strategy", [18:40:54.662] "parallel"), action = c("launch", "options"), verbose = FALSE) [18:40:54.662] $ arguments :List of 28 [18:40:54.662] ..$ worker : chr "localhost" [18:40:54.662] ..$ master : NULL [18:40:54.662] ..$ port : int 36044 [18:40:54.662] ..$ connectTimeout : num 120 [18:40:54.662] ..$ timeout : num 120 [18:40:54.662] ..$ rscript : NULL [18:40:54.662] ..$ homogeneous : NULL [18:40:54.662] ..$ rscript_args : NULL [18:40:54.662] ..$ rscript_envs : NULL [18:40:54.662] ..$ rscript_libs : chr [1:2] "D:/temp/Rtmpi4y3mu/RLIBS_25080533fa8" "D:/RCompile/recent/R/library" [18:40:54.662] ..$ rscript_startup : NULL [18:40:54.662] ..$ rscript_sh : chr "auto" [18:40:54.662] ..$ default_packages: chr [1:6] "datasets" "utils" "grDevices" "graphics" ... [18:40:54.662] ..$ methods : logi TRUE [18:40:54.662] ..$ socketOptions : chr "no-delay" [18:40:54.662] ..$ useXDR : logi FALSE [18:40:54.662] ..$ outfile : chr "/dev/null" [18:40:54.662] ..$ renice : int NA [18:40:54.662] ..$ rshcmd : NULL [18:40:54.662] ..$ user : NULL [18:40:54.662] ..$ revtunnel : logi NA [18:40:54.662] ..$ rshlogfile : NULL [18:40:54.662] ..$ rshopts : NULL [18:40:54.662] ..$ rank : int 1 [18:40:54.662] ..$ manual : logi FALSE [18:40:54.662] ..$ dryrun : logi FALSE [18:40:54.662] ..$ quiet : logi FALSE [18:40:54.662] ..$ setup_strategy : chr "parallel" [18:40:54.662] - attr(*, "class")= chr [1:2] "makeNodePSOCKOptions" "makeNodeOptions" [18:40:54.698] [local output] System call to launch all workers: [18:40:54.699] [local output] "D:/RCompile/recent/R/bin/x64/Rscript" --default-packages=datasets,utils,grDevices,graphics,stats,methods -e "#label=future_eapply.R:90676:CRANWIN3:CRAN" -e "try(suppressWarnings(cat(Sys.getpid(),file=\"D:/temp/Rtmp823VCa/worker.rank=1.parallelly.parent=90676.162347aa33d0a.pid\")), silent = TRUE)" -e "options(socketOptions = \"no-delay\")" -e ".libPaths(c(\"D:/temp/Rtmpi4y3mu/RLIBS_25080533fa8\",\"D:/RCompile/recent/R/library\"))" -e "workRSOCK <- tryCatch(parallel:::.workRSOCK, error=function(e) parallel:::.slaveRSOCK); workRSOCK()" MASTER=localhost PORT=36044 OUT=/dev/null TIMEOUT=120 XDR=FALSE SETUPTIMEOUT=120 SETUPSTRATEGY=parallel [18:40:54.699] [local output] Starting PSOCK main server [18:40:54.707] [local output] Workers launched [18:40:54.707] [local output] Waiting for workers to connect back [18:40:54.707] - [local output] 0 workers out of 2 ready [18:40:54.886] - [local output] 0 workers out of 2 ready [18:40:54.887] - [local output] 1 workers out of 2 ready [18:40:54.887] - [local output] 2 workers out of 2 ready [18:40:54.888] [local output] Launching of 2 workers completed [18:40:54.888] [local output] Number of nodes in cluster: 2 [18:40:54.888] [local output] Collecting session information from 2 workers [18:40:54.889] [local output] - Worker #1 of 2 [18:40:54.890] [local output] - Worker #2 of 2 [18:40:54.890] [local output] makeClusterPSOCK() ... done [18:40:54.905] Packages needed by the future expression (n = 0): [18:40:54.905] Packages needed by future strategies (n = 0): [18:40:54.906] { [18:40:54.906] { [18:40:54.906] { [18:40:54.906] ...future.startTime <- base::Sys.time() [18:40:54.906] { [18:40:54.906] { [18:40:54.906] { [18:40:54.906] { [18:40:54.906] base::local({ [18:40:54.906] has_future <- base::requireNamespace("future", [18:40:54.906] quietly = TRUE) [18:40:54.906] if (has_future) { [18:40:54.906] ns <- base::getNamespace("future") [18:40:54.906] version <- ns[[".package"]][["version"]] [18:40:54.906] if (is.null(version)) [18:40:54.906] version <- utils::packageVersion("future") [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] version <- NULL [18:40:54.906] } [18:40:54.906] if (!has_future || version < "1.8.0") { [18:40:54.906] info <- base::c(r_version = base::gsub("R version ", [18:40:54.906] "", base::R.version$version.string), [18:40:54.906] platform = base::sprintf("%s (%s-bit)", [18:40:54.906] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:54.906] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:54.906] "release", "version")], collapse = " "), [18:40:54.906] hostname = base::Sys.info()[["nodename"]]) [18:40:54.906] info <- base::sprintf("%s: %s", base::names(info), [18:40:54.906] info) [18:40:54.906] info <- base::paste(info, collapse = "; ") [18:40:54.906] if (!has_future) { [18:40:54.906] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:54.906] info) [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:54.906] info, version) [18:40:54.906] } [18:40:54.906] base::stop(msg) [18:40:54.906] } [18:40:54.906] }) [18:40:54.906] } [18:40:54.906] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:54.906] base::options(mc.cores = 1L) [18:40:54.906] } [18:40:54.906] ...future.strategy.old <- future::plan("list") [18:40:54.906] options(future.plan = NULL) [18:40:54.906] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.906] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:54.906] } [18:40:54.906] ...future.workdir <- getwd() [18:40:54.906] } [18:40:54.906] ...future.oldOptions <- base::as.list(base::.Options) [18:40:54.906] ...future.oldEnvVars <- base::Sys.getenv() [18:40:54.906] } [18:40:54.906] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:54.906] future.globals.maxSize = NULL, future.globals.method = NULL, [18:40:54.906] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:54.906] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:54.906] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:54.906] future.stdout.windows.reencode = NULL, width = 80L) [18:40:54.906] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:54.906] base::names(...future.oldOptions)) [18:40:54.906] } [18:40:54.906] if (FALSE) { [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] if (TRUE) { [18:40:54.906] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:54.906] open = "w") [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:54.906] windows = "NUL", "/dev/null"), open = "w") [18:40:54.906] } [18:40:54.906] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:54.906] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:54.906] base::sink(type = "output", split = FALSE) [18:40:54.906] base::close(...future.stdout) [18:40:54.906] }, add = TRUE) [18:40:54.906] } [18:40:54.906] ...future.frame <- base::sys.nframe() [18:40:54.906] ...future.conditions <- base::list() [18:40:54.906] ...future.rng <- base::globalenv()$.Random.seed [18:40:54.906] if (FALSE) { [18:40:54.906] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:54.906] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:54.906] } [18:40:54.906] ...future.result <- base::tryCatch({ [18:40:54.906] base::withCallingHandlers({ [18:40:54.906] ...future.value <- base::withVisible(base::local({ [18:40:54.906] ...future.makeSendCondition <- base::local({ [18:40:54.906] sendCondition <- NULL [18:40:54.906] function(frame = 1L) { [18:40:54.906] if (is.function(sendCondition)) [18:40:54.906] return(sendCondition) [18:40:54.906] ns <- getNamespace("parallel") [18:40:54.906] if (exists("sendData", mode = "function", [18:40:54.906] envir = ns)) { [18:40:54.906] parallel_sendData <- get("sendData", mode = "function", [18:40:54.906] envir = ns) [18:40:54.906] envir <- sys.frame(frame) [18:40:54.906] master <- NULL [18:40:54.906] while (!identical(envir, .GlobalEnv) && [18:40:54.906] !identical(envir, emptyenv())) { [18:40:54.906] if (exists("master", mode = "list", envir = envir, [18:40:54.906] inherits = FALSE)) { [18:40:54.906] master <- get("master", mode = "list", [18:40:54.906] envir = envir, inherits = FALSE) [18:40:54.906] if (inherits(master, c("SOCKnode", [18:40:54.906] "SOCK0node"))) { [18:40:54.906] sendCondition <<- function(cond) { [18:40:54.906] data <- list(type = "VALUE", value = cond, [18:40:54.906] success = TRUE) [18:40:54.906] parallel_sendData(master, data) [18:40:54.906] } [18:40:54.906] return(sendCondition) [18:40:54.906] } [18:40:54.906] } [18:40:54.906] frame <- frame + 1L [18:40:54.906] envir <- sys.frame(frame) [18:40:54.906] } [18:40:54.906] } [18:40:54.906] sendCondition <<- function(cond) NULL [18:40:54.906] } [18:40:54.906] }) [18:40:54.906] withCallingHandlers({ [18:40:54.906] NA [18:40:54.906] }, immediateCondition = function(cond) { [18:40:54.906] sendCondition <- ...future.makeSendCondition() [18:40:54.906] sendCondition(cond) [18:40:54.906] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.906] { [18:40:54.906] inherits <- base::inherits [18:40:54.906] invokeRestart <- base::invokeRestart [18:40:54.906] is.null <- base::is.null [18:40:54.906] muffled <- FALSE [18:40:54.906] if (inherits(cond, "message")) { [18:40:54.906] muffled <- grepl(pattern, "muffleMessage") [18:40:54.906] if (muffled) [18:40:54.906] invokeRestart("muffleMessage") [18:40:54.906] } [18:40:54.906] else if (inherits(cond, "warning")) { [18:40:54.906] muffled <- grepl(pattern, "muffleWarning") [18:40:54.906] if (muffled) [18:40:54.906] invokeRestart("muffleWarning") [18:40:54.906] } [18:40:54.906] else if (inherits(cond, "condition")) { [18:40:54.906] if (!is.null(pattern)) { [18:40:54.906] computeRestarts <- base::computeRestarts [18:40:54.906] grepl <- base::grepl [18:40:54.906] restarts <- computeRestarts(cond) [18:40:54.906] for (restart in restarts) { [18:40:54.906] name <- restart$name [18:40:54.906] if (is.null(name)) [18:40:54.906] next [18:40:54.906] if (!grepl(pattern, name)) [18:40:54.906] next [18:40:54.906] invokeRestart(restart) [18:40:54.906] muffled <- TRUE [18:40:54.906] break [18:40:54.906] } [18:40:54.906] } [18:40:54.906] } [18:40:54.906] invisible(muffled) [18:40:54.906] } [18:40:54.906] muffleCondition(cond) [18:40:54.906] }) [18:40:54.906] })) [18:40:54.906] future::FutureResult(value = ...future.value$value, [18:40:54.906] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.906] ...future.rng), globalenv = if (FALSE) [18:40:54.906] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:54.906] ...future.globalenv.names)) [18:40:54.906] else NULL, started = ...future.startTime, version = "1.8") [18:40:54.906] }, condition = base::local({ [18:40:54.906] c <- base::c [18:40:54.906] inherits <- base::inherits [18:40:54.906] invokeRestart <- base::invokeRestart [18:40:54.906] length <- base::length [18:40:54.906] list <- base::list [18:40:54.906] seq.int <- base::seq.int [18:40:54.906] signalCondition <- base::signalCondition [18:40:54.906] sys.calls <- base::sys.calls [18:40:54.906] `[[` <- base::`[[` [18:40:54.906] `+` <- base::`+` [18:40:54.906] `<<-` <- base::`<<-` [18:40:54.906] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:54.906] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:54.906] 3L)] [18:40:54.906] } [18:40:54.906] function(cond) { [18:40:54.906] is_error <- inherits(cond, "error") [18:40:54.906] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:54.906] NULL) [18:40:54.906] if (is_error) { [18:40:54.906] sessionInformation <- function() { [18:40:54.906] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:54.906] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:54.906] search = base::search(), system = base::Sys.info()) [18:40:54.906] } [18:40:54.906] ...future.conditions[[length(...future.conditions) + [18:40:54.906] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:54.906] cond$call), session = sessionInformation(), [18:40:54.906] timestamp = base::Sys.time(), signaled = 0L) [18:40:54.906] signalCondition(cond) [18:40:54.906] } [18:40:54.906] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:54.906] "immediateCondition"))) { [18:40:54.906] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:54.906] ...future.conditions[[length(...future.conditions) + [18:40:54.906] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:54.906] if (TRUE && !signal) { [18:40:54.906] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.906] { [18:40:54.906] inherits <- base::inherits [18:40:54.906] invokeRestart <- base::invokeRestart [18:40:54.906] is.null <- base::is.null [18:40:54.906] muffled <- FALSE [18:40:54.906] if (inherits(cond, "message")) { [18:40:54.906] muffled <- grepl(pattern, "muffleMessage") [18:40:54.906] if (muffled) [18:40:54.906] invokeRestart("muffleMessage") [18:40:54.906] } [18:40:54.906] else if (inherits(cond, "warning")) { [18:40:54.906] muffled <- grepl(pattern, "muffleWarning") [18:40:54.906] if (muffled) [18:40:54.906] invokeRestart("muffleWarning") [18:40:54.906] } [18:40:54.906] else if (inherits(cond, "condition")) { [18:40:54.906] if (!is.null(pattern)) { [18:40:54.906] computeRestarts <- base::computeRestarts [18:40:54.906] grepl <- base::grepl [18:40:54.906] restarts <- computeRestarts(cond) [18:40:54.906] for (restart in restarts) { [18:40:54.906] name <- restart$name [18:40:54.906] if (is.null(name)) [18:40:54.906] next [18:40:54.906] if (!grepl(pattern, name)) [18:40:54.906] next [18:40:54.906] invokeRestart(restart) [18:40:54.906] muffled <- TRUE [18:40:54.906] break [18:40:54.906] } [18:40:54.906] } [18:40:54.906] } [18:40:54.906] invisible(muffled) [18:40:54.906] } [18:40:54.906] muffleCondition(cond, pattern = "^muffle") [18:40:54.906] } [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] if (TRUE) { [18:40:54.906] muffleCondition <- function (cond, pattern = "^muffle") [18:40:54.906] { [18:40:54.906] inherits <- base::inherits [18:40:54.906] invokeRestart <- base::invokeRestart [18:40:54.906] is.null <- base::is.null [18:40:54.906] muffled <- FALSE [18:40:54.906] if (inherits(cond, "message")) { [18:40:54.906] muffled <- grepl(pattern, "muffleMessage") [18:40:54.906] if (muffled) [18:40:54.906] invokeRestart("muffleMessage") [18:40:54.906] } [18:40:54.906] else if (inherits(cond, "warning")) { [18:40:54.906] muffled <- grepl(pattern, "muffleWarning") [18:40:54.906] if (muffled) [18:40:54.906] invokeRestart("muffleWarning") [18:40:54.906] } [18:40:54.906] else if (inherits(cond, "condition")) { [18:40:54.906] if (!is.null(pattern)) { [18:40:54.906] computeRestarts <- base::computeRestarts [18:40:54.906] grepl <- base::grepl [18:40:54.906] restarts <- computeRestarts(cond) [18:40:54.906] for (restart in restarts) { [18:40:54.906] name <- restart$name [18:40:54.906] if (is.null(name)) [18:40:54.906] next [18:40:54.906] if (!grepl(pattern, name)) [18:40:54.906] next [18:40:54.906] invokeRestart(restart) [18:40:54.906] muffled <- TRUE [18:40:54.906] break [18:40:54.906] } [18:40:54.906] } [18:40:54.906] } [18:40:54.906] invisible(muffled) [18:40:54.906] } [18:40:54.906] muffleCondition(cond, pattern = "^muffle") [18:40:54.906] } [18:40:54.906] } [18:40:54.906] } [18:40:54.906] })) [18:40:54.906] }, error = function(ex) { [18:40:54.906] base::structure(base::list(value = NULL, visible = NULL, [18:40:54.906] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:54.906] ...future.rng), started = ...future.startTime, [18:40:54.906] finished = Sys.time(), session_uuid = NA_character_, [18:40:54.906] version = "1.8"), class = "FutureResult") [18:40:54.906] }, finally = { [18:40:54.906] if (!identical(...future.workdir, getwd())) [18:40:54.906] setwd(...future.workdir) [18:40:54.906] { [18:40:54.906] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:54.906] ...future.oldOptions$nwarnings <- NULL [18:40:54.906] } [18:40:54.906] base::options(...future.oldOptions) [18:40:54.906] if (.Platform$OS.type == "windows") { [18:40:54.906] old_names <- names(...future.oldEnvVars) [18:40:54.906] envs <- base::Sys.getenv() [18:40:54.906] names <- names(envs) [18:40:54.906] common <- intersect(names, old_names) [18:40:54.906] added <- setdiff(names, old_names) [18:40:54.906] removed <- setdiff(old_names, names) [18:40:54.906] changed <- common[...future.oldEnvVars[common] != [18:40:54.906] envs[common]] [18:40:54.906] NAMES <- toupper(changed) [18:40:54.906] args <- list() [18:40:54.906] for (kk in seq_along(NAMES)) { [18:40:54.906] name <- changed[[kk]] [18:40:54.906] NAME <- NAMES[[kk]] [18:40:54.906] if (name != NAME && is.element(NAME, old_names)) [18:40:54.906] next [18:40:54.906] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.906] } [18:40:54.906] NAMES <- toupper(added) [18:40:54.906] for (kk in seq_along(NAMES)) { [18:40:54.906] name <- added[[kk]] [18:40:54.906] NAME <- NAMES[[kk]] [18:40:54.906] if (name != NAME && is.element(NAME, old_names)) [18:40:54.906] next [18:40:54.906] args[[name]] <- "" [18:40:54.906] } [18:40:54.906] NAMES <- toupper(removed) [18:40:54.906] for (kk in seq_along(NAMES)) { [18:40:54.906] name <- removed[[kk]] [18:40:54.906] NAME <- NAMES[[kk]] [18:40:54.906] if (name != NAME && is.element(NAME, old_names)) [18:40:54.906] next [18:40:54.906] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:54.906] } [18:40:54.906] if (length(args) > 0) [18:40:54.906] base::do.call(base::Sys.setenv, args = args) [18:40:54.906] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:54.906] } [18:40:54.906] { [18:40:54.906] if (base::length(...future.futureOptionsAdded) > [18:40:54.906] 0L) { [18:40:54.906] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:54.906] base::names(opts) <- ...future.futureOptionsAdded [18:40:54.906] base::options(opts) [18:40:54.906] } [18:40:54.906] { [18:40:54.906] { [18:40:54.906] base::options(mc.cores = ...future.mc.cores.old) [18:40:54.906] NULL [18:40:54.906] } [18:40:54.906] options(future.plan = NULL) [18:40:54.906] if (is.na(NA_character_)) [18:40:54.906] Sys.unsetenv("R_FUTURE_PLAN") [18:40:54.906] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:54.906] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:54.906] .init = FALSE) [18:40:54.906] } [18:40:54.906] } [18:40:54.906] } [18:40:54.906] }) [18:40:54.906] if (TRUE) { [18:40:54.906] base::sink(type = "output", split = FALSE) [18:40:54.906] if (TRUE) { [18:40:54.906] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:54.906] } [18:40:54.906] else { [18:40:54.906] ...future.result["stdout"] <- base::list(NULL) [18:40:54.906] } [18:40:54.906] base::close(...future.stdout) [18:40:54.906] ...future.stdout <- NULL [18:40:54.906] } [18:40:54.906] ...future.result$conditions <- ...future.conditions [18:40:54.906] ...future.result$finished <- base::Sys.time() [18:40:54.906] ...future.result [18:40:54.906] } [18:40:54.996] MultisessionFuture started [18:40:54.996] result() for ClusterFuture ... [18:40:54.997] receiveMessageFromWorker() for ClusterFuture ... [18:40:54.997] - Validating connection of MultisessionFuture [18:40:55.051] - received message: FutureResult [18:40:55.052] - Received FutureResult [18:40:55.055] - Erased future from FutureRegistry [18:40:55.055] result() for ClusterFuture ... [18:40:55.055] - result already collected: FutureResult [18:40:55.056] result() for ClusterFuture ... done [18:40:55.056] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.056] result() for ClusterFuture ... done [18:40:55.056] result() for ClusterFuture ... [18:40:55.056] - result already collected: FutureResult [18:40:55.057] result() for ClusterFuture ... done [18:40:55.057] plan(): plan_init() of 'multisession', 'cluster', 'multiprocess', 'future', 'function' ... DONE [18:40:55.059] plan(): nbrOfWorkers() = 2 [18:40:55.060] future_lapply() ... [18:40:55.064] Number of chunks: 2 [18:40:55.064] getGlobalsAndPackagesXApply() ... [18:40:55.064] - future.globals: TRUE [18:40:55.064] getGlobalsAndPackages() ... [18:40:55.064] Searching for globals... [18:40:55.066] - globals found: [2] 'FUN', 'UseMethod' [18:40:55.066] Searching for globals ... DONE [18:40:55.066] Resolving globals: FALSE [18:40:55.067] The total size of the 1 globals is 273 bytes (273 bytes) [18:40:55.067] The total size of the 1 globals exported for future expression ('FUN()') is 273 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (273 bytes of class 'function') [18:40:55.068] - globals: [1] 'FUN' [18:40:55.068] [18:40:55.068] getGlobalsAndPackages() ... DONE [18:40:55.068] - globals found/used: [n=1] 'FUN' [18:40:55.068] - needed namespaces: [n=0] [18:40:55.069] Finding globals ... DONE [18:40:55.069] - use_args: TRUE [18:40:55.069] - Getting '...' globals ... [18:40:55.070] resolve() on list ... [18:40:55.070] recursive: 0 [18:40:55.070] length: 1 [18:40:55.070] elements: '...' [18:40:55.070] length: 0 (resolved future 1) [18:40:55.071] resolve() on list ... DONE [18:40:55.071] - '...' content: [n=0] [18:40:55.071] List of 1 [18:40:55.071] $ ...: list() [18:40:55.071] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.071] - attr(*, "where")=List of 1 [18:40:55.071] ..$ ...: [18:40:55.071] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.071] - attr(*, "resolved")= logi TRUE [18:40:55.071] - attr(*, "total_size")= num NA [18:40:55.075] - Getting '...' globals ... DONE [18:40:55.075] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:55.075] List of 2 [18:40:55.075] $ ...future.FUN:function (x, ...) [18:40:55.075] $ ... : list() [18:40:55.075] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.075] - attr(*, "where")=List of 2 [18:40:55.075] ..$ ...future.FUN: [18:40:55.075] ..$ ... : [18:40:55.075] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.075] - attr(*, "resolved")= logi FALSE [18:40:55.075] - attr(*, "total_size")= int 5249 [18:40:55.079] Packages to be attached in all futures: [n=0] [18:40:55.079] getGlobalsAndPackagesXApply() ... DONE [18:40:55.080] Number of futures (= number of chunks): 2 [18:40:55.080] Launching 2 futures (chunks) ... [18:40:55.080] Chunk #1 of 2 ... [18:40:55.080] - Finding globals in 'X' for chunk #1 ... [18:40:55.080] getGlobalsAndPackages() ... [18:40:55.081] Searching for globals... [18:40:55.081] [18:40:55.081] Searching for globals ... DONE [18:40:55.081] - globals: [0] [18:40:55.082] getGlobalsAndPackages() ... DONE [18:40:55.082] + additional globals found: [n=0] [18:40:55.082] + additional namespaces needed: [n=0] [18:40:55.082] - Finding globals in 'X' for chunk #1 ... DONE [18:40:55.082] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.082] - seeds: [18:40:55.083] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.083] getGlobalsAndPackages() ... [18:40:55.083] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.083] Resolving globals: FALSE [18:40:55.083] Tweak future expression to call with '...' arguments ... [18:40:55.084] { [18:40:55.084] do.call(function(...) { [18:40:55.084] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.084] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.084] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.084] on.exit(options(oopts), add = TRUE) [18:40:55.084] } [18:40:55.084] { [18:40:55.084] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.084] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.084] ...future.FUN(...future.X_jj, ...) [18:40:55.084] }) [18:40:55.084] } [18:40:55.084] }, args = future.call.arguments) [18:40:55.084] } [18:40:55.084] Tweak future expression to call with '...' arguments ... DONE [18:40:55.085] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.085] [18:40:55.085] getGlobalsAndPackages() ... DONE [18:40:55.086] run() for 'Future' ... [18:40:55.086] - state: 'created' [18:40:55.086] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.102] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.102] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.103] - Field: 'node' [18:40:55.103] - Field: 'label' [18:40:55.103] - Field: 'local' [18:40:55.103] - Field: 'owner' [18:40:55.103] - Field: 'envir' [18:40:55.104] - Field: 'workers' [18:40:55.104] - Field: 'packages' [18:40:55.104] - Field: 'gc' [18:40:55.104] - Field: 'conditions' [18:40:55.104] - Field: 'persistent' [18:40:55.105] - Field: 'expr' [18:40:55.105] - Field: 'uuid' [18:40:55.105] - Field: 'seed' [18:40:55.105] - Field: 'version' [18:40:55.105] - Field: 'result' [18:40:55.106] - Field: 'asynchronous' [18:40:55.106] - Field: 'calls' [18:40:55.106] - Field: 'globals' [18:40:55.106] - Field: 'stdout' [18:40:55.106] - Field: 'earlySignal' [18:40:55.106] - Field: 'lazy' [18:40:55.107] - Field: 'state' [18:40:55.107] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.107] - Launch lazy future ... [18:40:55.107] Packages needed by the future expression (n = 0): [18:40:55.108] Packages needed by future strategies (n = 0): [18:40:55.108] { [18:40:55.108] { [18:40:55.108] { [18:40:55.108] ...future.startTime <- base::Sys.time() [18:40:55.108] { [18:40:55.108] { [18:40:55.108] { [18:40:55.108] { [18:40:55.108] base::local({ [18:40:55.108] has_future <- base::requireNamespace("future", [18:40:55.108] quietly = TRUE) [18:40:55.108] if (has_future) { [18:40:55.108] ns <- base::getNamespace("future") [18:40:55.108] version <- ns[[".package"]][["version"]] [18:40:55.108] if (is.null(version)) [18:40:55.108] version <- utils::packageVersion("future") [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] version <- NULL [18:40:55.108] } [18:40:55.108] if (!has_future || version < "1.8.0") { [18:40:55.108] info <- base::c(r_version = base::gsub("R version ", [18:40:55.108] "", base::R.version$version.string), [18:40:55.108] platform = base::sprintf("%s (%s-bit)", [18:40:55.108] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:55.108] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.108] "release", "version")], collapse = " "), [18:40:55.108] hostname = base::Sys.info()[["nodename"]]) [18:40:55.108] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.108] info) [18:40:55.108] info <- base::paste(info, collapse = "; ") [18:40:55.108] if (!has_future) { [18:40:55.108] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.108] info) [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.108] info, version) [18:40:55.108] } [18:40:55.108] base::stop(msg) [18:40:55.108] } [18:40:55.108] }) [18:40:55.108] } [18:40:55.108] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.108] base::options(mc.cores = 1L) [18:40:55.108] } [18:40:55.108] ...future.strategy.old <- future::plan("list") [18:40:55.108] options(future.plan = NULL) [18:40:55.108] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.108] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.108] } [18:40:55.108] ...future.workdir <- getwd() [18:40:55.108] } [18:40:55.108] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.108] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.108] } [18:40:55.108] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.108] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.108] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.108] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.108] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.108] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.108] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.108] base::names(...future.oldOptions)) [18:40:55.108] } [18:40:55.108] if (FALSE) { [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] if (TRUE) { [18:40:55.108] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.108] open = "w") [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.108] windows = "NUL", "/dev/null"), open = "w") [18:40:55.108] } [18:40:55.108] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.108] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.108] base::sink(type = "output", split = FALSE) [18:40:55.108] base::close(...future.stdout) [18:40:55.108] }, add = TRUE) [18:40:55.108] } [18:40:55.108] ...future.frame <- base::sys.nframe() [18:40:55.108] ...future.conditions <- base::list() [18:40:55.108] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.108] if (FALSE) { [18:40:55.108] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.108] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.108] } [18:40:55.108] ...future.result <- base::tryCatch({ [18:40:55.108] base::withCallingHandlers({ [18:40:55.108] ...future.value <- base::withVisible(base::local({ [18:40:55.108] ...future.makeSendCondition <- base::local({ [18:40:55.108] sendCondition <- NULL [18:40:55.108] function(frame = 1L) { [18:40:55.108] if (is.function(sendCondition)) [18:40:55.108] return(sendCondition) [18:40:55.108] ns <- getNamespace("parallel") [18:40:55.108] if (exists("sendData", mode = "function", [18:40:55.108] envir = ns)) { [18:40:55.108] parallel_sendData <- get("sendData", mode = "function", [18:40:55.108] envir = ns) [18:40:55.108] envir <- sys.frame(frame) [18:40:55.108] master <- NULL [18:40:55.108] while (!identical(envir, .GlobalEnv) && [18:40:55.108] !identical(envir, emptyenv())) { [18:40:55.108] if (exists("master", mode = "list", envir = envir, [18:40:55.108] inherits = FALSE)) { [18:40:55.108] master <- get("master", mode = "list", [18:40:55.108] envir = envir, inherits = FALSE) [18:40:55.108] if (inherits(master, c("SOCKnode", [18:40:55.108] "SOCK0node"))) { [18:40:55.108] sendCondition <<- function(cond) { [18:40:55.108] data <- list(type = "VALUE", value = cond, [18:40:55.108] success = TRUE) [18:40:55.108] parallel_sendData(master, data) [18:40:55.108] } [18:40:55.108] return(sendCondition) [18:40:55.108] } [18:40:55.108] } [18:40:55.108] frame <- frame + 1L [18:40:55.108] envir <- sys.frame(frame) [18:40:55.108] } [18:40:55.108] } [18:40:55.108] sendCondition <<- function(cond) NULL [18:40:55.108] } [18:40:55.108] }) [18:40:55.108] withCallingHandlers({ [18:40:55.108] { [18:40:55.108] do.call(function(...) { [18:40:55.108] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.108] if (!identical(...future.globals.maxSize.org, [18:40:55.108] ...future.globals.maxSize)) { [18:40:55.108] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.108] on.exit(options(oopts), add = TRUE) [18:40:55.108] } [18:40:55.108] { [18:40:55.108] lapply(seq_along(...future.elements_ii), [18:40:55.108] FUN = function(jj) { [18:40:55.108] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.108] ...future.FUN(...future.X_jj, ...) [18:40:55.108] }) [18:40:55.108] } [18:40:55.108] }, args = future.call.arguments) [18:40:55.108] } [18:40:55.108] }, immediateCondition = function(cond) { [18:40:55.108] sendCondition <- ...future.makeSendCondition() [18:40:55.108] sendCondition(cond) [18:40:55.108] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.108] { [18:40:55.108] inherits <- base::inherits [18:40:55.108] invokeRestart <- base::invokeRestart [18:40:55.108] is.null <- base::is.null [18:40:55.108] muffled <- FALSE [18:40:55.108] if (inherits(cond, "message")) { [18:40:55.108] muffled <- grepl(pattern, "muffleMessage") [18:40:55.108] if (muffled) [18:40:55.108] invokeRestart("muffleMessage") [18:40:55.108] } [18:40:55.108] else if (inherits(cond, "warning")) { [18:40:55.108] muffled <- grepl(pattern, "muffleWarning") [18:40:55.108] if (muffled) [18:40:55.108] invokeRestart("muffleWarning") [18:40:55.108] } [18:40:55.108] else if (inherits(cond, "condition")) { [18:40:55.108] if (!is.null(pattern)) { [18:40:55.108] computeRestarts <- base::computeRestarts [18:40:55.108] grepl <- base::grepl [18:40:55.108] restarts <- computeRestarts(cond) [18:40:55.108] for (restart in restarts) { [18:40:55.108] name <- restart$name [18:40:55.108] if (is.null(name)) [18:40:55.108] next [18:40:55.108] if (!grepl(pattern, name)) [18:40:55.108] next [18:40:55.108] invokeRestart(restart) [18:40:55.108] muffled <- TRUE [18:40:55.108] break [18:40:55.108] } [18:40:55.108] } [18:40:55.108] } [18:40:55.108] invisible(muffled) [18:40:55.108] } [18:40:55.108] muffleCondition(cond) [18:40:55.108] }) [18:40:55.108] })) [18:40:55.108] future::FutureResult(value = ...future.value$value, [18:40:55.108] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.108] ...future.rng), globalenv = if (FALSE) [18:40:55.108] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.108] ...future.globalenv.names)) [18:40:55.108] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.108] }, condition = base::local({ [18:40:55.108] c <- base::c [18:40:55.108] inherits <- base::inherits [18:40:55.108] invokeRestart <- base::invokeRestart [18:40:55.108] length <- base::length [18:40:55.108] list <- base::list [18:40:55.108] seq.int <- base::seq.int [18:40:55.108] signalCondition <- base::signalCondition [18:40:55.108] sys.calls <- base::sys.calls [18:40:55.108] `[[` <- base::`[[` [18:40:55.108] `+` <- base::`+` [18:40:55.108] `<<-` <- base::`<<-` [18:40:55.108] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.108] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.108] 3L)] [18:40:55.108] } [18:40:55.108] function(cond) { [18:40:55.108] is_error <- inherits(cond, "error") [18:40:55.108] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.108] NULL) [18:40:55.108] if (is_error) { [18:40:55.108] sessionInformation <- function() { [18:40:55.108] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.108] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.108] search = base::search(), system = base::Sys.info()) [18:40:55.108] } [18:40:55.108] ...future.conditions[[length(...future.conditions) + [18:40:55.108] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.108] cond$call), session = sessionInformation(), [18:40:55.108] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.108] signalCondition(cond) [18:40:55.108] } [18:40:55.108] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.108] "immediateCondition"))) { [18:40:55.108] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.108] ...future.conditions[[length(...future.conditions) + [18:40:55.108] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.108] if (TRUE && !signal) { [18:40:55.108] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.108] { [18:40:55.108] inherits <- base::inherits [18:40:55.108] invokeRestart <- base::invokeRestart [18:40:55.108] is.null <- base::is.null [18:40:55.108] muffled <- FALSE [18:40:55.108] if (inherits(cond, "message")) { [18:40:55.108] muffled <- grepl(pattern, "muffleMessage") [18:40:55.108] if (muffled) [18:40:55.108] invokeRestart("muffleMessage") [18:40:55.108] } [18:40:55.108] else if (inherits(cond, "warning")) { [18:40:55.108] muffled <- grepl(pattern, "muffleWarning") [18:40:55.108] if (muffled) [18:40:55.108] invokeRestart("muffleWarning") [18:40:55.108] } [18:40:55.108] else if (inherits(cond, "condition")) { [18:40:55.108] if (!is.null(pattern)) { [18:40:55.108] computeRestarts <- base::computeRestarts [18:40:55.108] grepl <- base::grepl [18:40:55.108] restarts <- computeRestarts(cond) [18:40:55.108] for (restart in restarts) { [18:40:55.108] name <- restart$name [18:40:55.108] if (is.null(name)) [18:40:55.108] next [18:40:55.108] if (!grepl(pattern, name)) [18:40:55.108] next [18:40:55.108] invokeRestart(restart) [18:40:55.108] muffled <- TRUE [18:40:55.108] break [18:40:55.108] } [18:40:55.108] } [18:40:55.108] } [18:40:55.108] invisible(muffled) [18:40:55.108] } [18:40:55.108] muffleCondition(cond, pattern = "^muffle") [18:40:55.108] } [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] if (TRUE) { [18:40:55.108] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.108] { [18:40:55.108] inherits <- base::inherits [18:40:55.108] invokeRestart <- base::invokeRestart [18:40:55.108] is.null <- base::is.null [18:40:55.108] muffled <- FALSE [18:40:55.108] if (inherits(cond, "message")) { [18:40:55.108] muffled <- grepl(pattern, "muffleMessage") [18:40:55.108] if (muffled) [18:40:55.108] invokeRestart("muffleMessage") [18:40:55.108] } [18:40:55.108] else if (inherits(cond, "warning")) { [18:40:55.108] muffled <- grepl(pattern, "muffleWarning") [18:40:55.108] if (muffled) [18:40:55.108] invokeRestart("muffleWarning") [18:40:55.108] } [18:40:55.108] else if (inherits(cond, "condition")) { [18:40:55.108] if (!is.null(pattern)) { [18:40:55.108] computeRestarts <- base::computeRestarts [18:40:55.108] grepl <- base::grepl [18:40:55.108] restarts <- computeRestarts(cond) [18:40:55.108] for (restart in restarts) { [18:40:55.108] name <- restart$name [18:40:55.108] if (is.null(name)) [18:40:55.108] next [18:40:55.108] if (!grepl(pattern, name)) [18:40:55.108] next [18:40:55.108] invokeRestart(restart) [18:40:55.108] muffled <- TRUE [18:40:55.108] break [18:40:55.108] } [18:40:55.108] } [18:40:55.108] } [18:40:55.108] invisible(muffled) [18:40:55.108] } [18:40:55.108] muffleCondition(cond, pattern = "^muffle") [18:40:55.108] } [18:40:55.108] } [18:40:55.108] } [18:40:55.108] })) [18:40:55.108] }, error = function(ex) { [18:40:55.108] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.108] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.108] ...future.rng), started = ...future.startTime, [18:40:55.108] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.108] version = "1.8"), class = "FutureResult") [18:40:55.108] }, finally = { [18:40:55.108] if (!identical(...future.workdir, getwd())) [18:40:55.108] setwd(...future.workdir) [18:40:55.108] { [18:40:55.108] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.108] ...future.oldOptions$nwarnings <- NULL [18:40:55.108] } [18:40:55.108] base::options(...future.oldOptions) [18:40:55.108] if (.Platform$OS.type == "windows") { [18:40:55.108] old_names <- names(...future.oldEnvVars) [18:40:55.108] envs <- base::Sys.getenv() [18:40:55.108] names <- names(envs) [18:40:55.108] common <- intersect(names, old_names) [18:40:55.108] added <- setdiff(names, old_names) [18:40:55.108] removed <- setdiff(old_names, names) [18:40:55.108] changed <- common[...future.oldEnvVars[common] != [18:40:55.108] envs[common]] [18:40:55.108] NAMES <- toupper(changed) [18:40:55.108] args <- list() [18:40:55.108] for (kk in seq_along(NAMES)) { [18:40:55.108] name <- changed[[kk]] [18:40:55.108] NAME <- NAMES[[kk]] [18:40:55.108] if (name != NAME && is.element(NAME, old_names)) [18:40:55.108] next [18:40:55.108] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.108] } [18:40:55.108] NAMES <- toupper(added) [18:40:55.108] for (kk in seq_along(NAMES)) { [18:40:55.108] name <- added[[kk]] [18:40:55.108] NAME <- NAMES[[kk]] [18:40:55.108] if (name != NAME && is.element(NAME, old_names)) [18:40:55.108] next [18:40:55.108] args[[name]] <- "" [18:40:55.108] } [18:40:55.108] NAMES <- toupper(removed) [18:40:55.108] for (kk in seq_along(NAMES)) { [18:40:55.108] name <- removed[[kk]] [18:40:55.108] NAME <- NAMES[[kk]] [18:40:55.108] if (name != NAME && is.element(NAME, old_names)) [18:40:55.108] next [18:40:55.108] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.108] } [18:40:55.108] if (length(args) > 0) [18:40:55.108] base::do.call(base::Sys.setenv, args = args) [18:40:55.108] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.108] } [18:40:55.108] { [18:40:55.108] if (base::length(...future.futureOptionsAdded) > [18:40:55.108] 0L) { [18:40:55.108] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.108] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.108] base::options(opts) [18:40:55.108] } [18:40:55.108] { [18:40:55.108] { [18:40:55.108] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.108] NULL [18:40:55.108] } [18:40:55.108] options(future.plan = NULL) [18:40:55.108] if (is.na(NA_character_)) [18:40:55.108] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.108] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.108] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.108] .init = FALSE) [18:40:55.108] } [18:40:55.108] } [18:40:55.108] } [18:40:55.108] }) [18:40:55.108] if (TRUE) { [18:40:55.108] base::sink(type = "output", split = FALSE) [18:40:55.108] if (TRUE) { [18:40:55.108] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.108] } [18:40:55.108] else { [18:40:55.108] ...future.result["stdout"] <- base::list(NULL) [18:40:55.108] } [18:40:55.108] base::close(...future.stdout) [18:40:55.108] ...future.stdout <- NULL [18:40:55.108] } [18:40:55.108] ...future.result$conditions <- ...future.conditions [18:40:55.108] ...future.result$finished <- base::Sys.time() [18:40:55.108] ...future.result [18:40:55.108] } [18:40:55.114] Exporting 5 global objects (942 bytes) to cluster node #1 ... [18:40:55.115] Exporting '...future.FUN' (273 bytes) to cluster node #1 ... [18:40:55.115] Exporting '...future.FUN' (273 bytes) to cluster node #1 ... DONE [18:40:55.116] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... [18:40:55.116] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... DONE [18:40:55.116] Exporting '...future.elements_ii' (55 bytes) to cluster node #1 ... [18:40:55.117] Exporting '...future.elements_ii' (55 bytes) to cluster node #1 ... DONE [18:40:55.117] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.117] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.118] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.118] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.118] Exporting 5 global objects (942 bytes) to cluster node #1 ... DONE [18:40:55.119] MultisessionFuture started [18:40:55.119] - Launch lazy future ... done [18:40:55.119] run() for 'MultisessionFuture' ... done [18:40:55.120] Created future: [18:40:55.133] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.133] - Validating connection of MultisessionFuture [18:40:55.133] - received message: FutureResult [18:40:55.133] - Received FutureResult [18:40:55.134] - Erased future from FutureRegistry [18:40:55.134] result() for ClusterFuture ... [18:40:55.134] - result already collected: FutureResult [18:40:55.134] result() for ClusterFuture ... done [18:40:55.134] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.120] MultisessionFuture: [18:40:55.120] Label: 'future_eapply-1' [18:40:55.120] Expression: [18:40:55.120] { [18:40:55.120] do.call(function(...) { [18:40:55.120] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.120] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.120] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.120] on.exit(options(oopts), add = TRUE) [18:40:55.120] } [18:40:55.120] { [18:40:55.120] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.120] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.120] ...future.FUN(...future.X_jj, ...) [18:40:55.120] }) [18:40:55.120] } [18:40:55.120] }, args = future.call.arguments) [18:40:55.120] } [18:40:55.120] Lazy evaluation: FALSE [18:40:55.120] Asynchronous evaluation: TRUE [18:40:55.120] Local evaluation: TRUE [18:40:55.120] Environment: R_GlobalEnv [18:40:55.120] Capture standard output: TRUE [18:40:55.120] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.120] Globals: 5 objects totaling 479 bytes (function '...future.FUN' of 273 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 55 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.120] Packages: [18:40:55.120] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.120] Resolved: TRUE [18:40:55.120] Value: [18:40:55.120] Conditions captured: [18:40:55.120] Early signaling: FALSE [18:40:55.120] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.120] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.135] Chunk #1 of 2 ... DONE [18:40:55.135] Chunk #2 of 2 ... [18:40:55.135] - Finding globals in 'X' for chunk #2 ... [18:40:55.135] getGlobalsAndPackages() ... [18:40:55.136] Searching for globals... [18:40:55.136] [18:40:55.136] Searching for globals ... DONE [18:40:55.136] - globals: [0] [18:40:55.137] getGlobalsAndPackages() ... DONE [18:40:55.137] + additional globals found: [n=0] [18:40:55.137] + additional namespaces needed: [n=0] [18:40:55.137] - Finding globals in 'X' for chunk #2 ... DONE [18:40:55.137] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.137] - seeds: [18:40:55.138] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.138] getGlobalsAndPackages() ... [18:40:55.138] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.138] Resolving globals: FALSE [18:40:55.138] Tweak future expression to call with '...' arguments ... [18:40:55.139] { [18:40:55.139] do.call(function(...) { [18:40:55.139] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.139] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.139] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.139] on.exit(options(oopts), add = TRUE) [18:40:55.139] } [18:40:55.139] { [18:40:55.139] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.139] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.139] ...future.FUN(...future.X_jj, ...) [18:40:55.139] }) [18:40:55.139] } [18:40:55.139] }, args = future.call.arguments) [18:40:55.139] } [18:40:55.139] Tweak future expression to call with '...' arguments ... DONE [18:40:55.140] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.140] [18:40:55.140] getGlobalsAndPackages() ... DONE [18:40:55.140] run() for 'Future' ... [18:40:55.141] - state: 'created' [18:40:55.141] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.157] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.157] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.157] - Field: 'node' [18:40:55.158] - Field: 'label' [18:40:55.158] - Field: 'local' [18:40:55.158] - Field: 'owner' [18:40:55.158] - Field: 'envir' [18:40:55.158] - Field: 'workers' [18:40:55.159] - Field: 'packages' [18:40:55.159] - Field: 'gc' [18:40:55.159] - Field: 'conditions' [18:40:55.159] - Field: 'persistent' [18:40:55.159] - Field: 'expr' [18:40:55.160] - Field: 'uuid' [18:40:55.160] - Field: 'seed' [18:40:55.160] - Field: 'version' [18:40:55.160] - Field: 'result' [18:40:55.160] - Field: 'asynchronous' [18:40:55.161] - Field: 'calls' [18:40:55.161] - Field: 'globals' [18:40:55.161] - Field: 'stdout' [18:40:55.161] - Field: 'earlySignal' [18:40:55.161] - Field: 'lazy' [18:40:55.162] - Field: 'state' [18:40:55.162] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.162] - Launch lazy future ... [18:40:55.162] Packages needed by the future expression (n = 0): [18:40:55.163] Packages needed by future strategies (n = 0): [18:40:55.163] { [18:40:55.163] { [18:40:55.163] { [18:40:55.163] ...future.startTime <- base::Sys.time() [18:40:55.163] { [18:40:55.163] { [18:40:55.163] { [18:40:55.163] { [18:40:55.163] base::local({ [18:40:55.163] has_future <- base::requireNamespace("future", [18:40:55.163] quietly = TRUE) [18:40:55.163] if (has_future) { [18:40:55.163] ns <- base::getNamespace("future") [18:40:55.163] version <- ns[[".package"]][["version"]] [18:40:55.163] if (is.null(version)) [18:40:55.163] version <- utils::packageVersion("future") [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] version <- NULL [18:40:55.163] } [18:40:55.163] if (!has_future || version < "1.8.0") { [18:40:55.163] info <- base::c(r_version = base::gsub("R version ", [18:40:55.163] "", base::R.version$version.string), [18:40:55.163] platform = base::sprintf("%s (%s-bit)", [18:40:55.163] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [18:40:55.163] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.163] "release", "version")], collapse = " "), [18:40:55.163] hostname = base::Sys.info()[["nodename"]]) [18:40:55.163] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.163] info) [18:40:55.163] info <- base::paste(info, collapse = "; ") [18:40:55.163] if (!has_future) { [18:40:55.163] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.163] info) [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.163] info, version) [18:40:55.163] } [18:40:55.163] base::stop(msg) [18:40:55.163] } [18:40:55.163] }) [18:40:55.163] } [18:40:55.163] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.163] base::options(mc.cores = 1L) [18:40:55.163] } [18:40:55.163] ...future.strategy.old <- future::plan("list") [18:40:55.163] options(future.plan = NULL) [18:40:55.163] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.163] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.163] } [18:40:55.163] ...future.workdir <- getwd() [18:40:55.163] } [18:40:55.163] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.163] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.163] } [18:40:55.163] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.163] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.163] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.163] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.163] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.163] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.163] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.163] base::names(...future.oldOptions)) [18:40:55.163] } [18:40:55.163] if (FALSE) { [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] if (TRUE) { [18:40:55.163] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.163] open = "w") [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.163] windows = "NUL", "/dev/null"), open = "w") [18:40:55.163] } [18:40:55.163] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.163] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.163] base::sink(type = "output", split = FALSE) [18:40:55.163] base::close(...future.stdout) [18:40:55.163] }, add = TRUE) [18:40:55.163] } [18:40:55.163] ...future.frame <- base::sys.nframe() [18:40:55.163] ...future.conditions <- base::list() [18:40:55.163] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.163] if (FALSE) { [18:40:55.163] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.163] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.163] } [18:40:55.163] ...future.result <- base::tryCatch({ [18:40:55.163] base::withCallingHandlers({ [18:40:55.163] ...future.value <- base::withVisible(base::local({ [18:40:55.163] ...future.makeSendCondition <- base::local({ [18:40:55.163] sendCondition <- NULL [18:40:55.163] function(frame = 1L) { [18:40:55.163] if (is.function(sendCondition)) [18:40:55.163] return(sendCondition) [18:40:55.163] ns <- getNamespace("parallel") [18:40:55.163] if (exists("sendData", mode = "function", [18:40:55.163] envir = ns)) { [18:40:55.163] parallel_sendData <- get("sendData", mode = "function", [18:40:55.163] envir = ns) [18:40:55.163] envir <- sys.frame(frame) [18:40:55.163] master <- NULL [18:40:55.163] while (!identical(envir, .GlobalEnv) && [18:40:55.163] !identical(envir, emptyenv())) { [18:40:55.163] if (exists("master", mode = "list", envir = envir, [18:40:55.163] inherits = FALSE)) { [18:40:55.163] master <- get("master", mode = "list", [18:40:55.163] envir = envir, inherits = FALSE) [18:40:55.163] if (inherits(master, c("SOCKnode", [18:40:55.163] "SOCK0node"))) { [18:40:55.163] sendCondition <<- function(cond) { [18:40:55.163] data <- list(type = "VALUE", value = cond, [18:40:55.163] success = TRUE) [18:40:55.163] parallel_sendData(master, data) [18:40:55.163] } [18:40:55.163] return(sendCondition) [18:40:55.163] } [18:40:55.163] } [18:40:55.163] frame <- frame + 1L [18:40:55.163] envir <- sys.frame(frame) [18:40:55.163] } [18:40:55.163] } [18:40:55.163] sendCondition <<- function(cond) NULL [18:40:55.163] } [18:40:55.163] }) [18:40:55.163] withCallingHandlers({ [18:40:55.163] { [18:40:55.163] do.call(function(...) { [18:40:55.163] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.163] if (!identical(...future.globals.maxSize.org, [18:40:55.163] ...future.globals.maxSize)) { [18:40:55.163] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.163] on.exit(options(oopts), add = TRUE) [18:40:55.163] } [18:40:55.163] { [18:40:55.163] lapply(seq_along(...future.elements_ii), [18:40:55.163] FUN = function(jj) { [18:40:55.163] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.163] ...future.FUN(...future.X_jj, ...) [18:40:55.163] }) [18:40:55.163] } [18:40:55.163] }, args = future.call.arguments) [18:40:55.163] } [18:40:55.163] }, immediateCondition = function(cond) { [18:40:55.163] sendCondition <- ...future.makeSendCondition() [18:40:55.163] sendCondition(cond) [18:40:55.163] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.163] { [18:40:55.163] inherits <- base::inherits [18:40:55.163] invokeRestart <- base::invokeRestart [18:40:55.163] is.null <- base::is.null [18:40:55.163] muffled <- FALSE [18:40:55.163] if (inherits(cond, "message")) { [18:40:55.163] muffled <- grepl(pattern, "muffleMessage") [18:40:55.163] if (muffled) [18:40:55.163] invokeRestart("muffleMessage") [18:40:55.163] } [18:40:55.163] else if (inherits(cond, "warning")) { [18:40:55.163] muffled <- grepl(pattern, "muffleWarning") [18:40:55.163] if (muffled) [18:40:55.163] invokeRestart("muffleWarning") [18:40:55.163] } [18:40:55.163] else if (inherits(cond, "condition")) { [18:40:55.163] if (!is.null(pattern)) { [18:40:55.163] computeRestarts <- base::computeRestarts [18:40:55.163] grepl <- base::grepl [18:40:55.163] restarts <- computeRestarts(cond) [18:40:55.163] for (restart in restarts) { [18:40:55.163] name <- restart$name [18:40:55.163] if (is.null(name)) [18:40:55.163] next [18:40:55.163] if (!grepl(pattern, name)) [18:40:55.163] next [18:40:55.163] invokeRestart(restart) [18:40:55.163] muffled <- TRUE [18:40:55.163] break [18:40:55.163] } [18:40:55.163] } [18:40:55.163] } [18:40:55.163] invisible(muffled) [18:40:55.163] } [18:40:55.163] muffleCondition(cond) [18:40:55.163] }) [18:40:55.163] })) [18:40:55.163] future::FutureResult(value = ...future.value$value, [18:40:55.163] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.163] ...future.rng), globalenv = if (FALSE) [18:40:55.163] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.163] ...future.globalenv.names)) [18:40:55.163] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.163] }, condition = base::local({ [18:40:55.163] c <- base::c [18:40:55.163] inherits <- base::inherits [18:40:55.163] invokeRestart <- base::invokeRestart [18:40:55.163] length <- base::length [18:40:55.163] list <- base::list [18:40:55.163] seq.int <- base::seq.int [18:40:55.163] signalCondition <- base::signalCondition [18:40:55.163] sys.calls <- base::sys.calls [18:40:55.163] `[[` <- base::`[[` [18:40:55.163] `+` <- base::`+` [18:40:55.163] `<<-` <- base::`<<-` [18:40:55.163] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.163] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.163] 3L)] [18:40:55.163] } [18:40:55.163] function(cond) { [18:40:55.163] is_error <- inherits(cond, "error") [18:40:55.163] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.163] NULL) [18:40:55.163] if (is_error) { [18:40:55.163] sessionInformation <- function() { [18:40:55.163] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.163] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.163] search = base::search(), system = base::Sys.info()) [18:40:55.163] } [18:40:55.163] ...future.conditions[[length(...future.conditions) + [18:40:55.163] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.163] cond$call), session = sessionInformation(), [18:40:55.163] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.163] signalCondition(cond) [18:40:55.163] } [18:40:55.163] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.163] "immediateCondition"))) { [18:40:55.163] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.163] ...future.conditions[[length(...future.conditions) + [18:40:55.163] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.163] if (TRUE && !signal) { [18:40:55.163] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.163] { [18:40:55.163] inherits <- base::inherits [18:40:55.163] invokeRestart <- base::invokeRestart [18:40:55.163] is.null <- base::is.null [18:40:55.163] muffled <- FALSE [18:40:55.163] if (inherits(cond, "message")) { [18:40:55.163] muffled <- grepl(pattern, "muffleMessage") [18:40:55.163] if (muffled) [18:40:55.163] invokeRestart("muffleMessage") [18:40:55.163] } [18:40:55.163] else if (inherits(cond, "warning")) { [18:40:55.163] muffled <- grepl(pattern, "muffleWarning") [18:40:55.163] if (muffled) [18:40:55.163] invokeRestart("muffleWarning") [18:40:55.163] } [18:40:55.163] else if (inherits(cond, "condition")) { [18:40:55.163] if (!is.null(pattern)) { [18:40:55.163] computeRestarts <- base::computeRestarts [18:40:55.163] grepl <- base::grepl [18:40:55.163] restarts <- computeRestarts(cond) [18:40:55.163] for (restart in restarts) { [18:40:55.163] name <- restart$name [18:40:55.163] if (is.null(name)) [18:40:55.163] next [18:40:55.163] if (!grepl(pattern, name)) [18:40:55.163] next [18:40:55.163] invokeRestart(restart) [18:40:55.163] muffled <- TRUE [18:40:55.163] break [18:40:55.163] } [18:40:55.163] } [18:40:55.163] } [18:40:55.163] invisible(muffled) [18:40:55.163] } [18:40:55.163] muffleCondition(cond, pattern = "^muffle") [18:40:55.163] } [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] if (TRUE) { [18:40:55.163] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.163] { [18:40:55.163] inherits <- base::inherits [18:40:55.163] invokeRestart <- base::invokeRestart [18:40:55.163] is.null <- base::is.null [18:40:55.163] muffled <- FALSE [18:40:55.163] if (inherits(cond, "message")) { [18:40:55.163] muffled <- grepl(pattern, "muffleMessage") [18:40:55.163] if (muffled) [18:40:55.163] invokeRestart("muffleMessage") [18:40:55.163] } [18:40:55.163] else if (inherits(cond, "warning")) { [18:40:55.163] muffled <- grepl(pattern, "muffleWarning") [18:40:55.163] if (muffled) [18:40:55.163] invokeRestart("muffleWarning") [18:40:55.163] } [18:40:55.163] else if (inherits(cond, "condition")) { [18:40:55.163] if (!is.null(pattern)) { [18:40:55.163] computeRestarts <- base::computeRestarts [18:40:55.163] grepl <- base::grepl [18:40:55.163] restarts <- computeRestarts(cond) [18:40:55.163] for (restart in restarts) { [18:40:55.163] name <- restart$name [18:40:55.163] if (is.null(name)) [18:40:55.163] next [18:40:55.163] if (!grepl(pattern, name)) [18:40:55.163] next [18:40:55.163] invokeRestart(restart) [18:40:55.163] muffled <- TRUE [18:40:55.163] break [18:40:55.163] } [18:40:55.163] } [18:40:55.163] } [18:40:55.163] invisible(muffled) [18:40:55.163] } [18:40:55.163] muffleCondition(cond, pattern = "^muffle") [18:40:55.163] } [18:40:55.163] } [18:40:55.163] } [18:40:55.163] })) [18:40:55.163] }, error = function(ex) { [18:40:55.163] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.163] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.163] ...future.rng), started = ...future.startTime, [18:40:55.163] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.163] version = "1.8"), class = "FutureResult") [18:40:55.163] }, finally = { [18:40:55.163] if (!identical(...future.workdir, getwd())) [18:40:55.163] setwd(...future.workdir) [18:40:55.163] { [18:40:55.163] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.163] ...future.oldOptions$nwarnings <- NULL [18:40:55.163] } [18:40:55.163] base::options(...future.oldOptions) [18:40:55.163] if (.Platform$OS.type == "windows") { [18:40:55.163] old_names <- names(...future.oldEnvVars) [18:40:55.163] envs <- base::Sys.getenv() [18:40:55.163] names <- names(envs) [18:40:55.163] common <- intersect(names, old_names) [18:40:55.163] added <- setdiff(names, old_names) [18:40:55.163] removed <- setdiff(old_names, names) [18:40:55.163] changed <- common[...future.oldEnvVars[common] != [18:40:55.163] envs[common]] [18:40:55.163] NAMES <- toupper(changed) [18:40:55.163] args <- list() [18:40:55.163] for (kk in seq_along(NAMES)) { [18:40:55.163] name <- changed[[kk]] [18:40:55.163] NAME <- NAMES[[kk]] [18:40:55.163] if (name != NAME && is.element(NAME, old_names)) [18:40:55.163] next [18:40:55.163] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.163] } [18:40:55.163] NAMES <- toupper(added) [18:40:55.163] for (kk in seq_along(NAMES)) { [18:40:55.163] name <- added[[kk]] [18:40:55.163] NAME <- NAMES[[kk]] [18:40:55.163] if (name != NAME && is.element(NAME, old_names)) [18:40:55.163] next [18:40:55.163] args[[name]] <- "" [18:40:55.163] } [18:40:55.163] NAMES <- toupper(removed) [18:40:55.163] for (kk in seq_along(NAMES)) { [18:40:55.163] name <- removed[[kk]] [18:40:55.163] NAME <- NAMES[[kk]] [18:40:55.163] if (name != NAME && is.element(NAME, old_names)) [18:40:55.163] next [18:40:55.163] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.163] } [18:40:55.163] if (length(args) > 0) [18:40:55.163] base::do.call(base::Sys.setenv, args = args) [18:40:55.163] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.163] } [18:40:55.163] { [18:40:55.163] if (base::length(...future.futureOptionsAdded) > [18:40:55.163] 0L) { [18:40:55.163] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.163] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.163] base::options(opts) [18:40:55.163] } [18:40:55.163] { [18:40:55.163] { [18:40:55.163] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.163] NULL [18:40:55.163] } [18:40:55.163] options(future.plan = NULL) [18:40:55.163] if (is.na(NA_character_)) [18:40:55.163] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.163] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.163] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.163] .init = FALSE) [18:40:55.163] } [18:40:55.163] } [18:40:55.163] } [18:40:55.163] }) [18:40:55.163] if (TRUE) { [18:40:55.163] base::sink(type = "output", split = FALSE) [18:40:55.163] if (TRUE) { [18:40:55.163] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.163] } [18:40:55.163] else { [18:40:55.163] ...future.result["stdout"] <- base::list(NULL) [18:40:55.163] } [18:40:55.163] base::close(...future.stdout) [18:40:55.163] ...future.stdout <- NULL [18:40:55.163] } [18:40:55.163] ...future.result$conditions <- ...future.conditions [18:40:55.163] ...future.result$finished <- base::Sys.time() [18:40:55.163] ...future.result [18:40:55.163] } [18:40:55.169] Exporting 5 global objects (1.07 KiB) to cluster node #1 ... [18:40:55.169] Exporting '...future.FUN' (273 bytes) to cluster node #1 ... [18:40:55.169] Exporting '...future.FUN' (273 bytes) to cluster node #1 ... DONE [18:40:55.170] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... [18:40:55.170] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... DONE [18:40:55.170] Exporting '...future.elements_ii' (205 bytes) to cluster node #1 ... [18:40:55.171] Exporting '...future.elements_ii' (205 bytes) to cluster node #1 ... DONE [18:40:55.171] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.171] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.172] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.172] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.172] Exporting 5 global objects (1.07 KiB) to cluster node #1 ... DONE [18:40:55.173] MultisessionFuture started [18:40:55.173] - Launch lazy future ... done [18:40:55.173] run() for 'MultisessionFuture' ... done [18:40:55.174] Created future: [18:40:55.188] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.188] - Validating connection of MultisessionFuture [18:40:55.188] - received message: FutureResult [18:40:55.189] - Received FutureResult [18:40:55.189] - Erased future from FutureRegistry [18:40:55.189] result() for ClusterFuture ... [18:40:55.189] - result already collected: FutureResult [18:40:55.192] result() for ClusterFuture ... done [18:40:55.192] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.174] MultisessionFuture: [18:40:55.174] Label: 'future_eapply-2' [18:40:55.174] Expression: [18:40:55.174] { [18:40:55.174] do.call(function(...) { [18:40:55.174] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.174] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.174] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.174] on.exit(options(oopts), add = TRUE) [18:40:55.174] } [18:40:55.174] { [18:40:55.174] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.174] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.174] ...future.FUN(...future.X_jj, ...) [18:40:55.174] }) [18:40:55.174] } [18:40:55.174] }, args = future.call.arguments) [18:40:55.174] } [18:40:55.174] Lazy evaluation: FALSE [18:40:55.174] Asynchronous evaluation: TRUE [18:40:55.174] Local evaluation: TRUE [18:40:55.174] Environment: R_GlobalEnv [18:40:55.174] Capture standard output: TRUE [18:40:55.174] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.174] Globals: 5 objects totaling 629 bytes (function '...future.FUN' of 273 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 205 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.174] Packages: [18:40:55.174] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.174] Resolved: TRUE [18:40:55.174] Value: [18:40:55.174] Conditions captured: [18:40:55.174] Early signaling: FALSE [18:40:55.174] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.174] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.192] Chunk #2 of 2 ... DONE [18:40:55.193] Launching 2 futures (chunks) ... DONE [18:40:55.193] Resolving 2 futures (chunks) ... [18:40:55.193] resolve() on list ... [18:40:55.193] recursive: 0 [18:40:55.193] length: 2 [18:40:55.193] [18:40:55.193] Future #1 [18:40:55.194] result() for ClusterFuture ... [18:40:55.194] - result already collected: FutureResult [18:40:55.194] result() for ClusterFuture ... done [18:40:55.194] result() for ClusterFuture ... [18:40:55.194] - result already collected: FutureResult [18:40:55.194] result() for ClusterFuture ... done [18:40:55.195] signalConditionsASAP(MultisessionFuture, pos=1) ... [18:40:55.195] - nx: 2 [18:40:55.195] - relay: TRUE [18:40:55.195] - stdout: TRUE [18:40:55.195] - signal: TRUE [18:40:55.195] - resignal: FALSE [18:40:55.196] - force: TRUE [18:40:55.196] - relayed: [n=2] FALSE, FALSE [18:40:55.196] - queued futures: [n=2] FALSE, FALSE [18:40:55.196] - until=1 [18:40:55.196] - relaying element #1 [18:40:55.196] result() for ClusterFuture ... [18:40:55.196] - result already collected: FutureResult [18:40:55.197] result() for ClusterFuture ... done [18:40:55.197] result() for ClusterFuture ... [18:40:55.197] - result already collected: FutureResult [18:40:55.197] result() for ClusterFuture ... done [18:40:55.197] result() for ClusterFuture ... [18:40:55.197] - result already collected: FutureResult [18:40:55.198] result() for ClusterFuture ... done [18:40:55.198] result() for ClusterFuture ... [18:40:55.198] - result already collected: FutureResult [18:40:55.198] result() for ClusterFuture ... done [18:40:55.198] - relayed: [n=2] TRUE, FALSE [18:40:55.198] - queued futures: [n=2] TRUE, FALSE [18:40:55.198] signalConditionsASAP(MultisessionFuture, pos=1) ... done [18:40:55.199] length: 1 (resolved future 1) [18:40:55.199] Future #2 [18:40:55.199] result() for ClusterFuture ... [18:40:55.199] - result already collected: FutureResult [18:40:55.199] result() for ClusterFuture ... done [18:40:55.199] result() for ClusterFuture ... [18:40:55.200] - result already collected: FutureResult [18:40:55.200] result() for ClusterFuture ... done [18:40:55.200] signalConditionsASAP(MultisessionFuture, pos=2) ... [18:40:55.200] - nx: 2 [18:40:55.200] - relay: TRUE [18:40:55.200] - stdout: TRUE [18:40:55.201] - signal: TRUE [18:40:55.201] - resignal: FALSE [18:40:55.201] - force: TRUE [18:40:55.201] - relayed: [n=2] TRUE, FALSE [18:40:55.201] - queued futures: [n=2] TRUE, FALSE [18:40:55.201] - until=2 [18:40:55.201] - relaying element #2 [18:40:55.202] result() for ClusterFuture ... [18:40:55.202] - result already collected: FutureResult [18:40:55.202] result() for ClusterFuture ... done [18:40:55.202] result() for ClusterFuture ... [18:40:55.202] - result already collected: FutureResult [18:40:55.203] result() for ClusterFuture ... done [18:40:55.203] result() for ClusterFuture ... [18:40:55.203] - result already collected: FutureResult [18:40:55.203] result() for ClusterFuture ... done [18:40:55.204] result() for ClusterFuture ... [18:40:55.204] - result already collected: FutureResult [18:40:55.204] result() for ClusterFuture ... done [18:40:55.204] - relayed: [n=2] TRUE, TRUE [18:40:55.204] - queued futures: [n=2] TRUE, TRUE [18:40:55.205] signalConditionsASAP(MultisessionFuture, pos=2) ... done [18:40:55.205] length: 0 (resolved future 2) [18:40:55.205] Relaying remaining futures [18:40:55.205] signalConditionsASAP(NULL, pos=0) ... [18:40:55.206] - nx: 2 [18:40:55.206] - relay: TRUE [18:40:55.206] - stdout: TRUE [18:40:55.206] - signal: TRUE [18:40:55.206] - resignal: FALSE [18:40:55.206] - force: TRUE [18:40:55.206] - relayed: [n=2] TRUE, TRUE [18:40:55.207] - queued futures: [n=2] TRUE, TRUE - flush all [18:40:55.207] - relayed: [n=2] TRUE, TRUE [18:40:55.207] - queued futures: [n=2] TRUE, TRUE [18:40:55.207] signalConditionsASAP(NULL, pos=0) ... done [18:40:55.207] resolve() on list ... DONE [18:40:55.207] result() for ClusterFuture ... [18:40:55.208] - result already collected: FutureResult [18:40:55.208] result() for ClusterFuture ... done [18:40:55.208] result() for ClusterFuture ... [18:40:55.208] - result already collected: FutureResult [18:40:55.208] result() for ClusterFuture ... done [18:40:55.208] result() for ClusterFuture ... [18:40:55.209] - result already collected: FutureResult [18:40:55.209] result() for ClusterFuture ... done [18:40:55.209] result() for ClusterFuture ... [18:40:55.209] - result already collected: FutureResult [18:40:55.209] result() for ClusterFuture ... done [18:40:55.209] - Number of value chunks collected: 2 [18:40:55.210] Resolving 2 futures (chunks) ... DONE [18:40:55.210] Reducing values from 2 chunks ... [18:40:55.210] - Number of values collected after concatenation: 3 [18:40:55.210] - Number of values expected: 3 [18:40:55.210] Reducing values from 2 chunks ... DONE [18:40:55.210] future_lapply() ... DONE [18:40:55.211] future_lapply() ... [18:40:55.214] Number of chunks: 2 [18:40:55.214] getGlobalsAndPackagesXApply() ... [18:40:55.214] - future.globals: TRUE [18:40:55.214] getGlobalsAndPackages() ... [18:40:55.215] Searching for globals... [18:40:55.216] - globals found: [2] 'FUN', 'UseMethod' [18:40:55.216] Searching for globals ... DONE [18:40:55.216] Resolving globals: FALSE [18:40:55.217] The total size of the 1 globals is 311 bytes (311 bytes) [18:40:55.217] The total size of the 1 globals exported for future expression ('FUN(probs = c(0.25, 0.5, 0.75))') is 311 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (311 bytes of class 'function') [18:40:55.218] - globals: [1] 'FUN' [18:40:55.218] - packages: [1] 'stats' [18:40:55.218] getGlobalsAndPackages() ... DONE [18:40:55.218] - globals found/used: [n=1] 'FUN' [18:40:55.218] - needed namespaces: [n=1] 'stats' [18:40:55.218] Finding globals ... DONE [18:40:55.219] - use_args: TRUE [18:40:55.219] - Getting '...' globals ... [18:40:55.219] resolve() on list ... [18:40:55.219] recursive: 0 [18:40:55.220] length: 1 [18:40:55.220] elements: '...' [18:40:55.220] length: 0 (resolved future 1) [18:40:55.220] resolve() on list ... DONE [18:40:55.220] - '...' content: [n=1] 'probs' [18:40:55.220] List of 1 [18:40:55.220] $ ...:List of 1 [18:40:55.220] ..$ probs: num [1:3] 0.25 0.5 0.75 [18:40:55.220] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.220] - attr(*, "where")=List of 1 [18:40:55.220] ..$ ...: [18:40:55.220] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.220] - attr(*, "resolved")= logi TRUE [18:40:55.220] - attr(*, "total_size")= num NA [18:40:55.224] - Getting '...' globals ... DONE [18:40:55.224] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:55.224] List of 2 [18:40:55.224] $ ...future.FUN:function (x, ...) [18:40:55.224] $ ... :List of 1 [18:40:55.224] ..$ probs: num [1:3] 0.25 0.5 0.75 [18:40:55.224] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.224] - attr(*, "where")=List of 2 [18:40:55.224] ..$ ...future.FUN: [18:40:55.224] ..$ ... : [18:40:55.224] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.224] - attr(*, "resolved")= logi FALSE [18:40:55.224] - attr(*, "total_size")= int 6525 [18:40:55.228] Packages to be attached in all futures: [n=1] 'stats' [18:40:55.228] getGlobalsAndPackagesXApply() ... DONE [18:40:55.229] Number of futures (= number of chunks): 2 [18:40:55.229] Launching 2 futures (chunks) ... [18:40:55.229] Chunk #1 of 2 ... [18:40:55.229] - Finding globals in 'X' for chunk #1 ... [18:40:55.229] getGlobalsAndPackages() ... [18:40:55.230] Searching for globals... [18:40:55.230] [18:40:55.230] Searching for globals ... DONE [18:40:55.230] - globals: [0] [18:40:55.230] getGlobalsAndPackages() ... DONE [18:40:55.231] + additional globals found: [n=0] [18:40:55.231] + additional namespaces needed: [n=0] [18:40:55.231] - Finding globals in 'X' for chunk #1 ... DONE [18:40:55.231] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.231] - seeds: [18:40:55.231] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.232] getGlobalsAndPackages() ... [18:40:55.232] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.232] Resolving globals: FALSE [18:40:55.232] Tweak future expression to call with '...' arguments ... [18:40:55.232] { [18:40:55.232] do.call(function(...) { [18:40:55.232] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.232] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.232] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.232] on.exit(options(oopts), add = TRUE) [18:40:55.232] } [18:40:55.232] { [18:40:55.232] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.232] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.232] ...future.FUN(...future.X_jj, ...) [18:40:55.232] }) [18:40:55.232] } [18:40:55.232] }, args = future.call.arguments) [18:40:55.232] } [18:40:55.233] Tweak future expression to call with '...' arguments ... DONE [18:40:55.233] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.233] - packages: [1] 'stats' [18:40:55.234] getGlobalsAndPackages() ... DONE [18:40:55.234] run() for 'Future' ... [18:40:55.234] - state: 'created' [18:40:55.234] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.249] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.250] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.250] - Field: 'node' [18:40:55.250] - Field: 'label' [18:40:55.250] - Field: 'local' [18:40:55.250] - Field: 'owner' [18:40:55.251] - Field: 'envir' [18:40:55.251] - Field: 'workers' [18:40:55.251] - Field: 'packages' [18:40:55.251] - Field: 'gc' [18:40:55.251] - Field: 'conditions' [18:40:55.252] - Field: 'persistent' [18:40:55.252] - Field: 'expr' [18:40:55.252] - Field: 'uuid' [18:40:55.252] - Field: 'seed' [18:40:55.252] - Field: 'version' [18:40:55.252] - Field: 'result' [18:40:55.253] - Field: 'asynchronous' [18:40:55.253] - Field: 'calls' [18:40:55.253] - Field: 'globals' [18:40:55.253] - Field: 'stdout' [18:40:55.253] - Field: 'earlySignal' [18:40:55.253] - Field: 'lazy' [18:40:55.254] - Field: 'state' [18:40:55.254] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.254] - Launch lazy future ... [18:40:55.254] Packages needed by the future expression (n = 1): 'stats' [18:40:55.255] Packages needed by future strategies (n = 0): [18:40:55.255] { [18:40:55.255] { [18:40:55.255] { [18:40:55.255] ...future.startTime <- base::Sys.time() [18:40:55.255] { [18:40:55.255] { [18:40:55.255] { [18:40:55.255] { [18:40:55.255] { [18:40:55.255] base::local({ [18:40:55.255] has_future <- base::requireNamespace("future", [18:40:55.255] quietly = TRUE) [18:40:55.255] if (has_future) { [18:40:55.255] ns <- base::getNamespace("future") [18:40:55.255] version <- ns[[".package"]][["version"]] [18:40:55.255] if (is.null(version)) [18:40:55.255] version <- utils::packageVersion("future") [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] version <- NULL [18:40:55.255] } [18:40:55.255] if (!has_future || version < "1.8.0") { [18:40:55.255] info <- base::c(r_version = base::gsub("R version ", [18:40:55.255] "", base::R.version$version.string), [18:40:55.255] platform = base::sprintf("%s (%s-bit)", [18:40:55.255] base::R.version$platform, 8 * [18:40:55.255] base::.Machine$sizeof.pointer), [18:40:55.255] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.255] "release", "version")], collapse = " "), [18:40:55.255] hostname = base::Sys.info()[["nodename"]]) [18:40:55.255] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.255] info) [18:40:55.255] info <- base::paste(info, collapse = "; ") [18:40:55.255] if (!has_future) { [18:40:55.255] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.255] info) [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.255] info, version) [18:40:55.255] } [18:40:55.255] base::stop(msg) [18:40:55.255] } [18:40:55.255] }) [18:40:55.255] } [18:40:55.255] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.255] base::options(mc.cores = 1L) [18:40:55.255] } [18:40:55.255] base::local({ [18:40:55.255] for (pkg in "stats") { [18:40:55.255] base::loadNamespace(pkg) [18:40:55.255] base::library(pkg, character.only = TRUE) [18:40:55.255] } [18:40:55.255] }) [18:40:55.255] } [18:40:55.255] ...future.strategy.old <- future::plan("list") [18:40:55.255] options(future.plan = NULL) [18:40:55.255] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.255] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.255] } [18:40:55.255] ...future.workdir <- getwd() [18:40:55.255] } [18:40:55.255] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.255] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.255] } [18:40:55.255] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.255] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.255] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.255] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.255] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.255] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.255] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.255] base::names(...future.oldOptions)) [18:40:55.255] } [18:40:55.255] if (FALSE) { [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] if (TRUE) { [18:40:55.255] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.255] open = "w") [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.255] windows = "NUL", "/dev/null"), open = "w") [18:40:55.255] } [18:40:55.255] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.255] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.255] base::sink(type = "output", split = FALSE) [18:40:55.255] base::close(...future.stdout) [18:40:55.255] }, add = TRUE) [18:40:55.255] } [18:40:55.255] ...future.frame <- base::sys.nframe() [18:40:55.255] ...future.conditions <- base::list() [18:40:55.255] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.255] if (FALSE) { [18:40:55.255] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.255] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.255] } [18:40:55.255] ...future.result <- base::tryCatch({ [18:40:55.255] base::withCallingHandlers({ [18:40:55.255] ...future.value <- base::withVisible(base::local({ [18:40:55.255] ...future.makeSendCondition <- base::local({ [18:40:55.255] sendCondition <- NULL [18:40:55.255] function(frame = 1L) { [18:40:55.255] if (is.function(sendCondition)) [18:40:55.255] return(sendCondition) [18:40:55.255] ns <- getNamespace("parallel") [18:40:55.255] if (exists("sendData", mode = "function", [18:40:55.255] envir = ns)) { [18:40:55.255] parallel_sendData <- get("sendData", mode = "function", [18:40:55.255] envir = ns) [18:40:55.255] envir <- sys.frame(frame) [18:40:55.255] master <- NULL [18:40:55.255] while (!identical(envir, .GlobalEnv) && [18:40:55.255] !identical(envir, emptyenv())) { [18:40:55.255] if (exists("master", mode = "list", envir = envir, [18:40:55.255] inherits = FALSE)) { [18:40:55.255] master <- get("master", mode = "list", [18:40:55.255] envir = envir, inherits = FALSE) [18:40:55.255] if (inherits(master, c("SOCKnode", [18:40:55.255] "SOCK0node"))) { [18:40:55.255] sendCondition <<- function(cond) { [18:40:55.255] data <- list(type = "VALUE", value = cond, [18:40:55.255] success = TRUE) [18:40:55.255] parallel_sendData(master, data) [18:40:55.255] } [18:40:55.255] return(sendCondition) [18:40:55.255] } [18:40:55.255] } [18:40:55.255] frame <- frame + 1L [18:40:55.255] envir <- sys.frame(frame) [18:40:55.255] } [18:40:55.255] } [18:40:55.255] sendCondition <<- function(cond) NULL [18:40:55.255] } [18:40:55.255] }) [18:40:55.255] withCallingHandlers({ [18:40:55.255] { [18:40:55.255] do.call(function(...) { [18:40:55.255] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.255] if (!identical(...future.globals.maxSize.org, [18:40:55.255] ...future.globals.maxSize)) { [18:40:55.255] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.255] on.exit(options(oopts), add = TRUE) [18:40:55.255] } [18:40:55.255] { [18:40:55.255] lapply(seq_along(...future.elements_ii), [18:40:55.255] FUN = function(jj) { [18:40:55.255] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.255] ...future.FUN(...future.X_jj, ...) [18:40:55.255] }) [18:40:55.255] } [18:40:55.255] }, args = future.call.arguments) [18:40:55.255] } [18:40:55.255] }, immediateCondition = function(cond) { [18:40:55.255] sendCondition <- ...future.makeSendCondition() [18:40:55.255] sendCondition(cond) [18:40:55.255] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.255] { [18:40:55.255] inherits <- base::inherits [18:40:55.255] invokeRestart <- base::invokeRestart [18:40:55.255] is.null <- base::is.null [18:40:55.255] muffled <- FALSE [18:40:55.255] if (inherits(cond, "message")) { [18:40:55.255] muffled <- grepl(pattern, "muffleMessage") [18:40:55.255] if (muffled) [18:40:55.255] invokeRestart("muffleMessage") [18:40:55.255] } [18:40:55.255] else if (inherits(cond, "warning")) { [18:40:55.255] muffled <- grepl(pattern, "muffleWarning") [18:40:55.255] if (muffled) [18:40:55.255] invokeRestart("muffleWarning") [18:40:55.255] } [18:40:55.255] else if (inherits(cond, "condition")) { [18:40:55.255] if (!is.null(pattern)) { [18:40:55.255] computeRestarts <- base::computeRestarts [18:40:55.255] grepl <- base::grepl [18:40:55.255] restarts <- computeRestarts(cond) [18:40:55.255] for (restart in restarts) { [18:40:55.255] name <- restart$name [18:40:55.255] if (is.null(name)) [18:40:55.255] next [18:40:55.255] if (!grepl(pattern, name)) [18:40:55.255] next [18:40:55.255] invokeRestart(restart) [18:40:55.255] muffled <- TRUE [18:40:55.255] break [18:40:55.255] } [18:40:55.255] } [18:40:55.255] } [18:40:55.255] invisible(muffled) [18:40:55.255] } [18:40:55.255] muffleCondition(cond) [18:40:55.255] }) [18:40:55.255] })) [18:40:55.255] future::FutureResult(value = ...future.value$value, [18:40:55.255] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.255] ...future.rng), globalenv = if (FALSE) [18:40:55.255] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.255] ...future.globalenv.names)) [18:40:55.255] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.255] }, condition = base::local({ [18:40:55.255] c <- base::c [18:40:55.255] inherits <- base::inherits [18:40:55.255] invokeRestart <- base::invokeRestart [18:40:55.255] length <- base::length [18:40:55.255] list <- base::list [18:40:55.255] seq.int <- base::seq.int [18:40:55.255] signalCondition <- base::signalCondition [18:40:55.255] sys.calls <- base::sys.calls [18:40:55.255] `[[` <- base::`[[` [18:40:55.255] `+` <- base::`+` [18:40:55.255] `<<-` <- base::`<<-` [18:40:55.255] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.255] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.255] 3L)] [18:40:55.255] } [18:40:55.255] function(cond) { [18:40:55.255] is_error <- inherits(cond, "error") [18:40:55.255] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.255] NULL) [18:40:55.255] if (is_error) { [18:40:55.255] sessionInformation <- function() { [18:40:55.255] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.255] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.255] search = base::search(), system = base::Sys.info()) [18:40:55.255] } [18:40:55.255] ...future.conditions[[length(...future.conditions) + [18:40:55.255] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.255] cond$call), session = sessionInformation(), [18:40:55.255] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.255] signalCondition(cond) [18:40:55.255] } [18:40:55.255] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.255] "immediateCondition"))) { [18:40:55.255] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.255] ...future.conditions[[length(...future.conditions) + [18:40:55.255] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.255] if (TRUE && !signal) { [18:40:55.255] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.255] { [18:40:55.255] inherits <- base::inherits [18:40:55.255] invokeRestart <- base::invokeRestart [18:40:55.255] is.null <- base::is.null [18:40:55.255] muffled <- FALSE [18:40:55.255] if (inherits(cond, "message")) { [18:40:55.255] muffled <- grepl(pattern, "muffleMessage") [18:40:55.255] if (muffled) [18:40:55.255] invokeRestart("muffleMessage") [18:40:55.255] } [18:40:55.255] else if (inherits(cond, "warning")) { [18:40:55.255] muffled <- grepl(pattern, "muffleWarning") [18:40:55.255] if (muffled) [18:40:55.255] invokeRestart("muffleWarning") [18:40:55.255] } [18:40:55.255] else if (inherits(cond, "condition")) { [18:40:55.255] if (!is.null(pattern)) { [18:40:55.255] computeRestarts <- base::computeRestarts [18:40:55.255] grepl <- base::grepl [18:40:55.255] restarts <- computeRestarts(cond) [18:40:55.255] for (restart in restarts) { [18:40:55.255] name <- restart$name [18:40:55.255] if (is.null(name)) [18:40:55.255] next [18:40:55.255] if (!grepl(pattern, name)) [18:40:55.255] next [18:40:55.255] invokeRestart(restart) [18:40:55.255] muffled <- TRUE [18:40:55.255] break [18:40:55.255] } [18:40:55.255] } [18:40:55.255] } [18:40:55.255] invisible(muffled) [18:40:55.255] } [18:40:55.255] muffleCondition(cond, pattern = "^muffle") [18:40:55.255] } [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] if (TRUE) { [18:40:55.255] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.255] { [18:40:55.255] inherits <- base::inherits [18:40:55.255] invokeRestart <- base::invokeRestart [18:40:55.255] is.null <- base::is.null [18:40:55.255] muffled <- FALSE [18:40:55.255] if (inherits(cond, "message")) { [18:40:55.255] muffled <- grepl(pattern, "muffleMessage") [18:40:55.255] if (muffled) [18:40:55.255] invokeRestart("muffleMessage") [18:40:55.255] } [18:40:55.255] else if (inherits(cond, "warning")) { [18:40:55.255] muffled <- grepl(pattern, "muffleWarning") [18:40:55.255] if (muffled) [18:40:55.255] invokeRestart("muffleWarning") [18:40:55.255] } [18:40:55.255] else if (inherits(cond, "condition")) { [18:40:55.255] if (!is.null(pattern)) { [18:40:55.255] computeRestarts <- base::computeRestarts [18:40:55.255] grepl <- base::grepl [18:40:55.255] restarts <- computeRestarts(cond) [18:40:55.255] for (restart in restarts) { [18:40:55.255] name <- restart$name [18:40:55.255] if (is.null(name)) [18:40:55.255] next [18:40:55.255] if (!grepl(pattern, name)) [18:40:55.255] next [18:40:55.255] invokeRestart(restart) [18:40:55.255] muffled <- TRUE [18:40:55.255] break [18:40:55.255] } [18:40:55.255] } [18:40:55.255] } [18:40:55.255] invisible(muffled) [18:40:55.255] } [18:40:55.255] muffleCondition(cond, pattern = "^muffle") [18:40:55.255] } [18:40:55.255] } [18:40:55.255] } [18:40:55.255] })) [18:40:55.255] }, error = function(ex) { [18:40:55.255] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.255] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.255] ...future.rng), started = ...future.startTime, [18:40:55.255] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.255] version = "1.8"), class = "FutureResult") [18:40:55.255] }, finally = { [18:40:55.255] if (!identical(...future.workdir, getwd())) [18:40:55.255] setwd(...future.workdir) [18:40:55.255] { [18:40:55.255] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.255] ...future.oldOptions$nwarnings <- NULL [18:40:55.255] } [18:40:55.255] base::options(...future.oldOptions) [18:40:55.255] if (.Platform$OS.type == "windows") { [18:40:55.255] old_names <- names(...future.oldEnvVars) [18:40:55.255] envs <- base::Sys.getenv() [18:40:55.255] names <- names(envs) [18:40:55.255] common <- intersect(names, old_names) [18:40:55.255] added <- setdiff(names, old_names) [18:40:55.255] removed <- setdiff(old_names, names) [18:40:55.255] changed <- common[...future.oldEnvVars[common] != [18:40:55.255] envs[common]] [18:40:55.255] NAMES <- toupper(changed) [18:40:55.255] args <- list() [18:40:55.255] for (kk in seq_along(NAMES)) { [18:40:55.255] name <- changed[[kk]] [18:40:55.255] NAME <- NAMES[[kk]] [18:40:55.255] if (name != NAME && is.element(NAME, old_names)) [18:40:55.255] next [18:40:55.255] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.255] } [18:40:55.255] NAMES <- toupper(added) [18:40:55.255] for (kk in seq_along(NAMES)) { [18:40:55.255] name <- added[[kk]] [18:40:55.255] NAME <- NAMES[[kk]] [18:40:55.255] if (name != NAME && is.element(NAME, old_names)) [18:40:55.255] next [18:40:55.255] args[[name]] <- "" [18:40:55.255] } [18:40:55.255] NAMES <- toupper(removed) [18:40:55.255] for (kk in seq_along(NAMES)) { [18:40:55.255] name <- removed[[kk]] [18:40:55.255] NAME <- NAMES[[kk]] [18:40:55.255] if (name != NAME && is.element(NAME, old_names)) [18:40:55.255] next [18:40:55.255] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.255] } [18:40:55.255] if (length(args) > 0) [18:40:55.255] base::do.call(base::Sys.setenv, args = args) [18:40:55.255] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.255] } [18:40:55.255] { [18:40:55.255] if (base::length(...future.futureOptionsAdded) > [18:40:55.255] 0L) { [18:40:55.255] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.255] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.255] base::options(opts) [18:40:55.255] } [18:40:55.255] { [18:40:55.255] { [18:40:55.255] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.255] NULL [18:40:55.255] } [18:40:55.255] options(future.plan = NULL) [18:40:55.255] if (is.na(NA_character_)) [18:40:55.255] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.255] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.255] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.255] .init = FALSE) [18:40:55.255] } [18:40:55.255] } [18:40:55.255] } [18:40:55.255] }) [18:40:55.255] if (TRUE) { [18:40:55.255] base::sink(type = "output", split = FALSE) [18:40:55.255] if (TRUE) { [18:40:55.255] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.255] } [18:40:55.255] else { [18:40:55.255] ...future.result["stdout"] <- base::list(NULL) [18:40:55.255] } [18:40:55.255] base::close(...future.stdout) [18:40:55.255] ...future.stdout <- NULL [18:40:55.255] } [18:40:55.255] ...future.result$conditions <- ...future.conditions [18:40:55.255] ...future.result$finished <- base::Sys.time() [18:40:55.255] ...future.result [18:40:55.255] } [18:40:55.261] Exporting 5 global objects (1.05 KiB) to cluster node #1 ... [18:40:55.261] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... [18:40:55.261] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... DONE [18:40:55.261] Exporting 'future.call.arguments' (171 bytes) to cluster node #1 ... [18:40:55.262] Exporting 'future.call.arguments' (171 bytes) to cluster node #1 ... DONE [18:40:55.262] Exporting '...future.elements_ii' (101 bytes) to cluster node #1 ... [18:40:55.262] Exporting '...future.elements_ii' (101 bytes) to cluster node #1 ... DONE [18:40:55.263] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.263] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.263] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.264] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.264] Exporting 5 global objects (1.05 KiB) to cluster node #1 ... DONE [18:40:55.265] MultisessionFuture started [18:40:55.265] - Launch lazy future ... done [18:40:55.265] run() for 'MultisessionFuture' ... done [18:40:55.265] Created future: [18:40:55.279] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.280] - Validating connection of MultisessionFuture [18:40:55.280] - received message: FutureResult [18:40:55.280] - Received FutureResult [18:40:55.280] - Erased future from FutureRegistry [18:40:55.281] result() for ClusterFuture ... [18:40:55.281] - result already collected: FutureResult [18:40:55.281] result() for ClusterFuture ... done [18:40:55.281] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.265] MultisessionFuture: [18:40:55.265] Label: 'future_eapply-1' [18:40:55.265] Expression: [18:40:55.265] { [18:40:55.265] do.call(function(...) { [18:40:55.265] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.265] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.265] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.265] on.exit(options(oopts), add = TRUE) [18:40:55.265] } [18:40:55.265] { [18:40:55.265] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.265] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.265] ...future.FUN(...future.X_jj, ...) [18:40:55.265] }) [18:40:55.265] } [18:40:55.265] }, args = future.call.arguments) [18:40:55.265] } [18:40:55.265] Lazy evaluation: FALSE [18:40:55.265] Asynchronous evaluation: TRUE [18:40:55.265] Local evaluation: TRUE [18:40:55.265] Environment: R_GlobalEnv [18:40:55.265] Capture standard output: TRUE [18:40:55.265] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.265] Globals: 5 objects totaling 637 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 171 bytes, list '...future.elements_ii' of 101 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.265] Packages: 1 packages ('stats') [18:40:55.265] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.265] Resolved: TRUE [18:40:55.265] Value: [18:40:55.265] Conditions captured: [18:40:55.265] Early signaling: FALSE [18:40:55.265] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.265] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.281] Chunk #1 of 2 ... DONE [18:40:55.282] Chunk #2 of 2 ... [18:40:55.282] - Finding globals in 'X' for chunk #2 ... [18:40:55.282] getGlobalsAndPackages() ... [18:40:55.282] Searching for globals... [18:40:55.283] [18:40:55.283] Searching for globals ... DONE [18:40:55.283] - globals: [0] [18:40:55.283] getGlobalsAndPackages() ... DONE [18:40:55.283] + additional globals found: [n=0] [18:40:55.283] + additional namespaces needed: [n=0] [18:40:55.283] - Finding globals in 'X' for chunk #2 ... DONE [18:40:55.284] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.284] - seeds: [18:40:55.284] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.284] getGlobalsAndPackages() ... [18:40:55.284] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.284] Resolving globals: FALSE [18:40:55.285] Tweak future expression to call with '...' arguments ... [18:40:55.285] { [18:40:55.285] do.call(function(...) { [18:40:55.285] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.285] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.285] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.285] on.exit(options(oopts), add = TRUE) [18:40:55.285] } [18:40:55.285] { [18:40:55.285] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.285] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.285] ...future.FUN(...future.X_jj, ...) [18:40:55.285] }) [18:40:55.285] } [18:40:55.285] }, args = future.call.arguments) [18:40:55.285] } [18:40:55.285] Tweak future expression to call with '...' arguments ... DONE [18:40:55.286] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.286] - packages: [1] 'stats' [18:40:55.286] getGlobalsAndPackages() ... DONE [18:40:55.287] run() for 'Future' ... [18:40:55.287] - state: 'created' [18:40:55.287] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.302] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.302] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.303] - Field: 'node' [18:40:55.303] - Field: 'label' [18:40:55.303] - Field: 'local' [18:40:55.303] - Field: 'owner' [18:40:55.303] - Field: 'envir' [18:40:55.303] - Field: 'workers' [18:40:55.304] - Field: 'packages' [18:40:55.304] - Field: 'gc' [18:40:55.304] - Field: 'conditions' [18:40:55.304] - Field: 'persistent' [18:40:55.304] - Field: 'expr' [18:40:55.305] - Field: 'uuid' [18:40:55.305] - Field: 'seed' [18:40:55.305] - Field: 'version' [18:40:55.305] - Field: 'result' [18:40:55.305] - Field: 'asynchronous' [18:40:55.305] - Field: 'calls' [18:40:55.306] - Field: 'globals' [18:40:55.306] - Field: 'stdout' [18:40:55.306] - Field: 'earlySignal' [18:40:55.306] - Field: 'lazy' [18:40:55.306] - Field: 'state' [18:40:55.306] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.307] - Launch lazy future ... [18:40:55.307] Packages needed by the future expression (n = 1): 'stats' [18:40:55.307] Packages needed by future strategies (n = 0): [18:40:55.308] { [18:40:55.308] { [18:40:55.308] { [18:40:55.308] ...future.startTime <- base::Sys.time() [18:40:55.308] { [18:40:55.308] { [18:40:55.308] { [18:40:55.308] { [18:40:55.308] { [18:40:55.308] base::local({ [18:40:55.308] has_future <- base::requireNamespace("future", [18:40:55.308] quietly = TRUE) [18:40:55.308] if (has_future) { [18:40:55.308] ns <- base::getNamespace("future") [18:40:55.308] version <- ns[[".package"]][["version"]] [18:40:55.308] if (is.null(version)) [18:40:55.308] version <- utils::packageVersion("future") [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] version <- NULL [18:40:55.308] } [18:40:55.308] if (!has_future || version < "1.8.0") { [18:40:55.308] info <- base::c(r_version = base::gsub("R version ", [18:40:55.308] "", base::R.version$version.string), [18:40:55.308] platform = base::sprintf("%s (%s-bit)", [18:40:55.308] base::R.version$platform, 8 * [18:40:55.308] base::.Machine$sizeof.pointer), [18:40:55.308] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.308] "release", "version")], collapse = " "), [18:40:55.308] hostname = base::Sys.info()[["nodename"]]) [18:40:55.308] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.308] info) [18:40:55.308] info <- base::paste(info, collapse = "; ") [18:40:55.308] if (!has_future) { [18:40:55.308] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.308] info) [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.308] info, version) [18:40:55.308] } [18:40:55.308] base::stop(msg) [18:40:55.308] } [18:40:55.308] }) [18:40:55.308] } [18:40:55.308] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.308] base::options(mc.cores = 1L) [18:40:55.308] } [18:40:55.308] base::local({ [18:40:55.308] for (pkg in "stats") { [18:40:55.308] base::loadNamespace(pkg) [18:40:55.308] base::library(pkg, character.only = TRUE) [18:40:55.308] } [18:40:55.308] }) [18:40:55.308] } [18:40:55.308] ...future.strategy.old <- future::plan("list") [18:40:55.308] options(future.plan = NULL) [18:40:55.308] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.308] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.308] } [18:40:55.308] ...future.workdir <- getwd() [18:40:55.308] } [18:40:55.308] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.308] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.308] } [18:40:55.308] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.308] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.308] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.308] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.308] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.308] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.308] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.308] base::names(...future.oldOptions)) [18:40:55.308] } [18:40:55.308] if (FALSE) { [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] if (TRUE) { [18:40:55.308] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.308] open = "w") [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.308] windows = "NUL", "/dev/null"), open = "w") [18:40:55.308] } [18:40:55.308] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.308] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.308] base::sink(type = "output", split = FALSE) [18:40:55.308] base::close(...future.stdout) [18:40:55.308] }, add = TRUE) [18:40:55.308] } [18:40:55.308] ...future.frame <- base::sys.nframe() [18:40:55.308] ...future.conditions <- base::list() [18:40:55.308] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.308] if (FALSE) { [18:40:55.308] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.308] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.308] } [18:40:55.308] ...future.result <- base::tryCatch({ [18:40:55.308] base::withCallingHandlers({ [18:40:55.308] ...future.value <- base::withVisible(base::local({ [18:40:55.308] ...future.makeSendCondition <- base::local({ [18:40:55.308] sendCondition <- NULL [18:40:55.308] function(frame = 1L) { [18:40:55.308] if (is.function(sendCondition)) [18:40:55.308] return(sendCondition) [18:40:55.308] ns <- getNamespace("parallel") [18:40:55.308] if (exists("sendData", mode = "function", [18:40:55.308] envir = ns)) { [18:40:55.308] parallel_sendData <- get("sendData", mode = "function", [18:40:55.308] envir = ns) [18:40:55.308] envir <- sys.frame(frame) [18:40:55.308] master <- NULL [18:40:55.308] while (!identical(envir, .GlobalEnv) && [18:40:55.308] !identical(envir, emptyenv())) { [18:40:55.308] if (exists("master", mode = "list", envir = envir, [18:40:55.308] inherits = FALSE)) { [18:40:55.308] master <- get("master", mode = "list", [18:40:55.308] envir = envir, inherits = FALSE) [18:40:55.308] if (inherits(master, c("SOCKnode", [18:40:55.308] "SOCK0node"))) { [18:40:55.308] sendCondition <<- function(cond) { [18:40:55.308] data <- list(type = "VALUE", value = cond, [18:40:55.308] success = TRUE) [18:40:55.308] parallel_sendData(master, data) [18:40:55.308] } [18:40:55.308] return(sendCondition) [18:40:55.308] } [18:40:55.308] } [18:40:55.308] frame <- frame + 1L [18:40:55.308] envir <- sys.frame(frame) [18:40:55.308] } [18:40:55.308] } [18:40:55.308] sendCondition <<- function(cond) NULL [18:40:55.308] } [18:40:55.308] }) [18:40:55.308] withCallingHandlers({ [18:40:55.308] { [18:40:55.308] do.call(function(...) { [18:40:55.308] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.308] if (!identical(...future.globals.maxSize.org, [18:40:55.308] ...future.globals.maxSize)) { [18:40:55.308] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.308] on.exit(options(oopts), add = TRUE) [18:40:55.308] } [18:40:55.308] { [18:40:55.308] lapply(seq_along(...future.elements_ii), [18:40:55.308] FUN = function(jj) { [18:40:55.308] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.308] ...future.FUN(...future.X_jj, ...) [18:40:55.308] }) [18:40:55.308] } [18:40:55.308] }, args = future.call.arguments) [18:40:55.308] } [18:40:55.308] }, immediateCondition = function(cond) { [18:40:55.308] sendCondition <- ...future.makeSendCondition() [18:40:55.308] sendCondition(cond) [18:40:55.308] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.308] { [18:40:55.308] inherits <- base::inherits [18:40:55.308] invokeRestart <- base::invokeRestart [18:40:55.308] is.null <- base::is.null [18:40:55.308] muffled <- FALSE [18:40:55.308] if (inherits(cond, "message")) { [18:40:55.308] muffled <- grepl(pattern, "muffleMessage") [18:40:55.308] if (muffled) [18:40:55.308] invokeRestart("muffleMessage") [18:40:55.308] } [18:40:55.308] else if (inherits(cond, "warning")) { [18:40:55.308] muffled <- grepl(pattern, "muffleWarning") [18:40:55.308] if (muffled) [18:40:55.308] invokeRestart("muffleWarning") [18:40:55.308] } [18:40:55.308] else if (inherits(cond, "condition")) { [18:40:55.308] if (!is.null(pattern)) { [18:40:55.308] computeRestarts <- base::computeRestarts [18:40:55.308] grepl <- base::grepl [18:40:55.308] restarts <- computeRestarts(cond) [18:40:55.308] for (restart in restarts) { [18:40:55.308] name <- restart$name [18:40:55.308] if (is.null(name)) [18:40:55.308] next [18:40:55.308] if (!grepl(pattern, name)) [18:40:55.308] next [18:40:55.308] invokeRestart(restart) [18:40:55.308] muffled <- TRUE [18:40:55.308] break [18:40:55.308] } [18:40:55.308] } [18:40:55.308] } [18:40:55.308] invisible(muffled) [18:40:55.308] } [18:40:55.308] muffleCondition(cond) [18:40:55.308] }) [18:40:55.308] })) [18:40:55.308] future::FutureResult(value = ...future.value$value, [18:40:55.308] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.308] ...future.rng), globalenv = if (FALSE) [18:40:55.308] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.308] ...future.globalenv.names)) [18:40:55.308] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.308] }, condition = base::local({ [18:40:55.308] c <- base::c [18:40:55.308] inherits <- base::inherits [18:40:55.308] invokeRestart <- base::invokeRestart [18:40:55.308] length <- base::length [18:40:55.308] list <- base::list [18:40:55.308] seq.int <- base::seq.int [18:40:55.308] signalCondition <- base::signalCondition [18:40:55.308] sys.calls <- base::sys.calls [18:40:55.308] `[[` <- base::`[[` [18:40:55.308] `+` <- base::`+` [18:40:55.308] `<<-` <- base::`<<-` [18:40:55.308] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.308] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.308] 3L)] [18:40:55.308] } [18:40:55.308] function(cond) { [18:40:55.308] is_error <- inherits(cond, "error") [18:40:55.308] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.308] NULL) [18:40:55.308] if (is_error) { [18:40:55.308] sessionInformation <- function() { [18:40:55.308] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.308] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.308] search = base::search(), system = base::Sys.info()) [18:40:55.308] } [18:40:55.308] ...future.conditions[[length(...future.conditions) + [18:40:55.308] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.308] cond$call), session = sessionInformation(), [18:40:55.308] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.308] signalCondition(cond) [18:40:55.308] } [18:40:55.308] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.308] "immediateCondition"))) { [18:40:55.308] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.308] ...future.conditions[[length(...future.conditions) + [18:40:55.308] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.308] if (TRUE && !signal) { [18:40:55.308] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.308] { [18:40:55.308] inherits <- base::inherits [18:40:55.308] invokeRestart <- base::invokeRestart [18:40:55.308] is.null <- base::is.null [18:40:55.308] muffled <- FALSE [18:40:55.308] if (inherits(cond, "message")) { [18:40:55.308] muffled <- grepl(pattern, "muffleMessage") [18:40:55.308] if (muffled) [18:40:55.308] invokeRestart("muffleMessage") [18:40:55.308] } [18:40:55.308] else if (inherits(cond, "warning")) { [18:40:55.308] muffled <- grepl(pattern, "muffleWarning") [18:40:55.308] if (muffled) [18:40:55.308] invokeRestart("muffleWarning") [18:40:55.308] } [18:40:55.308] else if (inherits(cond, "condition")) { [18:40:55.308] if (!is.null(pattern)) { [18:40:55.308] computeRestarts <- base::computeRestarts [18:40:55.308] grepl <- base::grepl [18:40:55.308] restarts <- computeRestarts(cond) [18:40:55.308] for (restart in restarts) { [18:40:55.308] name <- restart$name [18:40:55.308] if (is.null(name)) [18:40:55.308] next [18:40:55.308] if (!grepl(pattern, name)) [18:40:55.308] next [18:40:55.308] invokeRestart(restart) [18:40:55.308] muffled <- TRUE [18:40:55.308] break [18:40:55.308] } [18:40:55.308] } [18:40:55.308] } [18:40:55.308] invisible(muffled) [18:40:55.308] } [18:40:55.308] muffleCondition(cond, pattern = "^muffle") [18:40:55.308] } [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] if (TRUE) { [18:40:55.308] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.308] { [18:40:55.308] inherits <- base::inherits [18:40:55.308] invokeRestart <- base::invokeRestart [18:40:55.308] is.null <- base::is.null [18:40:55.308] muffled <- FALSE [18:40:55.308] if (inherits(cond, "message")) { [18:40:55.308] muffled <- grepl(pattern, "muffleMessage") [18:40:55.308] if (muffled) [18:40:55.308] invokeRestart("muffleMessage") [18:40:55.308] } [18:40:55.308] else if (inherits(cond, "warning")) { [18:40:55.308] muffled <- grepl(pattern, "muffleWarning") [18:40:55.308] if (muffled) [18:40:55.308] invokeRestart("muffleWarning") [18:40:55.308] } [18:40:55.308] else if (inherits(cond, "condition")) { [18:40:55.308] if (!is.null(pattern)) { [18:40:55.308] computeRestarts <- base::computeRestarts [18:40:55.308] grepl <- base::grepl [18:40:55.308] restarts <- computeRestarts(cond) [18:40:55.308] for (restart in restarts) { [18:40:55.308] name <- restart$name [18:40:55.308] if (is.null(name)) [18:40:55.308] next [18:40:55.308] if (!grepl(pattern, name)) [18:40:55.308] next [18:40:55.308] invokeRestart(restart) [18:40:55.308] muffled <- TRUE [18:40:55.308] break [18:40:55.308] } [18:40:55.308] } [18:40:55.308] } [18:40:55.308] invisible(muffled) [18:40:55.308] } [18:40:55.308] muffleCondition(cond, pattern = "^muffle") [18:40:55.308] } [18:40:55.308] } [18:40:55.308] } [18:40:55.308] })) [18:40:55.308] }, error = function(ex) { [18:40:55.308] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.308] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.308] ...future.rng), started = ...future.startTime, [18:40:55.308] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.308] version = "1.8"), class = "FutureResult") [18:40:55.308] }, finally = { [18:40:55.308] if (!identical(...future.workdir, getwd())) [18:40:55.308] setwd(...future.workdir) [18:40:55.308] { [18:40:55.308] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.308] ...future.oldOptions$nwarnings <- NULL [18:40:55.308] } [18:40:55.308] base::options(...future.oldOptions) [18:40:55.308] if (.Platform$OS.type == "windows") { [18:40:55.308] old_names <- names(...future.oldEnvVars) [18:40:55.308] envs <- base::Sys.getenv() [18:40:55.308] names <- names(envs) [18:40:55.308] common <- intersect(names, old_names) [18:40:55.308] added <- setdiff(names, old_names) [18:40:55.308] removed <- setdiff(old_names, names) [18:40:55.308] changed <- common[...future.oldEnvVars[common] != [18:40:55.308] envs[common]] [18:40:55.308] NAMES <- toupper(changed) [18:40:55.308] args <- list() [18:40:55.308] for (kk in seq_along(NAMES)) { [18:40:55.308] name <- changed[[kk]] [18:40:55.308] NAME <- NAMES[[kk]] [18:40:55.308] if (name != NAME && is.element(NAME, old_names)) [18:40:55.308] next [18:40:55.308] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.308] } [18:40:55.308] NAMES <- toupper(added) [18:40:55.308] for (kk in seq_along(NAMES)) { [18:40:55.308] name <- added[[kk]] [18:40:55.308] NAME <- NAMES[[kk]] [18:40:55.308] if (name != NAME && is.element(NAME, old_names)) [18:40:55.308] next [18:40:55.308] args[[name]] <- "" [18:40:55.308] } [18:40:55.308] NAMES <- toupper(removed) [18:40:55.308] for (kk in seq_along(NAMES)) { [18:40:55.308] name <- removed[[kk]] [18:40:55.308] NAME <- NAMES[[kk]] [18:40:55.308] if (name != NAME && is.element(NAME, old_names)) [18:40:55.308] next [18:40:55.308] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.308] } [18:40:55.308] if (length(args) > 0) [18:40:55.308] base::do.call(base::Sys.setenv, args = args) [18:40:55.308] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.308] } [18:40:55.308] { [18:40:55.308] if (base::length(...future.futureOptionsAdded) > [18:40:55.308] 0L) { [18:40:55.308] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.308] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.308] base::options(opts) [18:40:55.308] } [18:40:55.308] { [18:40:55.308] { [18:40:55.308] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.308] NULL [18:40:55.308] } [18:40:55.308] options(future.plan = NULL) [18:40:55.308] if (is.na(NA_character_)) [18:40:55.308] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.308] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.308] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.308] .init = FALSE) [18:40:55.308] } [18:40:55.308] } [18:40:55.308] } [18:40:55.308] }) [18:40:55.308] if (TRUE) { [18:40:55.308] base::sink(type = "output", split = FALSE) [18:40:55.308] if (TRUE) { [18:40:55.308] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.308] } [18:40:55.308] else { [18:40:55.308] ...future.result["stdout"] <- base::list(NULL) [18:40:55.308] } [18:40:55.308] base::close(...future.stdout) [18:40:55.308] ...future.stdout <- NULL [18:40:55.308] } [18:40:55.308] ...future.result$conditions <- ...future.conditions [18:40:55.308] ...future.result$finished <- base::Sys.time() [18:40:55.308] ...future.result [18:40:55.308] } [18:40:55.313] Exporting 5 global objects (1.20 KiB) to cluster node #1 ... [18:40:55.313] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... [18:40:55.314] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... DONE [18:40:55.314] Exporting 'future.call.arguments' (171 bytes) to cluster node #1 ... [18:40:55.314] Exporting 'future.call.arguments' (171 bytes) to cluster node #1 ... DONE [18:40:55.315] Exporting '...future.elements_ii' (259 bytes) to cluster node #1 ... [18:40:55.315] Exporting '...future.elements_ii' (259 bytes) to cluster node #1 ... DONE [18:40:55.315] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.316] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.316] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.316] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.316] Exporting 5 global objects (1.20 KiB) to cluster node #1 ... DONE [18:40:55.317] MultisessionFuture started [18:40:55.317] - Launch lazy future ... done [18:40:55.317] run() for 'MultisessionFuture' ... done [18:40:55.317] Created future: [18:40:55.332] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.332] - Validating connection of MultisessionFuture [18:40:55.333] - received message: FutureResult [18:40:55.333] - Received FutureResult [18:40:55.333] - Erased future from FutureRegistry [18:40:55.333] result() for ClusterFuture ... [18:40:55.333] - result already collected: FutureResult [18:40:55.334] result() for ClusterFuture ... done [18:40:55.334] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.318] MultisessionFuture: [18:40:55.318] Label: 'future_eapply-2' [18:40:55.318] Expression: [18:40:55.318] { [18:40:55.318] do.call(function(...) { [18:40:55.318] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.318] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.318] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.318] on.exit(options(oopts), add = TRUE) [18:40:55.318] } [18:40:55.318] { [18:40:55.318] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.318] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.318] ...future.FUN(...future.X_jj, ...) [18:40:55.318] }) [18:40:55.318] } [18:40:55.318] }, args = future.call.arguments) [18:40:55.318] } [18:40:55.318] Lazy evaluation: FALSE [18:40:55.318] Asynchronous evaluation: TRUE [18:40:55.318] Local evaluation: TRUE [18:40:55.318] Environment: R_GlobalEnv [18:40:55.318] Capture standard output: TRUE [18:40:55.318] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.318] Globals: 5 objects totaling 795 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 171 bytes, list '...future.elements_ii' of 259 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.318] Packages: 1 packages ('stats') [18:40:55.318] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.318] Resolved: TRUE [18:40:55.318] Value: [18:40:55.318] Conditions captured: [18:40:55.318] Early signaling: FALSE [18:40:55.318] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.318] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.334] Chunk #2 of 2 ... DONE [18:40:55.334] Launching 2 futures (chunks) ... DONE [18:40:55.334] Resolving 2 futures (chunks) ... [18:40:55.335] resolve() on list ... [18:40:55.335] recursive: 0 [18:40:55.335] length: 2 [18:40:55.335] [18:40:55.335] Future #1 [18:40:55.335] result() for ClusterFuture ... [18:40:55.336] - result already collected: FutureResult [18:40:55.336] result() for ClusterFuture ... done [18:40:55.336] result() for ClusterFuture ... [18:40:55.336] - result already collected: FutureResult [18:40:55.336] result() for ClusterFuture ... done [18:40:55.336] signalConditionsASAP(MultisessionFuture, pos=1) ... [18:40:55.336] - nx: 2 [18:40:55.337] - relay: TRUE [18:40:55.337] - stdout: TRUE [18:40:55.337] - signal: TRUE [18:40:55.337] - resignal: FALSE [18:40:55.337] - force: TRUE [18:40:55.337] - relayed: [n=2] FALSE, FALSE [18:40:55.338] - queued futures: [n=2] FALSE, FALSE [18:40:55.338] - until=1 [18:40:55.338] - relaying element #1 [18:40:55.338] result() for ClusterFuture ... [18:40:55.338] - result already collected: FutureResult [18:40:55.338] result() for ClusterFuture ... done [18:40:55.338] result() for ClusterFuture ... [18:40:55.339] - result already collected: FutureResult [18:40:55.339] result() for ClusterFuture ... done [18:40:55.339] result() for ClusterFuture ... [18:40:55.339] - result already collected: FutureResult [18:40:55.339] result() for ClusterFuture ... done [18:40:55.339] result() for ClusterFuture ... [18:40:55.340] - result already collected: FutureResult [18:40:55.340] result() for ClusterFuture ... done [18:40:55.340] - relayed: [n=2] TRUE, FALSE [18:40:55.340] - queued futures: [n=2] TRUE, FALSE [18:40:55.340] signalConditionsASAP(MultisessionFuture, pos=1) ... done [18:40:55.340] length: 1 (resolved future 1) [18:40:55.341] Future #2 [18:40:55.341] result() for ClusterFuture ... [18:40:55.341] - result already collected: FutureResult [18:40:55.341] result() for ClusterFuture ... done [18:40:55.341] result() for ClusterFuture ... [18:40:55.341] - result already collected: FutureResult [18:40:55.341] result() for ClusterFuture ... done [18:40:55.342] signalConditionsASAP(MultisessionFuture, pos=2) ... [18:40:55.342] - nx: 2 [18:40:55.342] - relay: TRUE [18:40:55.342] - stdout: TRUE [18:40:55.342] - signal: TRUE [18:40:55.342] - resignal: FALSE [18:40:55.343] - force: TRUE [18:40:55.343] - relayed: [n=2] TRUE, FALSE [18:40:55.343] - queued futures: [n=2] TRUE, FALSE [18:40:55.343] - until=2 [18:40:55.343] - relaying element #2 [18:40:55.343] result() for ClusterFuture ... [18:40:55.344] - result already collected: FutureResult [18:40:55.344] result() for ClusterFuture ... done [18:40:55.344] result() for ClusterFuture ... [18:40:55.344] - result already collected: FutureResult [18:40:55.344] result() for ClusterFuture ... done [18:40:55.344] result() for ClusterFuture ... [18:40:55.344] - result already collected: FutureResult [18:40:55.345] result() for ClusterFuture ... done [18:40:55.345] result() for ClusterFuture ... [18:40:55.345] - result already collected: FutureResult [18:40:55.345] result() for ClusterFuture ... done [18:40:55.345] - relayed: [n=2] TRUE, TRUE [18:40:55.345] - queued futures: [n=2] TRUE, TRUE [18:40:55.346] signalConditionsASAP(MultisessionFuture, pos=2) ... done [18:40:55.346] length: 0 (resolved future 2) [18:40:55.346] Relaying remaining futures [18:40:55.346] signalConditionsASAP(NULL, pos=0) ... [18:40:55.346] - nx: 2 [18:40:55.346] - relay: TRUE [18:40:55.346] - stdout: TRUE [18:40:55.347] - signal: TRUE [18:40:55.347] - resignal: FALSE [18:40:55.347] - force: TRUE [18:40:55.347] - relayed: [n=2] TRUE, TRUE [18:40:55.347] - queued futures: [n=2] TRUE, TRUE - flush all [18:40:55.347] - relayed: [n=2] TRUE, TRUE [18:40:55.348] - queued futures: [n=2] TRUE, TRUE [18:40:55.348] signalConditionsASAP(NULL, pos=0) ... done [18:40:55.348] resolve() on list ... DONE [18:40:55.348] result() for ClusterFuture ... [18:40:55.348] - result already collected: FutureResult [18:40:55.348] result() for ClusterFuture ... done [18:40:55.349] result() for ClusterFuture ... [18:40:55.349] - result already collected: FutureResult [18:40:55.349] result() for ClusterFuture ... done [18:40:55.349] result() for ClusterFuture ... [18:40:55.349] - result already collected: FutureResult [18:40:55.349] result() for ClusterFuture ... done [18:40:55.349] result() for ClusterFuture ... [18:40:55.350] - result already collected: FutureResult [18:40:55.350] result() for ClusterFuture ... done [18:40:55.350] - Number of value chunks collected: 2 [18:40:55.350] Resolving 2 futures (chunks) ... DONE [18:40:55.350] Reducing values from 2 chunks ... [18:40:55.350] - Number of values collected after concatenation: 3 [18:40:55.351] - Number of values expected: 3 [18:40:55.351] Reducing values from 2 chunks ... DONE [18:40:55.351] future_lapply() ... DONE [18:40:55.352] future_lapply() ... [18:40:55.355] Number of chunks: 2 [18:40:55.355] getGlobalsAndPackagesXApply() ... [18:40:55.355] - future.globals: TRUE [18:40:55.355] getGlobalsAndPackages() ... [18:40:55.355] Searching for globals... [18:40:55.357] - globals found: [2] 'FUN', 'UseMethod' [18:40:55.357] Searching for globals ... DONE [18:40:55.357] Resolving globals: FALSE [18:40:55.357] The total size of the 1 globals is 311 bytes (311 bytes) [18:40:55.358] The total size of the 1 globals exported for future expression ('FUN()') is 311 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (311 bytes of class 'function') [18:40:55.358] - globals: [1] 'FUN' [18:40:55.358] - packages: [1] 'stats' [18:40:55.359] getGlobalsAndPackages() ... DONE [18:40:55.359] - globals found/used: [n=1] 'FUN' [18:40:55.359] - needed namespaces: [n=1] 'stats' [18:40:55.359] Finding globals ... DONE [18:40:55.359] - use_args: TRUE [18:40:55.359] - Getting '...' globals ... [18:40:55.360] resolve() on list ... [18:40:55.360] recursive: 0 [18:40:55.360] length: 1 [18:40:55.360] elements: '...' [18:40:55.360] length: 0 (resolved future 1) [18:40:55.361] resolve() on list ... DONE [18:40:55.361] - '...' content: [n=0] [18:40:55.361] List of 1 [18:40:55.361] $ ...: list() [18:40:55.361] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.361] - attr(*, "where")=List of 1 [18:40:55.361] ..$ ...: [18:40:55.361] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.361] - attr(*, "resolved")= logi TRUE [18:40:55.361] - attr(*, "total_size")= num NA [18:40:55.364] - Getting '...' globals ... DONE [18:40:55.364] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:55.364] List of 2 [18:40:55.364] $ ...future.FUN:function (x, ...) [18:40:55.364] $ ... : list() [18:40:55.364] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.364] - attr(*, "where")=List of 2 [18:40:55.364] ..$ ...future.FUN: [18:40:55.364] ..$ ... : [18:40:55.364] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.364] - attr(*, "resolved")= logi FALSE [18:40:55.364] - attr(*, "total_size")= int 5433 [18:40:55.368] Packages to be attached in all futures: [n=1] 'stats' [18:40:55.368] getGlobalsAndPackagesXApply() ... DONE [18:40:55.368] Number of futures (= number of chunks): 2 [18:40:55.368] Launching 2 futures (chunks) ... [18:40:55.368] Chunk #1 of 2 ... [18:40:55.370] - Finding globals in 'X' for chunk #1 ... [18:40:55.371] getGlobalsAndPackages() ... [18:40:55.371] Searching for globals... [18:40:55.371] [18:40:55.371] Searching for globals ... DONE [18:40:55.371] - globals: [0] [18:40:55.372] getGlobalsAndPackages() ... DONE [18:40:55.372] + additional globals found: [n=0] [18:40:55.372] + additional namespaces needed: [n=0] [18:40:55.372] - Finding globals in 'X' for chunk #1 ... DONE [18:40:55.372] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.372] - seeds: [18:40:55.372] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.373] getGlobalsAndPackages() ... [18:40:55.373] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.373] Resolving globals: FALSE [18:40:55.373] Tweak future expression to call with '...' arguments ... [18:40:55.373] { [18:40:55.373] do.call(function(...) { [18:40:55.373] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.373] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.373] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.373] on.exit(options(oopts), add = TRUE) [18:40:55.373] } [18:40:55.373] { [18:40:55.373] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.373] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.373] ...future.FUN(...future.X_jj, ...) [18:40:55.373] }) [18:40:55.373] } [18:40:55.373] }, args = future.call.arguments) [18:40:55.373] } [18:40:55.374] Tweak future expression to call with '...' arguments ... DONE [18:40:55.374] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.375] - packages: [1] 'stats' [18:40:55.375] getGlobalsAndPackages() ... DONE [18:40:55.375] run() for 'Future' ... [18:40:55.375] - state: 'created' [18:40:55.375] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.390] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.391] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.391] - Field: 'node' [18:40:55.391] - Field: 'label' [18:40:55.391] - Field: 'local' [18:40:55.391] - Field: 'owner' [18:40:55.392] - Field: 'envir' [18:40:55.392] - Field: 'workers' [18:40:55.392] - Field: 'packages' [18:40:55.392] - Field: 'gc' [18:40:55.392] - Field: 'conditions' [18:40:55.392] - Field: 'persistent' [18:40:55.393] - Field: 'expr' [18:40:55.393] - Field: 'uuid' [18:40:55.393] - Field: 'seed' [18:40:55.393] - Field: 'version' [18:40:55.393] - Field: 'result' [18:40:55.393] - Field: 'asynchronous' [18:40:55.394] - Field: 'calls' [18:40:55.394] - Field: 'globals' [18:40:55.394] - Field: 'stdout' [18:40:55.394] - Field: 'earlySignal' [18:40:55.394] - Field: 'lazy' [18:40:55.394] - Field: 'state' [18:40:55.395] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.395] - Launch lazy future ... [18:40:55.395] Packages needed by the future expression (n = 1): 'stats' [18:40:55.395] Packages needed by future strategies (n = 0): [18:40:55.396] { [18:40:55.396] { [18:40:55.396] { [18:40:55.396] ...future.startTime <- base::Sys.time() [18:40:55.396] { [18:40:55.396] { [18:40:55.396] { [18:40:55.396] { [18:40:55.396] { [18:40:55.396] base::local({ [18:40:55.396] has_future <- base::requireNamespace("future", [18:40:55.396] quietly = TRUE) [18:40:55.396] if (has_future) { [18:40:55.396] ns <- base::getNamespace("future") [18:40:55.396] version <- ns[[".package"]][["version"]] [18:40:55.396] if (is.null(version)) [18:40:55.396] version <- utils::packageVersion("future") [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] version <- NULL [18:40:55.396] } [18:40:55.396] if (!has_future || version < "1.8.0") { [18:40:55.396] info <- base::c(r_version = base::gsub("R version ", [18:40:55.396] "", base::R.version$version.string), [18:40:55.396] platform = base::sprintf("%s (%s-bit)", [18:40:55.396] base::R.version$platform, 8 * [18:40:55.396] base::.Machine$sizeof.pointer), [18:40:55.396] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.396] "release", "version")], collapse = " "), [18:40:55.396] hostname = base::Sys.info()[["nodename"]]) [18:40:55.396] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.396] info) [18:40:55.396] info <- base::paste(info, collapse = "; ") [18:40:55.396] if (!has_future) { [18:40:55.396] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.396] info) [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.396] info, version) [18:40:55.396] } [18:40:55.396] base::stop(msg) [18:40:55.396] } [18:40:55.396] }) [18:40:55.396] } [18:40:55.396] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.396] base::options(mc.cores = 1L) [18:40:55.396] } [18:40:55.396] base::local({ [18:40:55.396] for (pkg in "stats") { [18:40:55.396] base::loadNamespace(pkg) [18:40:55.396] base::library(pkg, character.only = TRUE) [18:40:55.396] } [18:40:55.396] }) [18:40:55.396] } [18:40:55.396] ...future.strategy.old <- future::plan("list") [18:40:55.396] options(future.plan = NULL) [18:40:55.396] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.396] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.396] } [18:40:55.396] ...future.workdir <- getwd() [18:40:55.396] } [18:40:55.396] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.396] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.396] } [18:40:55.396] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.396] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.396] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.396] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.396] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.396] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.396] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.396] base::names(...future.oldOptions)) [18:40:55.396] } [18:40:55.396] if (FALSE) { [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] if (TRUE) { [18:40:55.396] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.396] open = "w") [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.396] windows = "NUL", "/dev/null"), open = "w") [18:40:55.396] } [18:40:55.396] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.396] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.396] base::sink(type = "output", split = FALSE) [18:40:55.396] base::close(...future.stdout) [18:40:55.396] }, add = TRUE) [18:40:55.396] } [18:40:55.396] ...future.frame <- base::sys.nframe() [18:40:55.396] ...future.conditions <- base::list() [18:40:55.396] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.396] if (FALSE) { [18:40:55.396] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.396] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.396] } [18:40:55.396] ...future.result <- base::tryCatch({ [18:40:55.396] base::withCallingHandlers({ [18:40:55.396] ...future.value <- base::withVisible(base::local({ [18:40:55.396] ...future.makeSendCondition <- base::local({ [18:40:55.396] sendCondition <- NULL [18:40:55.396] function(frame = 1L) { [18:40:55.396] if (is.function(sendCondition)) [18:40:55.396] return(sendCondition) [18:40:55.396] ns <- getNamespace("parallel") [18:40:55.396] if (exists("sendData", mode = "function", [18:40:55.396] envir = ns)) { [18:40:55.396] parallel_sendData <- get("sendData", mode = "function", [18:40:55.396] envir = ns) [18:40:55.396] envir <- sys.frame(frame) [18:40:55.396] master <- NULL [18:40:55.396] while (!identical(envir, .GlobalEnv) && [18:40:55.396] !identical(envir, emptyenv())) { [18:40:55.396] if (exists("master", mode = "list", envir = envir, [18:40:55.396] inherits = FALSE)) { [18:40:55.396] master <- get("master", mode = "list", [18:40:55.396] envir = envir, inherits = FALSE) [18:40:55.396] if (inherits(master, c("SOCKnode", [18:40:55.396] "SOCK0node"))) { [18:40:55.396] sendCondition <<- function(cond) { [18:40:55.396] data <- list(type = "VALUE", value = cond, [18:40:55.396] success = TRUE) [18:40:55.396] parallel_sendData(master, data) [18:40:55.396] } [18:40:55.396] return(sendCondition) [18:40:55.396] } [18:40:55.396] } [18:40:55.396] frame <- frame + 1L [18:40:55.396] envir <- sys.frame(frame) [18:40:55.396] } [18:40:55.396] } [18:40:55.396] sendCondition <<- function(cond) NULL [18:40:55.396] } [18:40:55.396] }) [18:40:55.396] withCallingHandlers({ [18:40:55.396] { [18:40:55.396] do.call(function(...) { [18:40:55.396] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.396] if (!identical(...future.globals.maxSize.org, [18:40:55.396] ...future.globals.maxSize)) { [18:40:55.396] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.396] on.exit(options(oopts), add = TRUE) [18:40:55.396] } [18:40:55.396] { [18:40:55.396] lapply(seq_along(...future.elements_ii), [18:40:55.396] FUN = function(jj) { [18:40:55.396] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.396] ...future.FUN(...future.X_jj, ...) [18:40:55.396] }) [18:40:55.396] } [18:40:55.396] }, args = future.call.arguments) [18:40:55.396] } [18:40:55.396] }, immediateCondition = function(cond) { [18:40:55.396] sendCondition <- ...future.makeSendCondition() [18:40:55.396] sendCondition(cond) [18:40:55.396] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.396] { [18:40:55.396] inherits <- base::inherits [18:40:55.396] invokeRestart <- base::invokeRestart [18:40:55.396] is.null <- base::is.null [18:40:55.396] muffled <- FALSE [18:40:55.396] if (inherits(cond, "message")) { [18:40:55.396] muffled <- grepl(pattern, "muffleMessage") [18:40:55.396] if (muffled) [18:40:55.396] invokeRestart("muffleMessage") [18:40:55.396] } [18:40:55.396] else if (inherits(cond, "warning")) { [18:40:55.396] muffled <- grepl(pattern, "muffleWarning") [18:40:55.396] if (muffled) [18:40:55.396] invokeRestart("muffleWarning") [18:40:55.396] } [18:40:55.396] else if (inherits(cond, "condition")) { [18:40:55.396] if (!is.null(pattern)) { [18:40:55.396] computeRestarts <- base::computeRestarts [18:40:55.396] grepl <- base::grepl [18:40:55.396] restarts <- computeRestarts(cond) [18:40:55.396] for (restart in restarts) { [18:40:55.396] name <- restart$name [18:40:55.396] if (is.null(name)) [18:40:55.396] next [18:40:55.396] if (!grepl(pattern, name)) [18:40:55.396] next [18:40:55.396] invokeRestart(restart) [18:40:55.396] muffled <- TRUE [18:40:55.396] break [18:40:55.396] } [18:40:55.396] } [18:40:55.396] } [18:40:55.396] invisible(muffled) [18:40:55.396] } [18:40:55.396] muffleCondition(cond) [18:40:55.396] }) [18:40:55.396] })) [18:40:55.396] future::FutureResult(value = ...future.value$value, [18:40:55.396] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.396] ...future.rng), globalenv = if (FALSE) [18:40:55.396] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.396] ...future.globalenv.names)) [18:40:55.396] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.396] }, condition = base::local({ [18:40:55.396] c <- base::c [18:40:55.396] inherits <- base::inherits [18:40:55.396] invokeRestart <- base::invokeRestart [18:40:55.396] length <- base::length [18:40:55.396] list <- base::list [18:40:55.396] seq.int <- base::seq.int [18:40:55.396] signalCondition <- base::signalCondition [18:40:55.396] sys.calls <- base::sys.calls [18:40:55.396] `[[` <- base::`[[` [18:40:55.396] `+` <- base::`+` [18:40:55.396] `<<-` <- base::`<<-` [18:40:55.396] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.396] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.396] 3L)] [18:40:55.396] } [18:40:55.396] function(cond) { [18:40:55.396] is_error <- inherits(cond, "error") [18:40:55.396] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.396] NULL) [18:40:55.396] if (is_error) { [18:40:55.396] sessionInformation <- function() { [18:40:55.396] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.396] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.396] search = base::search(), system = base::Sys.info()) [18:40:55.396] } [18:40:55.396] ...future.conditions[[length(...future.conditions) + [18:40:55.396] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.396] cond$call), session = sessionInformation(), [18:40:55.396] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.396] signalCondition(cond) [18:40:55.396] } [18:40:55.396] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.396] "immediateCondition"))) { [18:40:55.396] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.396] ...future.conditions[[length(...future.conditions) + [18:40:55.396] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.396] if (TRUE && !signal) { [18:40:55.396] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.396] { [18:40:55.396] inherits <- base::inherits [18:40:55.396] invokeRestart <- base::invokeRestart [18:40:55.396] is.null <- base::is.null [18:40:55.396] muffled <- FALSE [18:40:55.396] if (inherits(cond, "message")) { [18:40:55.396] muffled <- grepl(pattern, "muffleMessage") [18:40:55.396] if (muffled) [18:40:55.396] invokeRestart("muffleMessage") [18:40:55.396] } [18:40:55.396] else if (inherits(cond, "warning")) { [18:40:55.396] muffled <- grepl(pattern, "muffleWarning") [18:40:55.396] if (muffled) [18:40:55.396] invokeRestart("muffleWarning") [18:40:55.396] } [18:40:55.396] else if (inherits(cond, "condition")) { [18:40:55.396] if (!is.null(pattern)) { [18:40:55.396] computeRestarts <- base::computeRestarts [18:40:55.396] grepl <- base::grepl [18:40:55.396] restarts <- computeRestarts(cond) [18:40:55.396] for (restart in restarts) { [18:40:55.396] name <- restart$name [18:40:55.396] if (is.null(name)) [18:40:55.396] next [18:40:55.396] if (!grepl(pattern, name)) [18:40:55.396] next [18:40:55.396] invokeRestart(restart) [18:40:55.396] muffled <- TRUE [18:40:55.396] break [18:40:55.396] } [18:40:55.396] } [18:40:55.396] } [18:40:55.396] invisible(muffled) [18:40:55.396] } [18:40:55.396] muffleCondition(cond, pattern = "^muffle") [18:40:55.396] } [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] if (TRUE) { [18:40:55.396] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.396] { [18:40:55.396] inherits <- base::inherits [18:40:55.396] invokeRestart <- base::invokeRestart [18:40:55.396] is.null <- base::is.null [18:40:55.396] muffled <- FALSE [18:40:55.396] if (inherits(cond, "message")) { [18:40:55.396] muffled <- grepl(pattern, "muffleMessage") [18:40:55.396] if (muffled) [18:40:55.396] invokeRestart("muffleMessage") [18:40:55.396] } [18:40:55.396] else if (inherits(cond, "warning")) { [18:40:55.396] muffled <- grepl(pattern, "muffleWarning") [18:40:55.396] if (muffled) [18:40:55.396] invokeRestart("muffleWarning") [18:40:55.396] } [18:40:55.396] else if (inherits(cond, "condition")) { [18:40:55.396] if (!is.null(pattern)) { [18:40:55.396] computeRestarts <- base::computeRestarts [18:40:55.396] grepl <- base::grepl [18:40:55.396] restarts <- computeRestarts(cond) [18:40:55.396] for (restart in restarts) { [18:40:55.396] name <- restart$name [18:40:55.396] if (is.null(name)) [18:40:55.396] next [18:40:55.396] if (!grepl(pattern, name)) [18:40:55.396] next [18:40:55.396] invokeRestart(restart) [18:40:55.396] muffled <- TRUE [18:40:55.396] break [18:40:55.396] } [18:40:55.396] } [18:40:55.396] } [18:40:55.396] invisible(muffled) [18:40:55.396] } [18:40:55.396] muffleCondition(cond, pattern = "^muffle") [18:40:55.396] } [18:40:55.396] } [18:40:55.396] } [18:40:55.396] })) [18:40:55.396] }, error = function(ex) { [18:40:55.396] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.396] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.396] ...future.rng), started = ...future.startTime, [18:40:55.396] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.396] version = "1.8"), class = "FutureResult") [18:40:55.396] }, finally = { [18:40:55.396] if (!identical(...future.workdir, getwd())) [18:40:55.396] setwd(...future.workdir) [18:40:55.396] { [18:40:55.396] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.396] ...future.oldOptions$nwarnings <- NULL [18:40:55.396] } [18:40:55.396] base::options(...future.oldOptions) [18:40:55.396] if (.Platform$OS.type == "windows") { [18:40:55.396] old_names <- names(...future.oldEnvVars) [18:40:55.396] envs <- base::Sys.getenv() [18:40:55.396] names <- names(envs) [18:40:55.396] common <- intersect(names, old_names) [18:40:55.396] added <- setdiff(names, old_names) [18:40:55.396] removed <- setdiff(old_names, names) [18:40:55.396] changed <- common[...future.oldEnvVars[common] != [18:40:55.396] envs[common]] [18:40:55.396] NAMES <- toupper(changed) [18:40:55.396] args <- list() [18:40:55.396] for (kk in seq_along(NAMES)) { [18:40:55.396] name <- changed[[kk]] [18:40:55.396] NAME <- NAMES[[kk]] [18:40:55.396] if (name != NAME && is.element(NAME, old_names)) [18:40:55.396] next [18:40:55.396] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.396] } [18:40:55.396] NAMES <- toupper(added) [18:40:55.396] for (kk in seq_along(NAMES)) { [18:40:55.396] name <- added[[kk]] [18:40:55.396] NAME <- NAMES[[kk]] [18:40:55.396] if (name != NAME && is.element(NAME, old_names)) [18:40:55.396] next [18:40:55.396] args[[name]] <- "" [18:40:55.396] } [18:40:55.396] NAMES <- toupper(removed) [18:40:55.396] for (kk in seq_along(NAMES)) { [18:40:55.396] name <- removed[[kk]] [18:40:55.396] NAME <- NAMES[[kk]] [18:40:55.396] if (name != NAME && is.element(NAME, old_names)) [18:40:55.396] next [18:40:55.396] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.396] } [18:40:55.396] if (length(args) > 0) [18:40:55.396] base::do.call(base::Sys.setenv, args = args) [18:40:55.396] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.396] } [18:40:55.396] { [18:40:55.396] if (base::length(...future.futureOptionsAdded) > [18:40:55.396] 0L) { [18:40:55.396] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.396] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.396] base::options(opts) [18:40:55.396] } [18:40:55.396] { [18:40:55.396] { [18:40:55.396] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.396] NULL [18:40:55.396] } [18:40:55.396] options(future.plan = NULL) [18:40:55.396] if (is.na(NA_character_)) [18:40:55.396] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.396] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.396] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.396] .init = FALSE) [18:40:55.396] } [18:40:55.396] } [18:40:55.396] } [18:40:55.396] }) [18:40:55.396] if (TRUE) { [18:40:55.396] base::sink(type = "output", split = FALSE) [18:40:55.396] if (TRUE) { [18:40:55.396] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.396] } [18:40:55.396] else { [18:40:55.396] ...future.result["stdout"] <- base::list(NULL) [18:40:55.396] } [18:40:55.396] base::close(...future.stdout) [18:40:55.396] ...future.stdout <- NULL [18:40:55.396] } [18:40:55.396] ...future.result$conditions <- ...future.conditions [18:40:55.396] ...future.result$finished <- base::Sys.time() [18:40:55.396] ...future.result [18:40:55.396] } [18:40:55.401] Exporting 5 global objects (0.99 KiB) to cluster node #1 ... [18:40:55.401] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... [18:40:55.402] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... DONE [18:40:55.402] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... [18:40:55.403] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... DONE [18:40:55.403] Exporting '...future.elements_ii' (101 bytes) to cluster node #1 ... [18:40:55.403] Exporting '...future.elements_ii' (101 bytes) to cluster node #1 ... DONE [18:40:55.403] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.404] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.404] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.404] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.404] Exporting 5 global objects (0.99 KiB) to cluster node #1 ... DONE [18:40:55.405] MultisessionFuture started [18:40:55.405] - Launch lazy future ... done [18:40:55.406] run() for 'MultisessionFuture' ... done [18:40:55.406] Created future: [18:40:55.420] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.421] - Validating connection of MultisessionFuture [18:40:55.421] - received message: FutureResult [18:40:55.421] - Received FutureResult [18:40:55.421] - Erased future from FutureRegistry [18:40:55.422] result() for ClusterFuture ... [18:40:55.422] - result already collected: FutureResult [18:40:55.422] result() for ClusterFuture ... done [18:40:55.422] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.406] MultisessionFuture: [18:40:55.406] Label: 'future_eapply-1' [18:40:55.406] Expression: [18:40:55.406] { [18:40:55.406] do.call(function(...) { [18:40:55.406] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.406] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.406] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.406] on.exit(options(oopts), add = TRUE) [18:40:55.406] } [18:40:55.406] { [18:40:55.406] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.406] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.406] ...future.FUN(...future.X_jj, ...) [18:40:55.406] }) [18:40:55.406] } [18:40:55.406] }, args = future.call.arguments) [18:40:55.406] } [18:40:55.406] Lazy evaluation: FALSE [18:40:55.406] Asynchronous evaluation: TRUE [18:40:55.406] Local evaluation: TRUE [18:40:55.406] Environment: R_GlobalEnv [18:40:55.406] Capture standard output: TRUE [18:40:55.406] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.406] Globals: 5 objects totaling 563 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 101 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.406] Packages: 1 packages ('stats') [18:40:55.406] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.406] Resolved: TRUE [18:40:55.406] Value: [18:40:55.406] Conditions captured: [18:40:55.406] Early signaling: FALSE [18:40:55.406] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.406] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.422] Chunk #1 of 2 ... DONE [18:40:55.423] Chunk #2 of 2 ... [18:40:55.423] - Finding globals in 'X' for chunk #2 ... [18:40:55.423] getGlobalsAndPackages() ... [18:40:55.423] Searching for globals... [18:40:55.423] [18:40:55.424] Searching for globals ... DONE [18:40:55.424] - globals: [0] [18:40:55.424] getGlobalsAndPackages() ... DONE [18:40:55.424] + additional globals found: [n=0] [18:40:55.424] + additional namespaces needed: [n=0] [18:40:55.424] - Finding globals in 'X' for chunk #2 ... DONE [18:40:55.425] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.425] - seeds: [18:40:55.425] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.425] getGlobalsAndPackages() ... [18:40:55.425] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.425] Resolving globals: FALSE [18:40:55.426] Tweak future expression to call with '...' arguments ... [18:40:55.426] { [18:40:55.426] do.call(function(...) { [18:40:55.426] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.426] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.426] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.426] on.exit(options(oopts), add = TRUE) [18:40:55.426] } [18:40:55.426] { [18:40:55.426] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.426] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.426] ...future.FUN(...future.X_jj, ...) [18:40:55.426] }) [18:40:55.426] } [18:40:55.426] }, args = future.call.arguments) [18:40:55.426] } [18:40:55.426] Tweak future expression to call with '...' arguments ... DONE [18:40:55.427] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.427] - packages: [1] 'stats' [18:40:55.427] getGlobalsAndPackages() ... DONE [18:40:55.428] run() for 'Future' ... [18:40:55.428] - state: 'created' [18:40:55.428] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.445] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.445] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.445] - Field: 'node' [18:40:55.446] - Field: 'label' [18:40:55.446] - Field: 'local' [18:40:55.446] - Field: 'owner' [18:40:55.446] - Field: 'envir' [18:40:55.446] - Field: 'workers' [18:40:55.446] - Field: 'packages' [18:40:55.447] - Field: 'gc' [18:40:55.447] - Field: 'conditions' [18:40:55.447] - Field: 'persistent' [18:40:55.447] - Field: 'expr' [18:40:55.447] - Field: 'uuid' [18:40:55.447] - Field: 'seed' [18:40:55.448] - Field: 'version' [18:40:55.448] - Field: 'result' [18:40:55.448] - Field: 'asynchronous' [18:40:55.448] - Field: 'calls' [18:40:55.448] - Field: 'globals' [18:40:55.448] - Field: 'stdout' [18:40:55.449] - Field: 'earlySignal' [18:40:55.449] - Field: 'lazy' [18:40:55.449] - Field: 'state' [18:40:55.449] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.449] - Launch lazy future ... [18:40:55.450] Packages needed by the future expression (n = 1): 'stats' [18:40:55.450] Packages needed by future strategies (n = 0): [18:40:55.450] { [18:40:55.450] { [18:40:55.450] { [18:40:55.450] ...future.startTime <- base::Sys.time() [18:40:55.450] { [18:40:55.450] { [18:40:55.450] { [18:40:55.450] { [18:40:55.450] { [18:40:55.450] base::local({ [18:40:55.450] has_future <- base::requireNamespace("future", [18:40:55.450] quietly = TRUE) [18:40:55.450] if (has_future) { [18:40:55.450] ns <- base::getNamespace("future") [18:40:55.450] version <- ns[[".package"]][["version"]] [18:40:55.450] if (is.null(version)) [18:40:55.450] version <- utils::packageVersion("future") [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] version <- NULL [18:40:55.450] } [18:40:55.450] if (!has_future || version < "1.8.0") { [18:40:55.450] info <- base::c(r_version = base::gsub("R version ", [18:40:55.450] "", base::R.version$version.string), [18:40:55.450] platform = base::sprintf("%s (%s-bit)", [18:40:55.450] base::R.version$platform, 8 * [18:40:55.450] base::.Machine$sizeof.pointer), [18:40:55.450] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.450] "release", "version")], collapse = " "), [18:40:55.450] hostname = base::Sys.info()[["nodename"]]) [18:40:55.450] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.450] info) [18:40:55.450] info <- base::paste(info, collapse = "; ") [18:40:55.450] if (!has_future) { [18:40:55.450] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.450] info) [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.450] info, version) [18:40:55.450] } [18:40:55.450] base::stop(msg) [18:40:55.450] } [18:40:55.450] }) [18:40:55.450] } [18:40:55.450] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.450] base::options(mc.cores = 1L) [18:40:55.450] } [18:40:55.450] base::local({ [18:40:55.450] for (pkg in "stats") { [18:40:55.450] base::loadNamespace(pkg) [18:40:55.450] base::library(pkg, character.only = TRUE) [18:40:55.450] } [18:40:55.450] }) [18:40:55.450] } [18:40:55.450] ...future.strategy.old <- future::plan("list") [18:40:55.450] options(future.plan = NULL) [18:40:55.450] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.450] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.450] } [18:40:55.450] ...future.workdir <- getwd() [18:40:55.450] } [18:40:55.450] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.450] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.450] } [18:40:55.450] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.450] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.450] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.450] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.450] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.450] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.450] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.450] base::names(...future.oldOptions)) [18:40:55.450] } [18:40:55.450] if (FALSE) { [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] if (TRUE) { [18:40:55.450] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.450] open = "w") [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.450] windows = "NUL", "/dev/null"), open = "w") [18:40:55.450] } [18:40:55.450] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.450] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.450] base::sink(type = "output", split = FALSE) [18:40:55.450] base::close(...future.stdout) [18:40:55.450] }, add = TRUE) [18:40:55.450] } [18:40:55.450] ...future.frame <- base::sys.nframe() [18:40:55.450] ...future.conditions <- base::list() [18:40:55.450] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.450] if (FALSE) { [18:40:55.450] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.450] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.450] } [18:40:55.450] ...future.result <- base::tryCatch({ [18:40:55.450] base::withCallingHandlers({ [18:40:55.450] ...future.value <- base::withVisible(base::local({ [18:40:55.450] ...future.makeSendCondition <- base::local({ [18:40:55.450] sendCondition <- NULL [18:40:55.450] function(frame = 1L) { [18:40:55.450] if (is.function(sendCondition)) [18:40:55.450] return(sendCondition) [18:40:55.450] ns <- getNamespace("parallel") [18:40:55.450] if (exists("sendData", mode = "function", [18:40:55.450] envir = ns)) { [18:40:55.450] parallel_sendData <- get("sendData", mode = "function", [18:40:55.450] envir = ns) [18:40:55.450] envir <- sys.frame(frame) [18:40:55.450] master <- NULL [18:40:55.450] while (!identical(envir, .GlobalEnv) && [18:40:55.450] !identical(envir, emptyenv())) { [18:40:55.450] if (exists("master", mode = "list", envir = envir, [18:40:55.450] inherits = FALSE)) { [18:40:55.450] master <- get("master", mode = "list", [18:40:55.450] envir = envir, inherits = FALSE) [18:40:55.450] if (inherits(master, c("SOCKnode", [18:40:55.450] "SOCK0node"))) { [18:40:55.450] sendCondition <<- function(cond) { [18:40:55.450] data <- list(type = "VALUE", value = cond, [18:40:55.450] success = TRUE) [18:40:55.450] parallel_sendData(master, data) [18:40:55.450] } [18:40:55.450] return(sendCondition) [18:40:55.450] } [18:40:55.450] } [18:40:55.450] frame <- frame + 1L [18:40:55.450] envir <- sys.frame(frame) [18:40:55.450] } [18:40:55.450] } [18:40:55.450] sendCondition <<- function(cond) NULL [18:40:55.450] } [18:40:55.450] }) [18:40:55.450] withCallingHandlers({ [18:40:55.450] { [18:40:55.450] do.call(function(...) { [18:40:55.450] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.450] if (!identical(...future.globals.maxSize.org, [18:40:55.450] ...future.globals.maxSize)) { [18:40:55.450] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.450] on.exit(options(oopts), add = TRUE) [18:40:55.450] } [18:40:55.450] { [18:40:55.450] lapply(seq_along(...future.elements_ii), [18:40:55.450] FUN = function(jj) { [18:40:55.450] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.450] ...future.FUN(...future.X_jj, ...) [18:40:55.450] }) [18:40:55.450] } [18:40:55.450] }, args = future.call.arguments) [18:40:55.450] } [18:40:55.450] }, immediateCondition = function(cond) { [18:40:55.450] sendCondition <- ...future.makeSendCondition() [18:40:55.450] sendCondition(cond) [18:40:55.450] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.450] { [18:40:55.450] inherits <- base::inherits [18:40:55.450] invokeRestart <- base::invokeRestart [18:40:55.450] is.null <- base::is.null [18:40:55.450] muffled <- FALSE [18:40:55.450] if (inherits(cond, "message")) { [18:40:55.450] muffled <- grepl(pattern, "muffleMessage") [18:40:55.450] if (muffled) [18:40:55.450] invokeRestart("muffleMessage") [18:40:55.450] } [18:40:55.450] else if (inherits(cond, "warning")) { [18:40:55.450] muffled <- grepl(pattern, "muffleWarning") [18:40:55.450] if (muffled) [18:40:55.450] invokeRestart("muffleWarning") [18:40:55.450] } [18:40:55.450] else if (inherits(cond, "condition")) { [18:40:55.450] if (!is.null(pattern)) { [18:40:55.450] computeRestarts <- base::computeRestarts [18:40:55.450] grepl <- base::grepl [18:40:55.450] restarts <- computeRestarts(cond) [18:40:55.450] for (restart in restarts) { [18:40:55.450] name <- restart$name [18:40:55.450] if (is.null(name)) [18:40:55.450] next [18:40:55.450] if (!grepl(pattern, name)) [18:40:55.450] next [18:40:55.450] invokeRestart(restart) [18:40:55.450] muffled <- TRUE [18:40:55.450] break [18:40:55.450] } [18:40:55.450] } [18:40:55.450] } [18:40:55.450] invisible(muffled) [18:40:55.450] } [18:40:55.450] muffleCondition(cond) [18:40:55.450] }) [18:40:55.450] })) [18:40:55.450] future::FutureResult(value = ...future.value$value, [18:40:55.450] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.450] ...future.rng), globalenv = if (FALSE) [18:40:55.450] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.450] ...future.globalenv.names)) [18:40:55.450] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.450] }, condition = base::local({ [18:40:55.450] c <- base::c [18:40:55.450] inherits <- base::inherits [18:40:55.450] invokeRestart <- base::invokeRestart [18:40:55.450] length <- base::length [18:40:55.450] list <- base::list [18:40:55.450] seq.int <- base::seq.int [18:40:55.450] signalCondition <- base::signalCondition [18:40:55.450] sys.calls <- base::sys.calls [18:40:55.450] `[[` <- base::`[[` [18:40:55.450] `+` <- base::`+` [18:40:55.450] `<<-` <- base::`<<-` [18:40:55.450] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.450] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.450] 3L)] [18:40:55.450] } [18:40:55.450] function(cond) { [18:40:55.450] is_error <- inherits(cond, "error") [18:40:55.450] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.450] NULL) [18:40:55.450] if (is_error) { [18:40:55.450] sessionInformation <- function() { [18:40:55.450] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.450] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.450] search = base::search(), system = base::Sys.info()) [18:40:55.450] } [18:40:55.450] ...future.conditions[[length(...future.conditions) + [18:40:55.450] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.450] cond$call), session = sessionInformation(), [18:40:55.450] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.450] signalCondition(cond) [18:40:55.450] } [18:40:55.450] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.450] "immediateCondition"))) { [18:40:55.450] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.450] ...future.conditions[[length(...future.conditions) + [18:40:55.450] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.450] if (TRUE && !signal) { [18:40:55.450] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.450] { [18:40:55.450] inherits <- base::inherits [18:40:55.450] invokeRestart <- base::invokeRestart [18:40:55.450] is.null <- base::is.null [18:40:55.450] muffled <- FALSE [18:40:55.450] if (inherits(cond, "message")) { [18:40:55.450] muffled <- grepl(pattern, "muffleMessage") [18:40:55.450] if (muffled) [18:40:55.450] invokeRestart("muffleMessage") [18:40:55.450] } [18:40:55.450] else if (inherits(cond, "warning")) { [18:40:55.450] muffled <- grepl(pattern, "muffleWarning") [18:40:55.450] if (muffled) [18:40:55.450] invokeRestart("muffleWarning") [18:40:55.450] } [18:40:55.450] else if (inherits(cond, "condition")) { [18:40:55.450] if (!is.null(pattern)) { [18:40:55.450] computeRestarts <- base::computeRestarts [18:40:55.450] grepl <- base::grepl [18:40:55.450] restarts <- computeRestarts(cond) [18:40:55.450] for (restart in restarts) { [18:40:55.450] name <- restart$name [18:40:55.450] if (is.null(name)) [18:40:55.450] next [18:40:55.450] if (!grepl(pattern, name)) [18:40:55.450] next [18:40:55.450] invokeRestart(restart) [18:40:55.450] muffled <- TRUE [18:40:55.450] break [18:40:55.450] } [18:40:55.450] } [18:40:55.450] } [18:40:55.450] invisible(muffled) [18:40:55.450] } [18:40:55.450] muffleCondition(cond, pattern = "^muffle") [18:40:55.450] } [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] if (TRUE) { [18:40:55.450] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.450] { [18:40:55.450] inherits <- base::inherits [18:40:55.450] invokeRestart <- base::invokeRestart [18:40:55.450] is.null <- base::is.null [18:40:55.450] muffled <- FALSE [18:40:55.450] if (inherits(cond, "message")) { [18:40:55.450] muffled <- grepl(pattern, "muffleMessage") [18:40:55.450] if (muffled) [18:40:55.450] invokeRestart("muffleMessage") [18:40:55.450] } [18:40:55.450] else if (inherits(cond, "warning")) { [18:40:55.450] muffled <- grepl(pattern, "muffleWarning") [18:40:55.450] if (muffled) [18:40:55.450] invokeRestart("muffleWarning") [18:40:55.450] } [18:40:55.450] else if (inherits(cond, "condition")) { [18:40:55.450] if (!is.null(pattern)) { [18:40:55.450] computeRestarts <- base::computeRestarts [18:40:55.450] grepl <- base::grepl [18:40:55.450] restarts <- computeRestarts(cond) [18:40:55.450] for (restart in restarts) { [18:40:55.450] name <- restart$name [18:40:55.450] if (is.null(name)) [18:40:55.450] next [18:40:55.450] if (!grepl(pattern, name)) [18:40:55.450] next [18:40:55.450] invokeRestart(restart) [18:40:55.450] muffled <- TRUE [18:40:55.450] break [18:40:55.450] } [18:40:55.450] } [18:40:55.450] } [18:40:55.450] invisible(muffled) [18:40:55.450] } [18:40:55.450] muffleCondition(cond, pattern = "^muffle") [18:40:55.450] } [18:40:55.450] } [18:40:55.450] } [18:40:55.450] })) [18:40:55.450] }, error = function(ex) { [18:40:55.450] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.450] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.450] ...future.rng), started = ...future.startTime, [18:40:55.450] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.450] version = "1.8"), class = "FutureResult") [18:40:55.450] }, finally = { [18:40:55.450] if (!identical(...future.workdir, getwd())) [18:40:55.450] setwd(...future.workdir) [18:40:55.450] { [18:40:55.450] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.450] ...future.oldOptions$nwarnings <- NULL [18:40:55.450] } [18:40:55.450] base::options(...future.oldOptions) [18:40:55.450] if (.Platform$OS.type == "windows") { [18:40:55.450] old_names <- names(...future.oldEnvVars) [18:40:55.450] envs <- base::Sys.getenv() [18:40:55.450] names <- names(envs) [18:40:55.450] common <- intersect(names, old_names) [18:40:55.450] added <- setdiff(names, old_names) [18:40:55.450] removed <- setdiff(old_names, names) [18:40:55.450] changed <- common[...future.oldEnvVars[common] != [18:40:55.450] envs[common]] [18:40:55.450] NAMES <- toupper(changed) [18:40:55.450] args <- list() [18:40:55.450] for (kk in seq_along(NAMES)) { [18:40:55.450] name <- changed[[kk]] [18:40:55.450] NAME <- NAMES[[kk]] [18:40:55.450] if (name != NAME && is.element(NAME, old_names)) [18:40:55.450] next [18:40:55.450] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.450] } [18:40:55.450] NAMES <- toupper(added) [18:40:55.450] for (kk in seq_along(NAMES)) { [18:40:55.450] name <- added[[kk]] [18:40:55.450] NAME <- NAMES[[kk]] [18:40:55.450] if (name != NAME && is.element(NAME, old_names)) [18:40:55.450] next [18:40:55.450] args[[name]] <- "" [18:40:55.450] } [18:40:55.450] NAMES <- toupper(removed) [18:40:55.450] for (kk in seq_along(NAMES)) { [18:40:55.450] name <- removed[[kk]] [18:40:55.450] NAME <- NAMES[[kk]] [18:40:55.450] if (name != NAME && is.element(NAME, old_names)) [18:40:55.450] next [18:40:55.450] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.450] } [18:40:55.450] if (length(args) > 0) [18:40:55.450] base::do.call(base::Sys.setenv, args = args) [18:40:55.450] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.450] } [18:40:55.450] { [18:40:55.450] if (base::length(...future.futureOptionsAdded) > [18:40:55.450] 0L) { [18:40:55.450] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.450] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.450] base::options(opts) [18:40:55.450] } [18:40:55.450] { [18:40:55.450] { [18:40:55.450] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.450] NULL [18:40:55.450] } [18:40:55.450] options(future.plan = NULL) [18:40:55.450] if (is.na(NA_character_)) [18:40:55.450] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.450] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.450] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.450] .init = FALSE) [18:40:55.450] } [18:40:55.450] } [18:40:55.450] } [18:40:55.450] }) [18:40:55.450] if (TRUE) { [18:40:55.450] base::sink(type = "output", split = FALSE) [18:40:55.450] if (TRUE) { [18:40:55.450] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.450] } [18:40:55.450] else { [18:40:55.450] ...future.result["stdout"] <- base::list(NULL) [18:40:55.450] } [18:40:55.450] base::close(...future.stdout) [18:40:55.450] ...future.stdout <- NULL [18:40:55.450] } [18:40:55.450] ...future.result$conditions <- ...future.conditions [18:40:55.450] ...future.result$finished <- base::Sys.time() [18:40:55.450] ...future.result [18:40:55.450] } [18:40:55.456] Exporting 5 global objects (1.14 KiB) to cluster node #1 ... [18:40:55.456] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... [18:40:55.456] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... DONE [18:40:55.457] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... [18:40:55.457] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... DONE [18:40:55.457] Exporting '...future.elements_ii' (259 bytes) to cluster node #1 ... [18:40:55.458] Exporting '...future.elements_ii' (259 bytes) to cluster node #1 ... DONE [18:40:55.458] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.458] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.458] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.459] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.459] Exporting 5 global objects (1.14 KiB) to cluster node #1 ... DONE [18:40:55.460] MultisessionFuture started [18:40:55.460] - Launch lazy future ... done [18:40:55.460] run() for 'MultisessionFuture' ... done [18:40:55.460] Created future: [18:40:55.474] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.475] - Validating connection of MultisessionFuture [18:40:55.475] - received message: FutureResult [18:40:55.475] - Received FutureResult [18:40:55.475] - Erased future from FutureRegistry [18:40:55.475] result() for ClusterFuture ... [18:40:55.476] - result already collected: FutureResult [18:40:55.476] result() for ClusterFuture ... done [18:40:55.476] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.460] MultisessionFuture: [18:40:55.460] Label: 'future_eapply-2' [18:40:55.460] Expression: [18:40:55.460] { [18:40:55.460] do.call(function(...) { [18:40:55.460] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.460] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.460] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.460] on.exit(options(oopts), add = TRUE) [18:40:55.460] } [18:40:55.460] { [18:40:55.460] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.460] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.460] ...future.FUN(...future.X_jj, ...) [18:40:55.460] }) [18:40:55.460] } [18:40:55.460] }, args = future.call.arguments) [18:40:55.460] } [18:40:55.460] Lazy evaluation: FALSE [18:40:55.460] Asynchronous evaluation: TRUE [18:40:55.460] Local evaluation: TRUE [18:40:55.460] Environment: R_GlobalEnv [18:40:55.460] Capture standard output: TRUE [18:40:55.460] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.460] Globals: 5 objects totaling 721 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 259 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.460] Packages: 1 packages ('stats') [18:40:55.460] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.460] Resolved: TRUE [18:40:55.460] Value: [18:40:55.460] Conditions captured: [18:40:55.460] Early signaling: FALSE [18:40:55.460] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.460] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.476] Chunk #2 of 2 ... DONE [18:40:55.476] Launching 2 futures (chunks) ... DONE [18:40:55.477] Resolving 2 futures (chunks) ... [18:40:55.477] resolve() on list ... [18:40:55.477] recursive: 0 [18:40:55.477] length: 2 [18:40:55.477] [18:40:55.477] Future #1 [18:40:55.478] result() for ClusterFuture ... [18:40:55.478] - result already collected: FutureResult [18:40:55.478] result() for ClusterFuture ... done [18:40:55.478] result() for ClusterFuture ... [18:40:55.478] - result already collected: FutureResult [18:40:55.478] result() for ClusterFuture ... done [18:40:55.479] signalConditionsASAP(MultisessionFuture, pos=1) ... [18:40:55.479] - nx: 2 [18:40:55.479] - relay: TRUE [18:40:55.479] - stdout: TRUE [18:40:55.479] - signal: TRUE [18:40:55.479] - resignal: FALSE [18:40:55.479] - force: TRUE [18:40:55.480] - relayed: [n=2] FALSE, FALSE [18:40:55.480] - queued futures: [n=2] FALSE, FALSE [18:40:55.480] - until=1 [18:40:55.480] - relaying element #1 [18:40:55.480] result() for ClusterFuture ... [18:40:55.480] - result already collected: FutureResult [18:40:55.481] result() for ClusterFuture ... done [18:40:55.481] result() for ClusterFuture ... [18:40:55.481] - result already collected: FutureResult [18:40:55.481] result() for ClusterFuture ... done [18:40:55.481] result() for ClusterFuture ... [18:40:55.481] - result already collected: FutureResult [18:40:55.482] result() for ClusterFuture ... done [18:40:55.482] result() for ClusterFuture ... [18:40:55.482] - result already collected: FutureResult [18:40:55.482] result() for ClusterFuture ... done [18:40:55.482] - relayed: [n=2] TRUE, FALSE [18:40:55.482] - queued futures: [n=2] TRUE, FALSE [18:40:55.482] signalConditionsASAP(MultisessionFuture, pos=1) ... done [18:40:55.483] length: 1 (resolved future 1) [18:40:55.483] Future #2 [18:40:55.483] result() for ClusterFuture ... [18:40:55.483] - result already collected: FutureResult [18:40:55.483] result() for ClusterFuture ... done [18:40:55.483] result() for ClusterFuture ... [18:40:55.484] - result already collected: FutureResult [18:40:55.484] result() for ClusterFuture ... done [18:40:55.484] signalConditionsASAP(MultisessionFuture, pos=2) ... [18:40:55.484] - nx: 2 [18:40:55.484] - relay: TRUE [18:40:55.484] - stdout: TRUE [18:40:55.485] - signal: TRUE [18:40:55.485] - resignal: FALSE [18:40:55.485] - force: TRUE [18:40:55.485] - relayed: [n=2] TRUE, FALSE [18:40:55.485] - queued futures: [n=2] TRUE, FALSE [18:40:55.485] - until=2 [18:40:55.485] - relaying element #2 [18:40:55.486] result() for ClusterFuture ... [18:40:55.486] - result already collected: FutureResult [18:40:55.486] result() for ClusterFuture ... done [18:40:55.486] result() for ClusterFuture ... [18:40:55.486] - result already collected: FutureResult [18:40:55.486] result() for ClusterFuture ... done [18:40:55.487] result() for ClusterFuture ... [18:40:55.487] - result already collected: FutureResult [18:40:55.487] result() for ClusterFuture ... done [18:40:55.487] result() for ClusterFuture ... [18:40:55.487] - result already collected: FutureResult [18:40:55.487] result() for ClusterFuture ... done [18:40:55.487] - relayed: [n=2] TRUE, TRUE [18:40:55.488] - queued futures: [n=2] TRUE, TRUE [18:40:55.488] signalConditionsASAP(MultisessionFuture, pos=2) ... done [18:40:55.488] length: 0 (resolved future 2) [18:40:55.488] Relaying remaining futures [18:40:55.488] signalConditionsASAP(NULL, pos=0) ... [18:40:55.488] - nx: 2 [18:40:55.489] - relay: TRUE [18:40:55.489] - stdout: TRUE [18:40:55.489] - signal: TRUE [18:40:55.489] - resignal: FALSE [18:40:55.489] - force: TRUE [18:40:55.489] - relayed: [n=2] TRUE, TRUE [18:40:55.489] - queued futures: [n=2] TRUE, TRUE - flush all [18:40:55.490] - relayed: [n=2] TRUE, TRUE [18:40:55.490] - queued futures: [n=2] TRUE, TRUE [18:40:55.490] signalConditionsASAP(NULL, pos=0) ... done [18:40:55.490] resolve() on list ... DONE [18:40:55.490] result() for ClusterFuture ... [18:40:55.491] - result already collected: FutureResult [18:40:55.491] result() for ClusterFuture ... done [18:40:55.491] result() for ClusterFuture ... [18:40:55.491] - result already collected: FutureResult [18:40:55.491] result() for ClusterFuture ... done [18:40:55.491] result() for ClusterFuture ... [18:40:55.491] - result already collected: FutureResult [18:40:55.492] result() for ClusterFuture ... done [18:40:55.492] result() for ClusterFuture ... [18:40:55.492] - result already collected: FutureResult [18:40:55.492] result() for ClusterFuture ... done [18:40:55.492] - Number of value chunks collected: 2 [18:40:55.492] Resolving 2 futures (chunks) ... DONE [18:40:55.493] Reducing values from 2 chunks ... [18:40:55.493] - Number of values collected after concatenation: 3 [18:40:55.493] - Number of values expected: 3 [18:40:55.493] Reducing values from 2 chunks ... DONE [18:40:55.493] future_lapply() ... DONE [18:40:55.494] future_lapply() ... [18:40:55.496] Number of chunks: 2 [18:40:55.496] getGlobalsAndPackagesXApply() ... [18:40:55.497] - future.globals: TRUE [18:40:55.497] getGlobalsAndPackages() ... [18:40:55.497] Searching for globals... [18:40:55.498] - globals found: [2] 'FUN', 'UseMethod' [18:40:55.498] Searching for globals ... DONE [18:40:55.499] Resolving globals: FALSE [18:40:55.499] The total size of the 1 globals is 311 bytes (311 bytes) [18:40:55.500] The total size of the 1 globals exported for future expression ('FUN()') is 311 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'FUN' (311 bytes of class 'function') [18:40:55.500] - globals: [1] 'FUN' [18:40:55.500] - packages: [1] 'stats' [18:40:55.500] getGlobalsAndPackages() ... DONE [18:40:55.500] - globals found/used: [n=1] 'FUN' [18:40:55.500] - needed namespaces: [n=1] 'stats' [18:40:55.501] Finding globals ... DONE [18:40:55.501] - use_args: TRUE [18:40:55.501] - Getting '...' globals ... [18:40:55.501] resolve() on list ... [18:40:55.502] recursive: 0 [18:40:55.502] length: 1 [18:40:55.502] elements: '...' [18:40:55.502] length: 0 (resolved future 1) [18:40:55.502] resolve() on list ... DONE [18:40:55.502] - '...' content: [n=0] [18:40:55.503] List of 1 [18:40:55.503] $ ...: list() [18:40:55.503] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.503] - attr(*, "where")=List of 1 [18:40:55.503] ..$ ...: [18:40:55.503] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.503] - attr(*, "resolved")= logi TRUE [18:40:55.503] - attr(*, "total_size")= num NA [18:40:55.505] - Getting '...' globals ... DONE [18:40:55.506] Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [18:40:55.506] List of 2 [18:40:55.506] $ ...future.FUN:function (x, ...) [18:40:55.506] $ ... : list() [18:40:55.506] ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [18:40:55.506] - attr(*, "where")=List of 2 [18:40:55.506] ..$ ...future.FUN: [18:40:55.506] ..$ ... : [18:40:55.506] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [18:40:55.506] - attr(*, "resolved")= logi FALSE [18:40:55.506] - attr(*, "total_size")= int 5437 [18:40:55.509] Packages to be attached in all futures: [n=1] 'stats' [18:40:55.509] getGlobalsAndPackagesXApply() ... DONE [18:40:55.510] Number of futures (= number of chunks): 2 [18:40:55.510] Launching 2 futures (chunks) ... [18:40:55.510] Chunk #1 of 2 ... [18:40:55.510] - Finding globals in 'X' for chunk #1 ... [18:40:55.510] getGlobalsAndPackages() ... [18:40:55.510] Searching for globals... [18:40:55.511] [18:40:55.511] Searching for globals ... DONE [18:40:55.511] - globals: [0] [18:40:55.511] getGlobalsAndPackages() ... DONE [18:40:55.511] + additional globals found: [n=0] [18:40:55.512] + additional namespaces needed: [n=0] [18:40:55.512] - Finding globals in 'X' for chunk #1 ... DONE [18:40:55.512] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.512] - seeds: [18:40:55.512] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.512] getGlobalsAndPackages() ... [18:40:55.512] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.513] Resolving globals: FALSE [18:40:55.513] Tweak future expression to call with '...' arguments ... [18:40:55.513] { [18:40:55.513] do.call(function(...) { [18:40:55.513] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.513] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.513] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.513] on.exit(options(oopts), add = TRUE) [18:40:55.513] } [18:40:55.513] { [18:40:55.513] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.513] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.513] ...future.FUN(...future.X_jj, ...) [18:40:55.513] }) [18:40:55.513] } [18:40:55.513] }, args = future.call.arguments) [18:40:55.513] } [18:40:55.513] Tweak future expression to call with '...' arguments ... DONE [18:40:55.514] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.514] - packages: [1] 'stats' [18:40:55.514] getGlobalsAndPackages() ... DONE [18:40:55.515] run() for 'Future' ... [18:40:55.515] - state: 'created' [18:40:55.515] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.531] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.531] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.531] - Field: 'node' [18:40:55.531] - Field: 'label' [18:40:55.531] - Field: 'local' [18:40:55.532] - Field: 'owner' [18:40:55.532] - Field: 'envir' [18:40:55.532] - Field: 'workers' [18:40:55.532] - Field: 'packages' [18:40:55.532] - Field: 'gc' [18:40:55.532] - Field: 'conditions' [18:40:55.533] - Field: 'persistent' [18:40:55.533] - Field: 'expr' [18:40:55.533] - Field: 'uuid' [18:40:55.533] - Field: 'seed' [18:40:55.533] - Field: 'version' [18:40:55.533] - Field: 'result' [18:40:55.534] - Field: 'asynchronous' [18:40:55.534] - Field: 'calls' [18:40:55.534] - Field: 'globals' [18:40:55.534] - Field: 'stdout' [18:40:55.534] - Field: 'earlySignal' [18:40:55.535] - Field: 'lazy' [18:40:55.535] - Field: 'state' [18:40:55.535] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.535] - Launch lazy future ... [18:40:55.535] Packages needed by the future expression (n = 1): 'stats' [18:40:55.536] Packages needed by future strategies (n = 0): [18:40:55.536] { [18:40:55.536] { [18:40:55.536] { [18:40:55.536] ...future.startTime <- base::Sys.time() [18:40:55.536] { [18:40:55.536] { [18:40:55.536] { [18:40:55.536] { [18:40:55.536] { [18:40:55.536] base::local({ [18:40:55.536] has_future <- base::requireNamespace("future", [18:40:55.536] quietly = TRUE) [18:40:55.536] if (has_future) { [18:40:55.536] ns <- base::getNamespace("future") [18:40:55.536] version <- ns[[".package"]][["version"]] [18:40:55.536] if (is.null(version)) [18:40:55.536] version <- utils::packageVersion("future") [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] version <- NULL [18:40:55.536] } [18:40:55.536] if (!has_future || version < "1.8.0") { [18:40:55.536] info <- base::c(r_version = base::gsub("R version ", [18:40:55.536] "", base::R.version$version.string), [18:40:55.536] platform = base::sprintf("%s (%s-bit)", [18:40:55.536] base::R.version$platform, 8 * [18:40:55.536] base::.Machine$sizeof.pointer), [18:40:55.536] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.536] "release", "version")], collapse = " "), [18:40:55.536] hostname = base::Sys.info()[["nodename"]]) [18:40:55.536] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.536] info) [18:40:55.536] info <- base::paste(info, collapse = "; ") [18:40:55.536] if (!has_future) { [18:40:55.536] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.536] info) [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.536] info, version) [18:40:55.536] } [18:40:55.536] base::stop(msg) [18:40:55.536] } [18:40:55.536] }) [18:40:55.536] } [18:40:55.536] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.536] base::options(mc.cores = 1L) [18:40:55.536] } [18:40:55.536] base::local({ [18:40:55.536] for (pkg in "stats") { [18:40:55.536] base::loadNamespace(pkg) [18:40:55.536] base::library(pkg, character.only = TRUE) [18:40:55.536] } [18:40:55.536] }) [18:40:55.536] } [18:40:55.536] ...future.strategy.old <- future::plan("list") [18:40:55.536] options(future.plan = NULL) [18:40:55.536] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.536] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.536] } [18:40:55.536] ...future.workdir <- getwd() [18:40:55.536] } [18:40:55.536] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.536] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.536] } [18:40:55.536] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.536] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.536] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.536] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.536] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.536] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.536] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.536] base::names(...future.oldOptions)) [18:40:55.536] } [18:40:55.536] if (FALSE) { [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] if (TRUE) { [18:40:55.536] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.536] open = "w") [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.536] windows = "NUL", "/dev/null"), open = "w") [18:40:55.536] } [18:40:55.536] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.536] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.536] base::sink(type = "output", split = FALSE) [18:40:55.536] base::close(...future.stdout) [18:40:55.536] }, add = TRUE) [18:40:55.536] } [18:40:55.536] ...future.frame <- base::sys.nframe() [18:40:55.536] ...future.conditions <- base::list() [18:40:55.536] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.536] if (FALSE) { [18:40:55.536] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.536] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.536] } [18:40:55.536] ...future.result <- base::tryCatch({ [18:40:55.536] base::withCallingHandlers({ [18:40:55.536] ...future.value <- base::withVisible(base::local({ [18:40:55.536] ...future.makeSendCondition <- base::local({ [18:40:55.536] sendCondition <- NULL [18:40:55.536] function(frame = 1L) { [18:40:55.536] if (is.function(sendCondition)) [18:40:55.536] return(sendCondition) [18:40:55.536] ns <- getNamespace("parallel") [18:40:55.536] if (exists("sendData", mode = "function", [18:40:55.536] envir = ns)) { [18:40:55.536] parallel_sendData <- get("sendData", mode = "function", [18:40:55.536] envir = ns) [18:40:55.536] envir <- sys.frame(frame) [18:40:55.536] master <- NULL [18:40:55.536] while (!identical(envir, .GlobalEnv) && [18:40:55.536] !identical(envir, emptyenv())) { [18:40:55.536] if (exists("master", mode = "list", envir = envir, [18:40:55.536] inherits = FALSE)) { [18:40:55.536] master <- get("master", mode = "list", [18:40:55.536] envir = envir, inherits = FALSE) [18:40:55.536] if (inherits(master, c("SOCKnode", [18:40:55.536] "SOCK0node"))) { [18:40:55.536] sendCondition <<- function(cond) { [18:40:55.536] data <- list(type = "VALUE", value = cond, [18:40:55.536] success = TRUE) [18:40:55.536] parallel_sendData(master, data) [18:40:55.536] } [18:40:55.536] return(sendCondition) [18:40:55.536] } [18:40:55.536] } [18:40:55.536] frame <- frame + 1L [18:40:55.536] envir <- sys.frame(frame) [18:40:55.536] } [18:40:55.536] } [18:40:55.536] sendCondition <<- function(cond) NULL [18:40:55.536] } [18:40:55.536] }) [18:40:55.536] withCallingHandlers({ [18:40:55.536] { [18:40:55.536] do.call(function(...) { [18:40:55.536] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.536] if (!identical(...future.globals.maxSize.org, [18:40:55.536] ...future.globals.maxSize)) { [18:40:55.536] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.536] on.exit(options(oopts), add = TRUE) [18:40:55.536] } [18:40:55.536] { [18:40:55.536] lapply(seq_along(...future.elements_ii), [18:40:55.536] FUN = function(jj) { [18:40:55.536] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.536] ...future.FUN(...future.X_jj, ...) [18:40:55.536] }) [18:40:55.536] } [18:40:55.536] }, args = future.call.arguments) [18:40:55.536] } [18:40:55.536] }, immediateCondition = function(cond) { [18:40:55.536] sendCondition <- ...future.makeSendCondition() [18:40:55.536] sendCondition(cond) [18:40:55.536] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.536] { [18:40:55.536] inherits <- base::inherits [18:40:55.536] invokeRestart <- base::invokeRestart [18:40:55.536] is.null <- base::is.null [18:40:55.536] muffled <- FALSE [18:40:55.536] if (inherits(cond, "message")) { [18:40:55.536] muffled <- grepl(pattern, "muffleMessage") [18:40:55.536] if (muffled) [18:40:55.536] invokeRestart("muffleMessage") [18:40:55.536] } [18:40:55.536] else if (inherits(cond, "warning")) { [18:40:55.536] muffled <- grepl(pattern, "muffleWarning") [18:40:55.536] if (muffled) [18:40:55.536] invokeRestart("muffleWarning") [18:40:55.536] } [18:40:55.536] else if (inherits(cond, "condition")) { [18:40:55.536] if (!is.null(pattern)) { [18:40:55.536] computeRestarts <- base::computeRestarts [18:40:55.536] grepl <- base::grepl [18:40:55.536] restarts <- computeRestarts(cond) [18:40:55.536] for (restart in restarts) { [18:40:55.536] name <- restart$name [18:40:55.536] if (is.null(name)) [18:40:55.536] next [18:40:55.536] if (!grepl(pattern, name)) [18:40:55.536] next [18:40:55.536] invokeRestart(restart) [18:40:55.536] muffled <- TRUE [18:40:55.536] break [18:40:55.536] } [18:40:55.536] } [18:40:55.536] } [18:40:55.536] invisible(muffled) [18:40:55.536] } [18:40:55.536] muffleCondition(cond) [18:40:55.536] }) [18:40:55.536] })) [18:40:55.536] future::FutureResult(value = ...future.value$value, [18:40:55.536] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.536] ...future.rng), globalenv = if (FALSE) [18:40:55.536] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.536] ...future.globalenv.names)) [18:40:55.536] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.536] }, condition = base::local({ [18:40:55.536] c <- base::c [18:40:55.536] inherits <- base::inherits [18:40:55.536] invokeRestart <- base::invokeRestart [18:40:55.536] length <- base::length [18:40:55.536] list <- base::list [18:40:55.536] seq.int <- base::seq.int [18:40:55.536] signalCondition <- base::signalCondition [18:40:55.536] sys.calls <- base::sys.calls [18:40:55.536] `[[` <- base::`[[` [18:40:55.536] `+` <- base::`+` [18:40:55.536] `<<-` <- base::`<<-` [18:40:55.536] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.536] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.536] 3L)] [18:40:55.536] } [18:40:55.536] function(cond) { [18:40:55.536] is_error <- inherits(cond, "error") [18:40:55.536] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.536] NULL) [18:40:55.536] if (is_error) { [18:40:55.536] sessionInformation <- function() { [18:40:55.536] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.536] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.536] search = base::search(), system = base::Sys.info()) [18:40:55.536] } [18:40:55.536] ...future.conditions[[length(...future.conditions) + [18:40:55.536] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.536] cond$call), session = sessionInformation(), [18:40:55.536] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.536] signalCondition(cond) [18:40:55.536] } [18:40:55.536] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.536] "immediateCondition"))) { [18:40:55.536] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.536] ...future.conditions[[length(...future.conditions) + [18:40:55.536] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.536] if (TRUE && !signal) { [18:40:55.536] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.536] { [18:40:55.536] inherits <- base::inherits [18:40:55.536] invokeRestart <- base::invokeRestart [18:40:55.536] is.null <- base::is.null [18:40:55.536] muffled <- FALSE [18:40:55.536] if (inherits(cond, "message")) { [18:40:55.536] muffled <- grepl(pattern, "muffleMessage") [18:40:55.536] if (muffled) [18:40:55.536] invokeRestart("muffleMessage") [18:40:55.536] } [18:40:55.536] else if (inherits(cond, "warning")) { [18:40:55.536] muffled <- grepl(pattern, "muffleWarning") [18:40:55.536] if (muffled) [18:40:55.536] invokeRestart("muffleWarning") [18:40:55.536] } [18:40:55.536] else if (inherits(cond, "condition")) { [18:40:55.536] if (!is.null(pattern)) { [18:40:55.536] computeRestarts <- base::computeRestarts [18:40:55.536] grepl <- base::grepl [18:40:55.536] restarts <- computeRestarts(cond) [18:40:55.536] for (restart in restarts) { [18:40:55.536] name <- restart$name [18:40:55.536] if (is.null(name)) [18:40:55.536] next [18:40:55.536] if (!grepl(pattern, name)) [18:40:55.536] next [18:40:55.536] invokeRestart(restart) [18:40:55.536] muffled <- TRUE [18:40:55.536] break [18:40:55.536] } [18:40:55.536] } [18:40:55.536] } [18:40:55.536] invisible(muffled) [18:40:55.536] } [18:40:55.536] muffleCondition(cond, pattern = "^muffle") [18:40:55.536] } [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] if (TRUE) { [18:40:55.536] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.536] { [18:40:55.536] inherits <- base::inherits [18:40:55.536] invokeRestart <- base::invokeRestart [18:40:55.536] is.null <- base::is.null [18:40:55.536] muffled <- FALSE [18:40:55.536] if (inherits(cond, "message")) { [18:40:55.536] muffled <- grepl(pattern, "muffleMessage") [18:40:55.536] if (muffled) [18:40:55.536] invokeRestart("muffleMessage") [18:40:55.536] } [18:40:55.536] else if (inherits(cond, "warning")) { [18:40:55.536] muffled <- grepl(pattern, "muffleWarning") [18:40:55.536] if (muffled) [18:40:55.536] invokeRestart("muffleWarning") [18:40:55.536] } [18:40:55.536] else if (inherits(cond, "condition")) { [18:40:55.536] if (!is.null(pattern)) { [18:40:55.536] computeRestarts <- base::computeRestarts [18:40:55.536] grepl <- base::grepl [18:40:55.536] restarts <- computeRestarts(cond) [18:40:55.536] for (restart in restarts) { [18:40:55.536] name <- restart$name [18:40:55.536] if (is.null(name)) [18:40:55.536] next [18:40:55.536] if (!grepl(pattern, name)) [18:40:55.536] next [18:40:55.536] invokeRestart(restart) [18:40:55.536] muffled <- TRUE [18:40:55.536] break [18:40:55.536] } [18:40:55.536] } [18:40:55.536] } [18:40:55.536] invisible(muffled) [18:40:55.536] } [18:40:55.536] muffleCondition(cond, pattern = "^muffle") [18:40:55.536] } [18:40:55.536] } [18:40:55.536] } [18:40:55.536] })) [18:40:55.536] }, error = function(ex) { [18:40:55.536] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.536] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.536] ...future.rng), started = ...future.startTime, [18:40:55.536] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.536] version = "1.8"), class = "FutureResult") [18:40:55.536] }, finally = { [18:40:55.536] if (!identical(...future.workdir, getwd())) [18:40:55.536] setwd(...future.workdir) [18:40:55.536] { [18:40:55.536] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.536] ...future.oldOptions$nwarnings <- NULL [18:40:55.536] } [18:40:55.536] base::options(...future.oldOptions) [18:40:55.536] if (.Platform$OS.type == "windows") { [18:40:55.536] old_names <- names(...future.oldEnvVars) [18:40:55.536] envs <- base::Sys.getenv() [18:40:55.536] names <- names(envs) [18:40:55.536] common <- intersect(names, old_names) [18:40:55.536] added <- setdiff(names, old_names) [18:40:55.536] removed <- setdiff(old_names, names) [18:40:55.536] changed <- common[...future.oldEnvVars[common] != [18:40:55.536] envs[common]] [18:40:55.536] NAMES <- toupper(changed) [18:40:55.536] args <- list() [18:40:55.536] for (kk in seq_along(NAMES)) { [18:40:55.536] name <- changed[[kk]] [18:40:55.536] NAME <- NAMES[[kk]] [18:40:55.536] if (name != NAME && is.element(NAME, old_names)) [18:40:55.536] next [18:40:55.536] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.536] } [18:40:55.536] NAMES <- toupper(added) [18:40:55.536] for (kk in seq_along(NAMES)) { [18:40:55.536] name <- added[[kk]] [18:40:55.536] NAME <- NAMES[[kk]] [18:40:55.536] if (name != NAME && is.element(NAME, old_names)) [18:40:55.536] next [18:40:55.536] args[[name]] <- "" [18:40:55.536] } [18:40:55.536] NAMES <- toupper(removed) [18:40:55.536] for (kk in seq_along(NAMES)) { [18:40:55.536] name <- removed[[kk]] [18:40:55.536] NAME <- NAMES[[kk]] [18:40:55.536] if (name != NAME && is.element(NAME, old_names)) [18:40:55.536] next [18:40:55.536] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.536] } [18:40:55.536] if (length(args) > 0) [18:40:55.536] base::do.call(base::Sys.setenv, args = args) [18:40:55.536] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.536] } [18:40:55.536] { [18:40:55.536] if (base::length(...future.futureOptionsAdded) > [18:40:55.536] 0L) { [18:40:55.536] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.536] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.536] base::options(opts) [18:40:55.536] } [18:40:55.536] { [18:40:55.536] { [18:40:55.536] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.536] NULL [18:40:55.536] } [18:40:55.536] options(future.plan = NULL) [18:40:55.536] if (is.na(NA_character_)) [18:40:55.536] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.536] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.536] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.536] .init = FALSE) [18:40:55.536] } [18:40:55.536] } [18:40:55.536] } [18:40:55.536] }) [18:40:55.536] if (TRUE) { [18:40:55.536] base::sink(type = "output", split = FALSE) [18:40:55.536] if (TRUE) { [18:40:55.536] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.536] } [18:40:55.536] else { [18:40:55.536] ...future.result["stdout"] <- base::list(NULL) [18:40:55.536] } [18:40:55.536] base::close(...future.stdout) [18:40:55.536] ...future.stdout <- NULL [18:40:55.536] } [18:40:55.536] ...future.result$conditions <- ...future.conditions [18:40:55.536] ...future.result$finished <- base::Sys.time() [18:40:55.536] ...future.result [18:40:55.536] } [18:40:55.541] Exporting 5 global objects (0.99 KiB) to cluster node #1 ... [18:40:55.542] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... [18:40:55.542] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... DONE [18:40:55.542] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... [18:40:55.543] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... DONE [18:40:55.543] Exporting '...future.elements_ii' (101 bytes) to cluster node #1 ... [18:40:55.543] Exporting '...future.elements_ii' (101 bytes) to cluster node #1 ... DONE [18:40:55.544] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.544] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.544] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.545] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.545] Exporting 5 global objects (0.99 KiB) to cluster node #1 ... DONE [18:40:55.545] MultisessionFuture started [18:40:55.546] - Launch lazy future ... done [18:40:55.546] run() for 'MultisessionFuture' ... done [18:40:55.546] Created future: [18:40:55.562] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.562] - Validating connection of MultisessionFuture [18:40:55.562] - received message: FutureResult [18:40:55.563] - Received FutureResult [18:40:55.563] - Erased future from FutureRegistry [18:40:55.563] result() for ClusterFuture ... [18:40:55.563] - result already collected: FutureResult [18:40:55.564] result() for ClusterFuture ... done [18:40:55.564] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.546] MultisessionFuture: [18:40:55.546] Label: 'future_eapply-1' [18:40:55.546] Expression: [18:40:55.546] { [18:40:55.546] do.call(function(...) { [18:40:55.546] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.546] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.546] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.546] on.exit(options(oopts), add = TRUE) [18:40:55.546] } [18:40:55.546] { [18:40:55.546] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.546] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.546] ...future.FUN(...future.X_jj, ...) [18:40:55.546] }) [18:40:55.546] } [18:40:55.546] }, args = future.call.arguments) [18:40:55.546] } [18:40:55.546] Lazy evaluation: FALSE [18:40:55.546] Asynchronous evaluation: TRUE [18:40:55.546] Local evaluation: TRUE [18:40:55.546] Environment: R_GlobalEnv [18:40:55.546] Capture standard output: TRUE [18:40:55.546] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.546] Globals: 5 objects totaling 563 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 101 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.546] Packages: 1 packages ('stats') [18:40:55.546] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.546] Resolved: TRUE [18:40:55.546] Value: [18:40:55.546] Conditions captured: [18:40:55.546] Early signaling: FALSE [18:40:55.546] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.546] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.564] Chunk #1 of 2 ... DONE [18:40:55.564] Chunk #2 of 2 ... [18:40:55.565] - Finding globals in 'X' for chunk #2 ... [18:40:55.565] getGlobalsAndPackages() ... [18:40:55.565] Searching for globals... [18:40:55.565] [18:40:55.566] Searching for globals ... DONE [18:40:55.566] - globals: [0] [18:40:55.566] getGlobalsAndPackages() ... DONE [18:40:55.566] + additional globals found: [n=0] [18:40:55.566] + additional namespaces needed: [n=0] [18:40:55.566] - Finding globals in 'X' for chunk #2 ... DONE [18:40:55.567] - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [18:40:55.567] - seeds: [18:40:55.567] - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.567] getGlobalsAndPackages() ... [18:40:55.567] - globals passed as-is: [5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.568] Resolving globals: FALSE [18:40:55.568] Tweak future expression to call with '...' arguments ... [18:40:55.568] { [18:40:55.568] do.call(function(...) { [18:40:55.568] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.568] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.568] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.568] on.exit(options(oopts), add = TRUE) [18:40:55.568] } [18:40:55.568] { [18:40:55.568] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.568] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.568] ...future.FUN(...future.X_jj, ...) [18:40:55.568] }) [18:40:55.568] } [18:40:55.568] }, args = future.call.arguments) [18:40:55.568] } [18:40:55.569] Tweak future expression to call with '...' arguments ... DONE [18:40:55.569] - globals: [5] '...future.FUN', 'future.call.arguments', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [18:40:55.569] - packages: [1] 'stats' [18:40:55.570] getGlobalsAndPackages() ... DONE [18:40:55.570] run() for 'Future' ... [18:40:55.570] - state: 'created' [18:40:55.570] - Future backend: 'FutureStrategy', 'multisession', 'cluster', 'multiprocess', 'future', 'function' [18:40:55.589] - Future class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.589] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... [18:40:55.589] - Field: 'node' [18:40:55.590] - Field: 'label' [18:40:55.590] - Field: 'local' [18:40:55.590] - Field: 'owner' [18:40:55.590] - Field: 'envir' [18:40:55.590] - Field: 'workers' [18:40:55.591] - Field: 'packages' [18:40:55.591] - Field: 'gc' [18:40:55.591] - Field: 'conditions' [18:40:55.591] - Field: 'persistent' [18:40:55.591] - Field: 'expr' [18:40:55.592] - Field: 'uuid' [18:40:55.592] - Field: 'seed' [18:40:55.592] - Field: 'version' [18:40:55.592] - Field: 'result' [18:40:55.592] - Field: 'asynchronous' [18:40:55.593] - Field: 'calls' [18:40:55.593] - Field: 'globals' [18:40:55.593] - Field: 'stdout' [18:40:55.593] - Field: 'earlySignal' [18:40:55.594] - Field: 'lazy' [18:40:55.594] - Field: 'state' [18:40:55.594] - Copy elements of temporary 'MultisessionFuture' to final 'Future' object ... done [18:40:55.594] - Launch lazy future ... [18:40:55.595] Packages needed by the future expression (n = 1): 'stats' [18:40:55.595] Packages needed by future strategies (n = 0): [18:40:55.595] { [18:40:55.595] { [18:40:55.595] { [18:40:55.595] ...future.startTime <- base::Sys.time() [18:40:55.595] { [18:40:55.595] { [18:40:55.595] { [18:40:55.595] { [18:40:55.595] { [18:40:55.595] base::local({ [18:40:55.595] has_future <- base::requireNamespace("future", [18:40:55.595] quietly = TRUE) [18:40:55.595] if (has_future) { [18:40:55.595] ns <- base::getNamespace("future") [18:40:55.595] version <- ns[[".package"]][["version"]] [18:40:55.595] if (is.null(version)) [18:40:55.595] version <- utils::packageVersion("future") [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] version <- NULL [18:40:55.595] } [18:40:55.595] if (!has_future || version < "1.8.0") { [18:40:55.595] info <- base::c(r_version = base::gsub("R version ", [18:40:55.595] "", base::R.version$version.string), [18:40:55.595] platform = base::sprintf("%s (%s-bit)", [18:40:55.595] base::R.version$platform, 8 * [18:40:55.595] base::.Machine$sizeof.pointer), [18:40:55.595] os = base::paste(base::Sys.info()[base::c("sysname", [18:40:55.595] "release", "version")], collapse = " "), [18:40:55.595] hostname = base::Sys.info()[["nodename"]]) [18:40:55.595] info <- base::sprintf("%s: %s", base::names(info), [18:40:55.595] info) [18:40:55.595] info <- base::paste(info, collapse = "; ") [18:40:55.595] if (!has_future) { [18:40:55.595] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [18:40:55.595] info) [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [18:40:55.595] info, version) [18:40:55.595] } [18:40:55.595] base::stop(msg) [18:40:55.595] } [18:40:55.595] }) [18:40:55.595] } [18:40:55.595] ...future.mc.cores.old <- base::getOption("mc.cores") [18:40:55.595] base::options(mc.cores = 1L) [18:40:55.595] } [18:40:55.595] base::local({ [18:40:55.595] for (pkg in "stats") { [18:40:55.595] base::loadNamespace(pkg) [18:40:55.595] base::library(pkg, character.only = TRUE) [18:40:55.595] } [18:40:55.595] }) [18:40:55.595] } [18:40:55.595] ...future.strategy.old <- future::plan("list") [18:40:55.595] options(future.plan = NULL) [18:40:55.595] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.595] future::plan("default", .cleanup = FALSE, .init = FALSE) [18:40:55.595] } [18:40:55.595] ...future.workdir <- getwd() [18:40:55.595] } [18:40:55.595] ...future.oldOptions <- base::as.list(base::.Options) [18:40:55.595] ...future.oldEnvVars <- base::Sys.getenv() [18:40:55.595] } [18:40:55.595] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [18:40:55.595] future.globals.maxSize = 1048576000, future.globals.method = NULL, [18:40:55.595] future.globals.onMissing = NULL, future.globals.onReference = NULL, [18:40:55.595] future.globals.resolve = NULL, future.resolve.recursive = NULL, [18:40:55.595] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [18:40:55.595] future.stdout.windows.reencode = NULL, width = 80L) [18:40:55.595] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [18:40:55.595] base::names(...future.oldOptions)) [18:40:55.595] } [18:40:55.595] if (FALSE) { [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] if (TRUE) { [18:40:55.595] ...future.stdout <- base::rawConnection(base::raw(0L), [18:40:55.595] open = "w") [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [18:40:55.595] windows = "NUL", "/dev/null"), open = "w") [18:40:55.595] } [18:40:55.595] base::sink(...future.stdout, type = "output", split = FALSE) [18:40:55.595] base::on.exit(if (!base::is.null(...future.stdout)) { [18:40:55.595] base::sink(type = "output", split = FALSE) [18:40:55.595] base::close(...future.stdout) [18:40:55.595] }, add = TRUE) [18:40:55.595] } [18:40:55.595] ...future.frame <- base::sys.nframe() [18:40:55.595] ...future.conditions <- base::list() [18:40:55.595] ...future.rng <- base::globalenv()$.Random.seed [18:40:55.595] if (FALSE) { [18:40:55.595] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [18:40:55.595] "...future.value", "...future.globalenv.names", ".Random.seed") [18:40:55.595] } [18:40:55.595] ...future.result <- base::tryCatch({ [18:40:55.595] base::withCallingHandlers({ [18:40:55.595] ...future.value <- base::withVisible(base::local({ [18:40:55.595] ...future.makeSendCondition <- base::local({ [18:40:55.595] sendCondition <- NULL [18:40:55.595] function(frame = 1L) { [18:40:55.595] if (is.function(sendCondition)) [18:40:55.595] return(sendCondition) [18:40:55.595] ns <- getNamespace("parallel") [18:40:55.595] if (exists("sendData", mode = "function", [18:40:55.595] envir = ns)) { [18:40:55.595] parallel_sendData <- get("sendData", mode = "function", [18:40:55.595] envir = ns) [18:40:55.595] envir <- sys.frame(frame) [18:40:55.595] master <- NULL [18:40:55.595] while (!identical(envir, .GlobalEnv) && [18:40:55.595] !identical(envir, emptyenv())) { [18:40:55.595] if (exists("master", mode = "list", envir = envir, [18:40:55.595] inherits = FALSE)) { [18:40:55.595] master <- get("master", mode = "list", [18:40:55.595] envir = envir, inherits = FALSE) [18:40:55.595] if (inherits(master, c("SOCKnode", [18:40:55.595] "SOCK0node"))) { [18:40:55.595] sendCondition <<- function(cond) { [18:40:55.595] data <- list(type = "VALUE", value = cond, [18:40:55.595] success = TRUE) [18:40:55.595] parallel_sendData(master, data) [18:40:55.595] } [18:40:55.595] return(sendCondition) [18:40:55.595] } [18:40:55.595] } [18:40:55.595] frame <- frame + 1L [18:40:55.595] envir <- sys.frame(frame) [18:40:55.595] } [18:40:55.595] } [18:40:55.595] sendCondition <<- function(cond) NULL [18:40:55.595] } [18:40:55.595] }) [18:40:55.595] withCallingHandlers({ [18:40:55.595] { [18:40:55.595] do.call(function(...) { [18:40:55.595] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.595] if (!identical(...future.globals.maxSize.org, [18:40:55.595] ...future.globals.maxSize)) { [18:40:55.595] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.595] on.exit(options(oopts), add = TRUE) [18:40:55.595] } [18:40:55.595] { [18:40:55.595] lapply(seq_along(...future.elements_ii), [18:40:55.595] FUN = function(jj) { [18:40:55.595] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.595] ...future.FUN(...future.X_jj, ...) [18:40:55.595] }) [18:40:55.595] } [18:40:55.595] }, args = future.call.arguments) [18:40:55.595] } [18:40:55.595] }, immediateCondition = function(cond) { [18:40:55.595] sendCondition <- ...future.makeSendCondition() [18:40:55.595] sendCondition(cond) [18:40:55.595] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.595] { [18:40:55.595] inherits <- base::inherits [18:40:55.595] invokeRestart <- base::invokeRestart [18:40:55.595] is.null <- base::is.null [18:40:55.595] muffled <- FALSE [18:40:55.595] if (inherits(cond, "message")) { [18:40:55.595] muffled <- grepl(pattern, "muffleMessage") [18:40:55.595] if (muffled) [18:40:55.595] invokeRestart("muffleMessage") [18:40:55.595] } [18:40:55.595] else if (inherits(cond, "warning")) { [18:40:55.595] muffled <- grepl(pattern, "muffleWarning") [18:40:55.595] if (muffled) [18:40:55.595] invokeRestart("muffleWarning") [18:40:55.595] } [18:40:55.595] else if (inherits(cond, "condition")) { [18:40:55.595] if (!is.null(pattern)) { [18:40:55.595] computeRestarts <- base::computeRestarts [18:40:55.595] grepl <- base::grepl [18:40:55.595] restarts <- computeRestarts(cond) [18:40:55.595] for (restart in restarts) { [18:40:55.595] name <- restart$name [18:40:55.595] if (is.null(name)) [18:40:55.595] next [18:40:55.595] if (!grepl(pattern, name)) [18:40:55.595] next [18:40:55.595] invokeRestart(restart) [18:40:55.595] muffled <- TRUE [18:40:55.595] break [18:40:55.595] } [18:40:55.595] } [18:40:55.595] } [18:40:55.595] invisible(muffled) [18:40:55.595] } [18:40:55.595] muffleCondition(cond) [18:40:55.595] }) [18:40:55.595] })) [18:40:55.595] future::FutureResult(value = ...future.value$value, [18:40:55.595] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.595] ...future.rng), globalenv = if (FALSE) [18:40:55.595] list(added = base::setdiff(base::names(base::.GlobalEnv), [18:40:55.595] ...future.globalenv.names)) [18:40:55.595] else NULL, started = ...future.startTime, version = "1.8") [18:40:55.595] }, condition = base::local({ [18:40:55.595] c <- base::c [18:40:55.595] inherits <- base::inherits [18:40:55.595] invokeRestart <- base::invokeRestart [18:40:55.595] length <- base::length [18:40:55.595] list <- base::list [18:40:55.595] seq.int <- base::seq.int [18:40:55.595] signalCondition <- base::signalCondition [18:40:55.595] sys.calls <- base::sys.calls [18:40:55.595] `[[` <- base::`[[` [18:40:55.595] `+` <- base::`+` [18:40:55.595] `<<-` <- base::`<<-` [18:40:55.595] sysCalls <- function(calls = sys.calls(), from = 1L) { [18:40:55.595] calls[seq.int(from = from + 12L, to = length(calls) - [18:40:55.595] 3L)] [18:40:55.595] } [18:40:55.595] function(cond) { [18:40:55.595] is_error <- inherits(cond, "error") [18:40:55.595] ignore <- !is_error && !is.null(NULL) && inherits(cond, [18:40:55.595] NULL) [18:40:55.595] if (is_error) { [18:40:55.595] sessionInformation <- function() { [18:40:55.595] list(r = base::R.Version(), locale = base::Sys.getlocale(), [18:40:55.595] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [18:40:55.595] search = base::search(), system = base::Sys.info()) [18:40:55.595] } [18:40:55.595] ...future.conditions[[length(...future.conditions) + [18:40:55.595] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [18:40:55.595] cond$call), session = sessionInformation(), [18:40:55.595] timestamp = base::Sys.time(), signaled = 0L) [18:40:55.595] signalCondition(cond) [18:40:55.595] } [18:40:55.595] else if (!ignore && TRUE && inherits(cond, c("condition", [18:40:55.595] "immediateCondition"))) { [18:40:55.595] signal <- TRUE && inherits(cond, "immediateCondition") [18:40:55.595] ...future.conditions[[length(...future.conditions) + [18:40:55.595] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [18:40:55.595] if (TRUE && !signal) { [18:40:55.595] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.595] { [18:40:55.595] inherits <- base::inherits [18:40:55.595] invokeRestart <- base::invokeRestart [18:40:55.595] is.null <- base::is.null [18:40:55.595] muffled <- FALSE [18:40:55.595] if (inherits(cond, "message")) { [18:40:55.595] muffled <- grepl(pattern, "muffleMessage") [18:40:55.595] if (muffled) [18:40:55.595] invokeRestart("muffleMessage") [18:40:55.595] } [18:40:55.595] else if (inherits(cond, "warning")) { [18:40:55.595] muffled <- grepl(pattern, "muffleWarning") [18:40:55.595] if (muffled) [18:40:55.595] invokeRestart("muffleWarning") [18:40:55.595] } [18:40:55.595] else if (inherits(cond, "condition")) { [18:40:55.595] if (!is.null(pattern)) { [18:40:55.595] computeRestarts <- base::computeRestarts [18:40:55.595] grepl <- base::grepl [18:40:55.595] restarts <- computeRestarts(cond) [18:40:55.595] for (restart in restarts) { [18:40:55.595] name <- restart$name [18:40:55.595] if (is.null(name)) [18:40:55.595] next [18:40:55.595] if (!grepl(pattern, name)) [18:40:55.595] next [18:40:55.595] invokeRestart(restart) [18:40:55.595] muffled <- TRUE [18:40:55.595] break [18:40:55.595] } [18:40:55.595] } [18:40:55.595] } [18:40:55.595] invisible(muffled) [18:40:55.595] } [18:40:55.595] muffleCondition(cond, pattern = "^muffle") [18:40:55.595] } [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] if (TRUE) { [18:40:55.595] muffleCondition <- function (cond, pattern = "^muffle") [18:40:55.595] { [18:40:55.595] inherits <- base::inherits [18:40:55.595] invokeRestart <- base::invokeRestart [18:40:55.595] is.null <- base::is.null [18:40:55.595] muffled <- FALSE [18:40:55.595] if (inherits(cond, "message")) { [18:40:55.595] muffled <- grepl(pattern, "muffleMessage") [18:40:55.595] if (muffled) [18:40:55.595] invokeRestart("muffleMessage") [18:40:55.595] } [18:40:55.595] else if (inherits(cond, "warning")) { [18:40:55.595] muffled <- grepl(pattern, "muffleWarning") [18:40:55.595] if (muffled) [18:40:55.595] invokeRestart("muffleWarning") [18:40:55.595] } [18:40:55.595] else if (inherits(cond, "condition")) { [18:40:55.595] if (!is.null(pattern)) { [18:40:55.595] computeRestarts <- base::computeRestarts [18:40:55.595] grepl <- base::grepl [18:40:55.595] restarts <- computeRestarts(cond) [18:40:55.595] for (restart in restarts) { [18:40:55.595] name <- restart$name [18:40:55.595] if (is.null(name)) [18:40:55.595] next [18:40:55.595] if (!grepl(pattern, name)) [18:40:55.595] next [18:40:55.595] invokeRestart(restart) [18:40:55.595] muffled <- TRUE [18:40:55.595] break [18:40:55.595] } [18:40:55.595] } [18:40:55.595] } [18:40:55.595] invisible(muffled) [18:40:55.595] } [18:40:55.595] muffleCondition(cond, pattern = "^muffle") [18:40:55.595] } [18:40:55.595] } [18:40:55.595] } [18:40:55.595] })) [18:40:55.595] }, error = function(ex) { [18:40:55.595] base::structure(base::list(value = NULL, visible = NULL, [18:40:55.595] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [18:40:55.595] ...future.rng), started = ...future.startTime, [18:40:55.595] finished = Sys.time(), session_uuid = NA_character_, [18:40:55.595] version = "1.8"), class = "FutureResult") [18:40:55.595] }, finally = { [18:40:55.595] if (!identical(...future.workdir, getwd())) [18:40:55.595] setwd(...future.workdir) [18:40:55.595] { [18:40:55.595] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [18:40:55.595] ...future.oldOptions$nwarnings <- NULL [18:40:55.595] } [18:40:55.595] base::options(...future.oldOptions) [18:40:55.595] if (.Platform$OS.type == "windows") { [18:40:55.595] old_names <- names(...future.oldEnvVars) [18:40:55.595] envs <- base::Sys.getenv() [18:40:55.595] names <- names(envs) [18:40:55.595] common <- intersect(names, old_names) [18:40:55.595] added <- setdiff(names, old_names) [18:40:55.595] removed <- setdiff(old_names, names) [18:40:55.595] changed <- common[...future.oldEnvVars[common] != [18:40:55.595] envs[common]] [18:40:55.595] NAMES <- toupper(changed) [18:40:55.595] args <- list() [18:40:55.595] for (kk in seq_along(NAMES)) { [18:40:55.595] name <- changed[[kk]] [18:40:55.595] NAME <- NAMES[[kk]] [18:40:55.595] if (name != NAME && is.element(NAME, old_names)) [18:40:55.595] next [18:40:55.595] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.595] } [18:40:55.595] NAMES <- toupper(added) [18:40:55.595] for (kk in seq_along(NAMES)) { [18:40:55.595] name <- added[[kk]] [18:40:55.595] NAME <- NAMES[[kk]] [18:40:55.595] if (name != NAME && is.element(NAME, old_names)) [18:40:55.595] next [18:40:55.595] args[[name]] <- "" [18:40:55.595] } [18:40:55.595] NAMES <- toupper(removed) [18:40:55.595] for (kk in seq_along(NAMES)) { [18:40:55.595] name <- removed[[kk]] [18:40:55.595] NAME <- NAMES[[kk]] [18:40:55.595] if (name != NAME && is.element(NAME, old_names)) [18:40:55.595] next [18:40:55.595] args[[name]] <- ...future.oldEnvVars[[name]] [18:40:55.595] } [18:40:55.595] if (length(args) > 0) [18:40:55.595] base::do.call(base::Sys.setenv, args = args) [18:40:55.595] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [18:40:55.595] } [18:40:55.595] { [18:40:55.595] if (base::length(...future.futureOptionsAdded) > [18:40:55.595] 0L) { [18:40:55.595] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [18:40:55.595] base::names(opts) <- ...future.futureOptionsAdded [18:40:55.595] base::options(opts) [18:40:55.595] } [18:40:55.595] { [18:40:55.595] { [18:40:55.595] base::options(mc.cores = ...future.mc.cores.old) [18:40:55.595] NULL [18:40:55.595] } [18:40:55.595] options(future.plan = NULL) [18:40:55.595] if (is.na(NA_character_)) [18:40:55.595] Sys.unsetenv("R_FUTURE_PLAN") [18:40:55.595] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [18:40:55.595] future::plan(...future.strategy.old, .cleanup = FALSE, [18:40:55.595] .init = FALSE) [18:40:55.595] } [18:40:55.595] } [18:40:55.595] } [18:40:55.595] }) [18:40:55.595] if (TRUE) { [18:40:55.595] base::sink(type = "output", split = FALSE) [18:40:55.595] if (TRUE) { [18:40:55.595] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [18:40:55.595] } [18:40:55.595] else { [18:40:55.595] ...future.result["stdout"] <- base::list(NULL) [18:40:55.595] } [18:40:55.595] base::close(...future.stdout) [18:40:55.595] ...future.stdout <- NULL [18:40:55.595] } [18:40:55.595] ...future.result$conditions <- ...future.conditions [18:40:55.595] ...future.result$finished <- base::Sys.time() [18:40:55.595] ...future.result [18:40:55.595] } [18:40:55.602] Exporting 5 global objects (1.14 KiB) to cluster node #1 ... [18:40:55.602] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... [18:40:55.602] Exporting '...future.FUN' (311 bytes) to cluster node #1 ... DONE [18:40:55.603] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... [18:40:55.603] Exporting 'future.call.arguments' (97 bytes) to cluster node #1 ... DONE [18:40:55.603] Exporting '...future.elements_ii' (259 bytes) to cluster node #1 ... [18:40:55.604] Exporting '...future.elements_ii' (259 bytes) to cluster node #1 ... DONE [18:40:55.604] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... [18:40:55.607] Exporting '...future.seeds_ii' (27 bytes) to cluster node #1 ... DONE [18:40:55.607] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... [18:40:55.607] Exporting '...future.globals.maxSize' (27 bytes) to cluster node #1 ... DONE [18:40:55.608] Exporting 5 global objects (1.14 KiB) to cluster node #1 ... DONE [18:40:55.608] MultisessionFuture started [18:40:55.609] - Launch lazy future ... done [18:40:55.609] run() for 'MultisessionFuture' ... done [18:40:55.609] Created future: [18:40:55.624] receiveMessageFromWorker() for ClusterFuture ... [18:40:55.624] - Validating connection of MultisessionFuture [18:40:55.624] - received message: FutureResult [18:40:55.625] - Received FutureResult [18:40:55.625] - Erased future from FutureRegistry [18:40:55.625] result() for ClusterFuture ... [18:40:55.625] - result already collected: FutureResult [18:40:55.625] result() for ClusterFuture ... done [18:40:55.626] receiveMessageFromWorker() for ClusterFuture ... done [18:40:55.609] MultisessionFuture: [18:40:55.609] Label: 'future_eapply-2' [18:40:55.609] Expression: [18:40:55.609] { [18:40:55.609] do.call(function(...) { [18:40:55.609] ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [18:40:55.609] if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [18:40:55.609] oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [18:40:55.609] on.exit(options(oopts), add = TRUE) [18:40:55.609] } [18:40:55.609] { [18:40:55.609] lapply(seq_along(...future.elements_ii), FUN = function(jj) { [18:40:55.609] ...future.X_jj <- ...future.elements_ii[[jj]] [18:40:55.609] ...future.FUN(...future.X_jj, ...) [18:40:55.609] }) [18:40:55.609] } [18:40:55.609] }, args = future.call.arguments) [18:40:55.609] } [18:40:55.609] Lazy evaluation: FALSE [18:40:55.609] Asynchronous evaluation: TRUE [18:40:55.609] Local evaluation: TRUE [18:40:55.609] Environment: R_GlobalEnv [18:40:55.609] Capture standard output: TRUE [18:40:55.609] Capture condition classes: 'condition' (excluding 'nothing') [18:40:55.609] Globals: 5 objects totaling 721 bytes (function '...future.FUN' of 311 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 259 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [18:40:55.609] Packages: 1 packages ('stats') [18:40:55.609] L'Ecuyer-CMRG RNG seed: (seed = FALSE) [18:40:55.609] Resolved: TRUE [18:40:55.609] Value: [18:40:55.609] Conditions captured: [18:40:55.609] Early signaling: FALSE [18:40:55.609] Owner process: 81aa7e2e-374d-1fe5-1d88-f1c7cb8ede13 [18:40:55.609] Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future', 'environment' [18:40:55.626] Chunk #2 of 2 ... DONE [18:40:55.626] Launching 2 futures (chunks) ... DONE [18:40:55.626] Resolving 2 futures (chunks) ... [18:40:55.627] resolve() on list ... [18:40:55.627] recursive: 0 [18:40:55.627] length: 2 [18:40:55.627] [18:40:55.627] Future #1 [18:40:55.628] result() for ClusterFuture ... [18:40:55.628] - result already collected: FutureResult [18:40:55.628] result() for ClusterFuture ... done [18:40:55.628] result() for ClusterFuture ... [18:40:55.628] - result already collected: FutureResult [18:40:55.628] result() for ClusterFuture ... done [18:40:55.629] signalConditionsASAP(MultisessionFuture, pos=1) ... [18:40:55.629] - nx: 2 [18:40:55.629] - relay: TRUE [18:40:55.629] - stdout: TRUE [18:40:55.629] - signal: TRUE [18:40:55.630] - resignal: FALSE [18:40:55.630] - force: TRUE [18:40:55.630] - relayed: [n=2] FALSE, FALSE [18:40:55.630] - queued futures: [n=2] FALSE, FALSE [18:40:55.630] - until=1 [18:40:55.630] - relaying element #1 [18:40:55.631] result() for ClusterFuture ... [18:40:55.631] - result already collected: FutureResult [18:40:55.631] result() for ClusterFuture ... done [18:40:55.631] result() for ClusterFuture ... [18:40:55.631] - result already collected: FutureResult [18:40:55.631] result() for ClusterFuture ... done [18:40:55.632] result() for ClusterFuture ... [18:40:55.632] - result already collected: FutureResult [18:40:55.632] result() for ClusterFuture ... done [18:40:55.632] result() for ClusterFuture ... [18:40:55.632] - result already collected: FutureResult [18:40:55.633] result() for ClusterFuture ... done [18:40:55.633] - relayed: [n=2] TRUE, FALSE [18:40:55.633] - queued futures: [n=2] TRUE, FALSE [18:40:55.633] signalConditionsASAP(MultisessionFuture, pos=1) ... done [18:40:55.633] length: 1 (resolved future 1) [18:40:55.634] Future #2 [18:40:55.634] result() for ClusterFuture ... [18:40:55.634] - result already collected: FutureResult [18:40:55.634] result() for ClusterFuture ... done [18:40:55.634] result() for ClusterFuture ... [18:40:55.634] - result already collected: FutureResult [18:40:55.635] result() for ClusterFuture ... done [18:40:55.635] signalConditionsASAP(MultisessionFuture, pos=2) ... [18:40:55.635] - nx: 2 [18:40:55.635] - relay: TRUE [18:40:55.635] - stdout: TRUE [18:40:55.636] - signal: TRUE [18:40:55.636] - resignal: FALSE [18:40:55.636] - force: TRUE [18:40:55.636] - relayed: [n=2] TRUE, FALSE [18:40:55.636] - queued futures: [n=2] TRUE, FALSE [18:40:55.636] - until=2 [18:40:55.637] - relaying element #2 [18:40:55.637] result() for ClusterFuture ... [18:40:55.637] - result already collected: FutureResult [18:40:55.637] result() for ClusterFuture ... done [18:40:55.637] result() for ClusterFuture ... [18:40:55.638] - result already collected: FutureResult [18:40:55.638] result() for ClusterFuture ... done [18:40:55.638] result() for ClusterFuture ... [18:40:55.638] - result already collected: FutureResult [18:40:55.638] result() for ClusterFuture ... done [18:40:55.638] result() for ClusterFuture ... [18:40:55.639] - result already collected: FutureResult [18:40:55.639] result() for ClusterFuture ... done [18:40:55.639] - relayed: [n=2] TRUE, TRUE [18:40:55.639] - queued futures: [n=2] TRUE, TRUE [18:40:55.639] signalConditionsASAP(MultisessionFuture, pos=2) ... done [18:40:55.640] length: 0 (resolved future 2) [18:40:55.640] Relaying remaining futures [18:40:55.640] signalConditionsASAP(NULL, pos=0) ... [18:40:55.640] - nx: 2 [18:40:55.640] - relay: TRUE [18:40:55.640] - stdout: TRUE [18:40:55.641] - signal: TRUE [18:40:55.641] - resignal: FALSE [18:40:55.641] - force: TRUE [18:40:55.641] - relayed: [n=2] TRUE, TRUE [18:40:55.641] - queued futures: [n=2] TRUE, TRUE - flush all [18:40:55.642] - relayed: [n=2] TRUE, TRUE [18:40:55.642] - queued futures: [n=2] TRUE, TRUE [18:40:55.642] signalConditionsASAP(NULL, pos=0) ... done [18:40:55.642] resolve() on list ... DONE [18:40:55.642] result() for ClusterFuture ... [18:40:55.643] - result already collected: FutureResult [18:40:55.643] result() for ClusterFuture ... done [18:40:55.643] result() for ClusterFuture ... [18:40:55.643] - result already collected: FutureResult [18:40:55.643] result() for ClusterFuture ... done [18:40:55.643] result() for ClusterFuture ... [18:40:55.644] - result already collected: FutureResult [18:40:55.644] result() for ClusterFuture ... done [18:40:55.644] result() for ClusterFuture ... [18:40:55.644] - result already collected: FutureResult [18:40:55.644] result() for ClusterFuture ... done [18:40:55.645] - Number of value chunks collected: 2 [18:40:55.645] Resolving 2 futures (chunks) ... DONE [18:40:55.645] Reducing values from 2 chunks ... [18:40:55.645] - Number of values collected after concatenation: 3 [18:40:55.645] - Number of values expected: 3 [18:40:55.645] Reducing values from 2 chunks ... DONE [18:40:55.646] future_lapply() ... DONE [18:40:55.646] plan(): Setting new future strategy stack: [18:40:55.646] List of future strategies: [18:40:55.646] 1. sequential: [18:40:55.646] - args: function (..., envir = parent.frame(), workers = "") [18:40:55.646] - tweaked: FALSE [18:40:55.646] - call: plan(sequential) [18:40:55.654] plan(): nbrOfWorkers() = 1 *** strategy = 'multisession' ... done > > message("*** future_eapply() ... DONE") *** future_eapply() ... DONE > > source("incl/end.R") [18:40:55.656] plan(): Setting new future strategy stack: [18:40:55.656] List of future strategies: [18:40:55.656] 1. FutureStrategy: [18:40:55.656] - args: function (..., envir = parent.frame(), workers = "") [18:40:55.656] - tweaked: FALSE [18:40:55.656] - call: future::plan(oplan) [18:40:55.657] plan(): nbrOfWorkers() = 1 > > proc.time() user system elapsed 1.09 0.17 1.85