sneumann / xcms

This is the git repository matching the Bioconductor package xcms: LC/MS and GC/MS Data Analysis
Other
184 stars 80 forks source link

xcmsSet crashes session when loading mzXML files #15

Closed jvondollen closed 9 years ago

jvondollen commented 9 years ago

Happens when running the xcms package from the bioconductor site, as well as when running the current github version.

Using mzXML files, I tried to group them into sets following the folder structure recommended in the documentation. I even tried a pair of files instead of the whole batch and got the same result.

SImply calling the xcmsSet('my_file') command caused the bomb icon popped up with a message of "R Session Aborted R encountered a fatal error. The session was terminated."

A test file that crashes for me is: http://csb.stanford.edu/nirka/100505_NKalisman_Freidman_S1.mzXML

stanstrup commented 9 years ago

Works here:

> xset
An "xcmsSet" object with 1 samples

Time range: 435.9-3482.4 seconds (7.3-58 minutes)
Mass range: 400.2133-1799.0789 m/z
Peaks: 3136 (about 3136 per sample)
Peak Groups: 0 
Sample classes: temp 

Profile settings: method = bin
                  step = 0.1

Memory usage: 0.342 MB
> sessionInfo()
R version 3.2.0 (2015-04-16)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=Danish_Denmark.1252  LC_CTYPE=Danish_Denmark.1252    LC_MONETARY=Danish_Denmark.1252 LC_NUMERIC=C                   
[5] LC_TIME=Danish_Denmark.1252    

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] xcms_1.45.1         Biobase_2.29.0      ProtGenerics_1.1.0  BiocGenerics_0.15.0 mzR_2.3.0           Rcpp_0.11.5        

loaded via a namespace (and not attached):
[1] tools_3.2.0      codetools_0.2-11
jvondollen commented 9 years ago

Thanks for the feedback! I wonder what the problem could be then. Below is the code that causes the crash, followed by my session info:

####################

library(xcms) mzXML_files <- list.files('~/projects/test/', recursive=T, full.names=T) print(mzXML_files) [1] "/Users/jvondollen/projects/test//100505_NKalisman_Freidman_S1.mzXML" xset = xcmsSet(mzXML_files)

**_R SESSION HAS ABORTED_*

###################

sessionInfo() R version 3.1.2 (2014-10-31) Platform: x86_64-apple-darwin10.8.0 (64-bit)

locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages: [1] parallel stats graphics grDevices utils datasets methods base

other attached packages: [1] xcms_1.40.0 Biobase_2.26.0 BiocGenerics_0.12.1 mzR_2.0.0 Rcpp_0.11.3

loaded via a namespace (and not attached): [1] codetools_0.2-11 tools_3.1.2

I'm on a macbook Pro, MacOSX 10.8.5. Any ideas? Thanks

~john

On Thu, May 14, 2015 at 2:54 AM, Jan Stanstrup notifications@github.com wrote:

Works here:

xset An "xcmsSet" object with 1 samples

Time range: 435.9-3482.4 seconds (7.3-58 minutes) Mass range: 400.2133-1799.0789 m/z Peaks: 3136 (about 3136 per sample) Peak Groups: 0 Sample classes: temp

Profile settings: method = bin step = 0.1

Memory usage: 0.342 MB

sessionInfo() R version 3.2.0 (2015-04-16) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 (build 7601) Service Pack 1

locale: [1] LC_COLLATE=Danish_Denmark.1252 LC_CTYPE=Danish_Denmark.1252 LC_MONETARY=Danish_Denmark.1252 LC_NUMERIC=C [5] LC_TIME=Danish_Denmark.1252

attached base packages: [1] parallel stats graphics grDevices utils datasets methods base

other attached packages: [1] xcms_1.45.1 Biobase_2.29.0 ProtGenerics_1.1.0 BiocGenerics_0.15.0 mzR_2.3.0 Rcpp_0.11.5

loaded via a namespace (and not attached): [1] tools_3.2.0 codetools_0.2-11

