[ 
https://issues.apache.org/jira/browse/FLINK-10790?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16677643#comment-16677643
 ] 

ASF GitHub Bot commented on FLINK-10790:
----------------------------------------

zhijiangW opened a new pull request #7037: [FLINK-10790][network] Refactor 
StreamPartitioner implementations into runtime module
URL: https://github.com/apache/flink/pull/7037
 
 
   ## What is the purpose of the change
   
   *Before refactoring `ChannelSelector` interface mentioned in 
[FLINK-10662](https://issues.apache.org/jira/browse/FLINK-10622), we found 
there are many duplicated implementations for `ChannelSelector` in stream and 
batch modes separately. The root cause is that they are locating in different 
modules, so can not reference each other.*
   
   *The core runtime codes should be unified for both stream and batch modes as 
much as possible, then we can reduce the work overhead to maintain the 
duplicated codes, especially for the following refactor.*
   
   *Next we would remove duplicated implementations for `OutputEmitter` and 
`RoundRobinChannelSelector`.*
   
   ## Brief change log
   
     - *Refactor the existing partitioner package from `flink-streaming-jave` 
to `flink-runtime`.*
     - *Remove `StreamRecord` type explicitly from `SerializationDelegate`.*
     - *Modify related tests based on refactor changes.*
   
   
   ## Verifying this change
   
   *This change is already covered by existing tests.*
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): (no)
     - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: (no)
     - The serializers: (yes)
     - The runtime per-record code paths (performance sensitive): (no)
     - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
     - The S3 file system connector: (no)
   
   ## Documentation
   
     - Does this pull request introduce a new feature? (no)
     - If yes, how is the feature documented? (not applicable)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


> Refactor all the StreamPartitioner implementations into runtime module
> ----------------------------------------------------------------------
>
>                 Key: FLINK-10790
>                 URL: https://issues.apache.org/jira/browse/FLINK-10790
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Network
>    Affects Versions: 1.8.0
>            Reporter: zhijiang
>            Assignee: zhijiang
>            Priority: Minor
>              Labels: pull-request-available
>
> The motivation is for refactoring {{ChannelSelector}} interface mentioned inĀ 
> [FLINK-10662|https://issues.apache.org/jira/browse/FLINK-10662].
> The {{ChannelSelector}} implementations are separate for stream and batch 
> currently, resulting in many duplicated logics for selecting channels. The 
> root cause is that they are locating in different modules to not reuse the 
> existing ones.
> In general, the core runtime codes should be unified for both stream and 
> batch jobs as much as possible, then we can reduce the work overhead to 
> maintain the duplicated codes.
> ThisĀ jira would migrate the existing partitioner package from 
> {{flink-streaming-jave}} to {{flink-runtime}}. Next we want to de-duplicate 
> implementations for {{RoundRobinChannelSelector}} and {{OutputEmitter}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to