Skip to content

Probe for FileSystem.hasCapability() method uses wrong method name #3239

@steveloughran

Description

@steveloughran

Describe the bug, including details regarding any error messages, version, and platform.

noticed while running @ debug. HadoopStreams is looking for a method called hasCapabilities() but the method name needed is hasCapability

2025-06-05 15:02:53 DEBUG DynMethods - failed to load method hasCapabilities from class class org.apache.hadoop.fs.FSDataInputStream
java.lang.NoSuchMethodException: org.apache.hadoop.fs.FSDataInputStream.hasCapabilities(java.lang.String)
	at java.lang.Class.getMethod(Class.java:1786)
	at org.apache.parquet.util.DynMethods$Builder.impl(DynMethods.java:282)
	at org.apache.parquet.hadoop.util.HadoopStreams.<clinit>(HadoopStreams.java:42)
	at org.apache.parquet.hadoop.util.HadoopOutputFile.createOrOverwrite(HadoopOutputFile.java:92)
	at org.apache.parquet.hadoop.ParquetFileWriter.<init>(ParquetFileWriter.java:473)
	at org.apache.parquet.hadoop.ParquetFileWriter.<init>(ParquetFileWriter.java:407)
	at org.apache.parquet.hadoop.ParquetWriter.<init>(ParquetWriter.java:392)
	at org.apache.parquet.hadoop.ParquetWriter$Builder.build(ParquetWriter.java:965)
2025-06-05 15:02:53 DEBUG ParquetFileWriter - 0: start

Given parquet is now building with Hadoop 3.3.0, maybe it's time to move from reflection invocation?

Component(s)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions