apache / apache/arrow

[C++] FindArrowDataset requires Parquet

Open
#30,328 2 comments 0 reactions 0 assignees View on GitHub
Component: C++ Component: Developer Tools Type: bug
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 13h
Merged PRs (30d)
88

Description

Parquet is an optional dependency of the dataset layer, but it appears that `FindArrowDataset.cmake` requires Parquet unconditionally.

Example:
https://app.travis-ci.com/github/apache/arrow/jobs/548648734#L3513

```Java

Could NOT find Parquet (missing: PARQUET_INCLUDE_DIR PARQUET_LIB_DIR

PARQUET_SO_VERSION)

Call Stack (most recent call first):

/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)

cmake_modules/FindParquet.cmake:115 (find_package_handle_standard_args)

cmake_modules/FindArrowDataset.cmake:47 (find_package)

CMakeLists.txt:432 (find_package)
```

**Reporter**: [Antoine Pitrou](https://issues.apache.org/jira/browse/ARROW-14793) / @pitrou
#### Related issues:
- [[C++] CMake's find_package(Parquet) does not find Parquet with Arrow 3.0.0](https://github.com/apache/arrow/issues/27996) (is related to)

**Note**: *This issue was originally created as [ARROW-14793](https://issues.apache.org/jira/browse/ARROW-14793). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

Contributor guide

Open the contributing guide

Research direction

Inspect cmake_modules/FindArrowDataset.cmake around its Parquet lookup, then compare it with cmake_modules/FindParquet.cmake and the find_package call in CMakeLists.txt around line 432. Reproduce the dataset-layer configuration from the linked Travis job without Parquet; done means configuration no longer requires Parquet unconditionally.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system
Issue type
Bug
Difficulty
2/5
Estimated time
Half a day
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.