Re: [aroma.affymetrix] Re: convertCdf() crashes R while converting BrainArray custom CDF for Affy HT_HG-U133_Plus_PM

2011-07-13 Thread Kasper Daniel Hansen
On Wed, Jul 13, 2011 at 4:43 PM, Henrik Bengtsson
 wrote:
> PS. I would agree that affxparser should not core dump here.  However,
> it is a rather particular file format error and the core dump occurs
> in the Affymetrix Fusion SDK code that affxparser utilizes and there
> is little we can to protect against this in affxparser.

This is a recurrent problem.

Is there any way we could leverage the exception handling in C++ to
handle this?  I know little of this, and I know it depends on what
exception is thrown by the SDK, but it might be possible using some
kind of catch functionality.

Kasper

-- 
When reporting problems on aroma.affymetrix, make sure 1) to run the latest 
version of the package, 2) to report the output of sessionInfo() and 
traceback(), and 3) to post a complete code example.


You received this message because you are subscribed to the Google Groups 
"aroma.affymetrix" group with website http://www.aroma-project.org/.
To post to this group, send email to aroma-affymetrix@googlegroups.com
To unsubscribe and other options, go to http://www.aroma-project.org/forum/


Re: [aroma.affymetrix] Re: convertCdf() crashes R while converting BrainArray custom CDF for Affy HT_HG-U133_Plus_PM

2011-07-13 Thread Henrik Bengtsson
Hi.

On Wed, Jul 13, 2011 at 12:58 PM, sean nj  wrote:
> Hi Henrik,
>
> Thanks a lot for the help.
>
> But I still have the same error. I think you tested
> HTHGU133B_Hs_ENTREZG.cdf, and I was talking about
> HTHGU133PlusPM_Hs_ENTREZG.cdf. I downloaded the same file several tmes
> now and still have the same error.

My mistake (as a future references please provide verbatim download
instructions/exact URLs so we avoid these simple mistakes).

>
> Ying
>
>
>> library("affxparser")
>> pathname <- "HTHGU133PlusPM_Hs_ENTREZG.cdf"
>> file.info(pathname)$size
> [1] 23933996
>> digest::digest(file=pathname)
> [1] "a3cbf4eab4048e048a622ea68fd5e02b"
>> convertCdf(pathname, "HTHGU133PlusPM_Hs_ENTREZG,Binary.cdf", verbose=TRUE)
> Reading CDF header...
> Reading CDF header...done
> Reading CDF QC units...
[core dump]

I can reproduce this.  You get if you try to read any of the QC units
(or regular units), i.e. using readQcUnits() or
readUnits().

It is because that CDF is corrupt.  If you look at the header of the
file (using a text viewer), you find:

[CDF]
Version=GC3.0

[Chip]
Name=HTHGU133PlusPM
Rows=744
Cols=744
NumberOfUnits=0
MaxUnit=0
NumQCUnits=0
ChipReference=

Alternatively:

> str(readCdfHeader(pathname));
List of 12
 $ ncols  : int 744
 $ nrows  : int 744
 $ nunits : int 0
 $ nqcunits   : int 0
 $ refseq : chr ""
 $ chiptype   : chr "HTHGU133PlusPM_Hs_ENTREZG"
 $ filename   : chr "./HTHGU133PlusPM_Hs_ENTREZG.cdf"
 $ rows   : int 744
 $ cols   : int 744
 $ probesets  : int 0
 $ qcprobesets: int 0
 $ reference  : chr ""

Note how it says there are zero units in the CDF, which is not true.
If you edit the CDF to say NumberOfUnits=18909 it works.

BrainArray folks (cc:ed), could you please fix this and also assert
that your other CDFs don't have this mistake.  The affxparser package
provides a useful tool for validating the correctness of your custom
CDF files.

/Henrik

PS. I would agree that affxparser should not core dump here.  However,
it is a rather particular file format error and the core dump occurs
in the Affymetrix Fusion SDK code that affxparser utilizes and there
is little we can to protect against this in affxparser.


