[
https://issues.apache.org/jira/browse/BEAM-6545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16755541#comment-16755541
] Ahmet Altay commented on BEAM-6545: ----------------------------------- I do not understand why this is failing for the released version 2.9.0. Beam depends on 1.27.0 version of the google-http-library ([https://github.com/apache/beam/blob/release-2.9.0/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy#L311|https://www.google.com/url?q=https://github.com/apache/beam/blob/release-2.9.0/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy%23L311&sa=D&usg=AFQjCNHxtKDUbcDm57_BHZxQ3ml-Giy-7A]) 1.27.0 of the google-http-library users the null safe version of decodeBase64 from apache commons ([https://github.com/googleapis/google-http-java-client/blob/v1.27.0/google-http-client/src/main/java/com/google/api/client/util/Base64.java#L101|https://www.google.com/url?q=https://github.com/googleapis/google-http-java-client/blob/v1.27.0/google-http-client/src/main/java/com/google/api/client/util/Base64.java%23L101&sa=D&usg=AFQjCNEBI6RP6LoOqN6jQZoOnjKztGCTZA]) This was changed in 1.28.0 ([https://github.com/googleapis/google-http-java-client/blob/v1.28.0/google-http-client/src/main/java/com/google/api/client/util/Base64.java#L91|https://www.google.com/url?q=https://github.com/googleapis/google-http-java-client/blob/v1.28.0/google-http-client/src/main/java/com/google/api/client/util/Base64.java%23L91&sa=D&usg=AFQjCNGRmg9aOwpaVdI4ZbjlPa5G0IEINw]) but Beam does not use this version. We need to update our code before upgrading the dependency. But I am not yet sure why this is failing as it is. > 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: Ahmet Altay > Priority: Major > Fix For: 2.10.0 > > > **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)
