[
https://issues.apache.org/jira/browse/SPARK-25976?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16680944#comment-16680944
]
Hyukjin Kwon commented on SPARK-25976:
--------------------------------------
Okay, then, it's more minor then I thought. I would just stick to exception
handling rather then adding another API to allow this specific case. RDD APIs
are super conservative now and basically we don't add new APIs there unless
there are strong reasons.
> Allow rdd.reduce on empty rdd by returning an Option[T]
> -------------------------------------------------------
>
> Key: SPARK-25976
> URL: https://issues.apache.org/jira/browse/SPARK-25976
> Project: Spark
> Issue Type: Improvement
> Components: Spark Core
> Affects Versions: 2.3.2
> Reporter: Yuval Yaari
> Priority: Minor
>
> it is sometimes useful to let the user decide what value to return when
> reducing on an empty rdd.
> currently, if there is no data to reduce an UnsupportedOperationException is
> thrown.
> although user can catch that exception, it seems like a "shaky" solution as
> UnsupportedOperationException might be thrown from a different location.
> Instead, we can overload the reduce method by adding add a new method:
> reduce(f: (T, T) => T, defaultIfEmpty: () => T): T
> the reduce API will not be effected as it will simply call the second reduce
> method throwing an UnsupportedException as the default value
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]