[
https://issues.apache.org/jira/browse/BEAM-14405?focusedWorklogId=766176&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-766176
]
ASF GitHub Bot logged work on BEAM-14405:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 04/May/22 17:13
Start Date: 04/May/22 17:13
Worklog Time Spent: 10m
Work Description: nielm commented on PR #17540:
URL: https://github.com/apache/beam/pull/17540#issuecomment-1117601142
I am not sure what you mean by 'supressions' here?
(This issue is unrelated to the suppression of runtime exceptions in
Spanner, GCS, DataStore connectors)
The NPE was introduced in 2.35 (along with the other issue) by the
implementor of the MontoringInfoMetrics, who assumed that the projectId could
never be null.
I fixed this in 2.37, but assumed naively/incorrectly that the projectID
_valueProvider object_ would always be null when a value was not present -
which is normally true for command line executions but not for template
executions (nor when a user explicitly passes a null value).
This was not noticed until an unrelated change used an ImmutableMap for
MontoringInfoMetricName keys, which enforced non-null values (in 2.38).
So yes it is still possible that there are various NPEs waiting to be found
in other IOs where MonitoringInfoMetrics were added.
Issue Time Tracking
-------------------
Worklog Id: (was: 766176)
Time Spent: 1h 40m (was: 1.5h)
> Java Spanner IO NPE when ProjectID not specified in template executions
> -----------------------------------------------------------------------
>
> Key: BEAM-14405
> URL: https://issues.apache.org/jira/browse/BEAM-14405
> Project: Beam
> Issue Type: Bug
> Components: io-java-gcp
> Affects Versions: 2.38.0
> Reporter: Niel Markwick
> Assignee: Niel Markwick
> Priority: P1
> Fix For: 2.39.0
>
> Time Spent: 1h 40m
> Remaining Estimate: 0h
>
> BEAM-13665 fixed the issue of NPE's when ProjectIDs were not specified in
> command line executions by checking for a null ValueProvider, but in
> _template_ executions, the ValueProvider is non-null but has a null
> {_}value{_}.
> [PR #17094|https://github.com/apache/beam/pull/17094] from BEAM-14116 added
> nullness checks for keys in MonitoringInfoMetricName, which then triggered
> the NPE in 2.38.0 when a template was executed with an unspecified ProjectID.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)