FiloDB
FiloDB copied to clipboard
Predicate pushdown is not working when a single table query has multiple conditions on the same column
For example => select x, y from person where x='GG' and y='3489' and y='0943'
2017-02-10 10:04:30,043] INFO filodb.spark.FiloRelation$ - Incoming filters = List(EqualTo(x,GG), EqualTo(y,3489), EqualTo(y,0943)) [2017-02-10 10:04:30,043] INFO filodb.spark.FiloRelation$ - Pushing down partition column x, filters List(EqualTo(x,GG)) [2017-02-10 10:04:30,043] INFO filodb.spark.FiloRelation$ - Pushing down partition column y, filters List(EqualTo(y,3489), EqualTo(y,0943)) [2017-02-10 10:04:30,043] INFO filodb.spark.FiloRelation$ - Push down partition predicates: List(Set(GG))
To be more precise, when the same column has multiple = relations. It's arguable whether this is valid SQL or not (as it really should be OR and not AND) but we could probably parse it.