Github user lincoln-lil commented on the issue: https://github.com/apache/flink/pull/3141 @fhueske agree with you that the check in validation phase of the Table API is useful for failing fast( IMO, it seems no difference on user experience that when an exception be thrown either in validation or translation phase ?), but there may be other rules can match and generate alternative plans to execute an outer join. For instance, we internal implemented a HbaseTableSource extends TableSource that can be joined as a TableSourceTable. We created a new rule that is used to match inner and outer joins. Though such special tableSource probably may not be suitable to be merged into Flink master, in the future there could be other TableSourceTables which can support different join predicates depending on their different physical storage characteristics.
--- 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. ---