Skip to content

Parquet: Make createStructReader with fieldId abstract - #17698

Open
dramaticlly wants to merge 1 commit into
apache:mainfrom
dramaticlly:1.12deprecation-parquet-struct-reader
Open

Parquet: Make createStructReader with fieldId abstract#17698
dramaticlly wants to merge 1 commit into
apache:mainfrom
dramaticlly:1.12deprecation-parquet-struct-reader

Conversation

@dramaticlly

Copy link
Copy Markdown
Contributor

createStructReader(List, StructType) was deprecated for removal in 1.12.0 in favor of createStructReader(List, StructType, Integer). The 2-arg form threw UnsupportedOperationException and the 3-arg form defaulted to delegating to it, so neither was usable without an override.

Remove the 2-arg method and make the 3-arg form abstract. Both subclasses (GenericParquetReaders, InternalReader) already override it, and BaseParquetReaders is package-private so no other subclass can exist.

AI Disclosure

Model: Claude Opus 5 (1M context)
Platform/Tool: Claude Code
Human Oversight: reviewed
Prompt Summary: split #16449 into smaller self-contained PRs; verify each group compiles and tests green standalone

createStructReader(List, StructType) was deprecated for removal in 1.12.0
in favor of createStructReader(List, StructType, Integer). The 2-arg form
threw UnsupportedOperationException and the 3-arg form defaulted to
delegating to it, so neither was usable without an override.

Remove the 2-arg method and make the 3-arg form abstract. Both subclasses
(GenericParquetReaders, InternalReader) already override it, and
BaseParquetReaders is package-private so no other subclass can exist.
@dramaticlly

Copy link
Copy Markdown
Contributor Author

@RussellSpitzer can you help take a look? I also make 3 argument of createStructReader abstract after remove 2 argument method and all subclass override the new one.

@uros-b

uros-b commented Aug 18, 2026

Copy link
Copy Markdown
Member

Thank you @dramaticlly!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants