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:57 UTC
[beam] 04/24: type erasure: spark encoders require a Class,
pass Object and cast to Class
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 95fd2727f9e2ad00144e790a8dd324d60867d35c
Author: Etienne Chauchot <ec...@apache.org>
AuthorDate: Thu Aug 29 10:57:53 2019 +0200
type erasure: spark encoders require a Class<T>, pass Object and cast to Class<T>
---
.../spark/structuredstreaming/translation/helpers/EncoderHelpers.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
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 ab24e37..9cb8f29 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
@@ -96,9 +96,10 @@ public class EncoderHelpers {
*/
/** A way to construct encoders using generic serializers. */
- public static <T> Encoder<T> fromBeamCoder(Coder<T> coder, Class<T> claz){
+ public static <T> Encoder<T> fromBeamCoder(Coder<T> coder/*, Class<T> claz*/){
List<Expression> serialiserList = new ArrayList<>();
+ Class<T> claz = (Class<T>) Object.class;
serialiserList.add(new EncodeUsingBeamCoder<>(claz, coder));
ClassTag<T> classTag = ClassTag$.MODULE$.apply(claz);
return new ExpressionEncoder<>(