>
>
>
> On Jul 13, 3:30 pm, Henrik Bengtsson  project.org> wrote:
>> My guess is that your CDF is corrupt/incomplete (interrupted
>> download?).  I downloaded
>>
>>  http://brainarray.mbni.med.umich.edu/Brainarray/Database/CustomCDF/14...
>>
>> extracted the ZIP file and got:
>>
>> > library("affxparser")
>> > pathname <- "HTHGU133B_Hs_ENTREZG.cdf"
>> > file.info(pathname)$size
>> [1] 16362942
>> > digest::digest(file=pathname)
>>
>> [1] "c0d0c13cc31c661c657633b7560988e3"> convertCdf(pathname, 
>> "HTHGU133PlusPM_Hs_ENTREZG,Binary.cdf", verbose=TRUE)
>>
>> Reading CDF header...
>> Reading CDF header...done
>> Reading CDF QC units...
>> Reading CDF QC units...done
>> Reading CDF units...
>> Reading CDF units...done
>> Writing CDF structure...
>> Timing for writeCdf():
>>    user  system elapsed
>>   13.72    0.03   13.76
>> Writing CDF structure...done
>> Comparing CDFs...
>> Comparing CDFs...
>>   CDF 1: ./HTHGU133B_Hs_ENTREZG.cdf
>>   CDF 2: ./HTHGU133PlusPM_Hs_ENTREZG,Binary.cdf
>>   Comparing CDF headers...
>>   Comparing CDF headers...done
>>   Comparing QC units...
>>   Comparing QC units...done
>>   Comparing units...
>>   Comparing units...done
>> Comparing CDFs...done
>> Comparing CDFs...done
>>
>> /Henrik
>>
>>
>>
>> On Wed, Jul 13, 2011 at 12:22 PM, sean nj  wrote:
>> > Hi Henrik,
>>
>> > Thanks a lot for the help!
>>
>> > What confused me is that I have no problem converting custom CDFs for
>> > HG-U133_Plus_2 chip. Below is the sessionInfo.
>>
>> > Ying
>>
>> >> library(affxparser)
>> >> sessionInfo()
>> > R version 2.13.0 (2011-04-13)
>> > Platform: i386-pc-mingw32/i386 (32-bit)
>>
>> > locale:
>> > [1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United
>> > States.1252
>> > [3] LC_MONETARY=English_United States.1252
>> > LC_NUMERIC=C
>> > [5] LC_TIME=English_United States.1252
>>
>> > attached base packages:
>> > [1] stats     graphics  grDevices utils     datasets  methods
>> > base
>>
>> > other attached packages:
>> > [1] affxparser_1.24.0
>>
>> > On Jul 13, 3:03 pm, Henrik Bengtsson > > project.org> wrote:
>> >> Before anything else, what does:
>>
>> >> > library("affxparser");
>> >> > sessionInfo();
>>
>> >> report?
>>
>> >> /Henrik
>>
>> >> PS. This is really a question for the Bioconductor list, because it is
>> >> an 'affxparser' question and independent of the aroma framework, but
>> >> let's deal with it here this time.
>>
>> >> On Wed, Jul 13, 2011 at 11:59 AM, sean nj  wrote:
>> >> > Hi guys,
>>
>> >> > I was trying to convert BrainArray custom CDF for Affy HT_HG-
>> >> > U133_Plus_PM chip into binary CDF using convertCdf(). But every time I
>> >> > tried, I got the same error message:
>>
>> >> > R for Windows GUI front-end:
>>
>> >> > R for Windows GUI front-end has encountered a problem and needs to
>> >> > close.
>>

Re: [aroma.affymetrix] Re: convertCdf() crashes R while converting BrainArray custom CDF for Affy HT_HG-U133_Plus_PM

2011-07-13 Thread Henrik Bengtsson
My guess is that your CDF is corrupt/incomplete (interrupted
download?).  I downloaded

  
http://brainarray.mbni.med.umich.edu/Brainarray/Database/CustomCDF/14.1.0/entrezg.download/HTHGU133PlusPM_Hs_ENTREZG_14.1.0.zip

extracted the ZIP file and got:

> library("affxparser")
> pathname <- "HTHGU133B_Hs_ENTREZG.cdf"
> file.info(pathname)$size
[1] 16362942
> digest::digest(file=pathname)
[1] "c0d0c13cc31c661c657633b7560988e3"
> convertCdf(pathname, "HTHGU133PlusPM_Hs_ENTREZG,Binary.cdf", verbose=TRUE)
Reading CDF header...
Reading CDF header...done
Reading CDF QC units...
Reading CDF QC units...done
Reading CDF units...
Reading CDF units...done
Writing CDF structure...
Timing for writeCdf():
   user  system elapsed
  13.720.03   13.76
Writing CDF structure...done
Comparing CDFs...
Comparing CDFs...
  CDF 1: ./HTHGU133B_Hs_ENTREZG.cdf
  CDF 2: ./HTHGU133PlusPM_Hs_ENTREZG,Binary.cdf
  Comparing CDF headers...
  Comparing CDF headers...done
  Comparing QC units...
  Comparing QC units...done
  Comparing units...
  Comparing units...done
Comparing CDFs...done
Comparing CDFs...done

/Henrik

On Wed, Jul 13, 2011 at 12:22 PM, sean nj  wrote:
> Hi Henrik,
>
> Thanks a lot for the help!
>
> What confused me is that I have no problem converting custom CDFs for
> HG-U133_Plus_2 chip. Below is the sessionInfo.
>
> Ying
>
>> library(affxparser)
>> sessionInfo()
> R version 2.13.0 (2011-04-13)
> Platform: i386-pc-mingw32/i386 (32-bit)
>
> locale:
> [1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United
> States.1252
> [3] LC_MONETARY=English_United States.1252
> LC_NUMERIC=C
> [5] LC_TIME=English_United States.1252
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods
> base
>
> other attached packages:
> [1] affxparser_1.24.0
>
>
> On Jul 13, 3:03 pm, Henrik Bengtsson  project.org> wrote:
>> Before anything else, what does:
>>
>> > library("affxparser");
>> > sessionInfo();
>>
>> report?
>>
>> /Henrik
>>
>> PS. This is really a question for the Bioconductor list, because it is
>> an 'affxparser' question and independent of the aroma framework, but
>> let's deal with it here this time.
>>
>>
>>
>> On Wed, Jul 13, 2011 at 11:59 AM, sean nj  wrote:
>> > Hi guys,
>>
>> > I was trying to convert BrainArray custom CDF for Affy HT_HG-
>> > U133_Plus_PM chip into binary CDF using convertCdf(). But every time I
>> > tried, I got the same error message:
>>
>> > R for Windows GUI front-end:
>>
>> > R for Windows GUI front-end has encountered a problem and needs to
>> > close.
>>
>> > Error Signature:
>>
>> > AppName:  rgui.exe
>> > AppVer:     2.130.55427.0
>> > ModName: affxparser.dll
>> > ModVer:    0.0.0.0
>> > OffSet:      0005207a
>>
>> > In the R GUI window:
>>
>> >> library(affxparser)
>> >> convertCdf("HTHGU133PlusPM_Hs_ENTREZG.cdf", 
>> >> "HTHGU133PlusPM_Hs_ENTREZG,Binary.cdf",
>> > + version = 4,force = TRUE,verbose=TRUE)
>> > Reading CDF header...
>> > Reading CDF header...done
>> > Reading CDF QC units...
>>
>> > It hangs like that forever and nothing happens.
>>
>> > I got this eror only when I tried to convert BrainArray's custom CDF
>> > for Affy HT_HG-U133_Plus_PM chip. I tried ENTREZG and REFSEQ versions
>> > of the custom CDF and got the same error message. I had no problem
>> > when converting the custom CDF for HG-U133_Plus_2 chip.
>>
>> > Since R hangs every time the error message pops up, I could not
>> > provide any sessionInfo() info. My computer runs windows XP 32 bit
>> > with the latest R.
>>
>> > Any suggestion?
>>
>> > Thanks a lot for the help!
>>
>> > Ying
>>
>> > --
>> > When reporting problems on aroma.affymetrix, make sure 1) to run the 
>> > latest version of the package, 2) to report the output of sessionInfo() 
>> > and traceback(), and 3) to post a complete code example.
>>
>> > You received this message because you are subscribed to the Google Groups 
>> > "aroma.affymetrix" group with websitehttp://www.aroma-project.org/.
>> > To post to this group, send email to aroma-affymetrix@googlegroups.com
>> > To unsubscribe and other options, go 
>> > tohttp://www.aroma-project.org/forum/- Hide quoted text -
>>
>> - Show quoted text -
>
> --
> When reporting problems on aroma.affymetrix, make sure 1) to run the latest 
> version of the package, 2) to report the output of sessionInfo() and 
> traceback(), and 3) to post a complete code example.
>
>
> You received this message because you are subscribed to the Google Groups 
> "aroma.affymetrix" group with website http://www.aroma-project.org/.
> To post to this group, send email to aroma-affymetrix@googlegroups.com
> To unsubscribe and other options, go to http://www.aroma-project.org/forum/
>

-- 
When reporting problems on aroma.affymetrix, make sure 1) to run the latest 
version of the package, 2) to report the output of sessionInfo() and 
traceback(), and 3) to post a complete code example.


You received this message because you are subscribed to the Google Groups 
"aroma.affymetrix" group