[
https://issues.apache.org/jira/browse/BEAM-6545?focusedWorklogId=192026&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-192026
]
ASF GitHub Bot logged work on BEAM-6545:
----------------------------------------
Author: ASF GitHub Bot
Created on: 30/Jan/19 04:54
Start Date: 30/Jan/19 04:54
Worklog Time Spent: 10m
Work Description: kennknowles commented on pull request #7667:
[BEAM-6545] Remove useless allowance of null constructor in
ByteArrayShufflePosition
URL: https://github.com/apache/beam/pull/7667
There is no reason to allow null here, except for coding laziness in the
callers. I fixed the call sites and removed the pointless `@Nullable`
annotations. I left a redundant null check in one of the methods just to avoid
introducing a new NPE.
There are many other methods in this class and its neighbors that accept
null where they should not, and many incorrect annotations that findbugs seems
to be missing. So I am worried that it would not find a null that was headed
for `ByteArrayShufflePosition.of(null)`. That invocation makes no sense, but I
would not assume it is impossible.
------------------------
Follow this checklist to help us incorporate your contribution quickly and
easily:
- [x] Format the pull request title like `[BEAM-XXX] Fixes bug in
ApproximateQuantiles`, where you replace `BEAM-XXX` with the appropriate JIRA
issue, if applicable. This will automatically link the pull request to the
issue.
- [x] If this contribution is large, please file an Apache [Individual
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
It will help us expedite review of your Pull Request if you tag someone
(e.g. `@username`) to look at it.
Post-Commit Tests Status (on master branch)
------------------------------------------------------------------------------------------------
Lang | SDK | Apex | Dataflow | Flink | Gearpump | Samza | Spark
--- | --- | --- | --- | --- | --- | --- | ---
Go | [](https://builds.apache.org/job/beam_PostCommit_Go/lastCompletedBuild/)
| --- | --- | --- | --- | --- | ---
Java | [](https://builds.apache.org/job/beam_PostCommit_Java/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Apex/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Flink/lastCompletedBuild/)<br>[](https://builds.apache.org/job/beam_PostCommit_Java_PVR_Flink_Batch/lastCompletedBuild/)<br>[](https://builds.apache.org/job/beam_PostCommit_Java_PVR_Flink_Streaming/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Gearpump/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Samza/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Spark/lastCompletedBuild/)
Python | [](https://builds.apache.org/job/beam_PostCommit_Python_Verify/lastCompletedBuild/)
| --- | [](https://builds.apache.org/job/beam_PostCommit_Py_VR_Dataflow/lastCompletedBuild/)
</br> [](https://builds.apache.org/job/beam_PostCommit_Py_ValCont/lastCompletedBuild/)
| [](https://builds.apache.org/job/beam_PreCommit_Python_PVR_Flink_Cron/lastCompletedBuild/)
| --- | --- | ---
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 192026)
Time Spent: 10m
Remaining Estimate: 0h
> NPE when decoding null base 64 strings
> --------------------------------------
>
> Key: BEAM-6545
> URL: https://issues.apache.org/jira/browse/BEAM-6545
> Project: Beam
> Issue Type: Bug
> Components: sdk-java-harness
> Affects Versions: 2.9.0
> Reporter: Ahmet Altay
> Assignee: Kenneth Knowles
> Priority: Major
> Fix For: 2.10.0
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> **ByteArrayShufflePosition.fromBase64 is marked with a @Nullable argument,
> however it does not properly handle null inputs resulting in NPE.
> This seems like an unintended change we picked up from the dependency:
> google-http-java-client/ switched from apache commons to guava
> ([https://github.com/googleapis/google-http-java-client/commit/990c534f0e5103a142b0639c12c90cb990a00cfd#diff-97264fba16d690a26d63fbbc992af937)]
>
>
> and decodeBase64 behaves differently in both cases. Former can handle null by
> returning null, latter will throw NPE.
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)