Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
b1ed45fc
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1184
Star
22015
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b1ed45fc
编写于
7月 16, 2022
作者:
dengyihao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix fst bug
上级
92ec6cce
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
8 addition
and
8 deletion
+8
-8
source/libs/index/src/indexFstDfa.c
source/libs/index/src/indexFstDfa.c
+5
-6
source/libs/index/src/indexFstFile.c
source/libs/index/src/indexFstFile.c
+2
-1
source/libs/index/src/indexFstSparse.c
source/libs/index/src/indexFstSparse.c
+1
-1
未找到文件。
source/libs/index/src/indexFstDfa.c
浏览文件 @
b1ed45fc
...
...
@@ -19,8 +19,8 @@
const
static
uint32_t
STATE_LIMIT
=
1000
;
static
int
dfaInstsEqual
(
const
void
*
a
,
const
void
*
b
,
size_t
size
)
{
SArray
*
ar
=
(
SArray
*
)
a
;
SArray
*
br
=
(
SArray
*
)
b
;
SArray
*
ar
=
*
(
SArray
*
*
)
a
;
SArray
*
br
=
*
(
SArray
*
*
)
b
;
size_t
al
=
ar
!=
NULL
?
taosArrayGetSize
(
ar
)
:
0
;
size_t
bl
=
br
!=
NULL
?
taosArrayGetSize
(
br
)
:
0
;
if
(
al
!=
bl
)
{
...
...
@@ -71,8 +71,8 @@ FstDfa *dfaBuilderBuild(FstDfaBuilder *builder) {
dfaAdd
(
builder
->
dfa
,
cur
,
0
);
SArray
*
states
=
taosArrayInit
(
0
,
sizeof
(
uint32_t
));
uint32_t
result
;
SArray
*
states
=
taosArrayInit
(
0
,
sizeof
(
uint32_t
));
if
(
dfaBuilderCacheState
(
builder
,
cur
,
&
result
))
{
taosArrayPush
(
states
,
&
result
);
}
...
...
@@ -146,10 +146,9 @@ bool dfaBuilderCacheState(FstDfaBuilder *builder, FstSparseSet *set, uint32_t *r
*
result
=
*
v
;
taosArrayDestroy
(
tinsts
);
}
else
{
DfaState
st
;
st
.
insts
=
tinsts
;
st
.
isMatch
=
isMatch
;
DfaState
st
=
{.
insts
=
tinsts
,
.
isMatch
=
isMatch
};
taosArrayPush
(
builder
->
dfa
->
states
,
&
st
);
int32_t
sz
=
taosArrayGetSize
(
builder
->
dfa
->
states
)
-
1
;
taosHashPut
(
builder
->
cache
,
&
tinsts
,
sizeof
(
POINTER_BYTES
),
&
sz
,
sizeof
(
sz
));
*
result
=
sz
;
...
...
source/libs/index/src/indexFstFile.c
浏览文件 @
b1ed45fc
...
...
@@ -85,11 +85,12 @@ static int idxFileCtxDoReadFrom(IFileCtx* ctx, uint8_t* buf, int len, int32_t of
blk
->
blockId
=
blkId
;
blk
->
nread
=
taosPReadFile
(
ctx
->
file
.
pFile
,
blk
->
buf
,
kBlockSize
,
blkId
*
kBlockSize
);
assert
(
blk
->
nread
<=
kBlockSize
);
nread
=
TMIN
(
blkLeft
,
len
);
if
(
blk
->
nread
<
kBlockSize
&&
blk
->
nread
<
len
)
{
break
;
}
nread
=
TMIN
(
blkLeft
,
len
);
memcpy
(
buf
+
total
,
blk
->
buf
+
blkOffset
,
nread
);
LRUStatus
s
=
taosLRUCacheInsert
(
ctx
->
lru
,
key
,
strlen
(
key
),
blk
,
cacheMemSize
,
deleteDataBlockFromLRU
,
NULL
,
...
...
source/libs/index/src/indexFstSparse.c
浏览文件 @
b1ed45fc
...
...
@@ -78,8 +78,8 @@ bool sparSetContains(FstSparseSet *ss, int32_t ip) {
if
(
ip
>=
ss
->
cap
||
ip
<
0
)
{
return
false
;
}
int32_t
i
=
ss
->
sparse
[
ip
];
int32_t
i
=
ss
->
sparse
[
ip
];
if
(
i
>=
0
&&
i
<
ss
->
cap
&&
i
<
ss
->
size
&&
ss
->
dense
[
i
]
==
ip
)
{
return
true
;
}
else
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录