`BiocFileCache()` inducing R abort
Closed this issue · 2 comments
In a clean R session, BiocFileCache seems to be causing a hard crash. I've tested on version 1.9.1 and 1.9.0 and get this behaviour. Not sure here what the underlying cause is. I discovered this in using the HCAData
package.
> BiocFileCache::BiocFileCache()
*** caught illegal operation ***
address 0x7f7ad1803fd3, cause 'illegal operand'
Traceback:
1: select_impl(.data, vars)
2: select.data.frame(.data, !!!dots)
3: select(.data, !!!dots)
4: select_.data.frame(., ~-id)
5: select_(., ~-id)
6: function_list[[k]](value)
7: withVisible(function_list[[k]](value))
8: freduce(value, `_function_list`)
9: `_fseq`(`_lhs`)
10: eval(quote(`_fseq`(`_lhs`)), env, env)
11: eval(quote(`_fseq`(`_lhs`)), env, env)
12: withVisible(eval(quote(`_fseq`(`_lhs`)), env, env))
13: tbl %>% select_(~-id)
14: .sql_get_resource_table(bfc)
15: eval(lhs, parent, parent)
16: eval(lhs, parent, parent)
17: .sql_get_resource_table(bfc) %>% select_("rid") %>% .formatID
18: .get_all_rids(x)
19: bfcrid(x)
20: bfcrid(x)
21: bfcinfo(x)
22: bfcinfo(x)
23: bfccount(bfcinfo(x))
24: bfccount(object)
25: bfccount(object)
26: cat("class: ", class(object), "\n", "bfccache: ", bfccache(object), "\n", "bfccount: ", bfccount(object), "\n", "For more information see: bfcinfo() or bfcquery()\n", sep = "")
27: (new("standardGeneric", .Data = function (object) standardGeneric("show"), generic = "show", package = "methods", group = list(), valueClass = character(0), signature = "object", default = new("derivedDefaultMethod", .Data = function (object) showDefault(object, FALSE), target = new("signature", .Data = "ANY", names = "object", package = "methods"), defined = new("signature", .Data = "ANY", names = "object", package = "methods"), generic = "show"), skeleton = (new("derivedDefaultMethod", .Data = function (object) showDefault(object, FALSE), target = new("signature", .Data = "ANY", names = "object", package = "methods"), defined = new("signature", .Data = "ANY", names = "object", package = "methods"), generic = "show"))(object)))(new("BiocFileCache", cache = "/home/ramezqui/.cache/BiocFileCache"))
28: (new("standardGeneric", .Data = function (object) standardGeneric("show"), generic = "show", package = "methods", group = list(), valueClass = character(0), signature = "object", default = new("derivedDefaultMethod", .Data = function (object) showDefault(object, FALSE), target = new("signature", .Data = "ANY", names = "object", package = "methods"), defined = new("signature", .Data = "ANY", names = "object", package = "methods"), generic = "show"), skeleton = (new("derivedDefaultMethod", .Data = function (object) showDefault(object, FALSE), target = new("signature", .Data = "ANY", names = "object", package = "methods"), defined = new("signature", .Data = "ANY", names = "object", package = "methods"), generic = "show"))(object)))(new("BiocFileCache", cache = "/home/ramezqui/.cache/BiocFileCache"))
Session Info:
> sessionInfo()
R version 3.6.0 (2019-04-26)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 14.04.5 LTS
Matrix products: default
BLAS/LAPACK: /app/easybuild/software/OpenBLAS/0.2.18-GCC-5.4.0-2.26-LAPACK-3.6.1/lib/libopenblas_prescottp-r0.2.18.so
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8
[4] LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] here_0.1 fs_1.3.1 devtools_2.1.0 usethis_1.5.1
loaded via a namespace (and not attached):
[1] Rcpp_1.0.2 ps_1.3.0 prettyunits_1.0.2 rprojroot_1.3-2 withr_2.1.2
[6] digest_0.6.20 crayon_1.3.4 assertthat_0.2.1 R6_2.4.0 backports_1.1.4
[11] magrittr_1.5 rlang_0.4.0 cli_1.1.0 remotes_2.1.0 testthat_2.2.1
[16] callr_3.3.1 desc_1.2.0 tools_3.6.0 glue_1.3.1 compiler_3.6.0
[21] pkgload_1.0.2 processx_3.4.1 pkgbuild_1.0.3 sessioninfo_1.1.1 memoise_1.1.0
Also tried to remove the ~/.cache
folder completely and re-create it, but this causes yet another R crash.
# after removing ~/.cache
> BiocFileCache::BiocFileCache()
/home/ramezqui/.cache/BiocFileCache
does not exist, create directory? (yes/no): yes
*** caught illegal operation ***
address 0x7f5f431c6fd3, cause 'illegal operand'
Can you confirm that your packages are consistent within the Bioconductor release BiocManager::valid()
and that the error occurs in a new R session without any additional packages attached? Also the sessionInfo after loading BiocFileCache (but before the crash!)
Indeed, the BiocManager::valid() returned FALSE
- running that to reinstall the packages and fixing the dependencies (possibly alongside clearing the cache?) ended up fixing the issue!