You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by an...@apache.org on 2019/05/02 22:49:16 UTC
[beam] branch master updated: Move schema assignment onto Create
builder
This is an automated email from the ASF dual-hosted git repository.
anton 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 b343782 Move schema assignment onto Create builder
new 2f821dc Merge pull request #8479 from TheNeuralBit/empty-value-schema
b343782 is described below
commit b34378257501494a4e26c64f7c99da3abaaa718c
Author: Brian Hulette <bh...@google.com>
AuthorDate: Thu May 2 14:44:59 2019 -0700
Move schema assignment onto Create builder
Fixes a bug where an empty BeamValuesResl throws an exception because it
cannot create a default coder.
---
.../beam/sdk/extensions/sql/impl/rel/BeamValuesRel.java | 2 +-
.../beam/sdk/extensions/sql/impl/rel/BeamValuesRelTest.java | 13 +++++++++++++
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRel.java b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRel.java
index b681738..9799ed8 100644
--- a/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRel.java
+++ b/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRel.java
@@ -82,7 +82,7 @@ public class BeamValuesRel extends Values implements BeamRelNode {
Schema schema = CalciteUtils.toSchema(getRowType());
List<Row> rows = tuples.stream().map(tuple -> tupleToRow(schema, tuple)).collect(toList());
- return pinput.getPipeline().begin().apply(Create.of(rows)).setRowSchema(schema);
+ return pinput.getPipeline().begin().apply(Create.of(rows).withRowSchema(schema));
}
}
diff --git a/sdks/java/extensions/sql/src/test/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRelTest.java b/sdks/java/extensions/sql/src/test/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRelTest.java
index cdc2eb2..0dc8e26 100644
--- a/sdks/java/extensions/sql/src/test/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRelTest.java
+++ b/sdks/java/extensions/sql/src/test/java/org/apache/beam/sdk/extensions/sql/impl/rel/BeamValuesRelTest.java
@@ -91,4 +91,17 @@ public class BeamValuesRelTest extends BaseRelTest {
.getRows());
pipeline.run();
}
+
+ @Test
+ public void testValues_selectEmpty() throws Exception {
+ String sql = "select 1, '1' FROM string_table WHERE false";
+ PCollection<Row> rows = compilePipeline(sql, pipeline);
+ PAssert.that(rows)
+ .containsInAnyOrder(
+ TestUtils.RowsBuilder.of(
+ Schema.FieldType.INT32, "EXPR$0",
+ Schema.FieldType.STRING, "EXPR$1")
+ .getRows());
+ pipeline.run();
+ }
}