dmrseq error: promise already under evaluation??
Entering edit mode
sorjuelal • 0
Last seen 14 months ago


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 • 418 views
Entering edit mode


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 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

Entering edit mode

Hi, thanks for answering!

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.

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

Entering edit mode
keegan ▴ 60
Last seen 10 weeks ago
Vancouver, BC, Canada


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: I was able to rebuild/resave the object by building it with the BSseq function like so:

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


Login before adding your answer.

Traffic: 395 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6