apache / apache/parquet-java

InternalParquetRecordWriter doesn't use min/max row counts

Open
#1,461 4 comments 0 reactions 0 assignees View on GitHub
Component: Java Component: Parquet Priority: Major Type: bug
Dominant language
Java
Stars
3.1k
Forks
1.6k
Avg merge
3d 12h
Merged PRs (30d)
33

Description

PARQUET-99 added settings to control the min and max number of rows between size checks when flushing pages, and a setting to control whether to always use a static size (the min). The [InternalParquetRecordWriter has similar checks](https://github.com/apache/parquet-mr/blob/master/parquet-hadoop/src/main/java/org/apache/parquet/hadoop/InternalParquetRecordWriter.java#L143) that don't use those settings. We should determine if it should update it to use those settings or similar.

**Reporter**: [Ryan Blue](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=rdblue) / @rdblue
#### Related issues:
- [Min/Max record counts for block size checks are not configurable](https://github.com/apache/parquet-java/issues/2038) (duplicates)
- [Large rows cause unnecessary OOM exceptions](https://github.com/apache/parquet-java/issues/1584) (is related to)
#### PRs and other links:
- [GitHub Pull Request #495](https://github.com/apache/parquet-mr/pull/495)

**Note**: *This issue was originally created as [PARQUET-409](https://issues.apache.org/jira/browse/PARQUET-409). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in parquet-hadoop/src/main/java/org/apache/parquet/hadoop/InternalParquetRecordWriter.java around line 143 and compare its page-flush checks with the settings introduced by PARQUET-99. Review pull request #495 and the related issues before deciding the intended behavior; done means the writer consistently handles the configurable minimum and maximum row counts or documents why it should not.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
data-engineering
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.