[ https://issues.apache.org/jira/browse/ARROW-9602?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17170094#comment-17170094 ]
Matt Pollock edited comment on ARROW-9602 at 8/3/20, 3:22 PM: -------------------------------------------------------------- Another potentially useful tidbit: after {{sudo yum remove arrow-devel}} to force {{install.packages("arrow")}} to compile arrow from source I get the following message (or note) about needing to run {{install_arrow()}} later on. {code:java} > install.packages("arrow") Installing package into ‘/my/package/repo/R/centos7/4.0’ (as ‘lib’ is unspecified) trying URL 'https://artifacts.our.mirror.org/cran/src/contrib/arrow_1.0.0.tar.gz' Content type 'application/x-gzip' length 274139 bytes (267 KB) ================================================== downloaded 267 KB * installing *source* package ‘arrow’ ... ** package ‘arrow’ successfully unpacked and MD5 sums checked ** using staged installation *** Successfully retrieved C++ source *** Building C++ libraries **** arrow ------------------------- NOTE --------------------------- After installation, please run arrow::install_arrow() for help installing required runtime libraries --------------------------------------------------------- {code} However, immediately after this note I see that the C++ source is being compiled, e.g., {code:java} ** libs /opt/rh/devtoolset-8/root/bin/g++ -std=gnu++11 -I"/opt/R/4.0.0/lib/R/include" -DNDEBUG -I'/opt/R/4.0.0/lib/R/library/Rcpp/include' -I/usr/local/include -fpic -g -O2 -c array.cpp -o array.o {code} After an apparent successful compilation and installation (of the R package) {{arrow_available()}} returns false. If I follow the advice of the note I see more compilation messages of the same flavor as above with the main difference (so far as I can tell) being the presence of {{-DARROW_R_WITH_ARROW}} {code:java} ** libs /opt/rh/devtoolset-8/root/bin/g++ -std=gnu++11 -I"/opt/R/4.0.0/lib/R/include" -DNDEBUG -I/tmp/Rtmpq1bAon/R.INSTALL57335ab235d1/arrow/libarrow/arrow-1.0.0/include -DARROW_R_WITH_ARROW -I'/opt/R/4.0.0/lib/R/library/Rcpp/include' -I/usr/local/include -fpic -g -O2 -c array.cpp -o array.o{code} After this {{arrow_available()}} returns true but {{write_parquet(iris, tempfile())}} still causes a segfault was (Author: mpollock): Another potentially useful tidbit: after {{sudo yum remove arrow-devel}} to force {{install.packages("arrow")}} to compile arrow from source I get the following message (or note) about needing to run {{install_arrow()}} later on. {code:java} > install.packages("arrow") Installing package into ‘/devel/r-user-packages/mpollock/R/centos7/4.0’ (as ‘lib’ is unspecified) trying URL 'https://artifacts.mitre.org/artifactory/cran/src/contrib/arrow_1.0.0.tar.gz' Content type 'application/x-gzip' length 274139 bytes (267 KB) ================================================== downloaded 267 KB * installing *source* package ‘arrow’ ... ** package ‘arrow’ successfully unpacked and MD5 sums checked ** using staged installation *** Successfully retrieved C++ source *** Building C++ libraries **** arrow ------------------------- NOTE --------------------------- After installation, please run arrow::install_arrow() for help installing required runtime libraries --------------------------------------------------------- {code} However, immediately after this note I see that the C++ source is being compiled, e.g., {code:java} ** libs /opt/rh/devtoolset-8/root/bin/g++ -std=gnu++11 -I"/opt/R/4.0.0/lib/R/include" -DNDEBUG -I'/opt/R/4.0.0/lib/R/library/Rcpp/include' -I/usr/local/include -fpic -g -O2 -c array.cpp -o array.o {code} After an apparent successful compilation and installation (of the R package) {{arrow_available()}} returns false. If I follow the advice of the note I see more compilation messages of the same flavor as above with the main difference (so far as I can tell) being the presence of {{-DARROW_R_WITH_ARROW}} {code:java} ** libs /opt/rh/devtoolset-8/root/bin/g++ -std=gnu++11 -I"/opt/R/4.0.0/lib/R/include" -DNDEBUG -I/tmp/Rtmpq1bAon/R.INSTALL57335ab235d1/arrow/libarrow/arrow-1.0.0/include -DARROW_R_WITH_ARROW -I'/opt/R/4.0.0/lib/R/library/Rcpp/include' -I/usr/local/include -fpic -g -O2 -c array.cpp -o array.o{code} After this {{arrow_available()}} returns true but {{write_parquet(iris, tempfile())}} still causes a segfault > [R] segfault on Table$create(iris) > ---------------------------------- > > Key: ARROW-9602 > URL: https://issues.apache.org/jira/browse/ARROW-9602 > Project: Apache Arrow > Issue Type: Bug > Components: R > Affects Versions: 1.0.0 > Reporter: Matt Pollock > Priority: Major > > > {code:java} > > arrow::write_parquet(iris, "~/iris") > *** caught segfault *** > address (nil), cause 'memory not mapped' Traceback: 1: Table__from_dots(dots, > schema) 2: shared_ptr_is_null(xp) 3: shared_ptr(Table, Table__from_dots(dots, > schema)) 4: Table$create(x) 5: arrow::write_parquet(iris, "~/iris") > {code} > The segfault is easy to generate trying to write iris data to parquet. I have > tried R 4.0.0 and R 4.0.2, I've installed the arrow (R) package from CRAN, > source, nightly build, both with and without using the system arrow C++ > installation. When using system arrow the installed version is: > {noformat} > Installed Packages > Name : arrow-devel > Arch : x86_64 > Version : 1.0.0 > Release : 1.el7 > Size : 32 M > Repo : installed > From repo : apache-arrow > Summary : Libraries and header files for Apache Arrow C++ > URL : https://arrow.apache.org/ > License : Apache-2.0 > Description : Libraries and header files for Apache Arrow C++. > {noformat} > I realize that this is so basic that it seems improbable that your CI didn't > catch something (i.e., that the issue has to do with my local environment) > but would appreciate verification that version 1.0 works for others on centOS7 -- This message was sent by Atlassian Jira (v8.3.4#803005)