You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by ec...@apache.org on 2019/09/05 14:47:58 UTC

[beam] 05/24: Fix scala Product in Encoders to avoid StackEverflow

This is an automated email from the ASF dual-hosted git repository.

echauchot pushed a commit to branch spark-runner_structured-streaming
in repository https://gitbox.apache.org/repos/asf/beam.git

commit a5d49f5dea33a862cc89ca8ef62c9a389a2902fd
Author: Etienne Chauchot <ec...@apache.org>
AuthorDate: Thu Aug 29 10:58:32 2019 +0200

    Fix scala Product in Encoders to avoid StackEverflow
---
 .../translation/helpers/EncoderHelpers.java            | 18 ++++--------------
 1 file changed, 4 insertions(+), 14 deletions(-)

diff --git a/runners/spark/src/main/java/org/apache/beam/runners/spark/structuredstreaming/translation/helpers/EncoderHelpers.java b/runners/spark/src/main/java/org/apache/beam/runners/spark/structuredstreaming/translation/helpers/EncoderHelpers.java
index 9cb8f29..8a4f1de 100644
--- a/runners/spark/src/main/java/org/apache/beam/runners/spark/structuredstreaming/translation/helpers/EncoderHelpers.java
+++ b/runners/spark/src/main/java/org/apache/beam/runners/spark/structuredstreaming/translation/helpers/EncoderHelpers.java
@@ -175,16 +175,11 @@ public class EncoderHelpers {
     }
 
     @Override public Object productElement(int n) {
-      if (n == 0) {
-        return this;
-      } else {
-        throw new IndexOutOfBoundsException(String.valueOf(n));
-      }
+      return null;
     }
 
     @Override public int productArity() {
-      //TODO test with spark Encoders if the arity of 1 is ok
-      return 1;
+      return 0;
     }
 
     @Override public boolean canEqual(Object that) {
@@ -291,16 +286,11 @@ public class EncoderHelpers {
     }
 
     @Override public Object productElement(int n) {
-      if (n == 0) {
-        return this;
-      } else {
-        throw new IndexOutOfBoundsException(String.valueOf(n));
-      }
+      return null;
     }
 
     @Override public int productArity() {
-      //TODO test with spark Encoders if the arity of 1 is ok
-      return 1;
+      return 0;
     }
 
     @Override public boolean canEqual(Object that) {