— Reply to this email directly or view it on GitHub https://github.com/sneumann/xcms/issues/15#issuecomment-101988886.

stanstrup commented 9 years ago

I don't really have any ideas. try using xcms AND mzR from github.

jvondollen commented 9 years ago

I appreciate you getting back to me so quickly. I can load xcms from github fine, but mzR has a lot of red. The final portion says it has problems finding 'netcdf.h' :

Downloading github repo sneumann/mzR@master Installing mzR Skipping 4 packages not available: Biobase, BiocGenerics, ProtGenerics, zlibbioc '/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore CMD \ INSTALL \

'/private/var/folders/dx/b2mgkjpd443237xfbclc6t9h0000gn/T/RtmpKJprHO/devtools1022e52f1b27e/sneumann-mzR-91e9347' \

--library='/Library/Frameworks/R.framework/Versions/3.1/Resources/library' --install-tests

On Thu, May 14, 2015 at 9:57 AM, Jan Stanstrup notifications@github.com wrote:

I don't really have any ideas. try using xcms AND mzR from github.

— Reply to this email directly or view it on GitHub https://github.com/sneumann/xcms/issues/15#issuecomment-102102232.

hpbenton commented 9 years ago

You're installing from source on github so you're going to need the netcdf library installed. The easiest way is to use macports or homebrew. Personal preference is is to install directly but that can get a bit complicated.

Sent from my mobile

On May 14, 2015, at 10:08 AM, jvondollen notifications@github.com wrote:

I appreciate you getting back to me so quickly. I can load xcms from github fine, but mzR has a lot of red. The final portion says it has problems finding 'netcdf.h' :

Downloading github repo sneumann/mzR@master Installing mzR Skipping 4 packages not available: Biobase, BiocGenerics, ProtGenerics, zlibbioc '/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore CMD \ INSTALL \

'/private/var/folders/dx/b2mgkjpd443237xfbclc6t9h0000gn/T/RtmpKJprHO/devtools1022e52f1b27e/sneumann-mzR-91e9347' \

