-
Notifications
You must be signed in to change notification settings - Fork 2k
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
From this pr #2156, @Ted-Jiang optimize the inlist using the set scalar.
But get the static value from below code:
fn cast_static_filter_to_set(list: &[Arc<dyn PhysicalExpr>]) -> HashSet<ScalarValue> {
HashSet::from_iter(list.iter().map(|expr| {
if let Some(cast) = expr.as_any().downcast_ref::<expressions::CastExpr>() {
cast.expr()
.as_any()
.downcast_ref::<expressions::Literal>()
.unwrap()
.value()
.clone()
} else {
expr.as_any()
.downcast_ref::<expressions::Literal>()
.unwrap()
.value()
.clone()
}
}))
}
This will not get the right value for the set expr.
We should eval the set expr to get the set scalar values.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working