aboutsummaryrefslogtreecommitdiff
path: root/core/src/main/java
diff options
context:
space:
mode:
authorSean Owen <sowen@cloudera.com>2016-01-26 11:55:28 +0000
committerSean Owen <sowen@cloudera.com>2016-01-26 11:55:28 +0000
commit649e9d0f5b2d5fc13f2dd5be675331510525927f (patch)
treecc500b373fda20ef42243c199ecfb6f381310abb /core/src/main/java
parent5936bf9fa85ccf7f0216145356140161c2801682 (diff)
downloadspark-649e9d0f5b2d5fc13f2dd5be675331510525927f.tar.gz
spark-649e9d0f5b2d5fc13f2dd5be675331510525927f.tar.bz2
spark-649e9d0f5b2d5fc13f2dd5be675331510525927f.zip
[SPARK-3369][CORE][STREAMING] Java mapPartitions Iterator->Iterable is inconsistent with Scala's Iterator->Iterator
Fix Java function API methods for flatMap and mapPartitions to require producing only an Iterator, not Iterable. Also fix DStream.flatMap to require a function producing TraversableOnce only, not Traversable. CC rxin pwendell for API change; tdas since it also touches streaming. Author: Sean Owen <sowen@cloudera.com> Closes #10413 from srowen/SPARK-3369.
Diffstat (limited to 'core/src/main/java')
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/CoGroupFunction.java2
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/DoubleFlatMapFunction.java3
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction.java3
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction2.java3
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/FlatMapGroupsFunction.java2
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/MapPartitionsFunction.java2
-rw-r--r--core/src/main/java/org/apache/spark/api/java/function/PairFlatMapFunction.java3
7 files changed, 11 insertions, 7 deletions
diff --git a/core/src/main/java/org/apache/spark/api/java/function/CoGroupFunction.java b/core/src/main/java/org/apache/spark/api/java/function/CoGroupFunction.java
index 279639af5d..07aebb75e8 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/CoGroupFunction.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/CoGroupFunction.java
@@ -25,5 +25,5 @@ import java.util.Iterator;
* Datasets.
*/
public interface CoGroupFunction<K, V1, V2, R> extends Serializable {
- Iterable<R> call(K key, Iterator<V1> left, Iterator<V2> right) throws Exception;
+ Iterator<R> call(K key, Iterator<V1> left, Iterator<V2> right) throws Exception;
}
diff --git a/core/src/main/java/org/apache/spark/api/java/function/DoubleFlatMapFunction.java b/core/src/main/java/org/apache/spark/api/java/function/DoubleFlatMapFunction.java
index 57fd0a7a80..576087b6f4 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/DoubleFlatMapFunction.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/DoubleFlatMapFunction.java
@@ -18,10 +18,11 @@
package org.apache.spark.api.java.function;
import java.io.Serializable;
+import java.util.Iterator;
/**
* A function that returns zero or more records of type Double from each input record.
*/
public interface DoubleFlatMapFunction<T> extends Serializable {
- public Iterable<Double> call(T t) throws Exception;
+ Iterator<Double> call(T t) throws Exception;
}
diff --git a/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction.java b/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction.java
index ef0d182412..2d8ea6d1a5 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction.java
@@ -18,10 +18,11 @@
package org.apache.spark.api.java.function;
import java.io.Serializable;
+import java.util.Iterator;
/**
* A function that returns zero or more output records from each input record.
*/
public interface FlatMapFunction<T, R> extends Serializable {
- Iterable<R> call(T t) throws Exception;
+ Iterator<R> call(T t) throws Exception;
}
diff --git a/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction2.java b/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction2.java
index 14a98a38ef..fc97b63f82 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction2.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/FlatMapFunction2.java
@@ -18,10 +18,11 @@
package org.apache.spark.api.java.function;
import java.io.Serializable;
+import java.util.Iterator;
/**
* A function that takes two inputs and returns zero or more output records.
*/
public interface FlatMapFunction2<T1, T2, R> extends Serializable {
- Iterable<R> call(T1 t1, T2 t2) throws Exception;
+ Iterator<R> call(T1 t1, T2 t2) throws Exception;
}
diff --git a/core/src/main/java/org/apache/spark/api/java/function/FlatMapGroupsFunction.java b/core/src/main/java/org/apache/spark/api/java/function/FlatMapGroupsFunction.java
index d7a80e7b12..bae574ab57 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/FlatMapGroupsFunction.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/FlatMapGroupsFunction.java
@@ -24,5 +24,5 @@ import java.util.Iterator;
* A function that returns zero or more output records from each grouping key and its values.
*/
public interface FlatMapGroupsFunction<K, V, R> extends Serializable {
- Iterable<R> call(K key, Iterator<V> values) throws Exception;
+ Iterator<R> call(K key, Iterator<V> values) throws Exception;
}
diff --git a/core/src/main/java/org/apache/spark/api/java/function/MapPartitionsFunction.java b/core/src/main/java/org/apache/spark/api/java/function/MapPartitionsFunction.java
index 6cb569ce0c..cf9945a215 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/MapPartitionsFunction.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/MapPartitionsFunction.java
@@ -24,5 +24,5 @@ import java.util.Iterator;
* Base interface for function used in Dataset's mapPartitions.
*/
public interface MapPartitionsFunction<T, U> extends Serializable {
- Iterable<U> call(Iterator<T> input) throws Exception;
+ Iterator<U> call(Iterator<T> input) throws Exception;
}
diff --git a/core/src/main/java/org/apache/spark/api/java/function/PairFlatMapFunction.java b/core/src/main/java/org/apache/spark/api/java/function/PairFlatMapFunction.java
index 691ef2eceb..51eed2e67b 100644
--- a/core/src/main/java/org/apache/spark/api/java/function/PairFlatMapFunction.java
+++ b/core/src/main/java/org/apache/spark/api/java/function/PairFlatMapFunction.java
@@ -18,6 +18,7 @@
package org.apache.spark.api.java.function;
import java.io.Serializable;
+import java.util.Iterator;
import scala.Tuple2;
@@ -26,5 +27,5 @@ import scala.Tuple2;
* key-value pairs are represented as scala.Tuple2 objects.
*/
public interface PairFlatMapFunction<T, K, V> extends Serializable {
- public Iterable<Tuple2<K, V>> call(T t) throws Exception;
+ Iterator<Tuple2<K, V>> call(T t) throws Exception;
}