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

    https://github.com/apache/flink/pull/729#discussion_r31798470
  
    --- Diff: 
flink-java/src/main/java/org/apache/flink/api/java/functions/SemanticPropUtil.java
 ---
    @@ -309,15 +308,20 @@ public static DualInputSemanticProperties 
getSemanticPropsDual(
                        getSemanticPropsDualFromString(result, forwardedFirst, 
forwardedSecond,
                                        nonForwardedFirst, nonForwardedSecond, 
readFirst, readSecond, inType1, inType2, outType);
                        return result;
    -           } else {
    -                   return new DualInputSemanticProperties();
                }
    +           return null;
    +   }
    +
    +   public static void 
getSemanticPropsSingleFromString(SingleInputSemanticProperties result,
    +                                                                           
                                String[] forwarded, String[] nonForwarded, 
String[] readSet,
    +                                                                           
                                TypeInformation<?> inType, TypeInformation<?> 
outType) {
    +           getSemanticPropsSingleFromString(result, forwarded, 
nonForwarded, readSet, inType, outType, false);
        }
     
        public static void 
getSemanticPropsSingleFromString(SingleInputSemanticProperties result,
                        String[] forwarded, String[] nonForwarded, String[] 
readSet,
    -                   TypeInformation<?> inType, TypeInformation<?> outType)
    -   {
    +                   TypeInformation<?> inType, TypeInformation<?> outType,
    +                   boolean skipIncompatibleTypes) {
    --- End diff --
    
    Sometimes the analyzer works better than required. E.g. the analyzer 
outputs @ForwardedFields("*->record.customer.name") but if customer is a 
GenericType output type, the types are incompatible. I thought it is better to 
reuse the type compatibility checking of the PropUtil than reimplement 
everything, but skip types that are incompatible without throwing Exceptions.


---
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