You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by ah...@apache.org on 2023/11/21 15:38:45 UTC
(beam) branch master updated: Fix BigQueryStorageWriteApiSchemaTransformProvider null pointer on numStreams (#29434)
This is an automated email from the ASF dual-hosted git repository.
ahmedabualsaud pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new bb4b633b019 Fix BigQueryStorageWriteApiSchemaTransformProvider null pointer on numStreams (#29434)
bb4b633b019 is described below
commit bb4b633b01970d46359637d58a296b532269b18e
Author: Jeff Kinard <35...@users.noreply.github.com>
AuthorDate: Tue Nov 21 10:38:36 2023 -0500
Fix BigQueryStorageWriteApiSchemaTransformProvider null pointer on numStreams (#29434)
* Fix BigQueryStorageWriteApiSchemaTransformProvider null pointer on numStreams
Signed-off-by: Jeffrey Kinard <je...@thekinards.com>
---
.../BigQueryStorageWriteApiSchemaTransformProvider.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/providers/BigQueryStorageWriteApiSchemaTransformProvider.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/providers/BigQueryStorageWriteApiSchemaTransformProvider.java
index 1b9eb309ec4..39e6fd7c809 100644
--- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/providers/BigQueryStorageWriteApiSchemaTransformProvider.java
+++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/providers/BigQueryStorageWriteApiSchemaTransformProvider.java
@@ -177,7 +177,9 @@ public class BigQueryStorageWriteApiSchemaTransformProvider
invalidConfigMessage + "Output must not be empty if error handling specified.");
}
- if (this.getAutoSharding() != null && this.getAutoSharding()) {
+ if (this.getAutoSharding() != null
+ && this.getAutoSharding()
+ && this.getNumStreams() != null) {
checkArgument(
this.getNumStreams() == 0,
invalidConfigMessage
@@ -338,7 +340,8 @@ public class BigQueryStorageWriteApiSchemaTransformProvider
Boolean autoSharding = configuration.getAutoSharding();
Integer numStreams = configuration.getNumStreams();
// Triggering frequency is only applicable for exactly-once
- if (!configuration.getUseAtLeastOnceSemantics()) {
+ if (configuration.getUseAtLeastOnceSemantics() == null
+ || !configuration.getUseAtLeastOnceSemantics()) {
write =
write.withTriggeringFrequency(
(triggeringFrequency == null || triggeringFrequency <= 0)
@@ -346,7 +349,7 @@ public class BigQueryStorageWriteApiSchemaTransformProvider
: Duration.standardSeconds(triggeringFrequency));
}
// set num streams if specified, otherwise default to autoSharding
- if (numStreams > 0) {
+ if (numStreams != null && numStreams > 0) {
write = write.withNumStorageWriteApiStreams(numStreams);
} else if (autoSharding == null || autoSharding) {
write = write.withAutoSharding();