Skip to content

Migrate Parquet support to Mason package - #5510

Merged
jabraham17 merged 29 commits into
Bears-R-Us:mainfrom
eric-vo:parquet-mason-migration
Aug 17, 2026
Merged

Migrate Parquet support to Mason package#5510
jabraham17 merged 29 commits into
Bears-R-Us:mainfrom
eric-vo:parquet-mason-migration

Conversation

@eric-vo

@eric-vo eric-vo commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Replaces Arkouda's Parquet implementation with the external Mason Parquet package.

Arkouda now retains only server-specific responsibilities: message handling, symbol-table conversion, client responses, and Arkouda-specific null processing. File, schema, reader, writer, and distributed Parquet mechanics are delegated to the package.

Changes

  • Remove Arkouda's vendored Parquet C++ sources and legacy Arrow build shims.
  • Add package acquisition and build integration.
  • Re-export the package API through ParquetMsg for existing server modules.
  • Preserve distributed, string, list, multi-column, append, and null-handling behavior.
  • Read the runtime Arrow version through the package's C++ API.

Dependency

This PR depends on the companion Mason Parquet PR and should be merged after it.

eric-vo added 4 commits July 15, 2026 14:07
- Updated `test_checkpoint` to include `uint8` as a valid dtype and adjusted array creation accordingly.
- Introduced `test_unknown_entry_type` to validate error handling for unknown checkpoint entry types.
- Enhanced parquet tests in `io_test.py` to ensure proper handling of uint8 data types, including round-trip tests for various scenarios.
- Removed a known failure case from `parquet_edge_test.py` related to concatenated gzip members due to Arrow v9 correctness issues.

@jabraham17 jabraham17 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review part 1, I have not yet looked at the Parquet server code changes

Comment thread arkouda/numpy/pdarraycreation.py Outdated
Comment thread make/deps/parquet.mk Outdated
Comment thread scripts/get_parquet_package.sh Outdated
Comment thread scripts/get_parquet_package.sh Outdated
Comment thread scripts/get_parquet_package.sh
Comment thread src/CheckpointMsg.chpl Outdated
Comment thread tests/numpy/pdarray_creation_test.py Outdated
Comment thread tests/numpy/pdarray_creation_test.py
Comment thread tests/pandas/io_test.py
Comment thread tests/pandas/parquet_edge_test.py
Comment thread src/ParquetMsg.chpl Outdated
Comment thread src/ParquetMsg.chpl Outdated
Comment thread src/ParquetMsg.chpl Outdated
Comment thread src/ParquetMsg.chpl Outdated
Comment thread src/ParquetMsg.chpl Outdated
Comment thread src/ParquetMsg.chpl Outdated
Comment thread scripts/get_parquet_package.sh Outdated
Comment thread src/CheckpointMsg.chpl
Comment thread src/ParquetMsg.chpl Outdated
@jabraham17

Copy link
Copy Markdown
Contributor

I believe the CI is failing because you have not yet merged chapel-lang/Parquet#22 correct? Lets focus on getting that merged first (that PR looks almost good to go) so we can look at the CI here

@eric-vo
eric-vo requested a review from jabraham17 August 14, 2026 20:08
Comment thread scripts/get_parquet_package.sh Outdated
@jabraham17
jabraham17 enabled auto-merge August 17, 2026 20:30
@jabraham17
jabraham17 added this pull request to the merge queue Aug 17, 2026
Merged via the queue into Bears-R-Us:main with commit 749a61a Aug 17, 2026
23 checks passed
@eric-vo
eric-vo deleted the parquet-mason-migration branch August 17, 2026 21:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants