dmrseq error: promise already under evaluation??
1
0
Entering edit mode
sorjuelal • 0
@sorjuelal-18470
Last seen 22 months ago

Hi,

I keep getting this error when calling DMRs <- dmrseq(bs=bs, testCovariate="group", cutoff = 0.05, BPPARAM = MulticoreParam(1))

After running through chr1 and chr2, it suddenly causes: Error in asin.gls.cov(ix = ind[Index], design = design, coeff = coeff) :promise already under evaluation: recursive default argument reference or earlier problems?

the pData(bs) looks like:

DataFrame with 6 rows and 2 columns
group   patient
<factor> <integer>
B02_22093.CRC           non         1
B02_22093.NORMAL NORMAL.non         1
B02_2911.CRC            non         2
B02_2911.NORMAL  NORMAL.non         2
B03_501.CRC             non         3
B03_501.NORMAL   NORMAL.non         3


I ran the test dataset data(BS.chr21), and it ran fine, so I wonder if it has to do with running one chromosome after the other?

Any ideas are appreciated!

dmrseq Methylation • 576 views
0
Entering edit mode

Hi,

Thank you for reporting this issue.

Can you verify which version of dmrseq you are using, and check that all other packages are up to date (using BiocManager::valid())?

If you are using a current version with updated dependencies and the error still persists, would you be able to send along a subset of the BSseq object you are using as an .rds file (either linked here or via email to keegan at jimmy.harvard.edu). The subset including just the chromosome that throws the error should be sufficient. That will help me to diagnose the error message.

Thank you!

Best, Keegan

0
Entering edit mode

So BiocManager::valid() is TRUE, and dmrseq version is 1.4.5.

I was making a subset for you with 2 chromosomes, and tested it and worked (???). Now that I'm testing the full first two chromosomes, it complains again. I will send you this last one by email (if it's not too big), otherwise I'll test with other subsets, and see where it fails.

0
Entering edit mode

Thanks for checking on the version and dependencies.

If a single chromosome runs fine, this might be an out of memory issue.

If the file is too large, shoot me an email and I'll send you back a link where you can upload it.

Best, Keegan

1
Entering edit mode
keegan ▴ 60
@keegan-11987
Last seen 9 months ago

Hi,

Thank you for sending the example object. I was able to track down the issue and just pushed a fix (the bug was introduced by a recent commit). Using the latest version, I am able to run dmrseq successfully on the object. The latest versions are available on Github immediately and through Bioc Devel and Release in the day or two. Please let me know if you have any further issues.

As a side note, it seems that the object you sent might have been created using an earlier version of bsseq since the file size is so large compared to the number of loci in the object (see this related issue: https://github.com/hansenlab/bsseq/issues/75). I was able to rebuild/resave the object by building it with the BSseq function like so:

library(bsseq)
bs_new <- BSseq(M = getCoverage(bs, type = "M"),
Cov = getCoverage(bs, type = "Cov"),
pos = start(bs),
chr = as.character(seqnames(bs)))
pData(bs_new) <- pData(bs)
saveRDS(bs_new, file="exData.rds")


The resulting rds file is only 24Kb (> 20K times smaller than the original 1.13Gb).

Best, Keegan