[ 
https://issues.apache.org/jira/browse/FLINK-18982?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Flink Jira Bot updated FLINK-18982:
-----------------------------------
      Labels: auto-deprioritized-major auto-deprioritized-minor 
pull-request-available  (was: auto-deprioritized-major pull-request-available 
stale-minor)
    Priority: Not a Priority  (was: Minor)

This issue was labeled "stale-minor" 7 days ago and has not received any 
updates so it is being deprioritized. If this ticket is actually Minor, please 
raise the priority and ask a committer to assign you the issue or revive the 
public discussion.


> InputFormat should remove unnecessary override methods
> ------------------------------------------------------
>
>                 Key: FLINK-18982
>                 URL: https://issues.apache.org/jira/browse/FLINK-18982
>             Project: Flink
>          Issue Type: Improvement
>          Components: API / Core
>    Affects Versions: 1.11.1
>            Reporter: Ryan Tao
>            Priority: Not a Priority
>              Labels: auto-deprioritized-major, auto-deprioritized-minor, 
> pull-request-available
>
> _InputFormat_ has inherited from _InputSplitSource_. Based on basic Java 
> knowledge, these two methods do not need to be written here, which may easily 
> lead to ambiguity and duplicated. 
> And the behavior of these two methods should belong to _InputSplitSource_ 
> instead of _InputFormat. (about split)_
> InputFormat:
> {code:java}
> public interface InputFormat<OT, T extends InputSplit> extends 
> InputSplitSource<T>, Serializable {
>     ...
>     @Override
>     T[] createInputSplits(int minNumSplits) throws IOException;
>     @Override
>     InputSplitAssigner getInputSplitAssigner(T[] inputSplits);
>     ...
> }
> {code}
>  InputSplitSource:
> {code:java}
> public interface InputSplitSource<T extends InputSplit> extends Serializable {
>    T[] createInputSplits(int minNumSplits) throws Exception; 
>    InputSplitAssigner getInputSplitAssigner(T[] inputSplits);
> }{code}
> As for the reason, watching the commit history, we can find that these two 
> methods appeared in _InputFormat_ before _InputSplitSource_. Later, they were 
> taken to InputSplitSource separately, but they were not removed in 
> _InputFormat_.
> Another point is that the _InputSplitSource throws an Exception_, as it 
> should be. (Subclasses of InputFormat throw specific exception.)
> And the duplicated _InputFormat extends Serializable_.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to