Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
2dot5
ClickHouse
提交
0b384d0a
C
ClickHouse
项目概览
2dot5
/
ClickHouse
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
ClickHouse
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
0b384d0a
编写于
6月 30, 2016
作者:
A
Alexey Milovidov
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of github.com:yandex/ClickHouse
上级
e640fcc4
d65cbbb1
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
8 addition
and
6 deletion
+8
-6
dbms/include/DB/AggregateFunctions/AggregateFunctionSequenceMatch.h
...de/DB/AggregateFunctions/AggregateFunctionSequenceMatch.h
+8
-6
未找到文件。
dbms/include/DB/AggregateFunctions/AggregateFunctionSequenceMatch.h
浏览文件 @
0b384d0a
...
@@ -8,6 +8,7 @@
...
@@ -8,6 +8,7 @@
#include <boost/range/iterator_range_core.hpp>
#include <boost/range/iterator_range_core.hpp>
#include <DB/Parsers/ExpressionElementParsers.h>
#include <DB/Parsers/ExpressionElementParsers.h>
#include <DB/Parsers/ASTLiteral.h>
#include <DB/Parsers/ASTLiteral.h>
#include <DB/Common/PODArray.h>
#include <bitset>
#include <bitset>
#include <stack>
#include <stack>
...
@@ -44,7 +45,8 @@ struct AggregateFunctionSequenceMatchData final
...
@@ -44,7 +45,8 @@ struct AggregateFunctionSequenceMatchData final
using
Comparator
=
ComparePairFirst
<
std
::
less
>
;
using
Comparator
=
ComparePairFirst
<
std
::
less
>
;
bool
sorted
=
true
;
bool
sorted
=
true
;
std
::
vector
<
TimestampEvents
>
eventsList
;
static
constexpr
size_t
bytes_in_arena
=
64
;
PODArray
<
TimestampEvents
,
bytes_in_arena
,
AllocatorWithStackMemory
<
Allocator
<
false
>
,
bytes_in_arena
>>
eventsList
;
void
add
(
const
Timestamp
timestamp
,
const
Events
&
events
)
void
add
(
const
Timestamp
timestamp
,
const
Events
&
events
)
{
{
...
@@ -60,7 +62,7 @@ struct AggregateFunctionSequenceMatchData final
...
@@ -60,7 +62,7 @@ struct AggregateFunctionSequenceMatchData final
{
{
const
auto
size
=
eventsList
.
size
();
const
auto
size
=
eventsList
.
size
();
eventsList
.
insert
(
std
::
end
(
eventsList
),
std
::
begin
(
other
.
eventsList
),
std
::
end
(
other
.
eventsList
));
eventsList
.
insert
(
std
::
begin
(
other
.
eventsList
),
std
::
end
(
other
.
eventsList
));
/// either sort whole container or do so partially merging ranges afterwards
/// either sort whole container or do so partially merging ranges afterwards
if
(
!
sorted
&&
!
other
.
sorted
)
if
(
!
sorted
&&
!
other
.
sorted
)
...
@@ -262,14 +264,14 @@ private:
...
@@ -262,14 +264,14 @@ private:
PatternAction
(
const
PatternActionType
type
,
const
std
::
uint32_t
extra
=
0
)
:
type
{
type
},
extra
{
extra
}
{}
PatternAction
(
const
PatternActionType
type
,
const
std
::
uint32_t
extra
=
0
)
:
type
{
type
},
extra
{
extra
}
{}
};
};
using
PatternActions
=
std
::
vector
<
PatternAction
>
;
static
constexpr
size_t
bytes_on_stack
=
64
;
using
PatternActions
=
PODArray
<
PatternAction
,
bytes_on_stack
,
AllocatorWithStackMemory
<
Allocator
<
false
>
,
bytes_on_stack
>>
;
void
parsePattern
()
void
parsePattern
()
{
{
PatternActions
actions
{
PatternActions
actions
;
{
PatternActionType
::
KleeneStar
}
actions
.
emplace_back
(
PatternActionType
::
KleeneStar
);
};
ParserString
special_open_p
(
"(?"
);
ParserString
special_open_p
(
"(?"
);
ParserString
special_close_p
(
")"
);
ParserString
special_close_p
(
")"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录