Hello,
I recently installed the 4.0.0 Arrow package for R on two different MacOS
machines and encountered fatal errors when reading or writing parquet
files. Here's an example demonstrating attempts to write a new Parquet file
and to read a Parquet file previously created with Arrow 3.0.0. Downgrading
to 3.0.0 using devtools::install_version() restores the ability to read and
write Parquet files on these systems. I wanted to check in with this list
to see if I'm doing something obviously incorrect before creating an issue
in Jira.
# -------------------------------------
> install.packages('arrow')
trying URL '
https://cloud.r-project.org/bin/macosx/contrib/4.0/arrow_4.0.0.tgz'
Content type 'application/x-gzip' length 12025401 bytes (11.5 MB)
==================================================
downloaded 11.5 MB
The downloaded binary packages are in
/var/folders/xp/30qg3rl93t36yxgb8_xyxjh40000gr/T//Rtmp9sfGFl/downloaded_packages
> x <- data.frame(a=c(1,2), b=c(10,20))
> x
a b
1 1 10
2 2 20
> arrow::write_parquet(x, "~/Desktop/x.parquet")
Error in parquet___WriterProperties___Builder__create() :
Cannot call parquet___WriterProperties___Builder__create(). See
https://arrow.apache.org/docs/r/articles/install.html for help installing
Arrow C++ libraries.
> arrow::read_parquet("~/Desktop/x-3.0.0.parquet") # read from identical
dataframe created in arrow 3.0.0
Error in parquet___arrow___ArrowReaderProperties__Make(isTRUE(use_threads))
:
Cannot call parquet___arrow___ArrowReaderProperties__Make(). See
https://arrow.apache.org/docs/r/articles/install.html for help installing
Arrow C++ libraries.
> sessionInfo()
R version 4.0.5 (2021-03-31)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.7
Matrix products: default
BLAS:
/Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRblas.dylib
LAPACK:
/Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib
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] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] tidyselect_1.1.1 bit_4.0.4 compiler_4.0.5 magrittr_2.0.1
assertthat_0.2.1 R6_2.5.0 tools_4.0.5 glue_1.4.2
bit64_4.0.5 vctrs_0.3.8
[11] arrow_4.0.0 rlang_0.4.11 purrr_0.3.4
# -------------------------------------
Thanks,
Chris Berthiaume