You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2018/01/08 20:17:19 UTC

[arrow] branch master updated: ARROW-1969: [C++] Don't build ORC extension by default

This is an automated email from the ASF dual-hosted git repository.

wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new ee134f0  ARROW-1969: [C++] Don't build ORC extension by default
ee134f0 is described below

commit ee134f0e4b285e17f33a56e7750836dd82a13735
Author: Jim Crist <ji...@gmail.com>
AuthorDate: Mon Jan 8 15:17:12 2018 -0500

    ARROW-1969: [C++] Don't build ORC extension by default
    
    - Turns off building optional ORC extension by default
    - Fixes travis builds to turn on ORC extension for a few branches
    - Adds trivial import test to python build
    - Adds documentation on how to build optional ORC extension
    
    Author: Jim Crist <ji...@gmail.com>
    
    Closes #1457 from jcrist/orc-off-by-default and squashes the following commits:
    
    fc9898d8 [Jim Crist] Document how to build ORC integration
    950ae38e [Jim Crist] ORC integration is off by default
---
 .travis.yml                       | 2 ++
 ci/travis_before_script_cpp.sh    | 4 ++++
 ci/travis_script_python.sh        | 2 ++
 cpp/CMakeLists.txt                | 2 +-
 cpp/README.md                     | 7 +++++++
 python/doc/source/development.rst | 6 ++++++
 python/manylinux1/build_arrow.sh  | 2 +-
 7 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index ddadf73..58d6786 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -54,6 +54,7 @@ matrix:
     - export ARROW_TRAVIS_USE_TOOLCHAIN=1
     - export ARROW_TRAVIS_VALGRIND=1
     - export ARROW_TRAVIS_PLASMA=1
+    - export ARROW_TRAVIS_ORC=1
     - export ARROW_TRAVIS_CLANG_FORMAT=1
     - export ARROW_BUILD_WARNING_LEVEL=CHECKIN
     - export CC="clang-4.0"
@@ -75,6 +76,7 @@ matrix:
     before_script:
     - export ARROW_TRAVIS_USE_TOOLCHAIN=1
     - export ARROW_TRAVIS_PLASMA=1
+    - export ARROW_TRAVIS_ORC=1
     - export ARROW_BUILD_WARNING_LEVEL=CHECKIN
     - travis_wait 50 $TRAVIS_BUILD_DIR/ci/travis_before_script_cpp.sh
     script:
diff --git a/ci/travis_before_script_cpp.sh b/ci/travis_before_script_cpp.sh
index 664f7ce..fd2c164 100755
--- a/ci/travis_before_script_cpp.sh
+++ b/ci/travis_before_script_cpp.sh
@@ -84,6 +84,10 @@ if [ $ARROW_TRAVIS_PLASMA == "1" ]; then
   CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS -DARROW_PLASMA=ON"
 fi
 
+if [ $ARROW_TRAVIS_ORC == "1" ]; then
+  CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS -DARROW_ORC=ON"
+fi
+
 if [ $ARROW_TRAVIS_VALGRIND == "1" ]; then
   CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS -DARROW_TEST_MEMCHECK=ON"
 fi
diff --git a/ci/travis_script_python.sh b/ci/travis_script_python.sh
index 444386f..9e74906 100755
--- a/ci/travis_script_python.sh
+++ b/ci/travis_script_python.sh
@@ -63,6 +63,7 @@ cmake -GNinja \
       -DARROW_BUILD_UTILITIES=off \
       -DARROW_PLASMA=on \
       -DARROW_PYTHON=on \
+      -DARROW_ORC=on \
       -DCMAKE_BUILD_TYPE=$ARROW_BUILD_TYPE \
       -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
       $ARROW_CPP_DIR
@@ -88,6 +89,7 @@ popd
 
 python -c "import pyarrow.parquet"
 python -c "import pyarrow.plasma"
