[Bioc-devel] msPurity build fail on Mac OS X (morelia)

Kasper Daniel Hansen kasperdanielhansen at gmail.com
Thu Sep 22 16:22:29 CEST 2016


Martin seemed to have fixed the original error, but recovered another one.

Do we have a reproducible example with the other error (and did Martin's
fix get into mzR) and do we know which platforms it fails on?

Best,
Kasper

On Thu, Sep 22, 2016 at 10:10 AM, Laurent Gatto <lg390 at cam.ac.uk> wrote:

>
> On 22 September 2016 14:12, Thomas Lawson wrote:
>
> > Hi All,
> >
> > Thanks for the help with this. I have been using valgrind to try and
> > pinpoint in my code the problem and it seems to be from
> mzR::openMSfile().
>
> I can't reproduce this:
>
> > library(mzR)
> Loading required package: Rcpp
> > msmsPths <- list.files(system.file("extdata", "lcms", "mzML",
> package="msPurityData"), full.names = TRUE, pattern = "MSMS")
> > msmsPths
> [1] "/home/lg390/R/x86_64-pc-linux-gnu-library/3.3/
> msPurityData/extdata/lcms/mzML/LCMSMS_1.mzML"
> [2] "/home/lg390/R/x86_64-pc-linux-gnu-library/3.3/
> msPurityData/extdata/lcms/mzML/LCMSMS_2.mzML"
> > tmp <- replicate(1000, mr <- mzR::openMSfile(msmsPths[1]))
> > all(sapply(tmp, validObject))
> [1] TRUE
> > sessionInfo()
> R version 3.3.1 Patched (2016-08-02 r71022)
> Platform: x86_64-pc-linux-gnu (64-bit)
> Running under: Ubuntu 14.04.5 LTS
>
> locale:
>  [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C
>  [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8
>  [5] LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_GB.UTF-8
>  [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C
>  [9] LC_ADDRESS=C               LC_TELEPHONE=C
> [11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
>
> other attached packages:
> [1] mzR_2.7.4   Rcpp_0.12.7
>
> loaded via a namespace (and not attached):
> [1] ProtGenerics_1.5.1  tools_3.3.1         parallel_3.3.1
> [4] Biobase_2.33.3      codetools_0.2-14    BiocGenerics_0.19.2
>
> What are your mzR and Rcpp versions?
>
> Also, in your code, you will need to explicitly close(mz) after opening
> a connection to the raw data file. Otherwise, you might end up getting
> 'Error: failed opening file: Too many open files'. (This is not the
> reason for your error).
>
> Laurent
>
> > A simplified bit of code just using mzR I think will give the same
> results,
> > see below:
> >
> > #-----------------------------------------------------------
> > ------------------------------------------------------------
> > ------------------------------------------------------------
> > library(mzR)
> > msmsPths <- list.files(system.file("extdata", "lcms", "mzML",
> > package="msPurityData"), full.names = TRUE, pattern = "MSMS")
> > mr <- mzR::openMSfile(msmsPths[1])
> > #-----------------------------------------------------------
> > ------------------------------------------------------------
> > ------------------------------------------------------------
> >
> > This gives the  familiar message
> >> mr <- mzR::openMSfile(msmsPths[1])
> > ==38138== Mismatched free() / delete / delete []
> > ==38138==    at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_
> > memcheck-amd64-linux.so)
> > ..
> >
> > However, I can prevent the  "Mismatched free() / delete / delete []"
> > message by forcing the backend to use the "pwiz" libraries (i think).
> e.g.
> >
> > #-----------------------------------------------------------
> > ------------------------------------------------------------
> > ------------------------------------------------------------
> > mr <- mzR::openMSfile(msmsPths[1], backend="pwiz")
> > #-----------------------------------------------------------
> > ------------------------------------------------------------
> > ------------------------------------------------------------
> >
> > I have updated to code so that a user can choose the backend for mzR
> with a
> > default option of "pwiz" and pushed the changes to svn.
> >
> > Hopefully this will fix the problem on morelia, although I notice that
> the
> > server is down at the moment, when will the next build be?
> >
> > Thanks for your help,
> > Tom
> >
> > PS: Martin: I have removed the msPurity-vignette.R and
> > msPurity-vignette.html files from the vignette folder. Is this correct?
> >
> >
> >
> >
> >
> > On Wed, Sep 21, 2016 at 7:38 PM, Kasper Daniel Hansen <
> > kasperdanielhansen at gmail.com> wrote:
> >
> >> So this seems like a bug in mzR which is the main backend / parser for
> >> proteomics and metabolomics data.  Someone should try to fix this.
> >>
> >> Unfortunately, mzR depends on several pieces of software which are
> written
> >> by other people, but bundled with the package.  Martin's traceback
> suggests
> >> that some of these files are (partially?) encrypted.  This might be
> hard to
> >> address.
> >>
> >> Best,
> >> Kasper
> >>
> >> On Wed, Sep 21, 2016 at 12:43 PM, Dan Tenenbaum <dtenenba at fredhutch.org
> >
> >> wrote:
> >>
> >>> One thing I notice is that the crash does not happen every time. I have
> >>> successfully built the package on morelia by hand with "R CMD build".
> >>>
> >>> Similarly I can source the stangled vignette without a crash sometimes.
> >>> But when it does crash, this is what I see:
> >>>
> >>> > source("msPurity-vignette.R", echo=TRUE, max=Inf)
> >>>
> >>> > ## ------------------------------------------------------------
> >>> ------------
> >>> > library(msPurity)
> >>> Loading required package: Rcpp
> >>>
> >>> > msmsPths <- list.files(system.file("extdata", "lcms", "mzML",
> >>> package="msPurityData"), full.names = TRUE, pattern = "MSMS")
> >>>
> >>> > msPths <- list.files(system.file("extdata", "lcms", "mzML",
> >>> package="msPurityData"), full.names = TRUE, pattern = "LCMS_")
> >>>
> >>> > ## ------------------------------------------------------------
> >>> ------------
> >>> > pa <- purityA(msmsPths)
> >>>
> >>>  *** caught segfault ***
> >>> address 0x29800000297, cause 'memory not mapped'
> >>>
> >>> Traceback:
> >>>  1: .External(list(name = "CppMethod__invoke_notvoid", address =
> >>> <pointer: 0x7fb56861cb10>,     dll = list(name = "Rcpp", path =
> >>> "/Library/Frameworks/R.framework/Versions/3.3/
> Resources/library/Rcpp/libs/Rcpp.so",
> >>>        dynamicLookup = TRUE, handle = <pointer: 0x7fb568606180>,
> >>>  info = <pointer: 0x1078f8000>), numParameters = -1L),     <pointer:
> >>> 0x7fb5686ae9c0>, <pointer: 0x7fb56868cf80>, .pointer,     ...)
> >>>  2: object at backend$getPeakList(x)
> >>>  3: FUN(X[[i]], ...)
> >>>  4: lapply(X = X, FUN = FUN, ...)
> >>>  5: sapply(scans, function(x) object at backend$getPeakList(x)$peaks,
> >>>  simplify = FALSE)
> >>>  6: sapply(scans, function(x) object at backend$getPeakList(x)$peaks,
> >>>  simplify = FALSE)
> >>>  7: .local(object, ...)
> >>>  8: mzR::peaks(mr)
> >>>  9: mzR::peaks(mr)
> >>> 10: getscans(filepth)
> >>> 11: assessPuritySingle(filepth = pa at fileList[[i]], mostIntense =
> >>> mostIntense,     nearest = nearest, offsets = offsets, plotP = plotP,
> >>> plotdir = plotdir,     interpol = interpol, iwNorm = iwNorm, iwNormFun
> =
> >>> iwNormFun,     ilim = ilim)
> >>> 12: eval(expr, envir, enclos)
> >>> 13: eval(xpr, envir = envir)
> >>> 14: doTryCatch(return(expr), name, parentenv, handler)
> >>> 15: tryCatchOne(expr, names, parentenv, handlers[[1L]])
> >>> 16: tryCatchList(expr, classes, parentenv, handlers)
> >>> 17: tryCatch(eval(xpr, envir = envir), error = function(e) e)
> >>> 18: doTryCatch(return(expr), name, parentenv, handler)
> >>> 19: tryCatchOne(expr, names, parentenv, handlers[[1L]])
> >>> 20: tryCatchList(expr, classes, parentenv, handlers)
> >>> 21: tryCatch({    repeat {        args <- nextElem(it)        if
> >>> (obj$verbose) {            cat(sprintf("evaluation # %d:\n", i))
> >>> print(args)        }        for (a in names(args)) assign(a,
> args[[a]], pos
> >>> = envir,             inherits = FALSE)        r <- tryCatch(eval(xpr,
> envir
> >>> = envir), error = function(e) e)        if (obj$verbose) {
> >>> cat("result of evaluating expression:\n")            print(r)        }
> >>>   tryCatch(accumulator(list(r), i), error = function(e) {
> >>> cat("error calling combine function:\n")            print(e)
> >>> NULL        })        i <- i + 1    }}, error = function(e) {    if
> >>> (!identical(conditionMessage(e), "StopIteration"))
> >>>  stop(simpleError(conditionMessage(e), expr))})
> >>> 22: e$fun(obj, substitute(ex), parent.frame(), e$data)
> >>> 23: operator(foreach::foreach(i = 1:length(pa at fileList), .packages =
> >>> "mzR"),     assessPuritySingle(filepth = pa at fileList[[i]],
> mostIntense =
> >>> mostIntense,         nearest = nearest, offsets = offsets, plotP =
> plotP,
> >>>        plotdir = plotdir, interpol = interpol, iwNorm = iwNorm,
> >>>  iwNormFun = iwNormFun, ilim = ilim))
> >>> 24: purityA(msmsPths)
> >>> 25: eval(expr, envir, enclos)
> >>> 26: eval(ei, envir)
> >>> 27: withVisible(eval(ei, envir))
> >>> 28: source("msPurity-vignette.R", echo = TRUE, max = Inf)
> >>>
> >>> Possible actions:
> >>> 1: abort (with core dump, if enabled)
> >>> 2: normal R exit
> >>> 3: exit R without saving workspace
> >>> 4: exit R saving workspace
> >>> Selection:
> >>>
> >>> > sessionInfo()
> >>> R version 3.3.1 (2016-06-21)
> >>> Platform: x86_64-apple-darwin13.4.0 (64-bit)
> >>> Running under: OS X 10.9.5 (Mavericks)
> >>>
> >>> 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
> >>> [8] base
> >>>
> >>> other attached packages:
> >>> [1] xcms_1.49.6         Biobase_2.33.3      ProtGenerics_1.5.1
> >>> [4] BiocGenerics_0.19.2 mzR_2.7.4           msPurity_0.99.6
> >>> [7] Rcpp_0.12.7
> >>>
> >>> loaded via a namespace (and not attached):
> >>>  [1] sapa_2.0-2             magrittr_1.5           ifultools_2.0-4
> >>>  [4] MASS_7.3-45            splines_3.3.1          BiocParallel_1.7.8
> >>>  [7] lattice_0.20-34        foreach_1.4.3          splus2R_1.2-2
> >>> [10] stringr_1.1.0          fastcluster_1.1.21     plyr_1.8.4
> >>> [13] tools_3.3.1            grid_3.3.1             snow_0.4-1
> >>> [16] iterators_1.0.8        survival_2.39-5        multtest_2.29.0
> >>> [19] doSNOW_1.0.14          Matrix_1.2-7.1         RColorBrewer_1.1-2
> >>> [22] reshape2_1.4.1         S4Vectors_0.11.16      codetools_0.2-14
> >>> [25] MassSpecWavelet_1.39.0 stringi_1.1.1          compiler_3.3.1
> >>> [28] stats4_3.3.1           RANN_2.5
> >>>
> >>> ----- Original Message -----
> >>> > From: "Thomas Lawson" <thomas.nigel.lawson at gmail.com>
> >>> > To: "Martin Morgan" <martin.morgan at roswellpark.org>
> >>> > Cc: "bioc-devel" <Bioc-devel at r-project.org>
> >>> > Sent: Wednesday, September 21, 2016 8:42:20 AM
> >>> > Subject: Re: [Bioc-devel] msPurity build fail on Mac OS X (morelia)
> >>>
> >>> > Thanks for reply. Some of those errors are a bit cryptic for me also.
> >>> >
> >>> > I have not heard of the valgrind functionality before in R. I will
> test
> >>> a
> >>> > few things out with valgrind and hopefully I can pinpoint the error a
> >>> bit
> >>> > more.
> >>> >
> >>> > Thanks again.
> >>> >
> >>> > Tom
> >>> >
> >>> > On Wed, Sep 21, 2016 at 12:50 PM, Martin Morgan <
> >>> > martin.morgan at roswellpark.org> wrote:
> >>> >
> >>> >> On 09/20/2016 05:18 AM, Thomas Lawson wrote:
> >>> >>
> >>> >>> Hi BioConductor community,
> >>> >>>
> >>> >>> My package (msPurity) is passing the build on the Linux (*zin1*)
> and
> >>> >>> Windows servers (*moscato1*) but failing on the Mac OS X server
> >>> >>> (*morelia*).
> >>> >>> Also I cannot seem to replicate the failure either on a local
> >>> installation
> >>> >>> of Mac OS X (el captain) or with Travis CI.
> >>> >>>
> >>> >>> I should probably note that for Travis CI I did have to install the
> >>> >>> msPurityData dependency directly (without Bioconductor). See line
> 10
> >>> >>> https://raw.githubusercontent.com/Viant-Metabolomics/msPurit
> >>> >>> y/master/.travis.yml
> >>> >>>
> >>> >>> The error I think is coming from a function I have that uses the
> >>> >>> mzR::peaks() function but I am struggling to see why I am getting
> the
> >>> >>> error.
> >>> >>>
> >>> >>> Any help or suggestions would be really appreciated.
> >>> >>>
> >>> >>
> >>> >> Hi Tom --
> >>> >>
> >>> >> This might be fun!
> >>> >>
> >>> >> You can see from
> >>> >>
> >>> >>
> >>> >> http://bioconductor.org/checkResults/3.4/bioc-LATEST/morelia
> >>> >> -R-instpkgs.html
> >>> >>
> >>> >> (linked from http://bioconductor.org/checkR
> >>> esults/3.4/bioc-LATEST/index.
> >>> >> html '1633' installed packages) that in fact msPurityData is
> installed.
> >>> >> Also, segfaults are rarely the result of missing packages. Instead,
> it
> >>> is
> >>> >> likely due to errors in C code of one sort or another. On my linux,
> I
> >>> made
> >>> >> sure I was using the 'devel' version of Bioconductor, and that all
> of
> >>> my
> >>> >> packages were up-to-date via biocLite(). I then checked out msPurity
> >>> from
> >>> >> svn, changed into the msPurity directory and installed it
> >>> >>
> >>> >>     R CMD INSTALL .
> >>> >>
> >>> >> then I changed to the vignettes directory, Stangled the source code
> >>> >>
> >>> >>    cd vignettes
> >>> >>    R CMD Stangle msPurity-vignette.Rmd
> >>> >>
> >>> >> (by the way, the products of build the package / vignette,
> >>> >> msPurity-vignette.R should not be in svn).
> >>> >>
> >>> >> I then ran the vignette under valgrind
> >>> >>
> >>> >>     msPurity/vignettes$ R -d valgrind -f msPurity-vignette.R
> >>> >>
> >>> >> leading to
> >>> >>
> >>> >> > pa <- purityA(msmsPths)
> >>> >> ==19611== Mismatched free() / delete / delete []
> >>> >> ==19611==    at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_me
> >>> >> mcheck-amd64-linux.so)
> >>> >> ==19611==    by 0x11296DA5: cRamp::cRamp(char const*, bool)
> >>> (cramp.cpp:98)
> >>> >> ==19611==    by 0x1129FC87: RcppRamp::open(char const*, bool)
> >>> >> (RcppRamp.cpp:23)
> >>> >> ==19611==    by 0x112B49C4: Rcpp::CppMethod2<RcppRamp, void, char
> >>> const*,
> >>> >> bool>::operator()(RcppRamp*, SEXPREC**)
> (Module_generated_CppMethod.h:
> >>> 215)
> >>> >> ==19611==    by 0x112B0FBF: Rcpp::class_<RcppRamp>::invoke
> >>> _void(SEXPREC*,
> >>> >> SEXPREC*, SEXPREC**, int) (class.h:212)
> >>> >> ==19611==    by 0xED73CA0: CppMethod__invoke_void(SEXPREC*)
> >>> >> (Module.cpp:200)
> >>> >> ==19611==    by 0x4F0DFD0: do_External (dotcode.c:548)
> >>> >> ==19611==    by 0x4F47F9E: Rf_eval (eval.c:713)
> >>> >> ==19611==    by 0x4F4A6B7: do_begin (eval.c:1807)
> >>> >> ==19611==    by 0x4F47D90: Rf_eval (eval.c:685)
> >>> >> ==19611==    by 0x4F4964C: Rf_applyClosure (eval.c:1135)
> >>> >> ==19611==    by 0x4F47B6C: Rf_eval (eval.c:732)
> >>> >> ==19611==  Address 0x1b8a4220 is 0 bytes inside a block of size 400
> >>> alloc'd
> >>> >> ==19611==    at 0x4C2E0EF: operator new(unsigned long) (in
> >>> >> /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
> >>> >> ==19611==    by 0x11296949: cRamp::do_ramp(long, eWhatToRead)
> >>> >> (cramp.cpp:215)
> >>> >> ==19611==    by 0x11296D9D: cRamp::cRamp(char const*, bool)
> >>> (cramp.cpp:97)
> >>> >> ==19611==    by 0x1129FC87: RcppRamp::open(char const*, bool)
> >>> >> (RcppRamp.cpp:23)
> >>> >> ==19611==    by 0x112B49C4: Rcpp::CppMethod2<RcppRamp, void, char
> >>> const*,
> >>> >> bool>::operator()(RcppRamp*, SEXPREC**)
> (Module_generated_CppMethod.h:
> >>> 215)
> >>> >> ==19611==    by 0x112B0FBF: Rcpp::class_<RcppRamp>::invoke
> >>> _void(SEXPREC*,
> >>> >> SEXPREC*, SEXPREC**, int) (class.h:212)
> >>> >> ==19611==    by 0xED73CA0: CppMethod__invoke_void(SEXPREC*)
> >>> >> (Module.cpp:200)
> >>> >> ==19611==    by 0x4F0DFD0: do_External (dotcode.c:548)
> >>> >> ==19611==    by 0x4F47F9E: Rf_eval (eval.c:713)
> >>> >> ==19611==    by 0x4F4A6B7: do_begin (eval.c:1807)
> >>> >> ==19611==    by 0x4F47D90: Rf_eval (eval.c:685)
> >>> >> ==19611==    by 0x4F4964C: Rf_applyClosure (eval.c:1135)
> >>> >> ==19611==
> >>> >>
> >>> >> which from http://valgrind.org/docs/manual/mc-manual.html#mc-manual
> .
> >>> rudefn
> >>> >> means that memory allocated with new[] is being deallocated with
> free
> >>> >> (rather than delete / delete[]
> >>> >>
> >>> >> Remarkably, this change to mzR removes this particular valgind
> problem
> >>> >>
> >>> >> Index: src/cramp.cpp
> >>> >> ===================================================================
> >>> >> --- src/cramp.cpp       (revision 121179)
> >>> >> +++ src/cramp.cpp       (working copy)
> >>> >> @@ -95,7 +95,7 @@
> >>> >>          //      if (m_runInfo->m_data.scanCount < 0) { //
> undeclared
> >>> scan
> >>> >> count
> >>> >>          // this will provoke reading of index, which sets scan
> count
> >>> >>          rampScanInfo* tmp = getScanHeaderInfo ( 1 );
> >>> >> -        free(tmp);
> >>> >> +        delete(tmp);
> >>> >>          // }
> >>> >>          // END HENRY
> >>> >>      }
> >>> >>
> >>> >> but doesn't get us out of the woods -- valgrind now complains
> >>> >>
> >>> >> >
> >>> >> > xset <- xcms::xcmsSet(msmsPths)
> >>> >>
> >>> >> vex: the `impossible' happened:
> >>> >>    isZeroU
> >>> >> vex storage: T total 3029292920 bytes allocated
> >>> >> vex storage: P total 640 bytes allocated
> >>> >>
> >>> >> valgrind: the 'impossible' happened:
> >>> >>    LibVEX called failure_exit().
> >>> >>
> >>> >> host stacktrace:
> >>> >> ==20822==    at 0x38083F48: ??? (in /usr/lib/valgrind/memcheck-amd
> >>> >> 64-linux)
> >>> >> ==20822==    by 0x38084064: ??? (in /usr/lib/valgrind/memcheck-amd
> >>> >> 64-linux)
> >>> >> ...
> >>> >> sched status:
> >>> >>   running_tid=1
> >>> >>
> >>> >> Thread 1: status = VgTs_Runnable (lwpid 20822)
> >>> >> ==20822==    at 0x25A294E0: ??? (in /lib/x86_64-linux-gnu/libcrypt
> >>> >> o.so.1.0.0)
> >>> >> ==20822==    by 0x25A086FF: EC_POINT_mul (in
> >>> /lib/x86_64-linux-gnu/libcrypt
> >>> >> o.so.1.0.0)
> >>> >> ==20822==    by 0xB67335F: ???
> >>> >> ==20822==    by 0xCF7F76F: ???
> >>> >> ==20822==    by 0x5EB461A205EFD6FF: ???
> >>> >> ==20822==    by 0xC221D2F: ???
> >>> >> ==20822==    by 0x25A10E47: EC_KEY_check_key (in
> >>> >> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0)
> >>> >> ==20822==    by 0x25A11260: EC_KEY_set_public_key_affine_
> coordinates
> >>> (in
> >>> >> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0)
> >>> >> ==20822==    by 0x25ACA882: ??? (in /lib/x86_64-linux-gnu/libcrypt
> >>> >> o.so.1.0.0)
> >>> >> ==20822==    by 0x25AC637F: ??? (in /lib/x86_64-linux-gnu/libcrypt
> >>> >> o.so.1.0.0)
> >>> >> ==20822==    by 0x25AC5A33: ??? (in /lib/x86_64-linux-gnu/libcrypt
> >>> >> o.so.1.0.0)
> >>> >> ==20822==    by 0x2599970C: FIPS_mode_set (in
> >>> >> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0)
> >>> >> ==20822==    by 0x25995F89: OPENSSL_init_library (in
> >>> >> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0)
> >>> >> ==20822==    by 0x40104E9: call_init.part.0 (dl-init.c:72)
> >>> >> ==20822==    by 0x40105FA: call_init (dl-init.c:30)
> >>> >> ==20822==    by 0x40105FA: _dl_init (dl-init.c:120)
> >>> >> ==20822==    by 0x4015711: dl_open_worker (dl-open.c:575)
> >>> >> ==20822==    by 0x4010393: _dl_catch_error (dl-error.c:187)
> >>> >> ==20822==    by 0x4014BD8: _dl_open (dl-open.c:660)
> >>> >> ==20822==    by 0x6C80F08: dlopen_doit (dlopen.c:66)
> >>> >> ==20822==    by 0x4010393: _dl_catch_error (dl-error.c:187)
> >>> >> ==20822==    by 0x6C81570: _dlerror_run (dlerror.c:163)
> >>> >> ==20822==    by 0x6C80FA0: dlopen@@GLIBC_2.2.5 (dlopen.c:87)
> >>> >> ==20822==    by 0x4EA93F0: AddDLL (Rdynload.c:537)
> >>> >> ==20822==    by 0x4EA996B: R_moduleCdynload (Rdynload.c:917)
> >>> >> ==20822==    by 0x4F68979: internet_Init (internet.c:79)
> >>> >> ==20822==    by 0x4F68AF2: R_newsock (internet.c:115)
> >>> >> ==20822==    by 0x4EF39C0: do_sockconn (connections.c:3196)
> >>> >> ==20822==    by 0x4F3B587: bcEval (eval.c:5658)
> >>> >> ...
> >>> >>
> >>> >> which frankly is too cryptic for me -- it seems perhaps like a call
> >>> >> opening a socket connection is going wrong, but I really don't know
> if
> >>> that
> >>> >> is cause or effect, or even relevant to your problem.
> >>> >>
> >>> >> The bottom line is that this is likely a problem in the C code of
> one
> >>> of
> >>> >> the packages that you are using.
> >>> >>
> >>> >> Do you or a colleague have the expertise to work through this?
> >>> >>
> >>> >> Martin
> >>> >>
> >>> >>
> >>> >>> Kind regards,
> >>> >>> Tom
> >>> >>>
> >>> >>>
> >>> >>> https://github.com/Bioconductor-mirror/msPurity
> >>> >>> http://bioconductor.org/checkResults/devel/bioc-LATEST/
> >>> >>> msPurity/morelia-buildsrc.html
> >>> >>> https://bioconductor.org/packages/devel/bioc/html/msPurity.html
> >>> >>>
> >>> >>> Travis Mac build report:
> >>> >>> https://travis-ci.org/Viant-Metabolomics/msPurity/jobs/159938167
> >>> >>>
> >>> >>>
> >>> >>> ############################################################
> >>> >>> ##################
> >>> >>> ############################################################
> >>> >>> ##################
> >>> >>> ###
> >>> >>> ### Running command:
> >>> >>> ###
> >>> >>> ###   /Library/Frameworks/R.framework/Versions/Current/Resources/
> >>> bin/R
> >>> >>> CMD build --keep-empty-dirs --no-resave-data msPurity
> >>> >>> ###
> >>> >>> ############################################################
> >>> >>> ##################
> >>> >>> ############################################################
> >>> >>> ##################
> >>> >>>
> >>> >>>
> >>> >>> * checking for file ‘msPurity/DESCRIPTION’ ... OK
> >>> >>> * preparing ‘msPurity’:
> >>> >>> * checking DESCRIPTION meta-information ... OK
> >>> >>> * installing the package to build vignettes
> >>> >>> * creating vignettes ...sh: line 1: 62889 Segmentation fault: 11
> >>> >>> '/Library/Frameworks/R.framework/Resources/bin/Rscript' --vanilla
> >>> >>> --default-packages= -e "tools::buildVignettes(dir = '.', tangle =
> >>> >>> TRUE)" > '/tmp/RtmpCXdH7K/xshellf59d5efb2aea' 2>&1
> >>> >>>  ERROR
> >>> >>>
> >>> >>>  *** caught segfault ***
> >>> >>> address 0x0, cause 'memory not mapped'
> >>> >>>
> >>> >>> Traceback:
> >>> >>>  1: .External(list(name = "CppMethod__invoke_notvoid", address =
> >>> >>> <pointer: 0x7fb83b714be0>,     dll = list(name = "Rcpp", path =
> >>> >>> "/Library/Frameworks/R.framework/Versions/3.3/Resources/
> >>> >>> library/Rcpp/libs/Rcpp.so",
> >>> >>>         dynamicLookup = TRUE, handle = <pointer: 0x7fb83b70ed10>,
> >>> >>>    info = <pointer: 0x1052f30c0>), numParameters = -1L),
>  <pointer:
> >>> >>> 0x7fb83b590710>, <pointer: 0x7fb83b5af740>, .pointer,     ...)
> >>> >>>  2: object at backend$getPeakList(x)
> >>> >>>  3: FUN(X[[i]], ...)
> >>> >>>  4: lapply(X = X, FUN = FUN, ...)
> >>> >>>  5: sapply(scans, function(x) object at backend$getPeakList(x)$peaks,
> >>> >>> simplify = FALSE)
> >>> >>>  6: sapply(scans, function(x) object at backend$getPeakList(x)$peaks,
> >>> >>> simplify = FALSE)
> >>> >>>  7: .local(object, ...)
> >>> >>>  8: mzR::peaks(mr)
> >>> >>>  9: mzR::peaks(mr)
> >>> >>> 10: .fun(piece, ...)
> >>> >>> 11: (function (i) {    piece <- pieces[[i]]    if (.inform) {
> >>> >>> res <- try(.fun(piece, ...))        if (inherits(res,
> "try-error")) {
> >>> >>>           piece <- paste(utils::capture.output(print(piece)),
> >>> >>>        collapse = "\n")            stop("with piece ", i, ": \n",
> >>> >>> piece, call. = FALSE)        }    }    else {        res <-
> >>> >>> .fun(piece, ...)    }    progress$step()    res})(2L)
> >>> >>> 12: .Call(loop_apply_, as.integer(n), f, env)
> >>> >>> 13: loop_apply(n, do.ply)
> >>> >>> 14: llply(.data = pieces, .fun = .fun, ..., .progress = .progress,
> >>> >>> .inform = .inform, .parallel = .parallel, .paropts = .paropts)
> >>> >>> 15: plyr::alply(files, 1, function(x) {    mr <- mzR::openMSfile(x)
> >>> >>> scan_peaks <- mzR::peaks(mr)    return(scan_peaks)})
> >>> >>> 16: getscans(filepths)
> >>> >>> 17: purityX(xset, offsets = c(0.5, 0.5), xgroups = c(1, 2))
> >>> >>> 18: eval(expr, envir, enclos)
> >>> >>> 19: eval(expr, envir, enclos)
> >>> >>> 20: withVisible(eval(expr, envir, enclos))
> >>> >>> 21: withCallingHandlers(withVisible(eval(expr, envir, enclos)),
> >>> >>> warning = wHandler,     error = eHandler, message = mHandler)
> >>> >>> 22: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir,
> >>> >>> enclos)), warning = wHandler, error = eHandler, message =
> mHandler))
> >>> >>> 23: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos =
> >>> >>> enclos,     debug = debug, last = i == length(out), use_try =
> >>> >>> stop_on_error !=         2L, keep_warning = keep_warning,
> keep_message
> >>> >>> = keep_message,     output_handler = output_handler)
> >>> >>> 24: evaluate(code, envir = env, new_device = FALSE, keep_warning =
> >>> >>> !isFALSE(options$warning),     keep_message =
> >>> >>> !isFALSE(options$message), stop_on_error = if (options$error &&
> >>> >>>  options$include) 0L else 2L, output_handler =
> >>> >>> knit_handlers(options$render,         options))
> >>> >>> 25: in_dir(opts_knit$get("root.dir") %n% input_dir(),
> evaluate(code,
> >>> >>>   envir = env, new_device = FALSE, keep_warning =
> >>> >>> !isFALSE(options$warning),     keep_message =
> >>> >>> !isFALSE(options$message), stop_on_error = if (options$error &&
> >>> >>>  options$include) 0L else 2L, output_handler =
> >>> >>> knit_handlers(options$render,         options)))
> >>> >>> 26: block_exec(params)
> >>> >>> 27: call_block(x)
> >>> >>> 28: process_group.block(group)
> >>> >>> 29: process_group(group)
> >>> >>> 30: withCallingHandlers(if (tangle) process_tangle(group) else
> >>> >>> process_group(group),     error = function(e) {        setwd(wd)
> >>> >>>  cat(res, sep = "\n", file = output %n% "")
> message("Quitting
> >>> >>> from lines ", paste(current_lines(i),             collapse = "-"),
> "
> >>> >>> (", knit_concord$get("infile"),             ") ")    })
> >>> >>> 31: process_file(text, output)
> >>> >>> 32: knitr::knit(knit_input, knit_output, envir = envir, quiet =
> quiet,
> >>> >>>     encoding = encoding)
> >>> >>> 33: rmarkdown::render(file, encoding = encoding, quiet = quiet,
> envir
> >>> >>> = globalenv())
> >>> >>> 34: vweave_rmarkdown(...)
> >>> >>> 35: engine$weave(file, quiet = quiet, encoding = enc)
> >>> >>> 36: doTryCatch(return(expr), name, parentenv, handler)
> >>> >>> 37: tryCatchOne(expr, names, parentenv, handlers[[1L]])
> >>> >>> 38: tryCatchList(expr, classes, parentenv, handlers)
> >>> >>> 39: tryCatch({    engine$weave(file, quiet = quiet, encoding = enc)
> >>> >>> setwd(startdir)    find_vignette_product(name, by = "weave",
> engine =
> >>> >>> engine)}, error = function(e) {    stop(gettextf("processing
> vignette
> >>> >>> '%s' failed with diagnostics:\n%s",         file,
> >>> >>> conditionMessage(e)), domain = NA, call. = FALSE)})
> >>> >>> 40: tools::buildVignettes(dir = ".", tangle = TRUE)
> >>> >>> An irrecoverable exception occurred. R is aborting now ...
> >>> >>>
> >>> >>>         [[alternative HTML version deleted]]
> >>> >>>
> >>> >>> _______________________________________________
> >>> >>> Bioc-devel at r-project.org mailing list
> >>> >>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>> >>>
> >>> >>>
> >>> >>
> >>> >> This email message may contain legally privileged and/or
> confidential
> >>> >> information.  If you are not the intended recipient(s), or the
> >>> employee or
> >>> >> agent responsible for the delivery of this message to the intended
> >>> >> recipient(s), you are hereby notified that any disclosure, copying,
> >>> >> distribution, or use of this email message is prohibited.  If you
> have
> >>> >> received this message in error, please notify the sender
> immediately by
> >>> >> e-mail and delete this email message from your computer. Thank you.
> >>> >>
> >>> >
> >>> >       [[alternative HTML version deleted]]
> >>> >
> >>> > _______________________________________________
> >>> > Bioc-devel at r-project.org mailing list
> >>> > https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>>
> >>> _______________________________________________
> >>> Bioc-devel at r-project.org mailing list
> >>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>>
> >>
> >>
> >
> >       [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > Bioc-devel at r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
>
> --
> Laurent Gatto | @lgatt0
> http://cpu.sysbiol.cam.ac.uk/
> http://lgatto.github.io/
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list