Nothing
test_that("dispatch_opts$auto_table streams data.frame returns into a table sink", {
pool_stop()
on.exit(pool_stop(), add = TRUE)
n <- 100L
blocks <- shards(n, workers = 2)
res <- shard_map(
blocks,
fun = function(sh) {
data.frame(i = sh$idx, v = sh$idx * 2L)
},
workers = 2,
chunk_size = 1L,
autotune = FALSE,
dispatch_mode = "rpc_chunked",
dispatch_opts = list(auto_table = TRUE, auto_table_materialize = "never"),
diagnostics = TRUE
)
expect_true(succeeded(res))
handle <- results(res)
expect_true(inherits(handle, "shard_row_groups"))
expect_equal(stream_count(handle), n)
df <- collect(handle)
expect_equal(nrow(df), n)
expect_equal(sort(df$i), 1:n)
expect_equal(df$v[order(df$i)], (1:n) * 2L)
})
test_that("auto_table requires out= to be empty", {
pool_stop()
on.exit(pool_stop(), add = TRUE)
n <- 10L
blocks <- shards(n, workers = 2)
out <- buffer("integer", dim = n, init = 0L, backing = "mmap")
expect_error(
shard_map(
blocks,
out = list(out = out),
fun = function(sh, out) {
out[sh$idx] <- sh$idx
data.frame(i = sh$idx)
},
workers = 2,
chunk_size = 1L,
autotune = FALSE,
dispatch_mode = "rpc_chunked",
dispatch_opts = list(auto_table = TRUE),
diagnostics = TRUE
),
"requires out="
)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.