+python -c "import pyarrow.orc"
 
 if [ $TRAVIS_OS_NAME == "linux" ]; then
   export PLASMA_VALGRIND=1
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
index ede13af..0558cba 100644
--- a/cpp/CMakeLists.txt
+++ b/cpp/CMakeLists.txt
@@ -121,7 +121,7 @@ if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
 
   option(ARROW_ORC
     "Build the Arrow ORC adapter"
-    ON)
+    OFF)
 
   option(ARROW_JEMALLOC
     "Build the Arrow jemalloc-based allocator"
diff --git a/cpp/README.md b/cpp/README.md
index 92e87cb..39a1cca 100644
--- a/cpp/README.md
+++ b/cpp/README.md
@@ -145,6 +145,13 @@ The CUDA toolchain used to build the library can be customized by using the
 This library is still in Alpha stages, and subject to API changes without
 deprecation warnings.
 
+### Building Apache ORC integration (optional)
+
+The optional arrow reader for the Apache ORC format (found in the
+`arrow::adapters::orc` namespace) can be built by passing `-DARROW_ORC=on`.
+This is currently not supported on windows. Note that this functionality is
+still in Alpha stages, and subject to API changes without deprecation warnings.
+
 ### API documentation
 
 To generate the (html) API documentation, run the following command in the apidoc
diff --git a/python/doc/source/development.rst b/python/doc/source/development.rst
index 1c1a308..01844fa 100644
--- a/python/doc/source/development.rst
+++ b/python/doc/source/development.rst
@@ -175,6 +175,9 @@ Now build and install the Arrow C++ libraries:
 If you don't want to build and install the Plasma in-memory object store,
 you can omit the ``-DARROW_PLASMA=on`` flag.
 
+To add support for the experimental Apache ORC integration, include
+``-DARROW_ORC=on`` in these flags.
+
 Now, optionally build and install the Apache Parquet libraries in your
 toolchain:
 
@@ -205,6 +208,9 @@ Now, build pyarrow:
 If you did not build parquet-cpp, you can omit ``--with-parquet`` and if
 you did not build with plasma, you can omit ``--with-plasma``.
 
+If you built with the experimental Apache ORC integration, include
+``--with-orc`` in these flags.
+
 You should be able to run the unit tests with:
 
 .. code-block:: shell
diff --git a/python/manylinux1/build_arrow.sh b/python/manylinux1/build_arrow.sh
index ced4556..4d816be 100755
--- a/python/manylinux1/build_arrow.sh
+++ b/python/manylinux1/build_arrow.sh
@@ -58,7 +58,7 @@ for PYTHON in ${PYTHON_VERSIONS}; do
     ARROW_BUILD_DIR=/arrow/cpp/build-PY${PYTHON}
     mkdir -p "${ARROW_BUILD_DIR}"
     pushd "${ARROW_BUILD_DIR}"
-    PATH="$(cpython_path $PYTHON)/bin:$PATH" cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/arrow-dist -DARROW_BUILD_TESTS=OFF -DARROW_BUILD_SHARED=ON -DARROW_BOOST_USE_SHARED=OFF -DARROW_JEMALLOC=off -DARROW_RPATH_ORIGIN=ON -DARROW_JEMALLOC_USE_SHARED=OFF -DARROW_PYTHON=ON -DPythonInterp_FIND_VERSION=${PYTHON} -DARROW_PLASMA=ON ..
+    PATH="$(cpython_path $PYTHON)/bin:$PATH" cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/arrow-dist -DARROW_BUILD_TESTS=OFF -DARROW_BUILD_SHARED=ON -DARROW_BOOST_USE_SHARED=OFF -DARROW_JEMALLOC=off -DARROW_RPATH_ORIGIN=ON -DARROW_JEMALLOC_USE_SHARED=OFF -DARROW_PYTHON=ON -DPythonInterp_FIND_VERSION=${PYTHON} -DARROW_PLASMA=ON -DARROW_ORC=ON ..
     make -j5 install
     popd
 

-- 
To stop receiving notification emails like this one, please contact
['"commits@arrow.apache.org" <co...@arrow.apache.org>'].