Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
milvus
milvus
提交
dbf07dfd
M
milvus
项目概览
milvus
/
milvus
9 个月 前同步成功
通知
260
Star
22476
Fork
2472
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
milvus
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
dbf07dfd
编写于
5月 31, 2023
作者:
Y
yah01
提交者:
GitHub
5月 31, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Convert double to int if possible with term expression (#24530) (#24539)
Signed-off-by:
N
yah01
<
yah2er0ne@outlook.com
>
上级
be62f82d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
1 deletion
+11
-1
internal/core/src/query/visitors/ExecExprVisitor.cpp
internal/core/src/query/visitors/ExecExprVisitor.cpp
+11
-1
未找到文件。
internal/core/src/query/visitors/ExecExprVisitor.cpp
浏览文件 @
dbf07dfd
...
@@ -1393,7 +1393,7 @@ ExecExprVisitor::ExecTermVisitorImplTemplateJson(TermExpr& expr_raw) -> BitsetTy
...
@@ -1393,7 +1393,7 @@ ExecExprVisitor::ExecTermVisitorImplTemplateJson(TermExpr& expr_raw) -> BitsetTy
using
Index
=
index
::
ScalarIndex
<
milvus
::
Json
>
;
using
Index
=
index
::
ScalarIndex
<
milvus
::
Json
>
;
auto
&
expr
=
static_cast
<
TermExprImpl
<
ExprValueType
>&>
(
expr_raw
);
auto
&
expr
=
static_cast
<
TermExprImpl
<
ExprValueType
>&>
(
expr_raw
);
auto
pointer
=
milvus
::
Json
::
pointer
(
expr
.
column_
.
nested_path
);
auto
pointer
=
milvus
::
Json
::
pointer
(
expr
.
column_
.
nested_path
);
auto
index_func
=
[
=
](
Index
*
index
)
{
return
TargetBitmap
{};
};
auto
index_func
=
[](
Index
*
index
)
{
return
TargetBitmap
{};
};
std
::
unordered_set
<
ExprValueType
>
term_set
(
expr
.
terms_
.
begin
(),
expr
.
terms_
.
end
());
std
::
unordered_set
<
ExprValueType
>
term_set
(
expr
.
terms_
.
begin
(),
expr
.
terms_
.
end
());
...
@@ -1406,6 +1406,16 @@ ExecExprVisitor::ExecTermVisitorImplTemplateJson(TermExpr& expr_raw) -> BitsetTy
...
@@ -1406,6 +1406,16 @@ ExecExprVisitor::ExecTermVisitorImplTemplateJson(TermExpr& expr_raw) -> BitsetTy
using
GetType
=
std
::
conditional_t
<
std
::
is_same_v
<
ExprValueType
,
std
::
string
>
,
std
::
string_view
,
ExprValueType
>
;
using
GetType
=
std
::
conditional_t
<
std
::
is_same_v
<
ExprValueType
,
std
::
string
>
,
std
::
string_view
,
ExprValueType
>
;
auto
x
=
json
.
template
at
<
GetType
>(
pointer
);
auto
x
=
json
.
template
at
<
GetType
>(
pointer
);
if
(
x
.
error
())
{
if
(
x
.
error
())
{
if
constexpr
(
std
::
is_same_v
<
GetType
,
std
::
int64_t
>
)
{
auto
x
=
json
.
template
at
<
double
>(
pointer
);
if
(
x
.
error
())
{
return
false
;
}
auto
value
=
x
.
value
();
// if the term set is {1}, and the value is 1.1, we should not return true.
return
std
::
floor
(
value
)
==
value
&&
term_set
.
find
(
ExprValueType
(
value
))
!=
term_set
.
end
();
}
return
false
;
return
false
;
}
}
return
term_set
.
find
(
ExprValueType
(
x
.
value
()))
!=
term_set
.
end
();
return
term_set
.
find
(
ExprValueType
(
x
.
value
()))
!=
term_set
.
end
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录