Closed CathG closed 6 years ago
Are you able to share a minimal example that reproduces this error?
Thank you for your reply, I am trying to create one (the "minimal" part is the trickiest...)
Yes, it can be tough to create a minimal example with WGBS.
My suggestion would be to start with 2 samples where each sample has data from (possibly different) small chromosomes (e.g., chr21, chr22 if human).
I'm not sure about the minimal example but at least it reproduces the error:
gr <- GRanges(seqnames=rep(paste0("chr", 1:10), e=1000000), IRanges(1:10000000, width=1L), strand="*")
set.seed(123); M_test <- Cov_test <- matrix(sample(1:100, 1000000000, replace=TRUE), ncol=100)
bsseq_test <- BSseq(M=M_test, Cov=Cov_test, gr=gr, sampleNames=paste("ech", 1:100, sep="_"))
collapseBSseq(bsseq_test, rep("ech", 100))
Makes me get: Error in serialize(data, node$con) : erreur d'écriture vers la connexion Erreur : failed to stop ‘SOCKcluster’ cluster: erreur d'écriture vers la connexion
Both french parts mean something like "error in writing to connection"
Another error message I can get is : Error in summary.connection(connection) : connexion incorrecte (which means "incorrect connection")
You are mixing-and-matching release and development versions of Bioconductor packages. This is not recommended and is not supported. Specifically, you are using the development version of bsseq (v1.15.2) but should be using the release version (currently v1.14.0) on that version of (R 3.4.4).
Please run BiocInstaller::biocValid()
; this should confirm my diagnosis and will give you instructions to fix the problem. Also, please read https://www.bioconductor.org/install/ for details on the release and development versions of Bioconductor.
To round this out, your example worked for me using both the current release version (v1.14.0 on R 3.4.3) and the ~development version (v1.15.2 on R devel) of bsseq~ (see https://github.com/hansenlab/bsseq/issues/65#issuecomment-380501886). I tested on Linux because I don't have access to a Windows machine, but there are no errors in the current Bioconductor build reports on Windows.
I'm going to close this issue but please re-open if you are still having this problem after fixing your Bioconductor installation.
Update: I can reproduce the error with v1.15.2
and a proper installation of the Bioconductor devel branch
library(bsseq)
# Reformatted @CathG example
gr <- GRanges(
seqnames = rep(paste0("chr", 1:10), each = 1000000),
IRanges(1:10000000, width = 1L),
strand = "*")
set.seed(123)
M_test <- Cov_test <- matrix(sample(1:100, 1000000000, replace = TRUE),
ncol=100)
bsseq_test <- BSseq(
M = M_test,
Cov = Cov_test,
gr = gr,
sampleNames = paste("ech", 1:100, sep = "_"))
collapseBSseq(bsseq_test, rep("ech", 100))
Error in serialize(data, node$con, xdr = FALSE) : ignoring SIGPIPE signal
Error: failed to stop ‘SOCKcluster’ cluster: error writing to connection
@CathG You should still fix your Bioconductor installation. I will fix this bug for the next release of bsseq.
Hi, sorry for the late reply. Re the comment about mixing-matching versions, I plaid guilty: I wanted update version of bsseq (and thus had to update DelayedMatrix) but didn't want to run on the devel version of R, hence I couldn't get the proper version of Bioconductor. I'll wait for the patch to upgrade everything and, for now, I'll downgrade what has to, in order to have only matching versions. Thank you very much
The root of the problem is https://github.com/Bioconductor/DelayedArray/issues/16
@CathG I'll provide a fix to your issue in bsseq
@CathG This should now be fixed (https://github.com/hansenlab/bsseq/pull/66). At least, the example in https://github.com/hansenlab/bsseq/issues/65#issuecomment-380501886 now succeeds .
Would you mind testing this on your own machine? The new version should be available in the next few days using BiocInstaller::biocLite("bsseq")
(devel branch only). Alternatively, you can install from github using devtools::install_github("hansenlab/bsseq")
@PeteHaitch Thanks for the fixes.
I tried to install the fixed package on my computer (with my "old" release of R) but I had a problem with S4Vectors
.
I tried to only apply your patches (redifining all functions directly in my session) but got an "infinite recursion" problem...
I installed R new release but had problem with some packages, first one being data.table
, which gave "non-zero exit status" when I tried to install it from source (as it is not yet available for new release)...
I'm kind of out of idea for now :-/ so as data.table
for R3.5 is supposed to be available on CRAN very soon so I'll probably wait until then (next week?) to do more tests.
Thanks for trying, @CathG. It can be frustrating getting the environment set up, especially during this change over period.
I did see that there are some issues with data.table with R 3.5 on Windows. So it seems we might have to wait a few days until that is fixed before we can finally resolve this problem.
Thanks for your patience!
@PeteHaitch Hi! data.table
is not a problem anymore but I cannot seem to make HDF5Array work. It seems to install correctly but fail to load. I only get the following error:
Error : .onLoad failed in loadNamespace() for 'HDF5Array', details:
call: H5Fcreate(file)
error: HDF5. File accessibilty. Unable to open file.
Do you have an idea how I can solve that (I didn't find anything informative on the web)? Thank you very much
Can you isolate the issue to a minimal example? Please include the output of BiocInstaller::biocValid()
the output of biocInstaller::biocValid
:
sessionInfo()
R version 3.5.0 (2018-04-23) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 16299)
Matrix products: default
locale: [1] LC_COLLATE=French_France.1252 LC_CTYPE=French_France.1252 >LC_MONETARY=French_France.1252 LC_NUMERIC=C LC_TIME=French_France.1252
attached base packages: [1] parallel stats4 stats graphics grDevices utils datasets methods base
other attached packages: [1] DelayedArray_0.6.0 httr_1.3.1 rhdf5_2.24.0 BiocParallel_1.13.1 IRanges_2.14.1 >S4Vectors_0.18.1 BiocGenerics_0.26.0 matrixStats_0.53.1 BiocInstaller_1.30.0
loaded via a namespace (and not attached): [1] withr_2.1.2 digest_0.6.15 R6_2.2.2 git2r_0.21.0 curl_3.2 devtools_1.13.5 Rhdf5lib_1.2.0 tools_3.5.0 compiler_3.5.0 memoise_1.1.0
Library path directories: C:/Program Files/R/R-3.5.0/library
Out-of-date packages Package LibPath Installed Built ReposVer Repository
BiocParallel "BiocParallel" "C:/Program Files/R/R-3.5.0/library" "1.13.1" "3.5.0" "1.14.0" "https://bioconductor.org/packages/3.7/bioc/src/contrib"update with biocLite()
Erreur : 1 package(s) out of date )
I did try to update with biocLite()
but it didn't change the status.
I just try to install bsseq
with devtools::install_github("hansenlab/bsseq")
, or even just try to load HDF5Array
with library
but I get the error (I tried to translate it from French to English, I hope the messages are correct):
library(HDF5Array)
Error : package or namespace load failed for ‘HDF5Array’: .onLoad failed in loadNamespace() for 'HDF5Array', details : call : H5Fcreate(file) error : HDF5. File accessibilty. Unable to open file.
Please try:
# Removing these is probably overkill but can sometimes fix weird bugs
remove.packages(c("DelayedArray", "HDF5Array"))
# Install all packages using biocLite()
# NOTE: updating BiocParallel as recommended by biocValid())
BiocInstaller::biocLite(c("DelayedArray", "HDF5Array", "BiocParallel", "bsseq"))
library(HDF5Array)
I get the same error :-(
BiocParallel
does not seem to install correctly as I still get the following message:
Old packages: 'BiocParallel', 'MASS', 'survival'
Could it be related to the error I'm getting?
Bugger :( Can you please try this:
library(BiocInstaller)
# Removing these is probably overkill but can sometimes fix weird bugs
remove.packages(c("DelayedArray", "HDF5Array", "bsseq", "BiocParallel", "rhdf5", "Rhdf5lib"))
# Install all packages using biocLite()
biocLite(c("DelayedArray", "HDF5Array", "BiocParallel", "bsseq"))
library(HDF5Array)
and then share the full output of biocValid()
?
If that still doesn't work, might I suggest we move this to http://support.bioconductor.org/? I think we need to first fix your Bioconductor installation before we can return to the issue with bsseq:: collapseBSseq()
. There are more people there who might be able to help fix your installation.
still does not work :-(, output of biocValid(): biocValid()
* sessionInfo()
R version 3.5.0 (2018-04-23)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 16299)
Matrix products: default
locale:
[1] LC_COLLATE=French_France.1252 LC_CTYPE=French_France.1252 LC_MONETARY=French_France.1252 LC_NUMERIC=C
[5] LC_TIME=French_France.1252
attached base packages:
[1] parallel stats4 stats graphics grDevices utils datasets methods base
other attached packages:
[1] rhdf5_2.24.0 DelayedArray_0.6.0 BiocParallel_1.13.1 IRanges_2.14.1 S4Vectors_0.18.1 BiocGenerics_0.26.0
[7] matrixStats_0.53.1 BiocInstaller_1.30.0
loaded via a namespace (and not attached):
[1] compiler_3.5.0 tools_3.5.0 Rhdf5lib_1.2.0
Library path directories:
C:/Program Files/R/R-3.5.0/library
* Out-of-date packages
Package LibPath Installed Built ReposVer
BiocParallel "BiocParallel" "C:/Program Files/R/R-3.5.0/library" "1.13.1" "3.5.0" "1.14.0"
Repository
BiocParallel "https://bioconductor.org/packages/3.7/bioc/src/contrib"
update with biocLite()
Erreur : 1 package(s) out of date
I'll ask on bioconductor, hopefully it can be fixed quickly and I'll soon post that everything works with your patches and this issue can be closed. Thanks.
Ok, thanks. Sorry this has been so frustrating!
It kind of is indeed. At least I have managed to get a TRUE
output for biocValid()
now, which is promising...
update: BiocParallel is not a problem anymore (the issue was with Rtools not being in the path) but the problem remains with HDF5Array
Note to self: issue with HDF5Array is being discussed at https://support.bioconductor.org/p/108548/
Any update on this @CathG? I see it looks like you're still trying to resolve your issue with HDF5Array.
Hi @PeteHaitch I'm indeed still stuck at the HDF5Array
step, nothing seems to work :-(
Have you tried the nuclear option of recording names of installed packages, deleting your package directory(s), and reinstalling all using BiocInstaller::biocLite()
?
@PeteHaitch I did but it didn't change the error
FWIW (and it won't happen immediately) I'm looking to make HDF5Array a suggested rather than required dependency.
@PeteHaitch though (problem resolved with the new version of HDF5Array
issue is not totally resolved,rhdf5
) I was able to load the package and try your fix and now it works fine. Thanks :-)
I updated
bsseq
(andDelayedMatrix
) andcollapseBSseq
, which was working as expected prior to this, crashes now, giving me a connection error (Error in serialize(data, node$con) / failed to stop ‘SOCKcluster’ cluster), which corresponds to my RAM reaching the maximum (64 Go).My
SessionInfo()
:Thanks