[
https://issues.apache.org/jira/browse/BEAM-13665?focusedWorklogId=710824&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-710824
]
ASF GitHub Bot logged work on BEAM-13665:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 18/Jan/22 20:03
Start Date: 18/Jan/22 20:03
Worklog Time Spent: 10m
Work Description: lukecwik commented on a change in pull request #16547:
URL: https://github.com/apache/beam/pull/16547#discussion_r787108800
##########
File path:
sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/BatchSpannerRead.java
##########
@@ -193,15 +193,16 @@ public void processElement(ProcessContext c) throws
Exception {
}
private ServiceCallMetric createServiceCallMetric(
- String projectId, String databaseId, String tableId) {
+ @Nullable String projectId, String databaseId, String tableId) {
HashMap<String, String> baseLabels = new HashMap<>();
baseLabels.put(MonitoringInfoConstants.Labels.PTRANSFORM, "");
baseLabels.put(MonitoringInfoConstants.Labels.SERVICE, "Spanner");
baseLabels.put(MonitoringInfoConstants.Labels.METHOD, "Read");
baseLabels.put(
MonitoringInfoConstants.Labels.RESOURCE,
GcpResourceIdentifiers.spannerTable(projectId, databaseId, tableId));
- baseLabels.put(MonitoringInfoConstants.Labels.SPANNER_PROJECT_ID,
projectId);
+ baseLabels.put(
+ MonitoringInfoConstants.Labels.SPANNER_PROJECT_ID, (projectId ==
null ? "" : projectId));
Review comment:
The ServiceCallMetric was written to be per service call instance so
moving it to `@Setup` will break status code reporting since the label
representing the status code will be overwritten by subsequent calls. I agree
that the implementation choice of combining instantiation and reporting of the
status code was a poor choice but we should go back to the original
implementation and address that perf issue later.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 710824)
Time Spent: 1h 10m (was: 1h)
> Spanner IO request metrics requires projectId within the config when it
> didn't in the past
> ------------------------------------------------------------------------------------------
>
> Key: BEAM-13665
> URL: https://issues.apache.org/jira/browse/BEAM-13665
> Project: Beam
> Issue Type: Bug
> Components: io-java-gcp
> Affects Versions: 2.34.0, 2.35.0
> Reporter: Luke Cwik
> Assignee: Niel Markwick
> Priority: P1
> Fix For: 2.36.0
>
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> [https://github.com/apache/beam/pull/15493] makes the GCP projectID a
> required parameter - which it was not before, as it could be inferred from
> the environment - and thus breaks backward compatibility.
> Specifically: BatchSpannerRead.java:175 – the toString() is not required on
> the valueProvider, it should just be a get(), and createServiceCallMetric()
> in line 195 should handle the situation where projectID could be null
> Also SpannerIO.java:1683 has a similar issue with the Write transform.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)