--library='/Library/Frameworks/R.framework/Versions/3.1/Resources/library' --install-tests

  • installing source package ‘mzR’ ... * libs rm -f cramp.o ramp_base64.o ramp.o RcppRamp.o RcppRampModule.o rnetCDF.o RcppPwiz.o RcppPwizModule.o RcppIdent.o RcppIdentModule.o ./boost/system/src/error_code.o ./boost/regex/src/posix_api.o ./boost/regex/src/fileiter.o ./boost/regex/src/regex_raw_buffer.o ./boost/regex/src/cregex.o ./boost/regex/src/regex_debug.o ./boost/regex/src/instances.o ./boost/regex/src/icu.o ./boost/regex/src/usinstances.o ./boost/regex/src/regex.o ./boost/regex/src/wide_posix_api.o ./boost/regex/src/regex_traits_defaults.o ./boost/regex/src/winstances.o ./boost/regex/src/wc_regex_traits.o ./boost/regex/src/c_regex_traits.o ./boost/regex/src/cpp_regex_traits.o ./boost/regex/src/static_mutex.o ./boost/regex/src/w32_regex_traits.o ./boost/iostreams/src/zlib.o ./boost/iostreams/src/file_descriptor.o ./boost/thread/src/pthread/once.o ./boost/thread/src/pthread/thread.o ./boost/filesystem/src/operations.o ./boost/filesystem/src/path.o ./boost/filesystem/src/utf8_codecvt_facet.o ./pwiz/data/msdata/Version.o ./pwiz/data/common/MemoryIndex.o ./pwiz/data/common/CVTranslator.o ./pwiz/data/common/cv.o ./pwiz/data/common/ParamTypes.o ./pwiz/data/common/BinaryIndexStream.o ./pwiz/data/common/diff_std.o ./pwiz/data/common/Unimod.o ./pwiz/data/msdata/SpectrumList_MGF.o ./pwiz/data/msdata/DefaultReaderList.o ./pwiz/data/msdata/ChromatogramList_mzML.o ./pwiz/data/msdata/examples.o ./pwiz/data/msdata/Serializer_mzML.o ./pwiz/data/msdata/Serializer_MSn.o ./pwiz/data/msdata/Reader.o ./pwiz/data/msdata/Serializer_MGF.o ./pwiz/data/msdata/Serializer_mzXML.o ./pwiz/data/msdata/SpectrumList_mzML.o ./pwiz/data/msdata/SpectrumList_MSn.o ./pwiz/data/msdata/BinaryDataEncoder.o ./pwiz/data/msdata/Diff.o ./pwiz/data/msdata/MSData.o ./pwiz/data/msdata/References.o ./pwiz/data/msdata/SpectrumList_mzXML.o ./pwiz/data/msdata/IO.o ./pwiz/data/msdata/SpectrumList_BTDX.o ./pwiz/data/msdata/SpectrumInfo.o ./pwiz/data/msdata/RAMPAdapter.o ./pwiz/data/msdata/LegacyAdapter.o ./pwiz/data/msdata/SpectrumIterator.o ./pwiz/data/msdata/MSDataFile.o ./pwiz/data/msdata/MSNumpress.o ./pwiz/data/msdata/SpectrumListCache.o ./pwiz/data/msdata/Index_mzML.o ./pwiz/data/identdata/IdentDataFile.o ./pwiz/data/identdata/IdentData.o ./pwiz/data/identdata/DefaultReaderList.o ./pwiz/data/identdata/Reader.o ./pwiz/data/identdata/Serializer_protXML.o ./pwiz/data/identdata/Serializer_pepXML.o ./pwiz/data/identdata/Serializer_mzid.o ./pwiz/data/identdata/IO.o ./pwiz/data/identdata/Version.o ./pwiz/data/identdata/References.o ./pwiz/data/proteome/Modification.o ./pwiz/data/proteome/Digestion.o ./pwiz/data/proteome/Peptide.o ./pwiz/data/proteome/AminoAcid.o ./pwiz/utility/minimxml/XMLWriter.o ./pwiz/utility/minimxml/SAXParser.o ./pwiz/utility/chemistry/Chemistry.o ./pwiz/utility/chemistry/ChemistryData.o ./pwiz/utility/chemistry/MZTolerance.o ./pwiz/utility/misc/IntegerSet.o ./pwiz/utility/misc/Base64.o ./pwiz/utility/misc/IterationListener.o ./pwiz/utility/misc/MSIHandler.o ./pwiz/utility/misc/Filesystem.o ./pwiz/utility/misc/TabReader.o ./pwiz/utility/misc/random_access_compressed_ifstream.o ./pwiz/utility/misc/SHA1.o ./pwiz/utility/misc/SHA1Calculator.o ./pwiz/utility/misc/sha1calc.o ./random_access_gzFile.o rampR.o R_init_mzR.o find . -name ~ -exec rm {} \; ## from cleanup find . -name .o -exec rm {} \; ## from cleanup find . -name "##" -exec rm {} \; ## from cleanup g++ -arch x86_64 -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -D_LARGEFILE_SOURCE -I./boost_aux/ -I. -DHAVE_PWIZ_MZML_LIB -D_NODEBUG -DWITHOUT_MZ5 -I./boost nc-config --cflags || /bin/true -I/usr/local/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/zlibbioc/include" -fPIC -mtune=core2 -g -O2 -c cramp.cpp -o cramp.o /bin/sh: nc-config: command not found /bin/sh: /bin/true: No such file or directory In file included from cramp.cpp:49: ./cramp.h:261:17: warning: destination for this 'memmove' call is a pointer to dynamic class 'rampScanInfo'; vtable pointer will be overwritten [-Wdynamic-class-memaccess] memmove(this,&rhs,sizeof(rhs));
