Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
1835aaad
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
1835aaad
编写于
3月 18, 2021
作者:
H
haojun Liao
提交者:
GitHub
3月 18, 2021
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #5483 from taosdata/feature/query
[td-3361]<fix>: nchar tag filter caused client crash.
上级
eb2eada0
7447a8c5
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
20 addition
and
3 deletion
+20
-3
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+11
-3
tests/script/general/parser/topbot.sim
tests/script/general/parser/topbot.sim
+9
-0
未找到文件。
src/client/src/tscSQLParser.c
浏览文件 @
1835aaad
...
...
@@ -4138,13 +4138,21 @@ static int32_t validateTagCondExpr(SSqlCmd* pCmd, tExprNode *p) {
}
int32_t
retVal
=
TSDB_CODE_SUCCESS
;
int32_t
bufLen
=
0
;
if
(
IS_NUMERIC_TYPE
(
vVariant
->
nType
))
{
bufLen
=
60
;
// The maximum length of string that a number is converted to.
}
else
{
bufLen
=
vVariant
->
nLen
+
1
;
}
if
(
schemaType
==
TSDB_DATA_TYPE_BINARY
)
{
char
*
tmp
=
calloc
(
1
,
vVariant
->
nLen
+
TSDB_NCHAR_SIZE
);
char
*
tmp
=
calloc
(
1
,
bufLen
*
TSDB_NCHAR_SIZE
);
retVal
=
tVariantDump
(
vVariant
,
tmp
,
schemaType
,
false
);
free
(
tmp
);
}
else
if
(
schemaType
==
TSDB_DATA_TYPE_NCHAR
)
{
// pRight->value.nLen + 1 is larger than the actual nchar string length
char
*
tmp
=
calloc
(
1
,
(
vVariant
->
nLen
+
1
)
*
TSDB_NCHAR_SIZE
);
char
*
tmp
=
calloc
(
1
,
bufLen
*
TSDB_NCHAR_SIZE
);
retVal
=
tVariantDump
(
vVariant
,
tmp
,
schemaType
,
false
);
free
(
tmp
);
}
else
{
...
...
@@ -4155,7 +4163,7 @@ static int32_t validateTagCondExpr(SSqlCmd* pCmd, tExprNode *p) {
if
(
retVal
!=
TSDB_CODE_SUCCESS
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg2
);
}
}
while
(
0
);
}
while
(
0
);
return
TSDB_CODE_SUCCESS
;
}
...
...
tests/script/general/parser/topbot.sim
浏览文件 @
1835aaad
...
...
@@ -316,4 +316,13 @@ if $data13 != @20-02-02 01:01:01.000@ then
return -1
endi
print ===============================>td-3361
sql create table ttm1(ts timestamp, k int) tags(a nchar(12));
sql create table ttm1_t1 using ttm1 tags('abcdef')
sql insert into ttm1_t1 values(now, 1)
sql select * from ttm1 where a=123456789012
if $row != 0 then
return -1
endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录