Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
2dot5
ClickHouse
提交
7fc40e18
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,发现更多精彩内容 >>
提交
7fc40e18
编写于
2月 27, 2012
作者:
A
Alexey Milovidov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
dbms: development [#CONV-2944].
上级
42abc4ce
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
23 addition
and
16 deletion
+23
-16
dbms/include/DB/Core/ErrorCodes.h
dbms/include/DB/Core/ErrorCodes.h
+1
-0
dbms/src/DataStreams/IProfilingBlockInputStream.cpp
dbms/src/DataStreams/IProfilingBlockInputStream.cpp
+8
-2
dbms/src/Interpreters/Aggregator.cpp
dbms/src/Interpreters/Aggregator.cpp
+5
-5
dbms/src/Interpreters/InterpreterSelectQuery.cpp
dbms/src/Interpreters/InterpreterSelectQuery.cpp
+5
-5
dbms/src/Storages/StorageLog.cpp
dbms/src/Storages/StorageLog.cpp
+4
-4
未找到文件。
dbms/include/DB/Core/ErrorCodes.h
浏览文件 @
7fc40e18
...
...
@@ -100,6 +100,7 @@ namespace ErrorCodes
EMPTY_DATA_PASSED
,
UNKNOWN_AGGREGATED_DATA_VARIANT
,
CANNOT_MERGE_DIFFERENT_AGGREGATED_DATA_VARIANTS
,
NO_STREAMS_RETURNED_FROM_TABLE
,
POCO_EXCEPTION
=
1000
,
STD_EXCEPTION
,
...
...
dbms/src/DataStreams/IProfilingBlockInputStream.cpp
浏览文件 @
7fc40e18
#include <iomanip>
/*#include <Poco/Mutex.h>
#include <Poco/Ext/ThreadNumber.h>*/
#include <DB/DataStreams/IProfilingBlockInputStream.h>
...
...
@@ -90,9 +93,12 @@ Block IProfilingBlockInputStream::read()
/* if (res)
{
static Poco::FastMutex mutex;
Poco::ScopedLock<Poco::FastMutex> lock(mutex);
std::cerr << std::endl;
std::cerr << getName() << std::endl;
std::cerr << res.dumpNames() << std::endl;
std::cerr <<
"[ " << Poco::ThreadNumber::get() << " ]\t" <<
getName() << std::endl;
std::cerr <<
"[ " << Poco::ThreadNumber::get() << " ]\t" <<
res.dumpNames() << std::endl;
}*/
return
res
;
...
...
dbms/src/Interpreters/Aggregator.cpp
浏览文件 @
7fc40e18
...
...
@@ -490,7 +490,7 @@ Block Aggregator::convertToBlock(AggregatedDataVariants & data_variants)
AggregatedDataVariantsPtr
Aggregator
::
merge
(
ManyAggregatedDataVariants
&
data_variants
)
{
if
(
data_variants
.
empty
())
throw
Exception
(
"Empty data passed to Aggregator::merge()."
,
ErrorCodes
::
EMPTY_DATA_PASSED
);
throw
Exception
(
"Empty data passed to Aggregator::merge()."
,
ErrorCodes
::
EMPTY_DATA_PASSED
);
AggregatedDataVariants
&
res
=
*
data_variants
[
0
];
...
...
@@ -528,7 +528,7 @@ AggregatedDataVariantsPtr Aggregator::merge(ManyAggregatedDataVariants & data_va
if
(
!
inserted
)
{
size_t
i
=
1
;
size_t
i
=
0
;
for
(
AggregateFunctionsPlainPtrs
::
const_iterator
jt
=
it
->
second
.
begin
();
jt
!=
it
->
second
.
end
();
++
jt
,
++
i
)
{
res_it
->
second
[
i
]
->
merge
(
**
jt
);
...
...
@@ -549,7 +549,7 @@ AggregatedDataVariantsPtr Aggregator::merge(ManyAggregatedDataVariants & data_va
AggregateFunctionsPlainPtrs
&
res_row
=
res_data
[
it
->
first
];
if
(
!
res_row
.
empty
())
{
size_t
i
=
1
;
size_t
i
=
0
;
for
(
AggregateFunctionsPlainPtrs
::
const_iterator
jt
=
it
->
second
.
begin
();
jt
!=
it
->
second
.
end
();
++
jt
,
++
i
)
{
res_row
[
i
]
->
merge
(
**
jt
);
...
...
@@ -573,7 +573,7 @@ AggregatedDataVariantsPtr Aggregator::merge(ManyAggregatedDataVariants & data_va
if
(
!
inserted
)
{
size_t
i
=
1
;
size_t
i
=
0
;
for
(
AggregateFunctionsPlainPtrs
::
const_iterator
jt
=
it
->
second
.
second
.
begin
();
jt
!=
it
->
second
.
second
.
end
();
++
jt
,
++
i
)
{
res_it
->
second
.
second
[
i
]
->
merge
(
**
jt
);
...
...
@@ -594,7 +594,7 @@ AggregatedDataVariantsPtr Aggregator::merge(ManyAggregatedDataVariants & data_va
AggregateFunctionsPlainPtrs
&
res_row
=
res_data
[
it
->
first
];
if
(
!
res_row
.
empty
())
{
size_t
i
=
1
;
size_t
i
=
0
;
for
(
AggregateFunctionsPlainPtrs
::
const_iterator
jt
=
it
->
second
.
begin
();
jt
!=
it
->
second
.
end
();
++
jt
,
++
i
)
{
res_row
[
i
]
->
merge
(
**
jt
);
...
...
dbms/src/Interpreters/InterpreterSelectQuery.cpp
浏览文件 @
7fc40e18
...
...
@@ -151,16 +151,16 @@ BlockInputStreamPtr InterpreterSelectQuery::execute()
* параллельный GROUP BY склеит потоки в один,
* затем выполним остальные операции с одним получившимся потоком.
*/
BlockInputStreams
streams
(
max_threads
)
;
BlockInputStreams
streams
;
/// Инициализируем изначальные потоки данных, на которые накладываются преобразования запроса. Таблица или подзапрос?
if
(
!
query
.
table
||
!
dynamic_cast
<
ASTSelectQuery
*>
(
&*
query
.
table
))
streams
=
table
->
read
(
required_columns
,
query_ptr
,
block_size
,
max_threads
);
else
{
streams
[
0
]
=
new
AsynchronousBlockInputStream
(
interpreter_subquery
->
execute
());
streams
.
resize
(
1
);
}
streams
.
push_back
(
new
AsynchronousBlockInputStream
(
interpreter_subquery
->
execute
()));
if
(
streams
.
empty
())
throw
Exception
(
"No streams returned from table."
,
ErrorCodes
::
NO_STREAMS_RETURNED_FROM_TABLE
);
/// Если есть условие WHERE - сначала выполним часть выражения, необходимую для его вычисления
if
(
query
.
where_expression
)
...
...
dbms/src/Storages/StorageLog.cpp
浏览文件 @
7fc40e18
...
...
@@ -43,10 +43,10 @@ Block LogBlockInputStream::readImpl()
if
(
column
.
column
->
size
())
res
.
insert
(
column
);
rows_read
+=
column
.
column
->
size
();
}
rows_read
+=
res
.
getByPosition
(
0
).
column
->
size
();
return
res
;
}
...
...
@@ -148,10 +148,10 @@ BlockInputStreams StorageLog::read(
for
(
size_t
thread
=
0
;
thread
<
max_threads
;
++
thread
)
{
std
::
cerr
<<
"Thread "
<<
thread
<<
", mark "
<<
thread
*
marks_size
/
max_threads
/*
std::cerr << "Thread " << thread << ", mark " << thread * marks_size / max_threads
<< ", rows " << (thread == 0
? marks[marks_size / max_threads - 1].rows
:
(
marks
[(
thread
+
1
)
*
marks_size
/
max_threads
-
1
].
rows
-
marks
[
thread
*
marks_size
/
max_threads
-
1
].
rows
))
<<
std
::
endl
;
: (marks[(thread + 1) * marks_size / max_threads - 1].rows - marks[thread * marks_size / max_threads - 1].rows)) << std::endl;
*/
res
.
push_back
(
new
LogBlockInputStream
(
max_block_size
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录