Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-6957

[CI][Crossbow] Nightly R with sanitizers build fails installing dependencies

    XMLWordPrintableJSON

    Details

      Description

      See https://circleci.com/gh/ursa-labs/crossbow/4006 for example. Failure looks like this:

      ...
      g++ -fsanitize=address,undefined,bounds-strict -fno-omit-frame-pointer -std=gnu++11 -I"/usr/local/RDsan/lib/R/include" -DNDEBUG  -I'/usr/local/RDsan/lib/R/site-library/Rcpp/include' -I'/usr/local/RD/lib/R/library/BH/include' -I/usr/local/include  -I. -Ircon -fpic  -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O0 -Wall -pedantic  -c TokenizerWs.cpp -o TokenizerWs.o
      
      cc1plus: out of memory allocating 65536 bytes after a total of 31866880 bytes
      
      cc1plus: out of memory allocating 65536 bytes after a total of 52080640 bytes
      virtual memory exhausted: Cannot allocate memory
      virtual memory exhausted: Cannot allocate memory
      /usr/local/RDsan/lib/R/etc/Makeconf:175: recipe for target 'Collector.o' failed
      make[1]: *** [Collector.o] Error 1
      make[1]: *** Waiting for unfinished jobs....
      /usr/local/RDsan/lib/R/etc/Makeconf:175: recipe for target 'CollectorGuess.o' failed
      make[1]: *** [CollectorGuess.o] Error 1
      /usr/local/RDsan/lib/R/etc/Makeconf:175: recipe for target 'Reader.o' failed
      make[1]: *** [Reader.o] Error 1
      /usr/local/RDsan/lib/R/etc/Makeconf:175: recipe for target 'TokenizerWs.o' failed
      make[1]: *** [TokenizerWs.o] Error 1
      make[1]: Leaving directory '/tmp/RtmpvSXO7m/R.INSTALL992bafde57/readr/src'
      ERROR: compilation failed for package ‘readr’
      * removing ‘/usr/local/RDsan/lib/R/site-library/readr’
      Error: Failed to install 'decor' from GitHub:
        (converted from warning) installation of one or more packages failed,
        probably ‘readr’
      Execution halted
      ERROR: Service 'r-sanitizer' failed to build: The command '/bin/sh -c RDsan -e "remotes::install_github('romainfrancois/decor')"' returned a non-zero code: 1
      

      Some thoughts:

      • This dependency is not needed to run the tests--it is a developer dependency, only needed when you're editing the Rcpp code. So we could conditionally not install it if we're on CI.
      • The docker code around this changed in ARROW-6918 last week, around the time this started failing. The installation of this package was moved to a different part of the job, and it appears that MAKEVARS=-j8 was added. Maybe that's causing more memory to be used concurrently? (Also, I would be shocked if CircleCI gave us a VM with 8 cores, so this seems wasteful and should probably be tuned to whatever the current system has.)

      cc Antoine PitrouFrancois Saint-Jacques

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                npr Neal Richardson
                Reporter:
                npr Neal Richardson
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 40m
                  1h 40m