Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.10.1, 1.0.0
-
None
Description
The getDataSet() method of Grouping is public and visible to users. It returns the input of the grouping operation which can cause confusion. If this function is used in a regular DataSet program like this
DataSet<X> notGrouped = input.groupBy().getDataSet(); DataSet<Y> allReduced = notGrouped.reduce()
the previous groupBy() call is basically discarded and an AllReduce is applied instead of a grouped Reduce.
Since this method is not meant to be part of the public API we should help users to avoid this method. In the current API, we cannot easily change the visibility of the method without package restructuring or adding additional classes (and hence breaking binary compatibility).
Instead I proprose to rename the method to something like getInputDataSet() or getGroupingInput() and add descriptive JavaDocs.