Last updated on 2025-04-12 20:51:43 CEST.
Flavor | Version | Tinstall | Tcheck | Ttotal | Status | Flags |
---|---|---|---|---|---|---|
r-devel-linux-x86_64-debian-clang | 1.0.2 | 3.36 | 107.31 | 110.67 | OK | |
r-devel-linux-x86_64-debian-gcc | 1.0.2 | 2.52 | 106.21 | 108.73 | OK | |
r-devel-linux-x86_64-fedora-gcc | 1.0.2 | 182.81 | OK | |||
r-devel-macos-arm64 | 1.0.2 | 116.00 | OK | |||
r-devel-macos-x86_64 | 1.0.2 | 176.00 | OK | |||
r-devel-windows-x86_64 | 1.0.2 | 4.00 | 175.00 | 179.00 | OK | |
r-patched-linux-x86_64 | 1.0.2 | 3.13 | 130.82 | 133.95 | OK | |
r-release-linux-x86_64 | 1.0.2 | OK | ||||
r-release-macos-arm64 | 1.0.2 | 110.00 | OK | |||
r-release-macos-x86_64 | 1.0.2 | 281.00 | OK | |||
r-release-windows-x86_64 | 1.0.2 | 6.00 | 354.00 | 360.00 | ERROR | |
r-oldrel-macos-arm64 | 1.0.2 | 117.00 | OK | |||
r-oldrel-macos-x86_64 | 1.0.2 | 266.00 | OK | |||
r-oldrel-windows-x86_64 | 1.0.2 | 5.00 | 208.00 | 213.00 | OK |
Version: 1.0.2
Check: tests
Result: ERROR
Running 'foreach_dofuture,cluster-missing-doFuture-pkg.R' [63s]
Running 'foreach_dofuture,errors.R' [13s]
Running 'foreach_dofuture,globals.R' [9s]
Running 'foreach_dofuture,nested_colon.R' [18s]
Running 'foreach_dofuture,nested_dofuture.R' [20s]
Running 'foreach_dofuture,rng.R' [5s]
Running 'foreach_dofuture.R' [4s]
Running 'foreach_dopar,cluster-missing-doFuture-pkg.R' [62s]
Running 'foreach_dopar,doRNG,dopar.R' [3s]
Running 'foreach_dopar,doRNG,dorng.R' [7s]
Running 'foreach_dopar,errors.R' [9s]
Running 'foreach_dopar,globals.R' [9s]
Running 'foreach_dopar,nested_colon.R' [16s]
Running 'foreach_dopar,nested_dopar.R' [20s]
Running 'foreach_dopar,options-for-export.R' [6s]
Running 'foreach_dopar.R' [4s]
Running 'makeChunks.R' [5s]
Running 'options,nested.R' [5s]
Running 'registerDoFuture.R' [2s]
Running 'times.R' [2s]
Running 'utils.R' [1s]
Running 'withDoRNG.R' [5s]
Running the tests in 'tests/foreach_dofuture,cluster-missing-doFuture-pkg.R' failed.
Complete output:
> source("incl/start.R")
Loading required package: foreach
Loading required package: future
R version 4.4.3 (2025-02-28 ucrt)
Platform: x86_64-w64-mingw32/x64
Running under: Windows Server 2022 x64 (build 20348)
Matrix products: default
locale:
[1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8
[3] LC_MONETARY=C LC_NUMERIC=C
[5] LC_TIME=C
time zone: Europe/Berlin
tzcode source: internal
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2
loaded via a namespace (and not attached):
[1] compiler_4.4.3 parallelly_1.43.0 tools_4.4.3
[4] parallel_4.4.3 future.apply_1.11.3 listenv_0.9.1
[7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37
[10] globals_0.16.3
> options(future.debug = FALSE)
>
> message("*** cluster() ...")
*** cluster() ...
>
> message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", "))
Library paths: 'D:/temp/2025_04_10_15_59_44_1950/RtmpU5NCQ7/RLIBS_7db8757752aa', 'D:/RCompile/recent/R-4.4.3/library'
> message("Package path: ", sQuote(system.file(package = "future")))
Package path: 'D:/RCompile/CRANpkg/lib/4.4/future'
>
> types <- "PSOCK"
> #if (supportsMulticore()) types <- c(types, "FORK")
>
> setupClusterWithoutPkgs <- function(type = "PSOCK",
+ withs = c("digest", "globals",
+ "listenv", "future"),
+ withouts = c("doFuture")) {
+ cl <- parallel::makeCluster(1L, type = type, timeout = 60)
+
+ ## Emulate a worker that does not have 'future' installed.
+ ## by setting a different user library path on the worker.
+ libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]]
+ attr(cl, "libs") <- libs
+
+ ## 'withouts' tops 'withs' for conveniency
+ withs <- setdiff(withs, withouts)
+
+ ## "Install" any 'withs' packages?
+ if (length(withs) > 0L) {
+ paths <- find.package(withs)
+ res <- parallel::clusterCall(cl, fun = sapply, X = paths,
+ FUN = file.copy, to = libs[1],
+ recursive = TRUE)[[1]]
+ res <- parallel::clusterCall(cl, fun = sapply, X = withs,
+ FUN = requireNamespace)[[1]]
+ }
+ attr(cl, "withs") <- res
+
+ ## Check whether 'future' is still available on the worker or not.
+ ## It could be that it is installed in the system library path, which
+ ## in case we cannot "hide" the future package from the worker.
+ res <- parallel::clusterCall(cl, fun = sapply, X = withouts,
+ FUN = requireNamespace)[[1]]
+ attr(cl, "withouts") <- res
+
+ cl
+ }
>
> cl <- NULL
> for (type in types) {
+ message(sprintf("Test set #1 with cluster type %s ...", sQuote(type)))
+
+ cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture"))
+ if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) {
+ plan(cluster, workers = cl, .init = FALSE)
+
+ ## Here we will get:
+ ## <UnexpectedFutureResultError: Unexpected result (of class
+ ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture
+ ## future (label = '<none>', expression = '{ ... }'):
+ ## Package 'future' is not installed on worker (r_version: ...)>
+ ## Note: This error is produced by the future backend when it recieves
+ ## the unexpected results.
+ res <- tryCatch({
+ y <- foreach(ii = 1:3) %dofuture% ii
+ }, error = identity)
+ print(res)
+ stopifnot(inherits(res, "FutureError"))
+ }
+ parallel::stopCluster(cl)
+ cl <- NULL
+
+ cl <- setupClusterWithoutPkgs(type)
+ if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) {
+ plan(cluster, workers = cl, .init = FALSE)
+
+ ## Here we will get:
+ ## <UnexpectedFutureResultError: Unexpected result (of class
+ ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture
+ ## future (label = '<none>', expression = '{ ... }'):
+ ## there is no package called 'doFuture'>
+ ## Note: This error is produced by the future backend when it recieves
+ ## the unexpected results.
+ res <- tryCatch({
+ y <- foreach(ii = 1:3) %dofuture% ii
+ }, error = identity)
+ print(res)
+ stopifnot(inherits(res, "FutureError"))
+ }
+ parallel::stopCluster(cl)
+ cl <- NULL
+
+ plan(sequential)
+
+ message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type)))
+ } ## for (type ...)
Test set #1 with cluster type 'PSOCK' ...
[00:29:18.869] doFuture2() ...
[00:29:18.959] Number of chunks: 1
[00:29:18.959] Number of futures (= number of chunks): 1
[00:29:18.959] seed = FALSE
[00:29:18.960] NULL
[00:29:18.965] seed = FALSE
[00:29:18.965] seed = FALSE
[00:29:18.966] - %dofuture% R expression:
[00:29:18.966] ii
[00:29:18.967] - foreach iterator arguments: [1] 'ii'
[00:29:18.967] - dummy globals (as locals): [1] 'ii'
[00:29:18.968] - R expression (map-reduce expression adjusted for RNG):
[00:29:18.968] {
[00:29:18.968] NULL
[00:29:18.968] "# doFuture():::doFuture2(): process chunk of elements"
[00:29:18.968] lapply(seq_along(...future.x_ii), FUN = function(jj) {
[00:29:18.968] ...future.x_jj <- ...future.x_ii[[jj]]
[00:29:18.968] {
[00:29:18.968] NULL
[00:29:18.968] ii <- NULL
[00:29:18.968] }
[00:29:18.968] ...future.env <- environment()
[00:29:18.968] local({
[00:29:18.968] for (name in names(...future.x_jj)) {
[00:29:18.968] assign(name, ...future.x_jj[[name]], envir = ...future.env,
[00:29:18.968] inherits = FALSE)
[00:29:18.968] }
[00:29:18.968] })
[00:29:18.968] NULL
[00:29:18.968] tryCatch(ii, error = identity)
[00:29:18.968] })
[00:29:18.968] }
[00:29:18.969] - identifying globals and packages ...
[00:29:18.970] - Argument 'globals':
[00:29:18.970] logi TRUE
[00:29:18.970] - attr(*, "add")= chr "...future.x_ii"
[00:29:18.970] - attr(*, "ignore")= chr "ii"
[00:29:18.974] - R expression (map-reduce expression searched for globals):
[00:29:18.975] {
[00:29:18.975] NULL
[00:29:18.975] "# doFuture():::doFuture2(): process chunk of elements"
[00:29:18.975] lapply(seq_along(...future.x_ii), FUN = function(jj) {
[00:29:18.975] ...future.x_jj <- ...future.x_ii[[jj]]
[00:29:18.975] {
[00:29:18.975] NULL
[00:29:18.975] ii <- NULL
[00:29:18.975] }
[00:29:18.975] ...future.env <- environment()
[00:29:18.975] local({
[00:29:18.975] for (name in names(...future.x_jj)) {
[00:29:18.975] assign(name, ...future.x_jj[[name]], envir = ...future.env,
[00:29:18.975] inherits = FALSE)
[00:29:18.975] }
[00:29:18.975] })
[00:29:18.975] NULL
[00:29:18.975] tryCatch(ii, error = identity)
[00:29:18.975] })
[00:29:18.975] }
[00:29:19.006] - R expression (%dofuture% expression searched for globals):
[00:29:19.006] ii
[00:29:19.009] - Globals in %dofuture% R expression not in map-reduce expression:
[00:29:19.010] - Appending 0 globals only found in the vanilla %dofuture% expression:
[00:29:19.010] - globals: [1] '...future.x_ii'
[00:29:19.010] List of 1
[00:29:19.010] $ ...future.x_ii: num 42
[00:29:19.010] - attr(*, "where")=List of 1
[00:29:19.010] ..$ ...future.x_ii:<environment: R_EmptyEnv>
[00:29:19.010] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
[00:29:19.010] - attr(*, "resolved")= logi FALSE
[00:29:19.010] - attr(*, "total_size")= num 39
[00:29:19.017] - packages: [1] 'doFuture'
[00:29:19.017] - identifying globals and packages ... DONE
[00:29:19.018] Launching 1 futures (chunks) ...
[00:29:19.018] Chunk #1 of 1 ...
[00:29:19.019] - Finding globals in 'args_list' for chunk #1 ...
[00:29:19.020]
[00:29:19.021]
[00:29:19.021] - Finding globals in 'args_list' for chunk #1 ... DONE
[00:29:19.021] - seeds: <none>
[00:29:19.032] Chunk #1 of 1 ... DONE
[00:29:19.032] Launching 1 futures (chunks) ... DONE
[00:29:19.033] - resolving futures
[00:29:19.033] - gathering results & relaying conditions (except errors)
<FutureInterruptError: A future ('doFuture2-1') of class ClusterFuture was interrupted, while running on 'localhost'>
Future UUID: 8e0585a760f78326f8fafd30ab5b11d0-2
DEBUG: BEGIN TROUBLESHOOTING HELP
Future involved:
ClusterFuture:
Label: 'doFuture2-1'
Expression:
{
NULL
"# doFuture():::doFuture2(): process chunk of elements"
lapply(seq_along(...future.x_ii), FUN = function(jj) {
...future.x_jj <- ...future.x_ii[[jj]]
{
NULL
ii <- NULL
}
...future.env <- environment()
local({
for (name in names(...future.x_jj)) {
assign(name, ...future.x_jj[[name]], envir = ...future.env,
inherits = FALSE)
}
})
NULL
tryCatch(ii, error = identity)
})
}
Lazy evaluation: FALSE
Asynchronous evaluation: TRUE
Local evaluation: TRUE
Environment: R_GlobalEnv
Capture standard output: TRUE
Capture condition classes: 'condition' (excluding '<none>')
Immediate condition classes: 'immediateCondition'
Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes)
Packages: 1 packages ('doFuture')
L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE)
Resolved: TRUE
Value: <not collected>
Conditions captured: <none>
Early signaling: FALSE
Owner process: 8e0585a760f78326f8fafd30ab5b11d0
Class: 'ClusterFuture', 'MultiprocessFuture', 'Future'
DEBUG: END TROUBLESHOOTING HELP
Error in serialize(data, node$con) : error writing to connection
Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize
Execution halted
Running the tests in 'tests/foreach_dopar,cluster-missing-doFuture-pkg.R' failed.
Complete output:
> source("incl/start.R")
Loading required package: foreach
Loading required package: future
R version 4.4.3 (2025-02-28 ucrt)
Platform: x86_64-w64-mingw32/x64
Running under: Windows Server 2022 x64 (build 20348)
Matrix products: default
locale:
[1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8
[3] LC_MONETARY=C LC_NUMERIC=C
[5] LC_TIME=C
time zone: Europe/Berlin
tzcode source: internal
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2
loaded via a namespace (and not attached):
[1] compiler_4.4.3 parallelly_1.43.0 tools_4.4.3
[4] parallel_4.4.3 future.apply_1.11.3 listenv_0.9.1
[7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37
[10] globals_0.16.3
> options(future.debug = FALSE)
>
> message("*** cluster() ...")
*** cluster() ...
>
> registerDoFuture()
>
> message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", "))
Library paths: 'D:/temp/2025_04_10_15_59_44_1950/RtmpU5NCQ7/RLIBS_7db8757752aa', 'D:/RCompile/recent/R-4.4.3/library'
> message("Package path: ", sQuote(system.file(package = "future")))
Package path: 'D:/RCompile/CRANpkg/lib/4.4/future'
>
> types <- "PSOCK"
> #if (supportsMulticore()) types <- c(types, "FORK")
>
> setupClusterWithoutPkgs <- function(type = "PSOCK",
+ withs = c("digest", "globals",
+ "listenv", "future"),
+ withouts = c("doFuture")) {
+ cl <- parallel::makeCluster(1L, type = type, timeout = 60)
+
+ ## Emulate a worker that does not have 'future' installed.
+ ## by setting a different user library path on the worker.
+ libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]]
+ attr(cl, "libs") <- libs
+
+ ## 'withouts' tops 'withs' for conveniency
+ withs <- setdiff(withs, withouts)
+
+ ## "Install" any 'withs' packages?
+ if (length(withs) > 0L) {
+ paths <- find.package(withs)
+ res <- parallel::clusterCall(cl, fun = sapply, X = paths,
+ FUN = file.copy, to = libs[1],
+ recursive = TRUE)[[1]]
+ res <- parallel::clusterCall(cl, fun = sapply, X = withs,
+ FUN = requireNamespace)[[1]]
+ }
+ attr(cl, "withs") <- res
+
+ ## Check whether 'future' is still available on the worker or not.
+ ## It could be that it is installed in the system library path, which
+ ## in case we cannot "hide" the future package from the worker.
+ res <- parallel::clusterCall(cl, fun = sapply, X = withouts,
+ FUN = requireNamespace)[[1]]
+ attr(cl, "withouts") <- res
+
+ cl
+ }
>
>
> cl <- NULL
> for (type in types) {
+ message(sprintf("Test set #1 with cluster type %s ...", sQuote(type)))
+
+ cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture"))
+ if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) {
+ plan(cluster, workers = cl, .init = FALSE)
+
+ ## Here we will get:
+ ## <UnexpectedFutureResultError: Unexpected result (of class
+ ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture
+ ## future (label = '<none>', expression = '{ ... }'):
+ ## Package 'future' is not installed on worker (r_version: ...)>
+ ## Note: This error is produced by the future backend when it recieves
+ ## the unexpected results.
+ res <- tryCatch({
+ y <- foreach(ii = 1:3) %dopar% ii
+ }, error = identity)
+ print(res)
+ stopifnot(inherits(res, "FutureError"))
+ }
+ parallel::stopCluster(cl)
+ cl <- NULL
+
+ cl <- setupClusterWithoutPkgs(type)
+ if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) {
+ plan(cluster, workers = cl, .init = FALSE)
+
+ ## Here we will get:
+ ## <UnexpectedFutureResultError: Unexpected result (of class
+ ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture
+ ## future (label = '<none>', expression = '{ ... }'):
+ ## there is no package called 'doFuture'>
+ ## Note: This error is produced by the future backend when it recieves
+ ## the unexpected results.
+ res <- tryCatch({
+ y <- foreach(ii = 1:3) %dopar% ii
+ }, error = identity)
+ print(res)
+ stopifnot(inherits(res, "FutureError"))
+ }
+ parallel::stopCluster(cl)
+ cl <- NULL
+
+ plan(sequential)
+
+ message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type)))
+ } ## for (type ...)
Test set #1 with cluster type 'PSOCK' ...
[00:31:30.064] doFuture() ...
[00:31:30.067] - dummy globals (as locals): [1] 'ii'
[00:31:30.067] - R expression:
[00:31:30.068] {
[00:31:30.068] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'"
[00:31:30.068] "# also in nested calls "
[00:31:30.068] doFuture::registerDoFuture()
[00:31:30.068] "# doFuture():::doFuture(): process chunk of elements"
[00:31:30.068] lapply(seq_along(...future.x_ii), FUN = function(jj) {
[00:31:30.068] ...future.x_jj <- ...future.x_ii[[jj]]
[00:31:30.068] {
[00:31:30.068] NULL
[00:31:30.068] ii <- NULL
[00:31:30.068] }
[00:31:30.068] ...future.env <- environment()
[00:31:30.068] local({
[00:31:30.068] for (name in names(...future.x_jj)) {
[00:31:30.068] assign(name, ...future.x_jj[[name]], envir = ...future.env,
[00:31:30.068] inherits = FALSE)
[00:31:30.068] }
[00:31:30.068] })
[00:31:30.068] tryCatch(ii, error = identity)
[00:31:30.068] })
[00:31:30.068] }
[00:31:30.069] - identifying globals and packages ...
[00:31:30.102] List of 1
[00:31:30.102] $ ...future.x_ii: NULL
[00:31:30.102] - attr(*, "where")=List of 1
[00:31:30.102] ..$ ...future.x_ii:<environment: R_EmptyEnv>
[00:31:30.102] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
[00:31:30.102] - attr(*, "resolved")= logi FALSE
[00:31:30.102] - attr(*, "total_size")= num 27
[00:31:30.114] - R expression:
[00:31:30.114] {
[00:31:30.114] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'"
[00:31:30.114] "# also in nested calls "
[00:31:30.114] doFuture::registerDoFuture()
[00:31:30.114] "# doFuture():::doFuture(): process chunk of elements"
[00:31:30.114] lapply(seq_along(...future.x_ii), FUN = function(jj) {
[00:31:30.114] ...future.x_jj <- ...future.x_ii[[jj]]
[00:31:30.114] {
[00:31:30.114] NULL
[00:31:30.114] ii <- NULL
[00:31:30.114] }
[00:31:30.114] ...future.env <- environment()
[00:31:30.114] local({
[00:31:30.114] for (name in names(...future.x_jj)) {
[00:31:30.114] assign(name, ...future.x_jj[[name]], envir = ...future.env,
[00:31:30.114] inherits = FALSE)
[00:31:30.114] }
[00:31:30.114] })
[00:31:30.114] tryCatch(ii, error = identity)
[00:31:30.114] })
[00:31:30.114] }
[00:31:30.115] - globals: [1] '...future.x_ii'
[00:31:30.116] List of 1
[00:31:30.116] $ ...future.x_ii: NULL
[00:31:30.116] - attr(*, "where")=List of 1
[00:31:30.116] ..$ ...future.x_ii:<environment: R_EmptyEnv>
[00:31:30.116] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list"
[00:31:30.116] - attr(*, "resolved")= logi FALSE
[00:31:30.116] - attr(*, "total_size")= num 27
[00:31:30.122] - packages: [1] 'doFuture'
[00:31:30.123] - identifying globals and packages ... DONE
[00:31:30.203] Number of chunks: 1
[00:31:30.203] Number of futures (= number of chunks): 1
[00:31:30.204] Launching 1 futures (chunks) ...
[00:31:30.204] Chunk #1 of 1 ...
[00:31:30.205] - Finding globals in 'args_list' chunk #1 ...
[00:31:30.206]
[00:31:30.206]
[00:31:30.207] - Finding globals in 'args_list' for chunk #1 ... DONE
[00:31:30.216] Chunk #1 of 1 ... DONE
[00:31:30.217] Launching 1 futures (chunks) ... DONE
[00:31:30.217] - resolving futures
[00:31:30.217] - gathering results & relaying conditions (except errors)
<FutureInterruptError: A future ('doFuture-1') of class ClusterFuture was interrupted, while running on 'localhost'>
Future UUID: a298d68c91b0891a3c10c7f976f01075-2
DEBUG: BEGIN TROUBLESHOOTING HELP
Future involved:
ClusterFuture:
Label: 'doFuture-1'
Expression:
{
"# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'"
"# also in nested calls "
doFuture::registerDoFuture()
"# doFuture():::doFuture(): process chunk of elements"
lapply(seq_along(...future.x_ii), FUN = function(jj) {
...future.x_jj <- ...future.x_ii[[jj]]
{
NULL
ii <- NULL
}
...future.env <- environment()
local({
for (name in names(...future.x_jj)) {
assign(name, ...future.x_jj[[name]], envir = ...future.env,
inherits = FALSE)
}
})
tryCatch(ii, error = identity)
})
}
Lazy evaluation: FALSE
Asynchronous evaluation: TRUE
Local evaluation: TRUE
Environment: R_GlobalEnv
Capture standard output: TRUE
Capture condition classes: 'condition' (excluding '<none>')
Immediate condition classes: 'immediateCondition'
Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes)
Packages: 1 packages ('doFuture')
L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE)
Resolved: TRUE
Value: <not collected>
Conditions captured: <none>
Early signaling: FALSE
Owner process: a298d68c91b0891a3c10c7f976f01075
Class: 'ClusterFuture', 'MultiprocessFuture', 'Future'
DEBUG: END TROUBLESHOOTING HELP
Error in serialize(data, node$con) : error writing to connection
Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize
Execution halted
Flavor: r-release-windows-x86_64
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.