./cramp.h:261:17: note: explicitly cast the pointer to silence this warning
memmove(this,&rhs,sizeof(rhs));
^
(void*)
./cramp.h:315:17: warning: destination for this 'memmove' call is a pointer
to dynamic class 'rampRunInfo'; vtable pointer will be overwritten
[-Wdynamic-class-memaccess]
memmove(this,&rhs,sizeof(rhs));
~~~~~~~ ^
./cramp.h:315:17: note: explicitly cast the pointer to silence this warning
memmove(this,&rhs,sizeof(rhs));
^
(void*)
2 warnings generated.
g++ -arch x86_64 -I/Library/Frameworks/R.framework/Resources/include
-DNDEBUG -D_LARGEFILE_SOURCE -I./boost_aux/ -I. -DHAVE_PWIZ_MZML_LIB
-D_NODEBUG -DWITHOUT_MZ5 -I./boost `nc-config --cflags || /bin/true`
-I/usr/local/include
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include"
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/zlibbioc/include"
-fPIC -mtune=core2 -g -O2 -c ramp_base64.cpp -o ramp_base64.o
/bin/sh: nc-config: command not found
/bin/sh: /bin/true: No such file or directory
g++ -arch x86_64 -I/Library/Frameworks/R.framework/Resources/include
-DNDEBUG -D_LARGEFILE_SOURCE -I./boost_aux/ -I. -DHAVE_PWIZ_MZML_LIB
-D_NODEBUG -DWITHOUT_MZ5 -I./boost `nc-config --cflags || /bin/true`
-I/usr/local/include
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include"
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/zlibbioc/include"
-fPIC -mtune=core2 -g -O2 -c ramp.cpp -o ramp.o
/bin/sh: nc-config: command not found
/bin/sh: /bin/true: No such file or directory
ramp.cpp:2261:42: warning: expression which evaluates to zero treated as a
null pointer constant of type 'const char *' [-Wnon-literal-null-conversion]
pEndAttrValue = '\0';
^~~~
ramp.cpp:2281:41: warning: expression which evaluates to zero treated as a
null pointer constant of type 'const char *' [-Wnon-literal-null-conversion]
pEndAttrValue = '\0';
^~~~
2 warnings generated.
g++ -arch x86_64 -I/Library/Frameworks/R.framework/Resources/include
-DNDEBUG -D_LARGEFILE_SOURCE -I./boost_aux/ -I. -DHAVE_PWIZ_MZML_LIB
-D_NODEBUG -DWITHOUT_MZ5 -I./boost `nc-config --cflags || /bin/true`
-I/usr/local/include
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include"
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/zlibbioc/include"
-fPIC -mtune=core2 -g -O2 -c RcppRamp.cpp -o RcppRamp.o
/bin/sh: nc-config: command not found
/bin/sh: /bin/true: No such file or directory
In file included from RcppRamp.cpp:1:
In file included from ./RcppRamp.h:14:
./cramp.h:261:17: warning: destination for this 'memmove' call is a pointer
to dynamic class 'rampScanInfo'; vtable pointer will be overwritten
[-Wdynamic-class-memaccess]
memmove(this,&rhs,sizeof(rhs));
~~~~~~~ ^
./cramp.h:261:17: note: explicitly cast the pointer to silence this warning
memmove(this,&rhs,sizeof(rhs));
^
(void*)
./cramp.h:315:17: warning: destination for this 'memmove' call is a pointer
to dynamic class 'rampRunInfo'; vtable pointer will be overwritten
[-Wdynamic-class-memaccess]
memmove(this,&rhs,sizeof(rhs));
~~~~~~~ ^
./cramp.h:315:17: note: explicitly cast the pointer to silence this warning
memmove(this,&rhs,sizeof(rhs));
^
(void*)
2 warnings generated.
g++ -arch x86_64 -I/Library/Frameworks/R.framework/Resources/include
-DNDEBUG -D_LARGEFILE_SOURCE -I./boost_aux/ -I. -DHAVE_PWIZ_MZML_LIB
-D_NODEBUG -DWITHOUT_MZ5 -I./boost `nc-config --cflags || /bin/true`
-I/usr/local/include
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include"
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/zlibbioc/include"
-fPIC -mtune=core2 -g -O2 -c RcppRampModule.cpp -o RcppRampModule.o
/bin/sh: nc-config: command not found
/bin/sh: /bin/true: No such file or directory
In file included from RcppRampModule.cpp:2:
In file included from ./RcppRamp.h:14:
./cramp.h:261:17: warning: destination for this 'memmove' call is a pointer
to dynamic class 'rampScanInfo'; vtable pointer will be overwritten
[-Wdynamic-class-memaccess]
memmove(this,&rhs,sizeof(rhs));
~~~~~~~ ^
./cramp.h:261:17: note: explicitly cast the pointer to silence this warning
memmove(this,&rhs,sizeof(rhs));
^
(void*)
./cramp.h:315:17: warning: destination for this 'memmove' call is a pointer
to dynamic class 'rampRunInfo'; vtable pointer will be overwritten
[-Wdynamic-class-memaccess]
memmove(this,&rhs,sizeof(rhs));
~~~~~~~ ^
./cramp.h:315:17: note: explicitly cast the pointer to silence this warning
memmove(this,&rhs,sizeof(rhs));
^
(void*)
2 warnings generated.
gcc -arch x86_64 -std=gnu99
-I/Library/Frameworks/R.framework/Resources/include -DNDEBUG
-D_LARGEFILE_SOURCE -I./boost_aux/ -I. -DHAVE_PWIZ_MZML_LIB -D_NODEBUG
-DWITHOUT_MZ5 -I./boost `nc-config --cflags || /bin/true`
-I/usr/local/include
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include"
-I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/zlibbioc/include"
-fPIC -mtune=core2 -g -O2 -c rnetCDF.c -o rnetCDF.o
/bin/sh: nc-config: command not found
/bin/sh: /bin/true: No such file or directory
In file included from rnetCDF.c:2:
./rnetCDF.h:1:10: fatal error: 'netcdf.h' file not found
#include <netcdf.h>
^
1 error generated.
make: *** [rnetCDF.o] Error 1
ERROR: compilation failed for package ‘mzR’
* removing
‘/Library/Frameworks/R.framework/Versions/3.1/Resources/library/mzR’
Error: Command failed (1)
>

