[
https://issues.apache.org/jira/browse/HADOOP-18724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17721852#comment-17721852
]
ASF GitHub Bot commented on HADOOP-18724:
-----------------------------------------
steveloughran opened a new pull request, #5647:
URL: https://github.com/apache/hadoop/pull/5647
This:
1. Adds optLong, optDouble, mustLong and mustDouble methods to the FSBuilder
interface to let callers explicitly passin long and double arguments.
2. The opt() and must() builder calls which take float/double values now
only set long values instead, so as to avoid problems related to overloaded
methods resulting in a ".0" being appended to a long value.
3. All of the relevant opt/must calls in the hadoop codebase move to the new
methods
4. And the s3a code is resilient to parse errors in is numeric options -it
will downgrade to the default.
This is nominally incompatible, but the floating-point builder methods were
never used: nothing currently expects floating point numbers.
For anyone who wants to safely set numeric builder options across all
compatible releases, convert the number to a string and then use the
opt(String, String) and must(String, String) methods.
Contributed by Steve Loughran
### How was this patch tested?
testing in progress
### For code changes:
- [X] Does the title or this PR starts with the corresponding JIRA issue id
(e.g. 'HADOOP-17799. Your PR title ...')?
- [ ] Object storage: have the integration tests been executed and the
endpoint declared according to the connector-specific documentation?
- [ ] If adding new dependencies to the code, are these dependencies
licensed in a way that is compatible for inclusion under [ASF
2.0](http://www.apache.org/legal/resolved.html#category-a)?
- [ ] If applicable, have you updated the `LICENSE`, `LICENSE-binary`,
`NOTICE-binary` files?
> Open file fails with NumberFormatException for S3AFileSystem
> ------------------------------------------------------------
>
> Key: HADOOP-18724
> URL: https://issues.apache.org/jira/browse/HADOOP-18724
> Project: Hadoop Common
> Issue Type: Bug
> Components: fs/s3
> Affects Versions: 3.3.5
> Reporter: Ayush Saxena
> Assignee: Steve Loughran
> Priority: Critical
> Labels: pull-request-available
>
> Saw the trace for Hive-Iceberg, was using the old client, doesn't happen once
> I upgraded.
> {noformat}
> Caused by: java.lang.NumberFormatException: For input string: "5783.0"
> at
> java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
> at java.base/java.lang.Long.parseLong(Long.java:692)
> at java.base/java.lang.Long.parseLong(Long.java:817)
> at org.apache.hadoop.conf.Configuration.getLong(Configuration.java:1601)
> at
> org.apache.hadoop.fs.s3a.impl.OpenFileSupport.prepareToOpenFile(OpenFileSupport.java:262)
> at
> org.apache.hadoop.fs.s3a.S3AFileSystem.openFileWithOptions(S3AFileSystem.java:5219)
> at
> org.apache.hadoop.fs.FileSystem$FSDataInputStreamBuilder.build(FileSystem.java:4753)
> at
> org.apache.iceberg.hadoop.HadoopInputFile.newStream(HadoopInputFile.java:196)
> at
> org.apache.iceberg.avro.AvroIterable.newFileReader(AvroIterable.java:101)
> at
> org.apache.iceberg.avro.AvroIterable.getMetadata(AvroIterable.java:66){noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]