dynamobi/dynamobi — Issue #533: [FRG-339] Non-call boolean expressions in where clauses cause ClassCastException in MedJdbcPushDownRule
Author: dynamobi-build
Created: 2011-12-30 03:33:51+00:00
State: open
Labels: FRG, JDBC Foreign Data Wrapper

[reporter="stephan", created="Tue, 2 Sep 2008 11:59:15 -0500 (GMT-05:00)"]
Non-call boolean expressions in where clauses cause ClassCastException in MedJdbcPushDownRule.

For example, assuming a foreign JDBC table FT_EMPS, with the same columns as SALES.EMPS, the following causes the exception:

select * from FT_EMPS where slacker

The queries

select * from FT_EMPS where slacker = true

select * from FT_EMPS where slacker is true

work as expected however.

MedJdbcPushDownRule incorrectly assumes that the root of the RexNode filter expression is a RexCall. I've left a review comment referencing this bug at the appropriate location.