Github user arunmahadevan commented on a diff in the pull request:

    https://github.com/apache/storm/pull/2233#discussion_r130434218
  
    --- Diff: storm-client/src/jvm/org/apache/storm/streams/PairStream.java ---
    @@ -380,6 +383,25 @@
             return partitionBy(KEY).updateStateByKeyPartition(stateUpdater);
         }
     
    +    /**
    +     * group the values of this stream with the values having the same key 
from the other stream.
    +     * <p>
    +     * Note: The parallelism of this stream is carried forward to the 
joined stream.
    +     * </p>
    +     *
    +     * @param otherStream the other stream
    +     * @param valueJoiner the {@link PairValueJoiner}
    +     * @param <R>         the type of the values resulting from the 
grouping
    +     * @param <V1>        the type of the values in the other stream
    +     * @return the new stream
    +     */
    +    public <R, V1> PairStream<K, R> coGroupByKey(PairStream<K, V1> 
otherStream,
    +                                                 
PairValueJoiner<Collection<V>, Collection<V1>> valueJoiner) {
    --- End diff --
    
    In the case of Co-group it does not make much sense to expose the 
PairValueJoiner in the public API. If needed this can be an implementation 
detail.
    
    So the API could be something like,
    ```java
    public <V1> PairStream<K, Pair<Iterable<V>, Iterable<V1>>> 
coGroupByKey(PairStream<K, V1> otherStream)
    ```


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to