Skip to content

Commit 5c35692

Browse files
committed
capture variable name when parsing
1 parent 918a37a commit 5c35692

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

  • lib/collection/src/operations/universal_query

lib/collection/src/operations/universal_query/formula.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use api::rest::GeoDistance;
55
use common::types::ScoreType;
66
use itertools::Itertools;
77
use segment::index::query_optimization::rescore_formula::parsed_formula::{
8-
DecayKind, ParsedExpression, ParsedFormula, PreciseScore, VariableId,
8+
DateTimeExpression, DecayKind, ParsedExpression, ParsedFormula, PreciseScore, VariableId,
99
};
1010
use segment::json_path::JsonPath;
1111
use segment::types::{Condition, GeoPoint};
@@ -79,7 +79,13 @@ impl ExpressionInternal {
7979
payload_vars.insert(to.clone());
8080
ParsedExpression::new_geo_distance(origin, to)
8181
}
82-
ExpressionInternal::DateTime(dt_str) => ParsedExpression::DateTime(dt_str.parse()?),
82+
ExpressionInternal::DateTime(dt_str) => {
83+
let dt_expr = dt_str.parse()?;
84+
if let DateTimeExpression::PayloadVariable(json_path) = &dt_expr {
85+
payload_vars.insert(json_path.clone());
86+
}
87+
ParsedExpression::DateTime(dt_expr)
88+
}
8389
ExpressionInternal::Mult(internal_expressions) => ParsedExpression::Mult(
8490
internal_expressions
8591
.into_iter()

0 commit comments

Comments
 (0)