You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by ib...@apache.org on 2020/04/21 19:41:24 UTC
[beam] branch release-2.21.0 updated: [BEAM-9569] Fix
BeamSqlPojoExample logRecords method to not require Row coder inference
This is an automated email from the ASF dual-hosted git repository.
ibzib pushed a commit to branch release-2.21.0
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/release-2.21.0 by this push:
new 365d9ef [BEAM-9569] Fix BeamSqlPojoExample logRecords method to not require Row coder inference
new 61077ac Merge pull request #11473 from iemejia/release-2.21.0
365d9ef is described below
commit 365d9effdeb5719ad9a8ea743d5e5f4c003b0ee4
Author: Ismaël Mejía <ie...@gmail.com>
AuthorDate: Sat Apr 18 10:53:19 2020 +0200
[BEAM-9569] Fix BeamSqlPojoExample logRecords method to not require Row coder inference
It also adds a warning that Coder inference of Row objects is now
disabled into the release CHANGELOG.
---
CHANGES.md | 1 +
.../extensions/sql/example/BeamSqlPojoExample.java | 8 ++---
.../sdk/extensions/sql/example/model/Customer.java | 34 +++++++++++++++-------
.../sdk/extensions/sql/example/model/Order.java | 5 ++++
4 files changed, 34 insertions(+), 14 deletions(-)
diff --git a/CHANGES.md b/CHANGES.md
index f2edcfa..b34c543 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -100,6 +100,7 @@ conversion to beam schema options. *Remark: Schema aware is still experimental.*
* Dataflow runner now requires the `--region` option to be set, unless a default value is set in the environment ([BEAM-9199](https://issues.apache.org/jira/browse/BEAM-9199)). See [here](https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) for more details.
* HBaseIO.ReadAll now requires a PCollection of HBaseIO.Read objects instead of HBaseQuery objects ([BEAM-9279](https://issues.apache.org/jira/browse/BEAM-9279)).
* ProcessContext.updateWatermark has been removed in favor of using a WatermarkEstimator ([BEAM-9430](https://issues.apache.org/jira/browse/BEAM-9430)).
+* Coder inference for PCollection of Row objects has been disabled ([BEAM-9569](https://issues.apache.org/jira/browse/BEAM-9569)).
## Deprecations
* Java SDK: Beam Schema FieldType.getMetadata is now deprecated and is replaced by the Beam
diff --git a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/BeamSqlPojoExample.java b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/BeamSqlPojoExample.java
index 865d059..02db896 100644
--- a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/BeamSqlPojoExample.java
+++ b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/BeamSqlPojoExample.java
@@ -101,13 +101,13 @@ class BeamSqlPojoExample {
pipeline.run().waitUntilFinish();
}
- private static MapElements<Row, Row> logRecords(String suffix) {
+ private static MapElements<Row, Void> logRecords(String suffix) {
return MapElements.via(
- new SimpleFunction<Row, Row>() {
+ new SimpleFunction<Row, Void>() {
@Override
- public Row apply(Row input) {
+ public Void apply(Row input) {
System.out.println(input.getValues() + suffix);
- return input;
+ return null;
}
});
}
diff --git a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Customer.java b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Customer.java
index 8aa1880..cb9e132 100644
--- a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Customer.java
+++ b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Customer.java
@@ -25,8 +25,8 @@ import org.apache.beam.sdk.schemas.annotations.DefaultSchema;
/** Describes a customer. */
@DefaultSchema(JavaBeanSchema.class)
public class Customer implements Serializable {
- private String name;
private int id;
+ private String name;
private String countryOfResidence;
public Customer(int id, String name, String countryOfResidence) {
@@ -37,26 +37,26 @@ public class Customer implements Serializable {
public Customer() {}
- public String getName() {
- return name;
- }
-
public int getId() {
return id;
}
- public String getCountryOfResidence() {
- return countryOfResidence;
+ public String getName() {
+ return name;
}
- public void setName(String name) {
- this.name = name;
+ public String getCountryOfResidence() {
+ return countryOfResidence;
}
public void setId(int id) {
this.id = id;
}
+ public void setName(String name) {
+ this.name = name;
+ }
+
public void setCountryOfResidence(String countryOfResidence) {
this.countryOfResidence = countryOfResidence;
}
@@ -77,6 +77,20 @@ public class Customer implements Serializable {
@Override
public int hashCode() {
- return Objects.hash(name, id, countryOfResidence);
+ return Objects.hash(id, name, countryOfResidence);
+ }
+
+ @Override
+ public String toString() {
+ return "Customer{"
+ + "id="
+ + id
+ + ", name='"
+ + name
+ + '\''
+ + ", countryOfResidence='"
+ + countryOfResidence
+ + '\''
+ + '}';
}
}
diff --git a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Order.java b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Order.java
index 999b2b8..f9c5ef2 100644
--- a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Order.java
+++ b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/example/model/Order.java
@@ -67,4 +67,9 @@ public class Order implements Serializable {
public int hashCode() {
return Objects.hash(id, customerId);
}
+
+ @Override
+ public String toString() {
+ return "Order{" + "id=" + id + ", customerId=" + customerId + '}';
+ }
}