- All Implemented Interfaces:
public class InvalidRelException extends java.lang.ExceptionException that indicates that a relational expression would be invalid with given parameters.
This exception is thrown by the constructor of a subclass of
RelNodewhen given parameters it cannot accept. For example,
EnumerableJoinRelcan only implement equi-joins, so its constructor throws
InvalidRelExceptionwhen given the condition
input0.x - input1.y = 2.
Because the exception is checked (i.e. extends
RuntimeException), constructors that throw this exception will declare this exception in their
throwsclause, and rules that create those relational expressions will need to handle it. Usually a rule will not take the exception personally, and will fail to match. The burden of checking is removed from the rule, which means less code for the author of the rule to maintain.
The caller that receives an
InvalidRelException(typically a rule attempting to create a relational expression) should log it at the DEBUG level.
- See Also:
- Serialized Form
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString