Search code examples
rbioconductor

Affymetrix Custom CDF segmentation fault


I'm using the following CDF file for the Affymetrix chip of Brachypodium dystachion. Apparently, it follows all the rules of the Affymetrix CDF specification

http://giorgilab.org/BradiGiorgiMutwil001_txt.cdf

However, when I try to create a customcdf environment out of it, using R and the Bioconductor package makecdfenv

library(makecdfenv) make.cdf.package("BradiGiorgiMutwil001_txt.cdf",species="Brachypodium_dystachion")

I get the following error:

Reading CDF file.

* caught segfault * address 0x1, cause 'memory not mapped'

Traceback: 1: .Call("readCDFfile", as.character(file), as.integer(3), as.integer(compress), PACKAGE = "makecdfenv") 2: read.cdffile(file.path(path.expand(cdf.path), filename), compress = compress) 3: make.cdf.env(filename, cdf.path = cdf.path, compress = compress, return.env.only = FALSE) 4: make.cdf.package("BradiGiorgiMutwil001_txt.cdf", species = "Brachypodium_dystachion")

Is there anything that strikes you as wrong in the input CDF file? I'm totally puzzled, because I don't know how to interprete this segmentation fault, nor how to trace it to a specific problem. Something similar happens while using the affxparser Bioconductor package, so it must be a problem with the CDF fields (and not with the package).

Thanks a lot! :-)

Federico


Solution

  • The function make.cdf.package() does not require a binary cdf, so there is no reason to have a test.

    I took a look at this yesterday, and there isn't anything obviously wrong with this cdf, so it's nice that simply converting to binary fixes things.