On Thu, May 14, 2015 at 9:57 AM, Jan Stanstrup <notifications@github.com>
wrote:

> I don't really have any ideas. try using xcms AND mzR from github.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/sneumann/xcms/issues/15#issuecomment-102102232>.
>
—
Reply to this email directly or view it on GitHub.
stanstrup commented 9 years ago

On linux and I guess also mac you need to manually install netcdf when you install from source. In linux you simply find it in the package manager. I don't know mac so I don't know how it is done there. Also you will need to install those packages manually with biocLite.

jvondollen commented 9 years ago

Thanks for your input. This is looking more like a computer specific problem. I've tried all of that and still am having the problem. I even completely removed and re-installed R and Rstudio. It seems that it is an issue with Rstudio since I can run things fine through R ( i should have checked from the beginning). I really appreciate all your help.

sneumann commented 9 years ago

Hi @jvondollen I would also try plain R without Rstudio around it, to rule out that it's a problem of "wrapping" R inside Rstudio. Yours, Steffen

jvondollen commented 9 years ago

Hi Steffen, I think that's exactly what's going on. R without Rstudio seems to work. It's only when I open and use Rstudio as a "wrapper" that the issue occurs.

On Thu, May 14, 2015 at 11:52 AM, sneumann notifications@github.com wrote:

Hi @jvondollen https://github.com/jvondollen I would also try plain R without Rstudio around it, to rule out that it's a problem of "wrapping" R inside Rstudio. Yours, Steffen

— Reply to this email directly or view it on GitHub https://github.com/sneumann/xcms/issues/15#issuecomment-102133982.

sneumann commented 9 years ago

Yes, sounds familiar. I had that issue sometimes on windows, but never figured out why. I suspect some memory corruption in mzR/proteowizard, which goes unnoticed under R, but causes havoc together with RStudio.