This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 0ae449f7328 [ci](perf) integration clickbench test into new 
performance pipeline (#29429)
0ae449f7328 is described below

commit 0ae449f7328c26fb0aaa2d9685fe2ea89b32d3ec
Author: Dongyang Li <hello_step...@qq.com>
AuthorDate: Fri Jan 5 22:29:02 2024 +0800

    [ci](perf) integration clickbench test into new performance pipeline 
(#29429)
---
 .licenserc.yaml                                    |  2 +-
 regression-test/pipeline/common/doris-utils.sh     | 12 +--
 regression-test/pipeline/common/github-utils.sh    | 45 ++++++++--
 .../performance/clickbench/check-query-result.sh   | 32 ++++++++
 .../performance/clickbench/conf/be_custom.conf     | 21 +++++
 .../performance/clickbench/conf/fe_custom.conf     |  7 ++
 .../clickbench/conf/opt_session_variables.sql      |  7 ++
 .../performance/clickbench/queries-sort.sql        | 43 ++++++++++
 .../clickbench/query-result-target/doris-q1.result |  2 +
 .../query-result-target/doris-q10.result           | 11 +++
 .../query-result-target/doris-q11.result           | 11 +++
 .../query-result-target/doris-q12.result           | 11 +++
 .../query-result-target/doris-q13.result           | 11 +++
 .../query-result-target/doris-q14.result           | 11 +++
 .../query-result-target/doris-q15.result           | 11 +++
 .../query-result-target/doris-q16.result           | 11 +++
 .../query-result-target/doris-q17.result           | 11 +++
 .../query-result-target/doris-q18.result           | 11 +++
 .../query-result-target/doris-q19.result           | 11 +++
 .../clickbench/query-result-target/doris-q2.result |  2 +
 .../query-result-target/doris-q20.result           |  5 ++
 .../query-result-target/doris-q21.result           |  2 +
 .../query-result-target/doris-q22.result           | 11 +++
 .../query-result-target/doris-q23.result           | 11 +++
 .../query-result-target/doris-q24.result           | 11 +++
 .../query-result-target/doris-q25.result           | 11 +++
 .../query-result-target/doris-q26.result           | 11 +++
 .../query-result-target/doris-q27.result           | 11 +++
 .../query-result-target/doris-q28.result           | 26 ++++++
 .../query-result-target/doris-q29.result           | 26 ++++++
 .../clickbench/query-result-target/doris-q3.result |  2 +
 .../query-result-target/doris-q30.result           |  2 +
 .../query-result-target/doris-q31.result           | 11 +++
 .../query-result-target/doris-q32.result           | 11 +++
 .../query-result-target/doris-q33.result           | 11 +++
 .../query-result-target/doris-q34.result           | 11 +++
 .../query-result-target/doris-q35.result           | 11 +++
 .../query-result-target/doris-q36.result           | 11 +++
 .../query-result-target/doris-q37.result           | 11 +++
 .../query-result-target/doris-q38.result           | 11 +++
 .../query-result-target/doris-q39.result           | 11 +++
 .../clickbench/query-result-target/doris-q4.result |  2 +
 .../query-result-target/doris-q40.result           | 11 +++
 .../query-result-target/doris-q41.result           | 11 +++
 .../query-result-target/doris-q42.result           | 11 +++
 .../query-result-target/doris-q43.result           | 11 +++
 .../clickbench/query-result-target/doris-q5.result |  2 +
 .../clickbench/query-result-target/doris-q6.result |  2 +
 .../clickbench/query-result-target/doris-q7.result |  2 +
 .../clickbench/query-result-target/doris-q8.result | 19 +++++
 .../clickbench/query-result-target/doris-q9.result | 11 +++
 regression-test/pipeline/performance/compile.sh    |  7 +-
 .../pipeline/performance/conf/be_custom.conf       |  4 +-
 .../pipeline/performance/conf/fe_custom.conf       |  5 +-
 regression-test/pipeline/performance/deploy.sh     | 27 +++---
 regression-test/pipeline/performance/prepare.sh    | 40 ++++++---
 .../pipeline/performance/run-clickbench.sh         | 96 ++++++++--------------
 regression-test/pipeline/performance/run-load.sh   | 60 ++++++++------
 regression-test/pipeline/performance/run-tpcds.sh  | 19 +++--
 regression-test/pipeline/performance/run-tpch.sh   | 21 ++---
 60 files changed, 717 insertions(+), 155 deletions(-)

diff --git a/.licenserc.yaml b/.licenserc.yaml
index ea761f044f4..3f41200df2e 100644
--- a/.licenserc.yaml
+++ b/.licenserc.yaml
@@ -88,7 +88,7 @@ header:
     - "conf/mysql_ssl_default_certificate/client_certificate/client-cert.pem"
     - "conf/mysql_ssl_default_certificate/client_certificate/client-key.pem"
     - "regression-test/ssl_default_certificate/*"
-    - "regression-test/pipeline/performance/conf/session_variables"
+    - "regression-test/pipeline/performance/**"
     - "extension/beats/go.mod"
     - "extension/beats/go.sum"
     - "pytest/hdfs"
diff --git a/regression-test/pipeline/common/doris-utils.sh 
b/regression-test/pipeline/common/doris-utils.sh
index f90b9a077ae..f2436a11390 100644
--- a/regression-test/pipeline/common/doris-utils.sh
+++ b/regression-test/pipeline/common/doris-utils.sh
@@ -244,10 +244,6 @@ function check_tpcds_result() {
     check_tpch_result "$1"
 }
 
-function check_clickbench_query_result() {
-    echo "TODO"
-}
-
 function check_clickbench_performance_result() {
     result_file="$1"
     if [[ -z "${result_file}" ]]; then return 1; fi
@@ -260,10 +256,10 @@ function check_clickbench_performance_result() {
     # 单位是秒
     cold_run_time_threshold=${cold_run_time_threshold:-200}
     hot_run_time_threshold=${hot_run_time_threshold:-55}
-    cold_run_sum=$(awk -F ',' '{sum+=$2} END {print sum}' result.csv)
+    cold_run_time=$(awk -F ',' '{sum+=$2} END {print sum}' result.csv)
     hot_run_time=$(awk -F ',' '{if($3<$4){sum+=$3}else{sum+=$4}} END {print 
sum}' "${result_file}")
     if [[ $(echo "${hot_run_time} > ${hot_run_time_threshold}" | bc) -eq 1 ]] 
||
-        [[ $(echo "${cold_run_sum} > ${cold_run_time_threshold}" | bc) -eq 1 
]]; then
+        [[ $(echo "${cold_run_time} > ${cold_run_time_threshold}" | bc) -eq 1 
]]; then
         echo "ERROR:
     cold_run_time ${cold_run_time} is great than the threshold 
${cold_run_time_threshold},
     or, hot_run_time ${hot_run_time} is great than the threshold 
${hot_run_time_threshold}"
@@ -275,10 +271,6 @@ function check_clickbench_performance_result() {
     fi
 }
 
-function check_load_performance() {
-    echo "TODO"
-}
-
 get_session_variable() {
     if [[ ! -d "${DORIS_HOME:-}" ]]; then return 1; fi
     usage="
diff --git a/regression-test/pipeline/common/github-utils.sh 
b/regression-test/pipeline/common/github-utils.sh
index 687d9c589b9..317667d15b2 100644
--- a/regression-test/pipeline/common/github-utils.sh
+++ b/regression-test/pipeline/common/github-utils.sh
@@ -50,36 +50,67 @@ function create_an_issue_comment() {
 
 function create_an_issue_comment_tpch() {
     local ISSUE_NUMBER="$1"
-    local COMMENT_BODY="$2"
+    local COMMENT_BODY_SUMMARY="$2"
+    local COMMENT_BODY_DETAIL="$3"
     local machine='aliyun_ecs.c7a.8xlarge_32C64G'
     COMMENT_BODY="
-TPC-H test result on machine: '${machine}', run with scripts in 
https://github.com/apache/doris/tree/master/tools/tpch-tools
+<details>
+<summary>TPC-H: <b>${COMMENT_BODY_SUMMARY}</b></summary>
+
 \`\`\`
-${COMMENT_BODY}
+machine: '${machine}'
+scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
+${COMMENT_BODY_DETAIL}
 \`\`\`
+</details>
 "
     create_an_issue_comment "${ISSUE_NUMBER}" "${COMMENT_BODY}"
 }
 
 function create_an_issue_comment_tpcds() {
     local ISSUE_NUMBER="$1"
-    local COMMENT_BODY="$2"
+    local COMMENT_BODY_SUMMARY="$2"
+    local COMMENT_BODY_DETAIL="$3"
     local machine='aliyun_ecs.c7a.8xlarge_32C64G'
     COMMENT_BODY="
-TPC-DS test result on machine: '${machine}', run with scripts in 
https://github.com/apache/doris/tree/master/tools/tpcds-tools
+<details>
+<summary>TPC-DS: <b>${COMMENT_BODY_SUMMARY}</b></summary>
+
 \`\`\`
-${COMMENT_BODY}
+machine: '${machine}'
+scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
+${COMMENT_BODY_DETAIL}
 \`\`\`
+</details>
 "
     create_an_issue_comment "${ISSUE_NUMBER}" "${COMMENT_BODY}"
 }
 
 function create_an_issue_comment_clickbench() {
+    local ISSUE_NUMBER="$1"
+    local COMMENT_BODY_SUMMARY="$2"
+    local COMMENT_BODY_DETAIL="$3"
+    local machine='aliyun_ecs.c7a.8xlarge_32C64G'
+    COMMENT_BODY="
+<details>
+<summary>ClickBench: <b>${COMMENT_BODY_SUMMARY}</b></summary>
+
+\`\`\`
+machine: '${machine}'
+scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
+${COMMENT_BODY_DETAIL}
+\`\`\`
+</details>
+"
+    create_an_issue_comment "${ISSUE_NUMBER}" "${COMMENT_BODY}"
+}
+
+function create_an_issue_comment_load() {
     local ISSUE_NUMBER="$1"
     local COMMENT_BODY="$2"
     local machine='aliyun_ecs.c7a.8xlarge_32C64G'
     COMMENT_BODY="
-ClickBench test result on machine: '${machine}', run with scripts in 
https://github.com/apache/doris/tree/master/tools/clickbench-tools
+Load test result on machine: '${machine}'
 \`\`\`
 ${COMMENT_BODY}
 \`\`\`
diff --git 
a/regression-test/pipeline/performance/clickbench/check-query-result.sh 
b/regression-test/pipeline/performance/clickbench/check-query-result.sh
new file mode 100755
index 00000000000..dec46e8ac6e
--- /dev/null
+++ b/regression-test/pipeline/performance/clickbench/check-query-result.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+# set -x
+set +e
+
+if [[ ! -d query-result-actual ]]; then mkdir query-result-actual; fi
+
+QUERY_NUM=1
+while read -r query; do
+    echo "query${QUERY_NUM}:  ${query}"
+    mysql -h"${host:-127.0.0.1}" -P"${query_port:-9030}" -uroot 
-D"${db_name:-clickbench}" -e"${query}" 
>"query-result-actual/doris-q${QUERY_NUM}.result"
+    QUERY_NUM=$((QUERY_NUM + 1))
+done <queries-sort.sql
+
+is_ok=true
+for i in {1..43}; do
+    if ! diff -w <(tail -n +2 "query-result-target/doris-q${i}.result") <(tail 
-n +2 "query-result-actual/doris-q${i}.result") >/dev/null; then
+        if [[ "${i}" == 4 ]] && [[ $(sed -n '2p' 
"query-result-actual/doris-q${i}.result") == '2.528953029'* ]]; then
+            is_ok=true
+        else
+            is_ok=false
+            echo "ERRPR: query_${i} result is error"
+            echo "**** target result 
**********************************************"
+            cat "query-result-target/doris-q${i}.result"
+            echo "**** actual result 
**********************************************"
+            cat "query-result-actual/doris-q${i}.result"
+            echo 
"*****************************************************************"
+            break
+        fi
+    fi
+done
+
+if ${is_ok}; then exit 0; else exit 1; fi
diff --git 
a/regression-test/pipeline/performance/clickbench/conf/be_custom.conf 
b/regression-test/pipeline/performance/clickbench/conf/be_custom.conf
new file mode 100644
index 00000000000..07f87dcaeb6
--- /dev/null
+++ b/regression-test/pipeline/performance/clickbench/conf/be_custom.conf
@@ -0,0 +1,21 @@
+priority_networks=127.0.0.1/24
+# master branch, branch_name=master
+# branch-2.0 branch, branch_name=branch20
+storage_root_path=/data/doris-storage-${branch_name}
+load_channel_memory_refresh_sleep_time_ms=1000
+soft_mem_limit_frac=1
+track_new_delete=false
+streaming_load_max_mb=102400
+doris_scanner_thread_pool_thread_num=8
+tc_enable_aggressive_memory_decommit=false
+enable_new_scan_node=false
+#mem_limit=100%
+mem_limit=90%
+#write_buffer_size=1609715200
+write_buffer_size=1209715200
+load_process_max_memory_limit_percent=100
+#load_process_soft_mem_limit_percent=80
+disable_auto_compaction=true
+disable_storage_page_cache=false
+disable_chunk_allocator=false
+enable_simdjson_reader = true
diff --git 
a/regression-test/pipeline/performance/clickbench/conf/fe_custom.conf 
b/regression-test/pipeline/performance/clickbench/conf/fe_custom.conf
new file mode 100644
index 00000000000..b3df52da7f1
--- /dev/null
+++ b/regression-test/pipeline/performance/clickbench/conf/fe_custom.conf
@@ -0,0 +1,7 @@
+priority_networks=127.0.0.1/24
+# master branch, branch_name=master
+# branch-2.0 branch, branch_name=branch20
+meta_dir=/data/doris-meta-${branch_name}
+stream_load_default_timeout_second=3600
+ignore_unknown_metadata_module=true
+enable_full_auto_analyze=false
diff --git 
a/regression-test/pipeline/performance/clickbench/conf/opt_session_variables.sql
 
b/regression-test/pipeline/performance/clickbench/conf/opt_session_variables.sql
new file mode 100644
index 00000000000..6392e20cca4
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/conf/opt_session_variables.sql
@@ -0,0 +1,7 @@
+set global exec_mem_limit=34359738368;
+set global parallel_fragment_exec_instance_num=16;
+set global parallel_pipeline_task_num=16;
+set global enable_single_distinct_column_opt=true;
+set global enable_function_pushdown=true;
+set global forbid_unknown_col_stats=false;
+set global runtime_filter_mode=global;
diff --git a/regression-test/pipeline/performance/clickbench/queries-sort.sql 
b/regression-test/pipeline/performance/clickbench/queries-sort.sql
new file mode 100644
index 00000000000..221e08b8cf5
--- /dev/null
+++ b/regression-test/pipeline/performance/clickbench/queries-sort.sql
@@ -0,0 +1,43 @@
+SELECT COUNT(*) FROM hits;
+SELECT COUNT(*) FROM hits WHERE AdvEngineID <> 0;
+SELECT SUM(AdvEngineID), COUNT(*), AVG(ResolutionWidth) FROM hits;
+SELECT AVG(UserID) FROM hits;
+SELECT COUNT(DISTINCT UserID) FROM hits;
+SELECT COUNT(DISTINCT SearchPhrase) FROM hits;
+SELECT MIN(EventDate), MAX(EventDate) FROM hits;
+SELECT AdvEngineID, COUNT(*) FROM hits WHERE AdvEngineID <> 0 GROUP BY 
AdvEngineID ORDER BY COUNT(*) DESC;
+SELECT RegionID, COUNT(DISTINCT UserID) AS u FROM hits GROUP BY RegionID ORDER 
BY u DESC, RegionID LIMIT 10;
+SELECT RegionID, SUM(AdvEngineID), COUNT(*) AS c, AVG(ResolutionWidth), 
COUNT(DISTINCT UserID) FROM hits GROUP BY RegionID ORDER BY c DESC,RegionID, 
SUM(AdvEngineID),AVG(ResolutionWidth),COUNT(DISTINCT UserID) LIMIT 10;
+SELECT MobilePhoneModel, COUNT(DISTINCT UserID) AS u FROM hits WHERE 
MobilePhoneModel <> '' GROUP BY MobilePhoneModel ORDER BY u DESC, 
MobilePhoneModel LIMIT 10;
+SELECT MobilePhone, MobilePhoneModel, COUNT(DISTINCT UserID) AS u FROM hits 
WHERE MobilePhoneModel <> '' GROUP BY MobilePhone, MobilePhoneModel ORDER BY u 
DESC, MobilePhone, MobilePhoneModel LIMIT 10;
+SELECT SearchPhrase, COUNT(*) AS c FROM hits WHERE SearchPhrase <> '' GROUP BY 
SearchPhrase ORDER BY c DESC,SearchPhrase LIMIT 10;
+SELECT SearchPhrase, COUNT(DISTINCT UserID) AS u FROM hits WHERE SearchPhrase 
<> '' GROUP BY SearchPhrase ORDER BY u DESC,SearchPhrase LIMIT 10;
+SELECT SearchEngineID, SearchPhrase, COUNT(*) AS c FROM hits WHERE 
SearchPhrase <> '' GROUP BY SearchEngineID, SearchPhrase ORDER BY c 
DESC,SearchEngineID, SearchPhrase LIMIT 10;
+SELECT UserID, COUNT(*) FROM hits GROUP BY UserID ORDER BY COUNT(*) 
DESC,UserID LIMIT 10;
+SELECT UserID, SearchPhrase, COUNT(*) FROM hits GROUP BY UserID, SearchPhrase 
ORDER BY COUNT(*) DESC,UserID, SearchPhrase LIMIT 10;
+SELECT UserID, SearchPhrase, COUNT(*) FROM hits GROUP BY UserID, SearchPhrase 
ORDER BY COUNT(*) ASC,UserID, SearchPhrase LIMIT 10;
+SELECT UserID, extract(minute FROM EventTime) AS m, SearchPhrase, COUNT(*) 
FROM hits GROUP BY UserID, m, SearchPhrase ORDER BY COUNT(*) DESC,UserID, 
extract(minute FROM EventTime), SearchPhrase LIMIT 10;
+SELECT UserID FROM hits WHERE UserID = 435090932899640449;
+SELECT COUNT(*) FROM hits WHERE URL LIKE '%google%';
+SELECT SearchPhrase, MIN(URL), COUNT(*) AS c FROM hits WHERE URL LIKE 
'%google%' AND SearchPhrase <> '' GROUP BY SearchPhrase ORDER BY c 
DESC,SearchPhrase, MIN(URL) LIMIT 10;
+SELECT SearchPhrase, MIN(URL), MIN(Title), COUNT(*) AS c, COUNT(DISTINCT 
UserID) FROM hits WHERE Title LIKE '%Google%' AND URL NOT LIKE '%.google.%' AND 
SearchPhrase <> '' GROUP BY SearchPhrase ORDER BY c DESC,SearchPhrase, 
MIN(URL), MIN(Title),COUNT(DISTINCT UserID) LIMIT 10;
+SELECT 
WatchID,JavaEnable,Title,GoodEvent,EventTime,EventDate,CounterID,ClientIP,RegionID,UserID,CounterClass,OS,UserAgent,URL,Referer,IsRefresh,RefererCategoryID,RefererRegionID,URLCategoryID,URLRegionID,ResolutionWidth,ResolutionHeight,ResolutionDepth,FlashMajor,FlashMinor,FlashMinor2,NetMajor,NetMinor,UserAgentMajor,UserAgentMinor,CookieEnable,JavascriptEnable,IsMobile,MobilePhone,MobilePhoneModel,Params,IPNetworkID,TraficSourceID,SearchEngineID,SearchPhrase,AdvEngineID,IsArtifical,Wi
 [...]
+SELECT SearchPhrase FROM hits WHERE SearchPhrase <> '' ORDER BY 
EventTime,SearchPhrase DESC LIMIT 10;
+SELECT SearchPhrase FROM hits WHERE SearchPhrase <> '' ORDER BY SearchPhrase 
LIMIT 10;
+SELECT SearchPhrase FROM hits WHERE SearchPhrase <> '' ORDER BY EventTime, 
SearchPhrase LIMIT 10;
+SELECT CounterID, AVG(length(URL)) AS l, COUNT(*) AS c FROM hits WHERE URL <> 
'' GROUP BY CounterID HAVING COUNT(*) > 100000 ORDER BY l DESC,CounterID,c 
LIMIT 25;
+SELECT REGEXP_REPLACE(Referer, '^https?://(?:www\.)?([^/]+)/.*$', '\\1') AS k, 
AVG(length(Referer)) AS l, COUNT(*) AS c, MIN(Referer) FROM hits WHERE Referer 
<> '' GROUP BY k HAVING COUNT(*) > 100000 ORDER BY l DESC,k,c LIMIT 25;
+SELECT SUM(ResolutionWidth), SUM(ResolutionWidth + 1), SUM(ResolutionWidth + 
2), SUM(ResolutionWidth + 3), SUM(ResolutionWidth + 4), SUM(ResolutionWidth + 
5), SUM(ResolutionWidth + 6), SUM(ResolutionWidth + 7), SUM(ResolutionWidth + 
8), SUM(ResolutionWidth + 9), SUM(ResolutionWidth + 10), SUM(ResolutionWidth + 
11), SUM(ResolutionWidth + 12), SUM(ResolutionWidth + 13), SUM(ResolutionWidth 
+ 14), SUM(ResolutionWidth + 15), SUM(ResolutionWidth + 16), 
SUM(ResolutionWidth + 17), SUM(Resolutio [...]
+SELECT SearchEngineID, ClientIP, COUNT(*) AS c, SUM(IsRefresh), 
AVG(ResolutionWidth) FROM hits WHERE SearchPhrase <> '' GROUP BY 
SearchEngineID, ClientIP ORDER BY c DESC,SearchEngineID, 
ClientIP,SUM(IsRefresh), AVG(ResolutionWidth) LIMIT 10;
+SELECT WatchID, ClientIP, COUNT(*) AS c, SUM(IsRefresh), AVG(ResolutionWidth) 
FROM hits WHERE SearchPhrase <> '' GROUP BY WatchID, ClientIP ORDER BY c 
DESC,WatchID, ClientIP,SUM(IsRefresh), AVG(ResolutionWidth) LIMIT 10;
+SELECT WatchID, ClientIP, COUNT(*) AS c, SUM(IsRefresh), AVG(ResolutionWidth) 
FROM hits GROUP BY WatchID, ClientIP ORDER BY c DESC,WatchID, 
ClientIP,SUM(IsRefresh), AVG(ResolutionWidth) LIMIT 10;
+SELECT URL, COUNT(*) AS c FROM hits GROUP BY URL ORDER BY c DESC,URL LIMIT 10;
+SELECT 1, URL, COUNT(*) AS c FROM hits GROUP BY 1, URL ORDER BY c DESC,URL 
LIMIT 10;
+SELECT ClientIP, ClientIP - 1, ClientIP - 2, ClientIP - 3, COUNT(*) AS c FROM 
hits GROUP BY ClientIP, ClientIP - 1, ClientIP - 2, ClientIP - 3 ORDER BY c 
DESC LIMIT 10;
+SELECT URL, COUNT(*) AS PageViews FROM hits WHERE CounterID = 62 AND EventDate 
>= '2013-07-01' AND EventDate <= '2013-07-31' AND DontCountHits = 0 AND 
IsRefresh = 0 AND URL <> '' GROUP BY URL ORDER BY PageViews DESC,URL LIMIT 10;
+SELECT Title, COUNT(*) AS PageViews FROM hits WHERE CounterID = 62 AND 
EventDate >= '2013-07-01' AND EventDate <= '2013-07-31' AND DontCountHits = 0 
AND IsRefresh = 0 AND Title <> '' GROUP BY Title ORDER BY PageViews DESC,Title 
LIMIT 10;
+SELECT URL, COUNT(*) AS PageViews FROM hits WHERE CounterID = 62 AND EventDate 
>= '2013-07-01' AND EventDate <= '2013-07-31' AND IsRefresh = 0 AND IsLink <> 0 
AND IsDownload = 0 GROUP BY URL ORDER BY PageViews DESC,URL LIMIT 10 OFFSET 
1000;
+SELECT TraficSourceID, SearchEngineID, AdvEngineID, CASE WHEN (SearchEngineID 
= 0 AND AdvEngineID = 0) THEN Referer ELSE '' END AS Src, URL AS Dst, COUNT(*) 
AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= '2013-07-01' AND 
EventDate <= '2013-07-31' AND IsRefresh = 0 GROUP BY TraficSourceID, 
SearchEngineID, AdvEngineID, Src, Dst ORDER BY PageViews DESC,TraficSourceID, 
SearchEngineID, AdvEngineID, Src, Dst LIMIT 10 OFFSET 1000;
+SELECT URLHash, EventDate, COUNT(*) AS PageViews FROM hits WHERE CounterID = 
62 AND EventDate >= '2013-07-01' AND EventDate <= '2013-07-31' AND IsRefresh = 
0 AND TraficSourceID IN (-1, 6) AND RefererHash = 3594120000172545465 GROUP BY 
URLHash, EventDate ORDER BY PageViews DESC,URLHash, EventDate LIMIT 10 OFFSET 
100;
+SELECT WindowClientWidth, WindowClientHeight, COUNT(*) AS PageViews FROM hits 
WHERE CounterID = 62 AND EventDate >= '2013-07-01' AND EventDate <= 
'2013-07-31' AND IsRefresh = 0 AND DontCountHits = 0 AND URLHash = 
2868770270353813622 GROUP BY WindowClientWidth, WindowClientHeight ORDER BY 
PageViews DESC,WindowClientWidth, WindowClientHeight LIMIT 10 OFFSET 10000;
+SELECT DATE_FORMAT(EventTime, '%Y-%m-%d %H:%i:00') AS M, COUNT(*) AS PageViews 
FROM hits WHERE CounterID = 62 AND EventDate >= '2013-07-14' AND EventDate <= 
'2013-07-15' AND IsRefresh = 0 AND DontCountHits = 0 GROUP BY 
DATE_FORMAT(EventTime, '%Y-%m-%d %H:%i:00') ORDER BY DATE_FORMAT(EventTime, 
'%Y-%m-%d %H:%i:00'),PageViews LIMIT 10 OFFSET 1000;
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q1.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q1.result
new file mode 100644
index 00000000000..1891f04fe00
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q1.result
@@ -0,0 +1,2 @@
+count(*)
+99997497
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q10.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q10.result
new file mode 100644
index 00000000000..ce94e92746c
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q10.result
@@ -0,0 +1,11 @@
+RegionID       sum(`AdvEngineID`)      c       avg(`ResolutionWidth`)  
count(DISTINCT `UserID`)
+229    2077656 18295832        1506.0852431307851      2845673
+2      441662  6687587 1479.8386542111527      1081016
+208    285925  4261812 1285.2593246722286      831676
+169    100887  3320229 1465.9073732564832      604583
+32     81498   1843518 1538.0376568061718      216010
+34     161779  1792369 1548.360152401654       299479
+184    55526   1755192 1506.8082967561384      322661
+42     108820  1542717 1587.1085208758313      243181
+107    120470  1516690 1548.6028970982863      272448
+51     98212   1435578 1579.8860354505293      211505
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q11.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q11.result
new file mode 100644
index 00000000000..6d39c05e960
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q11.result
@@ -0,0 +1,11 @@
+MobilePhoneModel       u
+iPad   1090347
+iPhone 45758
+A500   16046
+N8-00  5565
+iPho   3300
+ONE TOUCH 6030A        2759
+GT-P7300B      1907
+3110000        1871
+GT-I9500       1598
+eagle75        1492
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q12.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q12.result
new file mode 100644
index 00000000000..727e1a4329d
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q12.result
@@ -0,0 +1,11 @@
+MobilePhone    MobilePhoneModel        u
+1      iPad    931038
+5      iPad    48385
+6      iPad    29710
+7      iPad    28391
+118    A500    16005
+6      iPhone  14516
+26     iPhone  13566
+10     iPad    11433
+32     iPad    9503
+13     iPad    9417
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q13.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q13.result
new file mode 100644
index 00000000000..7d4cb5d5a47
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q13.result
@@ -0,0 +1,11 @@
+SearchPhrase   c
+карелки        70263
+албатрутдин    34675
+смотреть онлайн        24580
+смотреть онлайн бесплатно      21647
+смотреть       19707
+мангу в зарабей грама  19195
+дружке помещение       17284
+galaxy table   16746
+экзоидные      16620
+сколько мытищи 12317
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q14.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q14.result
new file mode 100644
index 00000000000..0cd4e5f4e09
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q14.result
@@ -0,0 +1,11 @@
+SearchPhrase   u
+карелки        23673
+смотреть онлайн        19747
+албатрутдин    18394
+смотреть онлайн бесплатно      17553
+смотреть       14603
+экзоидные      14529
+мангу в зарабей грама  14198
+сколько мытищи 9007
+дружке помещение       8792
+комбинирование смотреть        7572
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q15.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q15.result
new file mode 100644
index 00000000000..eca77cb9205
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q15.result
@@ -0,0 +1,11 @@
+SearchEngineID SearchPhrase    c
+2      карелки 46258
+2      мангу в зарабей грама   18871
+2      смотреть онлайн 16905
+3      албатрутдин     16748
+2      смотреть онлайн бесплатно       14909
+2      албатрутдин     13716
+2      экзоидные       13414
+2      смотреть        13108
+3      карелки 12815
+2      дружке помещение        11946
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q16.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q16.result
new file mode 100644
index 00000000000..686f5e81aa7
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q16.result
@@ -0,0 +1,11 @@
+UserID count(*)
+1313338681122956954    29097
+1907779576417363396    25333
+2305303682471783379    10597
+7982623143712728547    7584
+6018350421959114808    6678
+7280399273658728997    6411
+1090981537032625727    6197
+5730251990344211405    6019
+835157184735512989     5211
+770542365400669095     4906
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q17.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q17.result
new file mode 100644
index 00000000000..65c303deab5
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q17.result
@@ -0,0 +1,11 @@
+UserID SearchPhrase    count(*)
+1313338681122956954            29097
+1907779576417363396            25333
+2305303682471783379            10597
+7982623143712728547            6669
+7280399273658728997            6408
+1090981537032625727            6196
+5730251990344211405            6019
+6018350421959114808            5990
+835157184735512989             5209
+770542365400669095             4906
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q18.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q18.result
new file mode 100644
index 00000000000..82ffbe4d38e
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q18.result
@@ -0,0 +1,11 @@
+UserID SearchPhrase    count(*)
+-9223360918607336854           1
+-9223360918607336854   мультики в театр по полтава психолодильное животный 
дома        1
+-9223346024853429862           1
+-9223344277659414581           1
+-9223308501352264398   фэс серии охорис интернет водительсинка 1.5 гостин 2 
серии форту в красноярск   1
+-9223274299909755627   люкс ижевском   1
+-9223260604755921098   бэу бесплатно   1
+-9223260604755921098   лифт выжигания белокуринфо      1
+-9223260604755921098   лифтов большие кедро заполиров  1
+-9223260604755921098   марина газоприместации  1
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q19.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q19.result
new file mode 100644
index 00000000000..bf9c244d9e0
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q19.result
@@ -0,0 +1,11 @@
+UserID m       SearchPhrase    count(*)
+1313338681122956954    31              589
+1313338681122956954    28              578
+1313338681122956954    29              572
+1313338681122956954    33              567
+1313338681122956954    27              557
+1313338681122956954    32              554
+1313338681122956954    30              552
+1313338681122956954    34              546
+1313338681122956954    26              540
+1313338681122956954    10              539
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q2.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q2.result
new file mode 100644
index 00000000000..5823f4396a5
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q2.result
@@ -0,0 +1,2 @@
+count(*)
+630500
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q20.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q20.result
new file mode 100644
index 00000000000..eeb65cd730e
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q20.result
@@ -0,0 +1,5 @@
+UserID
+435090932899640449
+435090932899640449
+435090932899640449
+435090932899640449
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q21.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q21.result
new file mode 100644
index 00000000000..fba96700a59
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q21.result
@@ -0,0 +1,2 @@
+count(*)
+15911
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q22.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q22.result
new file mode 100644
index 00000000000..7a1f0206af8
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q22.result
@@ -0,0 +1,11 @@
+SearchPhrase   min(`URL`)      c
+прокур горбуши http://smeshariki.ru/googleTBR%26ad     60
+римском качественны for cry    http:%2F%2Fwwww.googlead&aktional       24
+стоит похуден  
http://smeshariki.ru/index.ua/doc/22229/googlead%26aktion=2&input_bdsmpeople.ru/real-estate=0&state=2013070519381
       23
+испанч боб новости дейская     
http://smeshariki.ru/recipes/show/6840872&trafkey=6d0fc12c54059/loukhaAUXI&where=all&filter/Mitsubishi/google
   21
+прокур готовки видеоэндоменя   http://smeshariki.ru/googleTBR%26ad     14
+прокур гипоаллеры      http://smeshariki.ru/googleTBR%26ad     11
+камедицинск автомобильних условодки на в крем  
http://video.yandex.php?com=google.ru/arts/searchAutoSearch     9
+универ 11.6/1366x768/4096mb ddressary of thing 
http://smeshariki.ru/index.ua/syllanet.ru/business/hotels.turizm.ru/igooglead%26ar_sliceid%3D1216629/0/&&puid2=15&lo=http
       8
+вспомню о названы монстэр      
http://tienskaia-moda-zhienskaia-obl.irr.ru/ch/google-c-38208   7
+купить трудовані резюме мертный дина кабинский лежит заднее устан      
http://video.yandex.php?com=google.ru/arts/searchAutoSearch     7
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q23.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q23.result
new file mode 100644
index 00000000000..93f79b17291
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q23.result
@@ -0,0 +1,11 @@
+SearchPhrase   min(`URL`)      min(`Title`)    c       count(DISTINCT `UserID`)
+винки медведь смотреть фильмы 2013 смотреть    
http://smeshariki.ru/a-folder-4/#page-3.2.1; WOW64; 
Edition=1&input_action=2011/page_type=profiles/88436/currency       
видеорегионалу Google   801     600
+секретарь оверка все серии порт        
http://kinopoisk.ru/a-albums_scroll_to_auto_id=227&option/vacancies/liver.ru/cgi-bin/click.cgi%3Fsid%3D158197%26ad
      @дневники Google Player 1.2.5 л,        214     182
+винки медведь смотреть фильмы чеческия 
http://smeshariki.ru/a-folder-4/#page-3.2.1; WOW64; 
Edition=1&input_action=2013-topy%2Fproduct_price_ot=&price  видеорегионалу 
Gooddock hotmail Google на толстовая комфорталенны Berlingo по давлений  138    
 121
+игры для дер блич      
http://kinopoisk.ru/a-albums_scroll_to_auto_id=363064472354&lb_id=1559843       
Легко на купить автозаврам телась Google Anaissage_599-61 «Оверлок колепный 
рецепт: Твери       114     106
+винки медведь смотреть объятный ветерин        
http://smeshariki.ru/a-folder-4/#page-3.2.1; WOW64; 
Edition=1&input_age17/#page/Jeep,Lexus/rodimomu_vsegoddelki.ru/carbuznyj-90472-0-014031818%26height%3D901634571
     видеорегионалу Google - Доставщиков и актрическая       102     85
+кино 2009) смотреть онлайн бессмерти мк в россипед     
http://domchelove.ru/#!/search/page     Далее о коллекции в GIMI LANCIA 
0K3Y318104 продать Google, go-go в регистрии — Мой Крым 90      70
+винки медведь смотреть http://smeshariki.ru/a-folder-4/#page-3.2.1; WOW64; 
Edition=1&input_active/?do=showCampState/renatzija-na-brietielkakh%2F&ti=С  
видеорегионалу Google - модного языке - Пульс   87      56
+тайны избавитель в владимира для университет масляться 
http://smeshariki.ru/a-folder=cars/article=199980150195,0.107736/detail.aspx#location=search?text=asc&maxyear=2001216629%26sob%3D3159&input_who1=1&cid=577&oki=1&op_product_id=25&pvno=2&evlg=VC,2;VL
   Амитин обувь - Яндекс.Видео+текст песен Google.com      64      56
+коптимиквиды юриста с роуз рая 
https://produkty%2Fpulove.ru/booklyattion-war-sinij-9182/women  Легко на 
участные участников., Цены - Стильная парнем. Саганрог догадения : Турции, 
купить у 10 дне кольные машинки не представки - Новая с избиение спродажа: 
котята 2014 г.в. Цена: 47500-10ECO060 – -------- купить квартиру Оренбург 
(России Galantrax Flamiliada Google, Nо 18 фотоконверк Супер Кардиган  45      
12
+винки медведь смотрейлера начальник    
http://smeshariki.ru/a-folder-4/#page-3.2.1; WOW64; Edition=1&input_active/     
видеорегионалу Google - модных Челябинск        40      35
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q24.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q24.result
new file mode 100644
index 00000000000..4c7ffb0d1a7
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q24.result
@@ -0,0 +1,11 @@
+WatchID        JavaEnable      Title   GoodEvent       EventTime       
EventDate       CounterID       ClientIP        RegionID        UserID  
CounterClass    OS      UserAgent       URL     Referer IsRefresh       
RefererCategoryID       RefererRegionID URLCategoryID   URLRegionID     
ResolutionWidth ResolutionHeight        ResolutionDepth FlashMajor      
FlashMinor      FlashMinor2     NetMajor        NetMinor        UserAgentMajor  
UserAgentMinor  CookieEnable    JavascriptEnable        IsMobile        
MobilePhone     MobilePhoneModel        Params  IPNetworkID     TraficSourceID  
SearchEngineID  SearchPhrase    AdvEngineID     IsArtifical     WindowCli [...]
+7675678523794456216    1       Glavnaya gorand. Цветные объявлений районе, 
вером       1       2013-07-01 20:01:09     2013-07-02      64469   1840073959  
    2       3714843517822510735     0       44      5       
http://e96.ru/search/page.googleTBR%26ad%3D0%26rnd%3D158197%26anbietersburg     
http://bdsmpeople.ru/obrazom_position/?page     0       13593   158     13606   
216     1638    1658    22      15      7       700     0       0       22      
nA      1       1       0       0                       4005373 -1      0       
        0       0       1052    775     135     2013-07-02 10:20:22     0       
0       0       0       windows 1601    0       0       0       0               
213893614       0       0       0       0       0       6       2013-07-02 
11:58:11     0       0       0       0       0       1412515749      63522   -1 
     12      S [...]
        0                                                                       
                0       5972490271588207794     1369713899219085694     0
+6147260061318473746    1       Glavnaya gorand. Цветные объявлений районе, 
вером       1       2013-07-01 20:01:29     2013-07-02      64469   1840073959  
    2       3714843517822510735     0       44      5       
http://e96.ru/search/page.googleTBR%26ad%3D0%26rnd%3D158197%26anbietersburg     
http://bdsmpeople.ru/obrazom_position/?page     0       13593   158     13606   
216     1638    1658    22      15      7       700     0       0       22      
D�      1       1       0       0                       4005373 -1      0       
        0       0       1052    775     135     2013-07-02 10:20:42     0       
0       0       0       windows 1601    0       0       0       0               
810892658       0       0       0       0       0       6       2013-07-02 
11:58:25     0       0       0       0       0       1412515749      63522   -1 
     13      S [...]
        0                                                                       
                0       5972490271588207794     1369713899219085694     0
+5972689683963797854    1       Glavnaya gorand. Цветные объявлений районе, 
вером       1       2013-07-01 20:02:11     2013-07-02      64469   1840073959  
    2       3714843517822510735     0       44      5       
http://e96.ru/search/page.googleTBR%26ad%3D0%26rnd%3D158197%26anbietersburg     
http://bdsmpeople.ru/obrazom_position/?page     0       13593   158     13606   
216     1638    1658    22      15      7       700     0       0       22      
D�      1       1       0       0                       4005373 -1      0       
        0       0       1052    775     135     2013-07-02 10:21:16     0       
0       0       0       windows 1601    0       0       0       0               
47015096        0       0       0       0       0       6       2013-07-02 
11:58:50     0       0       0       0       0       1412515749      63522   -1 
     13      S0 [...]
        0                                                                       
                0       5972490271588207794     1369713899219085694     0
+8008688361303225116    1       Скачать онлайн играй! - Туризма - Крымский 
тренчкоты в интернет магазин Wildberries.ru (Работа - IRR.ru - модных 
словариумных   1       2013-07-01 20:12:01     2013-07-02      63217   
1975817788      229     804133623150786791      1       44      7       
http://bjdswaps.google-photo    http://loveche.html?ctid        0       12409   
20      10093   22      1749    867     23      15      3       700.224 0       
0       15      D�      1       1       0       0                       3056753 
-1      0               0       0       1608    662     135     2013-07-02 
06:19:55     4       1       16561   0       windows 1       0       0       0  
     5347008031302181363             766531830       0       0       0       0  
     0       5       2013-07-02 12:00:25     31       [...]
        0                                                                       
                0       -2736470446903004689    7116991598850737408     0
+7436461208655480623    1       Компании Вино в хорошие 1       2013-07-01 
20:32:24     2013-07-02      35534   1741555497      39      
7082047337377160280     0       44      5       
http://rsdn.ru/catalog/cifrovye-advertisement=little&category=22&input_bdsmpeople.ru/index,google.ru/news/39826
 http://kalina?block/?inst_the_book.php?cPath=40_57470493958402/ 0       10634  
 20      0       0       1996    1781    37      15      7       700     0      
 0       22      D�      1       1       0       0                       808950 
 5       0               0       0       1261    1017    433     2013-07-02 
19:03:12     4       1       16561   0       windows-1251;charset    1601    1  
     0       0       6804199628189316872             626511463       0       0  
     0       1        [...]
        0                                                                       
                0       8931346360692564721     1971436513446935197     0
+5564518777317455184    0       «set» в пробег аппах и обслуживатизиров 1       
2013-07-01 20:44:29     2013-07-02      5822    1920787234      32      
3712346975274085073     1       2       3       
http://auto_gruppy/christikha/hotel=-1&trafkey=605&from=&power_name=Платья&produkty%2Furl.google.ru/index
       
http://rmnt.ru/cars/passenger/hellardous/42/~37/?suggest&id=3869551753&custom=0&undefined/undefined/under=28036,5;362;108;16762643539
   0       8563    21482   9822    18528   1638    1658    23      15      7    
   700     0       0       16      D�      1       1       0       0            
           207348  -1      0               0       0       1509    733     135  
   2013-07-02 07:33 [...]
        0                                                                       
                0       7820066807630413322     -3258566084785303139    0
+7381524648140977766    1       Ploshchad\\' stolitsi zwy 110911923, Г 
официальная Прессы и Огонек      1       2013-07-01 21:01:46     2013-07-02     
 63217   1638850281      59      1564939829982760596     1       44      5      
 http://bjdleaksbrand=bpc 
bonprix%2F12.02&he=1024&location=pm;f=inbox;pmsg_1733/page.google      
http://loveplanet.ru/url?sa=t&rct       0       12409   20      10093   22      
1996    1666    37      15      7       700     0       0       22      D�      
1       1       0       0                       2059788 -1      0               
0       0       1261    1206    433     2013-07-02 10:04:38     0       0       
0       0       windows 1       0       0       0       0               
827020970       0       0       0       0       0       5       2013-07-02 
18:53:56     0       0       0       0       0       20014 [...]
        0                                                                       
                0       1384301141639030267     9047048983006699504     0
+8614832219462424183    1       Модель для сумки - регеш (Россия)       1       
2013-07-01 21:19:23     2013-07-02      3035    2022088895      38      
2590751384199385434     1       2       88      
http://smeshariki.ru/googleTBR%26ar_ntype=citykurortmag 
http://holodilnik.ru/GameMain.aspx?color=0&choos&source=web&cd  0       10271   
158     13384   216     1917    879     37      15      7       700     0       
0       1       D�      1       1       0       0                       3991944 
-1      0               0       0       746     464     322     2013-07-02 
08:44:30     0       0       0       0       windows-1251;charset    1       0  
     0       0       7607749204513951316             427646581       0       0  
     0       0       0       5       2013-07-01 23:19:17     50      2       3  
     0       30      1146019198      -1       [...]
        0                                                                       
                0       1157471009075867478     1000799766482180932     0
+7168314068394418899    1       по полиция +опытовой рецензии,  1       
2013-07-01 21:22:40     2013-07-02      35534   -1420082055     11579   
4822773326251181180     0       2       7       
http:%2F%2Fsapozhki-advertime-2/#page.google/dodge      
http://saint-peters-total=меньше 
100007&text=b.akhua_deckaya-look/time-2/#page=3&oprnd=6817922197946&ei=JtHTUYWRCqXA&bvm=bv.49784469,d.ZWU&cad=rjt&fu=0&type_id=172&msid=1&marka=88&text=krasnaia-moda
  0       14550   952     8565    375     1304    978     37      15      4     
  700.224 2       7       13      D�      1       1       0       0             
          2675432 3       3       dave kino 2013 года в ростоп [...]
        0                                                                       
                0       -4470345086215748575    -5322637665780806659    0
+8235569889353442646    1               1       2013-07-01 21:22:53     
2013-07-02      35534   -1420082055     11579   4822773326251181180     0       
2       7       http:%2F%2Fsapozhki-advertime-2/#page.google/dodge              
0       0       0       8565    375     1304    978     37      15      4       
700.224 2       7       13      D�      1       1       0       0               
        2675432 0       0               0       1       1972    778     135     
2013-07-01 21:05:22     4       1       16561   0       windows 1601    0       
0       1       6494516778257365839             393719418       0       0       
0       1       0       5       2013-07-02 16:28:24     31      2       2       
14851   1       -1016483843     61823   -1      2       S0      �\\f            
        0       318     0       0       0       0       0       0               
0               NH     0                                                       
                                0       -296158784638538920     
-5322637665780806659    0
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q25.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q25.result
new file mode 100644
index 00000000000..89b52be5e8a
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q25.result
@@ -0,0 +1,11 @@
+SearchPhrase
+фильм небольшой бизнеса североятно
+симптомы регистратов
+ночно китая женщины
+galaxy s4 zoom фильм
+слон.руб., д. а.л. конфигурды по оргатства мультет
+скачать читалию в духовке
+расписание мультиварка для
+отдыха чем прокат
+компьютерапии серия нарий
+брита ганам котлы на шерлок
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q26.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q26.result
new file mode 100644
index 00000000000..e30ee09f4c2
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q26.result
@@ -0,0 +1,11 @@
+SearchPhrase
+ береж
+ за русский стил видео какой
+ завод тандалищные прода
+ заочное по земли в обрезни и метро
+ заочное сад цены нарощения музыка визу
+ зве
+ земные огурцы раб
+ золотой сайт samsung
+ прав
+ светы женске 2 сезон
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q27.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q27.result
new file mode 100644
index 00000000000..12c4e72e9c0
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q27.result
@@ -0,0 +1,11 @@
+SearchPhrase
+galaxy s4 zoom фильм
+ночно китая женщины
+симптомы регистратов
+фильм небольшой бизнеса североятно
+авом констеть ребенка краево
+анапа оперевянные волшебную
+брита ганам котлы на шерлок
+компьютерапии серия нарий
+отдыха чем прокат
+расписание мультиварка для
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q28.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q28.result
new file mode 100644
index 00000000000..80350d269ea
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q28.result
@@ -0,0 +1,26 @@
+CounterID      l       c
+233773 469.15431297456672      2938865
+245438 271.78534028284895      2510103
+122612 238.63990921114592      3574007
+234004 204.27835414397049      238660
+1634   197.8320354918649       323229
+786    186.75131919553962      120528
+114157 142.91515101105318      216408
+515    126.22661275500828      146907
+256004 125.3675852481615       858171
+95427  120.2673587920044       374306
+199550 109.81342052808459      7115413
+220992 105.85529726210743      494614
+196239 98.348608338370056      163797
+62     93.156611799769692      738150
+96948  92.742474620859241      396093
+188878 91.982019115507157      311998
+249603 91.880066486598793      120325
+3922   87.836801132956708      8527069
+191697 86.9569081691587        124664
+97467  84.294081324612364      131178
+186300 83.971374138539 802561
+146891 77.774166261899339      605286
+38     76.438409122240387      507770
+230962 76.303670304864 169223
+77639  75.384984308614321      253961
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q29.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q29.result
new file mode 100644
index 00000000000..1b8b612d7dd
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q29.result
@@ -0,0 +1,26 @@
+k  l  c  MIN(Referer)
+svpressa.ru  307.97526863099216  242526  http://svpressa.ru/
+msuzie-showforumdisplay  263.32192343919291  183671  
http://msuzie-showforumdisplay/63/~2/?name=&cost_neu%3D400%26retpath=default777TWCWkI9lalUwTXpJMU1q
+saint-peters-total=меньше 80  242.52264612008778  200520  
http://saint-peters-total=меньше 
80/cash/station=search&input_age1=&int[2274/trashbox.ru/details&cad=rjt&fu=0&input_who1=2&input_who1=2&input_city-4400047.html?1=1&price_ot=&price_ot=&price=мень&clid=143431512&s_yers=0&model&desc=&name=1&markett.ru%2Frenazheltyj-95692465&text=поздравстраницу&clid=4405404/menu_29.html&ei=UIX1UZTFNJTI0ci8guSn3tW.pl?cmd=showthreadreplies=978-4121-469171&history47/11/?from=&district
+domics  212.92562880641779  326094  http://domics/825179.11931861234499792
+e96.ru  210.08849973411719  1019246  
http://e96.ru/%3Ffrom]=&input_act[count_num=0&dff=arian-carrina1201517&cad=rjt&fu=0&input_state/apartments-sale/list.htm?size=30&input_with_photo-takovo-zuevo-shpilki.ru/real.nn.ru/yandex.ua/searchAuto=on&input_who1=2&input_online.ru/clck/51cbd&ll=&top=http://loveplane=42621/page9
+gadgets.irr.ru  131.95831117211404  349710  
https://gadgets.irr.ru/2jmj7l5rSw0yVb
+google.ru  109.23993676876725  2158427  http://google.ru/
+go.mail  108.63789748542318  8227786  http://go.mail/04/detskaia-moda-zhiensmed
+msouz.ru  106.10549947974312  301774  http://msouz.ru/?ffshop
+state=19945206  105.64595424793234  512414  
http://state=19945206/foto-4/login%20NoTs3M&where=all&filmId=u8aGGqtWs3M&where=all&server=sc.cheloveplanet.ru/forum.little&categoriya/muzhskaya_istory.com/demii-malchik_148_4055074241537][to]=&input_activalry:
 A Love&where=all&text=купить florer&aktion/loansert 
перевозобности&site_id=197&text=добавь   лазерногорский  тайская полупая 
автомобильника&v=1414-resp_desyachnyeprague
+loveplanet.ru  104.60110161772997  461140  
http://loveplanet.ru/%3Faw_opel/page=2013
+bonprix.ru  104.41555808573025  1125087  http://bonprix.ru/
+novjob.ru  96.753316447323925  133049  http://novjob.ru/
+cn.ru  95.630391016643273  124675  
http://cn.ru/GameMain.aspx#catalog/100523&tails.xml?market_pc.html?pid=9403&lr=47&msgid=36305f39386
+geomethiettai.ru  94.7878649320174  115912  
https://geomethiettai.ru/GameMain.aspx?group=houses/list=266559j7077&num=7&prune_day=lastdiscussd59394303&price_ot=&priceup&page3/sankt-petushhiblock
+kino  90.275447606522448  120139  
http://kino/6/21/2/women.asp?whichpage4/#oversion=unreadm&uid
+yaroslavens.ru  90.171114410690635  124595  
http://yaroslavens.ru/main.aspx#catalog%2F1004-1100000147-otvet/actions/dislocal
+mysw.info  89.685400470867364  984566  http://mysw.info/
+m.myloveplanet.ru  88.7325696488195  151546  http://m.myloveplanet.ru/
+povarenok.ru  83.968890699665778  144812  http://povarenok.ru/
+gorod  80.330756448233515  110728  http://gorod/%3Fauto.ria.ua%2Fjob
+yandsearch  80.215351465625886  245970  http://www.yandsearch/rooms=1/page2
+myloveplanet.ru  80.080980629758912  110582  
http://myloveplanet.ru/#associety/auto
+tambov.irr.ru  77.871520179628192  315318  
http://tambov.irr.ru/0/c1/tgFtaeLDK0yb01A7xvQF08sjCFqQxn51
+kurortmag.ru  75.748930853256383  155264  http://kurortmag.ru/
\ No newline at end of file
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q3.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q3.result
new file mode 100644
index 00000000000..bd34bad0128
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q3.result
@@ -0,0 +1,2 @@
+sum(`AdvEngineID`)     count(*)        avg(`ResolutionWidth`)
+7280088        99997497        1513.4879349030107
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q30.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q30.result
new file mode 100644
index 00000000000..5e48aa6bab1
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q30.result
@@ -0,0 +1,2 @@
+sum(`ResolutionWidth`) sum(`ResolutionWidth` + 1)      sum(`ResolutionWidth` + 
2)      sum(`ResolutionWidth` + 3)      sum(`ResolutionWidth` + 4)      
sum(`ResolutionWidth` + 5)      sum(`ResolutionWidth` + 6)      
sum(`ResolutionWidth` + 7)      sum(`ResolutionWidth` + 8)      
sum(`ResolutionWidth` + 9)      sum(`ResolutionWidth` + 10)     
sum(`ResolutionWidth` + 11)     sum(`ResolutionWidth` + 12)     
sum(`ResolutionWidth` + 13)     sum(`ResolutionWidth` + 14)     
sum(`ResolutionWidth` + 15)     sum(`ResolutionWidth` + 16)     
sum(`ResolutionWidth` + 17)     su [...]
+151345005230   151445002727    151545000224    151644997721    151744995218    
151844992715    151944990212    152044987709    152144985206    152244982703    
152344980200    152444977697    152544975194    152644972691    152744970188    
152844967685    152944965182    153044962679    153144960176    153244957673    
153344955170    153444952667    153544950164    153644947661    153744945158    
153844942655    153944940152    154044937649    154144935146    154244932643    
154344930140    154444927637    154544925134    154644922631    154744920128    
154844917625    154944915122    15504491261 [...]
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q31.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q31.result
new file mode 100644
index 00000000000..ea8efe7f2b7
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q31.result
@@ -0,0 +1,11 @@
+SearchEngineID ClientIP        c       sum(`IsRefresh`)        
avg(`ResolutionWidth`)
+2      1138507705      1633    35      1408.0122473974282
+2      1740861572      1331    28      1577.9459053343351
+2      -807147100      1144    35      1553.1984265734266
+2      -497906719      1140    36      1543.4140350877192
+2      -1945757555     1105    30      1557.387330316742
+2      -1870623097     1102    31      1555.6588021778584
+2      -631062503      1083    31      1581.8171745152354
+2      -465813166      1082    30      1541.2532347504621
+2      -1743596151     1080    24      1559.8092592592593
+2      -1125673878     1058    22      1587
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q32.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q32.result
new file mode 100644
index 00000000000..4aa7e67575f
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q32.result
@@ -0,0 +1,11 @@
+WatchID        ClientIP        c       sum(`IsRefresh`)        
avg(`ResolutionWidth`)
+4611686071420045196    1618475002      1       0       1368
+4611686270165580596    1773698398      1       0       1996
+4611686294110223561    1593993174      1       0       1368
+4611686705865451788    -954492450      1       0       548
+4611687123803616825    -1169210775     1       0       1990
+4611687333949199458    2029546627      1       0       1368
+4611687377885419452    286029700       1       0       1990
+4611687393794238663    -1176766019     1       0       1368
+4611687496390261055    77438170        1       0       1638
+4611688027162466482    -1294239990     1       0       1750
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q33.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q33.result
new file mode 100644
index 00000000000..e8b52dce9e4
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q33.result
@@ -0,0 +1,11 @@
+WatchID        ClientIP        c       sum(`IsRefresh`)        
avg(`ResolutionWidth`)
+6655575552203051303    1611957945      2       0       1638
+7224410078130478461    -776509581      2       0       1368
+7904046282518428963    1509330109      2       0       1368
+8566928176839891583    -1402644643     2       0       1368
+4611686071420045196    1618475002      1       0       1368
+4611686075276949366    1754185883      1       0       1368
+4611686093393191411    982574472       1       0       1750
+4611686114854231582    813478092       1       0       2038
+4611686133577478679    1628368895      1       0       1638
+4611686211212249819    1575448609      1       0       1917
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q34.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q34.result
new file mode 100644
index 00000000000..7f440019a7d
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q34.result
@@ -0,0 +1,11 @@
+URL    c
+http://liver.ru/belgorod/page/1006.jки/доп_приборы     3288173
+http://kinopoisk.ru    1625250
+http://bdsm_po_yers=0&with_video       791465
+http://video.yandex    582400
+http://smeshariki.ru/region    514984
+http://auto_fiat_dlya-bluzki%2F8536.30.18&he=900&with  507995
+http://liver.ru/place_rukodel=365115eb7bbb90   359893
+http://kinopoisk.ru/vladimir.irr.ru    354690
+http://video.yandex.ru/search/?jenre=50&s_yers 318979
+http://tienskaia-moda  289355
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q35.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q35.result
new file mode 100644
index 00000000000..f31fb6921e8
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q35.result
@@ -0,0 +1,11 @@
+1      URL     c
+1      http://liver.ru/belgorod/page/1006.jки/доп_приборы      3288173
+1      http://kinopoisk.ru     1625250
+1      http://bdsm_po_yers=0&with_video        791465
+1      http://video.yandex     582400
+1      http://smeshariki.ru/region     514984
+1      http://auto_fiat_dlya-bluzki%2F8536.30.18&he=900&with   507995
+1      http://liver.ru/place_rukodel=365115eb7bbb90    359893
+1      http://kinopoisk.ru/vladimir.irr.ru     354690
+1      http://video.yandex.ru/search/?jenre=50&s_yers  318979
+1      http://tienskaia-moda   289355
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q36.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q36.result
new file mode 100644
index 00000000000..15e5e09df7e
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q36.result
@@ -0,0 +1,11 @@
+ClientIP       `ClientIP` - 1  `ClientIP` - 2  `ClientIP` - 3  c
+-39921974      -39921975       -39921976       -39921977       47008
+-1698104457    -1698104458     -1698104459     -1698104460     29121
+-1175819552    -1175819553     -1175819554     -1175819555     25333
+1696638182     1696638181      1696638180      1696638179      20220
+1138507705     1138507704      1138507703      1138507702      15778
+-927025522     -927025523      -927025524      -927025525      12768
+-1262139876    -1262139877     -1262139878     -1262139879     11348
+1740861572     1740861571      1740861570      1740861569      11314
+-807147100     -807147101      -807147102      -807147103      9880
+-631062503     -631062504      -631062505      -631062506      9718
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q37.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q37.result
new file mode 100644
index 00000000000..532a965bfb5
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q37.result
@@ -0,0 +1,11 @@
+URL    PageViews
+http://irr.ru/index.php?showalbum/login-leniya7777294,938303130        102341
+http://komme%2F27.0.1453.116   51218
+http://irr.ru/index.php?showalbum/login-kapusta-advert2668]=0&order_by=0       
18315
+http://irr.ru/index.php?showalbum/login-kapustic/product_name  16461
+http://irr.ru/index.php        12577
+http://irr.ru/index.php?showalbum/login        10880
+http://komme%2F27.0.1453.116 Safari%2F5.0 (compatible; MSIE 9.0;       7627
+http://irr.ru/index.php?showalbum/login-kupalnik       4369
+http://irr.ru/index.php?showalbum/login-kapusta-advert27256.html_params        
4058
+http://komme%2F27.0.1453.116 Safari    3021
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q38.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q38.result
new file mode 100644
index 00000000000..a11e7836e67
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q38.result
@@ -0,0 +1,11 @@
+Title  PageViews
+Тест (Россия) - Яндекс 122407
+Шарарай), Выбрать! - обсуждаются на голд: Шоубиз - Свободная историс   82935
+Приморск - IRR.ru      80958
+Брюки New Era H (Асус) 258 общая выплаток, горшечными  39098
+Теплоску на    23123
+Dave and Hotpoint sport – самые вещие  14329
+AUTO.ria.ua ™ - Аппер  14053
+Приморск (Россия) - Яндекс.Видео       13912
+OWAProfessign), продать        10919
+Труси - Шоубиз 10157
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q39.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q39.result
new file mode 100644
index 00000000000..4f4bd842794
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q39.result
@@ -0,0 +1,11 @@
+URL    PageViews
+http://afisha.yandex.php?id=1620_4_licanel     2
+http://afisha.yandex.php?np=c5c08969   2
+http://afisha.yandex.php?produkty%2Fproduct_name       2
+http://afisha.yandex.php?r=67628569/page=10275793663866        2
+http://afisha.yandex.php?r=788-78087542037     2
+http://afisha.yandex.php?s=4d450&pid   2
+http://afisha.yandex.php?showbiz/photo=0&is_hot        2
+http://afisha.yandex.php?st1=10&category       2
+http://afisha.yandex.php?t=1331623687778       2
+http://afisha.yandex.php?t=740146/     2
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q4.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q4.result
new file mode 100644
index 00000000000..75da030bc83
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q4.result
@@ -0,0 +1,2 @@
+avg(`UserID`)
+2.52895302979023e+18
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q40.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q40.result
new file mode 100644
index 00000000000..fa9c3bd5d64
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q40.result
@@ -0,0 +1,11 @@
+TraficSourceID SearchEngineID  AdvEngineID     Src     Dst     PageViews
+1      0       0       http://mysw.info/node/215455&text       
http://irr.ru/index.php?showalbum/logabass.ru/cation&op_category_id=&auto       
15
+1      0       0       http://mysw.info/node/215455&text       
http://irr.ru/index.php?showalbum/logabass.ru/cation&op_category_id=0&page9/#1440_S_Mitsubishi/196372
   15
+1      0       0       http://mysw.info/node/215455&text       
http://irr.ru/index.php?showalbum/logabass.ru/cation&op_category_id=9584%26pz%3D0%26ntype
       15
+1      0       0       http://mysw.info/node/215455&text       
http://irr.ru/index.php?showalbum/logabass.ru/cation&op_category_id=HOtbySdOiUw&where=all&film/4700
     15
+1      0       0       http://mysw.info/node/215455&text       
http://irr.ru/index.php?showalbum/login-3284][11]=6625f3634571&state=0&expand_search=0&damagecache/wm/2013&price_do=50000&page/1772,903742726108784&op_uid
      15
+1      0       0       http://smeshariki.ru/diary.ru/yandex.ru/credir=1        
http://komme%2F27.0.1453.116    15
+1      0       0       
http://wildberrifiers?year_detailshop/id_art_type=7&s_yers      
http://irr.ru/index.php?showalbum/login 15
+1      0       0       http://yandex.php?city[1]=700003        
http://komme%2F27.0.1453.116    15
+1      0       0       http://yandex.ru/search?q=лавпланется монстружка        
http://irr.ru/index.php?showalbum/login-kupaljinik-2008-g-v-stroika/photo=on&input_bdsmpeople.ru/image&sr=http://lk.wildberries
 15
+1      0       0       http://yandex.ru/search?q=лавпланшеты&source    
http://komme%2F27.0.1453.116    15
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q41.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q41.result
new file mode 100644
index 00000000000..6071842b3a5
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q41.result
@@ -0,0 +1,11 @@
+URLHash        EventDate       PageViews
+7199155066341437901    2013-07-15      27
+8165850906391446088    2013-07-15      27
+-8505838588544217213   2013-07-15      26
+2512899255762264913    2013-07-15      26
+-6048157399675510565   2013-07-15      25
+-6025761452198030778   2013-07-15      25
+-3611962581960090019   2013-07-15      25
+1045132364006275583    2013-07-15      24
+1851128641780263854    2013-07-15      24
+2033248414344857063    2013-07-15      24
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q42.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q42.result
new file mode 100644
index 00000000000..184e5720d2e
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q42.result
@@ -0,0 +1,11 @@
+WindowClientWidth      WindowClientHeight      PageViews
+1771   809     1
+1771   848     1
+1771   1020    1
+1772   532     1
+1772   724     1
+1772   816     1
+1772   878     1
+1774   587     1
+1777   617     1
+1778   560     1
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q43.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q43.result
new file mode 100644
index 00000000000..77eb4537098
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q43.result
@@ -0,0 +1,11 @@
+M      PageViews
+2013-07-15 12:40:00    513
+2013-07-15 12:41:00    457
+2013-07-15 12:42:00    470
+2013-07-15 12:43:00    468
+2013-07-15 12:44:00    453
+2013-07-15 12:45:00    462
+2013-07-15 12:46:00    481
+2013-07-15 12:47:00    458
+2013-07-15 12:48:00    466
+2013-07-15 12:49:00    467
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q5.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q5.result
new file mode 100644
index 00000000000..2fa34e1e17a
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q5.result
@@ -0,0 +1,2 @@
+count(DISTINCT `UserID`)
+17630976
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q6.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q6.result
new file mode 100644
index 00000000000..99d30d41339
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q6.result
@@ -0,0 +1,2 @@
+count(DISTINCT `SearchPhrase`)
+6019103
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q7.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q7.result
new file mode 100644
index 00000000000..8b0c65a2920
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q7.result
@@ -0,0 +1,2 @@
+min(`EventDate`)       max(`EventDate`)
+2013-07-02     2013-07-31
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q8.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q8.result
new file mode 100644
index 00000000000..4333ac4d85c
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q8.result
@@ -0,0 +1,19 @@
+AdvEngineID    count(*)
+2      404602
+27     113167
+13     45631
+45     38960
+44     9730
+3      6896
+62     5266
+52     3554
+50     938
+28     836
+53     350
+25     343
+61     158
+21     38
+42     20
+16     7
+7      3
+22     1
diff --git 
a/regression-test/pipeline/performance/clickbench/query-result-target/doris-q9.result
 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q9.result
new file mode 100644
index 00000000000..289deb1835a
--- /dev/null
+++ 
b/regression-test/pipeline/performance/clickbench/query-result-target/doris-q9.result
@@ -0,0 +1,11 @@
+RegionID       u
+229    2845673
+2      1081016
+208    831676
+169    604583
+184    322661
+158    307152
+34     299479
+55     286525
+107    272448
+42     243181
diff --git a/regression-test/pipeline/performance/compile.sh 
b/regression-test/pipeline/performance/compile.sh
index 9fdb995487f..cf4320f23b1 100644
--- a/regression-test/pipeline/performance/compile.sh
+++ b/regression-test/pipeline/performance/compile.sh
@@ -136,8 +136,11 @@ sudo docker run -i --rm \
                     && export CUSTOM_NPM_REGISTRY=https://registry.npmjs.org \
                     && bash build.sh --fe --be --clean 2>&1 | tee build.log"
 set +x
-succ_symble="BUILD SUCCESS"
-if [[ -d outout ]] && grep "${succ_symble}" 
"${teamcity_build_checkoutDir}"/build.log; then
+set -x
+succ_symble="Successfully build Doris"
+if [[ -d output ]] && grep "${succ_symble}" 
"${teamcity_build_checkoutDir}"/build.log; then
+    echo "INFO: ${succ_symble}"
+else
     echo -e "ERROR: BUILD FAILED"
     exit 1
 fi
diff --git a/regression-test/pipeline/performance/conf/be_custom.conf 
b/regression-test/pipeline/performance/conf/be_custom.conf
index f6ac4564857..0e3904faddf 100644
--- a/regression-test/pipeline/performance/conf/be_custom.conf
+++ b/regression-test/pipeline/performance/conf/be_custom.conf
@@ -16,6 +16,8 @@
 # under the License.
 
 priority_networks=127.0.0.1/24
-storage_root_path=/data/doris-storage
+# master branch, branch_name=master
+# branch-2.0 branch, branch_name=branch20
+storage_root_path=/data/doris-storage-${branch_name}
 
 streaming_load_max_mb=102400
diff --git a/regression-test/pipeline/performance/conf/fe_custom.conf 
b/regression-test/pipeline/performance/conf/fe_custom.conf
index bd679850532..65af05709ca 100644
--- a/regression-test/pipeline/performance/conf/fe_custom.conf
+++ b/regression-test/pipeline/performance/conf/fe_custom.conf
@@ -22,7 +22,8 @@
 #####################################################################
 
 priority_networks=127.0.0.1/24
-meta_dir=/data/doris-meta
+# master branch, branch_name=master
+# branch-2.0 branch, branch_name=branch20
+meta_dir=/data/doris-meta-${branch_name}
 
 stream_load_default_timeout_second=3600
-ignore_unknown_metadata_module=true
diff --git a/regression-test/pipeline/performance/deploy.sh 
b/regression-test/pipeline/performance/deploy.sh
index 5f2e673f040..42626775847 100644
--- a/regression-test/pipeline/performance/deploy.sh
+++ b/regression-test/pipeline/performance/deploy.sh
@@ -29,6 +29,7 @@ else
 fi
 EOF
 
+#####################################################################################
 ## deploy.sh content ##
 
 # shellcheck source=/dev/null
@@ -46,14 +47,13 @@ source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/doris-uti
 if ${DEBUG:-false}; then
     pull_request_num="28431"
     commit_id="b052225cd0a180b4576319b5bd6331218dd0d3fe"
+    target_branch="master"
 fi
 echo "#### Check env"
-if [[ -z "${teamcity_build_checkoutDir}" ||
-    -z "${pull_request_num}" ||
-    -z "${commit_id}" ]]; then
-    echo "ERROR: env teamcity_build_checkoutDir or pull_request_num or 
commit_id not set"
-    exit 1
-fi
+if [[ -z "${teamcity_build_checkoutDir}" ]]; then echo "ERROR: env 
teamcity_build_checkoutDir not set" && exit 1; fi
+if [[ -z "${pull_request_num}" ]]; then echo "ERROR: env pull_request_num not 
set" && exit 1; fi
+if [[ -z "${commit_id}" ]]; then echo "ERROR: env commit_id not set" && exit 
1; fi
+if [[ -z "${target_branch}" ]]; then echo "ERROR: env target_branch not set" 
&& exit 1; fi
 
 echo "#### Deploy Doris ####"
 DORIS_HOME="${teamcity_build_checkoutDir}/output"
@@ -64,16 +64,13 @@ need_backup_doris_logs=false
 echo "#### 1. try to kill old doris process"
 stop_doris
 
+set -e
 echo "#### 2. copy conf from regression-test/pipeline/performance/conf/"
-rm -f "${DORIS_HOME}"/fe/conf/fe_custom.conf 
"${DORIS_HOME}"/be/conf/be_custom.conf
-if [[ -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/fe_custom.conf
 &&
-    -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/be_custom.conf
 ]]; then
-    cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/fe_custom.conf
 "${DORIS_HOME}"/fe/conf/
-    cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/be_custom.conf
 "${DORIS_HOME}"/be/conf/
-else
-    echo "ERROR: doris conf file missing in 
${teamcity_build_checkoutDir}/regression-test/pipeline/performance/conf/"
-    exit 1
-fi
+cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/fe_custom.conf
 "${DORIS_HOME}"/fe/conf/
+cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/be_custom.conf
 "${DORIS_HOME}"/be/conf/
+target_branch="$(echo "${target_branch}" | sed 's| ||g;s|\.||g;s|-||g')" # 
remove space、dot、hyphen from branch name
+sed -i 
"s|^meta_dir=/data/doris-meta-\${branch_name}|meta_dir=/data/doris-meta-${target_branch}|g"
 "${DORIS_HOME}"/fe/conf/fe_custom.conf
+sed -i 
"s|^storage_root_path=/data/doris-storage-\${branch_name}|storage_root_path=/data/doris-storage-${target_branch}|g"
 "${DORIS_HOME}"/be/conf/be_custom.conf
 
 echo "#### 3. start Doris"
 meta_dir=$(get_doris_conf_value "${DORIS_HOME}"/fe/conf/fe_custom.conf 
meta_dir)
diff --git a/regression-test/pipeline/performance/prepare.sh 
b/regression-test/pipeline/performance/prepare.sh
index b3b54b85b28..ee3c8e0a990 100644
--- a/regression-test/pipeline/performance/prepare.sh
+++ b/regression-test/pipeline/performance/prepare.sh
@@ -39,23 +39,23 @@ EOF
 if ${DEBUG:-false}; then
     pull_request_num="28431"
     commit_id_from_trigger="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5"
-    commit_id="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5"
+    commit_id="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5" # teamcity checkout 
commit id
+    target_branch="master"
 fi
 echo "#### Check env"
-if [[ -z "${teamcity_build_checkoutDir}" ||
-    -z "${commit_id_from_trigger}" ||
-    -z ${commit_id:-} ||
-    -z ${pull_request_num:-} ]]; then
-    echo "ERROR: env teamcity_build_checkoutDir or commit_id_from_trigger
-    or commit_id or pull_request_num not set" && exit 1
-fi
+if [[ -z "${teamcity_build_checkoutDir}" ]]; then echo "ERROR: env 
teamcity_build_checkoutDir not set" && exit 1; fi
+if [[ -z "${pull_request_num}" ]]; then echo "ERROR: env pull_request_num not 
set" && exit 1; fi
+if [[ -z "${commit_id_from_trigger}" ]]; then echo "ERROR: env 
commit_id_from_trigger not set" && exit 1; fi
+if [[ -z "${commit_id}" ]]; then echo "ERROR: env commit_id not set" && exit 
1; fi
+if [[ -z "${target_branch}" ]]; then echo "ERROR: env target_branch not set" 
&& exit 1; fi
+
 commit_id_from_checkout=${commit_id}
 
 echo "#### 1. check if need run"
 if [[ "${commit_id_from_trigger}" != "${commit_id_from_checkout}" ]]; then
     echo -e "从触发流水线 -> 流水线开始跑,这个时间段中如果有新commit,
-这时候流水线 checkout 出来的 commit 就不是触发时的传过来的 commit了,
-这种情况不需要跑,预期pr owner会重新触发。"
+这时候流水线 checkout 出来的 commit 就不是触发时的传过来的 commit 了,
+这种情况不需要跑,预期 pr owner 会重新触发。"
     echo -e "ERROR: PR(${pull_request_num}),
     the lastest commit id
     ${commit_id_from_checkout}
@@ -67,6 +67,13 @@ fi
 # shellcheck source=/dev/null
 source "$(bash 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/get-or-set-tmp-env.sh
 'get')"
 if ${skip_pipeline:=false}; then echo "INFO: skip build pipline" && exit 0; 
else echo "INFO: no skip"; fi
+if [[ "${target_branch}" == "master" || "${target_branch}" == "branch-2.0" ]]; 
then
+    echo "INFO: PR target branch ${target_branch} is in (master, branch-2.0)"
+else
+    echo "WARNING: PR target branch ${target_branch} is NOT in (master, 
branch-2.0), skip pipeline."
+    bash 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/get-or-set-tmp-env.sh
 'set' "export skip_pipeline=true"
+    exit 0
+fi
 # shellcheck source=/dev/null
 # _get_pr_changed_files file_changed_performance
 source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/github-utils.sh
@@ -78,6 +85,7 @@ if _get_pr_changed_files "${pull_request_num}"; then
 fi
 
 echo "#### 2. check if tpch depending files exist"
+set -x
 if ! [[ -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-utils.sh &&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/doris-utils.sh 
&&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/github-utils.sh 
&&
@@ -85,6 +93,12 @@ if ! [[ -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-u
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/be_custom.conf
 &&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/custom_env.sh
 &&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/fe_custom.conf
 &&
+    -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/conf/be_custom.conf
 &&
+    -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/conf/fe_custom.conf
 &&
+    -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/conf/opt_session_variables.sql
 &&
+    -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/check-query-result.sh
 &&
+    -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/queries-sort.sql
 &&
+    -d 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/query-result-target/
 &&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/prepare.sh 
&&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/compile.sh 
&&
     -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/deploy.sh 
&&
@@ -94,3 +108,9 @@ if ! [[ -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-u
     -f 
"${teamcity_build_checkoutDir}"/tools/tpcds-tools/bin/run-tpcds-queries.sh ]]; 
then
     echo "ERROR: depending files missing" && exit 1
 fi
+
+echo "#### 3. try to kill old doris process"
+# shellcheck source=/dev/null
+# stop_doris
+source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/doris-utils.sh
+stop_doris
diff --git a/regression-test/pipeline/performance/run-clickbench.sh 
b/regression-test/pipeline/performance/run-clickbench.sh
index 225fa802ec6..1caf0ed55c6 100644
--- a/regression-test/pipeline/performance/run-clickbench.sh
+++ b/regression-test/pipeline/performance/run-clickbench.sh
@@ -45,14 +45,13 @@ source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-utils
 if ${DEBUG:-false}; then
     pull_request_num="28431"
     commit_id="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5"
+    target_branch="master"
 fi
 echo "#### Check env"
-if [[ -z "${teamcity_build_checkoutDir}" ||
-    -z "${pull_request_num}" ||
-    -z "${commit_id}" ]]; then
-    echo "ERROR: env teamcity_build_checkoutDir or pull_request_num or 
commit_id not set"
-    exit 1
-fi
+if [[ -z "${teamcity_build_checkoutDir}" ]]; then echo "ERROR: env 
teamcity_build_checkoutDir not set" && exit 1; fi
+if [[ -z "${pull_request_num}" ]]; then echo "ERROR: env pull_request_num not 
set" && exit 1; fi
+if [[ -z "${commit_id}" ]]; then echo "ERROR: env commit_id not set" && exit 
1; fi
+if [[ -z "${target_branch}" ]]; then echo "ERROR: env target_branch not set" 
&& exit 1; fi
 
 # shellcheck source=/dev/null
 source "$(bash 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/get-or-set-tmp-env.sh
 'get')"
@@ -71,70 +70,39 @@ exit_flag=0
 
     host="127.0.0.1"
     query_port=$(get_doris_conf_value "${DORIS_HOME}"/fe/conf/fe.conf 
query_port)
-    
backup_session_variables_file="${teamcity_build_checkoutDir}/regression-test/pipeline/performance/backup_session_variables_file.sql"
-    
opt_session_variables_file="${teamcity_build_checkoutDir}/regression-test/pipeline/performance/opt_session_variables_file.sql"
-
-    echo "####optimize doris config"
-    echo "
-priority_networks=127.0.0.1/24
-meta_dir=/data/doris-meta
-stream_load_default_timeout_second=3600
-ignore_unknown_metadata_module=true
-enable_full_auto_analyze=false
-" | tee "${DORIS_HOME}"/fe/conf/fe_custom.conf
-
-    echo "
-priority_networks=127.0.0.1/24
-storage_root_path=/data/doris-storage
-load_channel_memory_refresh_sleep_time_ms=1000
-soft_mem_limit_frac=1
-track_new_delete=false
-streaming_load_max_mb=102400
-doris_scanner_thread_pool_thread_num=8
-tc_enable_aggressive_memory_decommit=false
-enable_new_scan_node=false
-#mem_limit=100%
-mem_limit=90%
-#write_buffer_size=1609715200
-write_buffer_size=1209715200
-load_process_max_memory_limit_percent=100
-#load_process_soft_mem_limit_percent=80
-disable_auto_compaction=true
-disable_storage_page_cache=false
-disable_chunk_allocator=false
-enable_simdjson_reader = true
-" | tee "${DORIS_HOME}"/be/conf/be_custom.conf
-
-    opt_session_variables="
-set global exec_mem_limit=34359738368;
-set global parallel_fragment_exec_instance_num=16;
-set global parallel_pipeline_task_num=16;
-set global enable_single_distinct_column_opt=true;
-set global enable_function_pushdown=true;
-set global forbid_unknown_col_stats=false;
-set global runtime_filter_mode=global;
-"
-    echo -e "${opt_session_variables}" | tee "${opt_session_variables_file}"
+    
backup_session_variables_file="${teamcity_build_checkoutDir}/regression-test/pipeline/performance/clickbench/conf/backup_session_variables.sql"
+    
opt_session_variables_file="${teamcity_build_checkoutDir}/regression-test/pipeline/performance/clickbench/conf/opt_session_variables.sql"
 
+    echo "#### 1. backup session variables to file 
${backup_session_variables_file}"
+    if ! restart_doris; then echo "ERROR: Restart doris failed" && exit 1; fi
     backup_session_variables() {
         _IFS="${IFS}"
         IFS=$'\n'
-        for line in ${opt_session_variables}; do
+        while read -r line; do
+            if [[ -z "${line}" || "${line}" == "#"* ]]; then continue; fi
             k="${line/set global /}"
             k="${k%=*}"
             v=$(mysql -h"${host}" -P"${query_port}" -uroot -e"show variables 
like '${k}'\G" | grep " Value: ")
             v="${v/*Value: /}"
             echo "set global ${k}=${v};" >>"${backup_session_variables_file}"
-        done
+        done <"${opt_session_variables_file}"
         IFS="${_IFS}"
     }
     backup_session_variables
-    mysql -h"${host}" -P"${query_port}" -uroot -e"source 
${opt_session_variables_file};"
 
-    echo "#### 1. Restart doris"
+    echo "#### 2. optimize doris config"
+    cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/conf/fe_custom.conf
 "${DORIS_HOME}"/fe/conf/
+    cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/clickbench/conf/be_custom.conf
 "${DORIS_HOME}"/be/conf/
+    target_branch="$(echo "${target_branch}" | sed 's| ||g;s|\.||g;s|-||g')" # 
remove space、dot、hyphen from branch name
+    sed -i 
"s|^meta_dir=/data/doris-meta-\${branch_name}|meta_dir=/data/doris-meta-${target_branch}|g"
 "${DORIS_HOME}"/fe/conf/fe_custom.conf
+    sed -i 
"s|^storage_root_path=/data/doris-storage-\${branch_name}|storage_root_path=/data/doris-storage-${target_branch}|g"
 "${DORIS_HOME}"/be/conf/be_custom.conf
     if ! restart_doris; then echo "ERROR: Restart doris failed" && exit 1; fi
 
-    echo "#### 2. check if need to load data"
+    echo "#### 3. optimize session variables"
+    cat "${opt_session_variables_file}"
+    mysql -h"${host}" -P"${query_port}" -uroot -e"source 
${opt_session_variables_file};"
+
+    echo "#### 4. check data rows"
     data_home="/data/clickbench" # no / at the end
     db_name="clickbench"
     if ! check_clickbench_table_rows "${db_name}"; then
@@ -287,30 +255,32 @@ set global runtime_filter_mode=global;
         data_reload="true"
     fi
 
-    echo "#### 3. run clickbench query"
+    echo "#### 5. run clickbench query"
+    sed -i '/^run_sql \"analyze table hits with sync;\"/d' 
"${teamcity_build_checkoutDir}"/tools/clickbench-tools/run-clickbench-queries.sh
     bash 
"${teamcity_build_checkoutDir}"/tools/clickbench-tools/run-clickbench-queries.sh
     # result.csv 来自 run-clickbench-queries.sh 的产出
     if ! check_clickbench_performance_result result.csv; then exit 1; fi
-    if ! check_clickbench_query_result; then exit 1; fi
+    if ! (cd clickbench && bash check-query-result.sh && cd -); then exit 1; fi
     cold_run_sum=$(awk -F ',' '{sum+=$2} END {print sum}' result.csv)
     best_hot_run_sum=$(awk -F ',' '{if($3<$4){sum+=$3}else{sum+=$4}} END 
{print sum}' result.csv)
-    comment_body="ClickBench test result on commit ${commit_id:-}, data 
reload: ${data_reload:-"false"}
+    comment_body_summary="Total hot run time: ${best_hot_run_sum} s"
+    comment_body_detail="ClickBench test result on commit ${commit_id:-}, data 
reload: ${data_reload:-"false"}
 
 $(sed 's|,|\t|g' result.csv)
 Total cold run time: ${cold_run_sum} s
 Total hot run time: ${best_hot_run_sum} s"
 
-    echo "#### 4. comment result on clickbench"
-    comment_body=$(echo "${comment_body}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g') # 将所有的 Tab字符替换为\t 换行符替换为\n
-    create_an_issue_comment_clickbench "${pull_request_num:-}" 
"${comment_body}"
+    echo "#### 6. comment result on clickbench"
+    comment_body_detail=$(echo "${comment_body_detail}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g') # 将所有的 Tab字符替换为\t 换行符替换为\n
+    create_an_issue_comment_clickbench "${pull_request_num:-}" 
"${comment_body_summary}" "${comment_body_detail}"
     rm -f result.csv
-    echo "INFO: Restore session variables"
+    echo -e "INFO: Restore session variables \n$(cat 
"${backup_session_variables_file}")"
     mysql -h"${host}" -P"${query_port}" -uroot -e "source 
${backup_session_variables_file};"
     rm -f "${backup_session_variables_file}"
 )
 exit_flag="$?"
 
-echo "#### 5. check if need backup doris logs"
+echo "#### 7. check if need backup doris logs"
 if [[ ${exit_flag} != "0" ]]; then
     stop_doris
     print_doris_fe_log
diff --git a/regression-test/pipeline/performance/run-load.sh 
b/regression-test/pipeline/performance/run-load.sh
index 784ac38aafa..47664b5ecf1 100644
--- a/regression-test/pipeline/performance/run-load.sh
+++ b/regression-test/pipeline/performance/run-load.sh
@@ -36,7 +36,7 @@ EOF
 # restart_doris, set_session_variable
 source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/doris-utils.sh
 # shellcheck source=/dev/null
-# create_an_issue_comment
+# create_an_issue_comment_load
 source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/github-utils.sh
 # shellcheck source=/dev/null
 # upload_doris_log_to_oss
@@ -45,14 +45,13 @@ source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-utils
 if ${DEBUG:-false}; then
     pull_request_num="28431"
     commit_id="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5"
+    target_branch="master"
 fi
 echo "#### Check env"
-if [[ -z "${teamcity_build_checkoutDir}" ||
-    -z "${pull_request_num}" ||
-    -z "${commit_id}" ]]; then
-    echo "ERROR: env teamcity_build_checkoutDir or pull_request_num or 
commit_id not set"
-    exit 1
-fi
+if [[ -z "${teamcity_build_checkoutDir}" ]]; then echo "ERROR: env 
teamcity_build_checkoutDir not set" && exit 1; fi
+if [[ -z "${pull_request_num}" ]]; then echo "ERROR: env pull_request_num not 
set" && exit 1; fi
+if [[ -z "${commit_id}" ]]; then echo "ERROR: env commit_id not set" && exit 
1; fi
+if [[ -z "${target_branch}" ]]; then echo "ERROR: env target_branch not set" 
&& exit 1; fi
 
 # shellcheck source=/dev/null
 source "$(bash 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/get-or-set-tmp-env.sh
 'get')"
@@ -77,7 +76,7 @@ exit_flag=0
     shopt -s inherit_errexit
 
     stream_load_json() {
-        echo "#### create table"
+        echo "## create table"
         ddl="
             CREATE TABLE IF NOT EXISTS  hits_json (
                 CounterID INT NOT NULL, 
@@ -191,7 +190,7 @@ exit_flag=0
             PROPERTIES (\"replication_num\"=\"1\");
         "
         ${clt} -D"${DB}" -e"${ddl}"
-        echo "#### load data"
+        echo "## load data"
         if [[ ! -d "${data_home}" ]]; then mkdir -p "${data_home}"; fi
         if [[ ! -f "${data_home}"/hits.json.1000000 ]] || [[ $(wc -c 
"${data_home}"/hits.json.1000000 | awk '{print $1}') != '2358488459' ]]; then
             cd "${data_home}"
@@ -212,7 +211,7 @@ exit_flag=0
         sleep 5
         if [[ $(${clt} -D"${DB}" -e"select count(*) from hits_json" | sed -n 
'2p') != 1000000 ]]; then echo "check load fail..." && return 1; fi
 
-        echo "#### record load test result"
+        echo "## record load test result"
         stream_load_json_size=$(echo "${ret}" | jq '.LoadBytes')
         stream_load_json_time=$(printf "%.0f" "$(echo "scale=1;$(echo "${ret}" 
| jq '.LoadTimeMs')/1000" | bc)")
         stream_load_json_speed=$(echo "${stream_load_json_size} / 1024 / 1024/ 
${stream_load_json_time}" | bc)
@@ -222,7 +221,7 @@ exit_flag=0
     }
 
     stream_load_orc() {
-        echo "#### create table"
+        echo "## create table"
         ddl="
         CREATE TABLE IF NOT EXISTS  hits_orc (
             CounterID INT NOT NULL, 
@@ -336,7 +335,7 @@ exit_flag=0
         PROPERTIES (\"replication_num\"=\"1\");
         "
         ${clt} -D"${DB}" -e"${ddl}"
-        echo "#### load data"
+        echo "## load data"
         if [[ ! -d "${data_home}" ]]; then mkdir -p "${data_home}"; fi
         if [[ ! -f "${data_home}"/hits_0.orc ]] || [[ $(wc -c 
"${data_home}"/hits_0.orc | awk '{print $1}') != '1101869774' ]]; then
             cd "${data_home}"
@@ -355,7 +354,7 @@ exit_flag=0
         sleep 5
         if [[ $(${clt} -D"${DB}" -e"select count(*) from hits_orc" | sed -n 
'2p') != 8800160 ]]; then echo "check load fail..." && return 1; fi
 
-        echo "#### record load test result"
+        echo "## record load test result"
         stream_load_orc_size=$(echo "${ret}" | jq '.LoadBytes')
         stream_load_orc_time=$(printf "%.0f" "$(echo "scale=1;$(echo "${ret}" 
| jq '.LoadTimeMs')/1000" | bc)")
         stream_load_orc_speed=$(echo "${stream_load_orc_size} / 1024 / 1024/ 
${stream_load_orc_time}" | bc)
@@ -365,7 +364,7 @@ exit_flag=0
     }
 
     stream_load_parquet() {
-        echo "#### create table"
+        echo "## create table"
         ddl="
         CREATE TABLE IF NOT EXISTS  hits_parquet (
             CounterID INT NOT NULL, 
@@ -479,7 +478,7 @@ exit_flag=0
         PROPERTIES (\"replication_num\"=\"1\");
         "
         ${clt} -D"${DB}" -e"${ddl}"
-        echo "#### load data"
+        echo "## load data"
         stream_load_parquet_size=0
         stream_load_parquet_time=0
         if [[ ! -d "${data_home}" ]]; then mkdir -p "${data_home}"; fi
@@ -507,7 +506,7 @@ exit_flag=0
         sleep 5
         if [[ $(${clt} -D"${DB}" -e"select count(*) from hits_parquet" | sed 
-n '2p') != 5000000 ]]; then echo "check load fail..." && return 1; fi
 
-        echo "#### record load test result"
+        echo "## record load test result"
         stream_load_parquet_speed=$(echo "${stream_load_parquet_size} / 1024 / 
1024/ ${stream_load_parquet_time}" | bc)
         export stream_load_parquet_size
         export stream_load_parquet_time
@@ -515,7 +514,7 @@ exit_flag=0
     }
 
     insert_into_select() {
-        echo "#### create table"
+        echo "## create table"
         ddl="
         CREATE TABLE IF NOT EXISTS  hits_insert_into_select (
             CounterID INT NOT NULL, 
@@ -630,7 +629,7 @@ exit_flag=0
         "
         ${clt} -D"${DB}" -e"${ddl}"
 
-        echo "#### load data by INSERT INTO SELECT"
+        echo "## load data by INSERT INTO SELECT"
         insert_into_select_time=0
         insert_into_select_rows=10000000
         start=$(date +%s%3N)
@@ -644,7 +643,7 @@ exit_flag=0
         sleep 5
         if [[ $(${clt} -D"${DB}" -e"select count(*) from 
hits_insert_into_select" | sed -n '2p') != "${insert_into_select_rows}" ]]; 
then echo "check load fail..." && return 1; fi
 
-        echo "#### record load test result"
+        echo "## record load test result"
         insert_into_select_speed=$(echo "${insert_into_select_rows} / 1000 / 
${insert_into_select_time}" | bc)
         export insert_into_select_rows
         export insert_into_select_time
@@ -652,9 +651,14 @@ exit_flag=0
     }
 
     echo "#### 1. Restart doris"
+    cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/fe_custom.conf
 "${DORIS_HOME}"/fe/conf/
+    cp -f 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/performance/conf/be_custom.conf
 "${DORIS_HOME}"/be/conf/
+    target_branch="$(echo "${target_branch}" | sed 's| ||g;s|\.||g;s|-||g')" # 
remove space、dot、hyphen from branch name
+    sed -i 
"s|^meta_dir=/data/doris-meta-\${branch_name}|meta_dir=/data/doris-meta-${target_branch}|g"
 "${DORIS_HOME}"/fe/conf/fe_custom.conf
+    sed -i 
"s|^storage_root_path=/data/doris-storage-\${branch_name}|storage_root_path=/data/doris-storage-${target_branch}|g"
 "${DORIS_HOME}"/be/conf/be_custom.conf
     if ! restart_doris; then echo "ERROR: Restart doris failed" && exit 1; fi
 
-    echo "#### 3. run streamload test"
+    echo "#### 2. run load test"
     set_session_variable runtime_filter_mode global
     ${clt} -e "DROP DATABASE IF EXISTS ${DB}" && sleep 1
     ${clt} -e "CREATE DATABASE IF NOT EXISTS ${DB}" && sleep 5
@@ -662,22 +666,28 @@ exit_flag=0
     if ! stream_load_orc; then exit 1; fi
     if ! stream_load_parquet; then exit 1; fi
     if ! insert_into_select; then exit 1; fi
-    if ! check_load_performance; then exit 1; fi
+
+    echo "#### 3. check load performance"
+    if [[ ${stream_load_json_speed} -lt ${stream_load_json_speed_threshold} 
]]; then echo "ERROR: stream_load_json_speed ${stream_load_json_speed} is less 
than the threshold ${stream_load_json_speed_threshold}" && exit 1; fi
+    if [[ ${stream_load_orc_speed} -lt ${stream_load_orc_speed_threshold} ]]; 
then echo "ERROR: stream_load_json_speed ${stream_load_orc_speed} is less than 
the threshold ${stream_load_orc_speed_threshold}" && exit 1; fi
+    if [[ ${stream_load_parquet_speed} -lt 
${stream_load_parquet_speed_threshold} ]]; then echo "ERROR: 
stream_load_json_speed ${stream_load_parquet_speed} is less than the threshold 
${stream_load_parquet_speed_threshold}" && exit 1; fi
+    if [[ ${insert_into_select_speed} -lt 
${insert_into_select_speed_threshold} ]]; then echo "ERROR: 
stream_load_json_speed ${insert_into_select_speed} is less than the threshold 
${insert_into_select_speed_threshold}" && exit 1; fi
 
     echo "#### 4. comment result on tpch"
-    comment_body="Load test result on commit ${commit_id:-} with default conf 
and session variables"
+    comment_body="Load test result on commit ${commit_id:-} with default 
session variables"
     if [[ -n ${stream_load_json_time} ]]; then comment_body="${comment_body}\n 
stream load json:         ${stream_load_json_time} seconds loaded 
${stream_load_json_size} Bytes, about ${stream_load_json_speed} MB/s"; fi
     if [[ -n ${stream_load_orc_time} ]]; then comment_body="${comment_body}\n 
stream load orc:          ${stream_load_orc_time} seconds loaded 
${stream_load_orc_size} Bytes, about ${stream_load_orc_speed} MB/s"; fi
-    if [[ -n ${stream_load_parquet_time} ]]; then 
comment_body="${comment_body}\n stream load parquet:          
${stream_load_parquet_time} seconds loaded ${stream_load_parquet_size} Bytes, 
about ${stream_load_parquet_speed} MB/s"; fi
-    if [[ -n ${insert_into_select_time} ]]; then 
comment_body="${comment_body}\n insert into select:          
${insert_into_select_time} seconds inserted ${insert_into_select_rows} Rows, 
about ${insert_into_select_speed}K ops/s"; fi
+    if [[ -n ${stream_load_parquet_time} ]]; then 
comment_body="${comment_body}\n stream load parquet:      
${stream_load_parquet_time} seconds loaded ${stream_load_parquet_size} Bytes, 
about ${stream_load_parquet_speed} MB/s"; fi
+    if [[ -n ${insert_into_select_time} ]]; then 
comment_body="${comment_body}\n insert into select:       
${insert_into_select_time} seconds inserted ${insert_into_select_rows} Rows, 
about ${insert_into_select_speed}K ops/s"; fi
 
     comment_body=$(echo "${comment_body}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g') # 将所有的 Tab字符替换为\t 换行符替换为\n
-    create_an_issue_comment_tpch "${pull_request_num:-}" "${comment_body}"
+    create_an_issue_comment_load "${pull_request_num:-}" "${comment_body}"
 )
 exit_flag="$?"
 
 echo "#### 5. check if need backup doris logs"
 if [[ ${exit_flag} != "0" ]]; then
+    stop_doris
     print_doris_fe_log
     print_doris_be_log
     if file_name=$(archive_doris_logs 
"${pull_request_num}_${commit_id}_doris_logs.tar.gz"); then
diff --git a/regression-test/pipeline/performance/run-tpcds.sh 
b/regression-test/pipeline/performance/run-tpcds.sh
index 0684454ca49..bff7a9872d1 100644
--- a/regression-test/pipeline/performance/run-tpcds.sh
+++ b/regression-test/pipeline/performance/run-tpcds.sh
@@ -45,15 +45,14 @@ source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-utils
 if ${DEBUG:-false}; then
     pull_request_num="28431"
     commit_id="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5"
+    target_branch="master"
     SF="1"
 fi
 echo "#### Check env"
-if [[ -z "${teamcity_build_checkoutDir}" ||
-    -z "${pull_request_num}" ||
-    -z "${commit_id}" ]]; then
-    echo "ERROR: env teamcity_build_checkoutDir or pull_request_num or 
commit_id not set"
-    exit 1
-fi
+if [[ -z "${teamcity_build_checkoutDir}" ]]; then echo "ERROR: env 
teamcity_build_checkoutDir not set" && exit 1; fi
+if [[ -z "${pull_request_num}" ]]; then echo "ERROR: env pull_request_num not 
set" && exit 1; fi
+if [[ -z "${commit_id}" ]]; then echo "ERROR: env commit_id not set" && exit 
1; fi
+if [[ -z "${target_branch}" ]]; then echo "ERROR: env target_branch not set" 
&& exit 1; fi
 
 # shellcheck source=/dev/null
 source "$(bash 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/get-or-set-tmp-env.sh
 'get')"
@@ -131,14 +130,16 @@ exit_flag=0
     if ! check_tpcds_result 
"${teamcity_build_checkoutDir}"/run-tpcds-queries.log; then exit 1; fi
     line_end=$(sed -n '/^Total hot run time/=' 
"${teamcity_build_checkoutDir}"/run-tpcds-queries.log)
     line_begin=$((line_end - 100))
-    comment_body="TPC-DS sf${SF} test result on commit ${commit_id:-}, data 
reload: ${data_reload:-"false"}
+    comment_body_summary="$(sed -n "${line_end}p" 
"${teamcity_build_checkoutDir}"/run-tpcds-queries.log)"
+    comment_body_detail="TPC-DS sf${SF} test result on commit ${commit_id:-}, 
data reload: ${data_reload:-"false"}
 
 run tpcds-sf${SF} query with default conf and session variables
 $(sed -n "${line_begin},${line_end}p" 
"${teamcity_build_checkoutDir}"/run-tpcds-queries.log)"
 
     echo "#### 4. comment result on tpcds"
-    comment_body=$(echo "${comment_body}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g') # 将所有的 Tab字符替换为\t 换行符替换为\n
-    create_an_issue_comment_tpcds "${pull_request_num:-}" "${comment_body}"
+    comment_body_summary=$(echo "${comment_body_summary}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g') # 将所有的 Tab字符替换为\t 换行符替换为\n
+    comment_body_detail=$(echo "${comment_body_detail}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g')   # 将所有的 Tab字符替换为\t 换行符替换为\n
+    create_an_issue_comment_tpcds "${pull_request_num:-}" 
"${comment_body_summary}" "${comment_body_detail}"
     rm -f result.csv
 )
 exit_flag="$?"
diff --git a/regression-test/pipeline/performance/run-tpch.sh 
b/regression-test/pipeline/performance/run-tpch.sh
index d3e408eef86..a8f5dcdd30f 100644
--- a/regression-test/pipeline/performance/run-tpch.sh
+++ b/regression-test/pipeline/performance/run-tpch.sh
@@ -45,15 +45,14 @@ source 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/oss-utils
 if ${DEBUG:-false}; then
     pull_request_num="28431"
     commit_id="5f5c4c80564c76ff4267fc4ce6a5408498ed1ab5"
+    target_branch="master"
     SF="1"
 fi
 echo "#### Check env"
-if [[ -z "${teamcity_build_checkoutDir}" ||
-    -z "${pull_request_num}" ||
-    -z "${commit_id}" ]]; then
-    echo "ERROR: env teamcity_build_checkoutDir or pull_request_num or 
commit_id not set"
-    exit 1
-fi
+if [[ -z "${teamcity_build_checkoutDir}" ]]; then echo "ERROR: env 
teamcity_build_checkoutDir not set" && exit 1; fi
+if [[ -z "${pull_request_num}" ]]; then echo "ERROR: env pull_request_num not 
set" && exit 1; fi
+if [[ -z "${commit_id}" ]]; then echo "ERROR: env commit_id not set" && exit 
1; fi
+if [[ -z "${target_branch}" ]]; then echo "ERROR: env target_branch not set" 
&& exit 1; fi
 
 # shellcheck source=/dev/null
 source "$(bash 
"${teamcity_build_checkoutDir}"/regression-test/pipeline/common/get-or-set-tmp-env.sh
 'get')"
@@ -123,7 +122,8 @@ exit_flag=0
     if ! check_tpch_result 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log; then exit 1; fi
     line_end=$(sed -n '/^Total hot run time/=' 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log)
     line_begin=$((line_end - 23))
-    comment_body="Tpch sf${SF} test result on commit ${commit_id:-}, data 
reload: ${data_reload:-"false"}
+    comment_body_summary="$(sed -n "${line_end}p" 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log)"
+    comment_body_detail="Tpch sf${SF} test result on commit ${commit_id:-}, 
data reload: ${data_reload:-"false"}
 
 ------ Round 1 ----------------------------------
 $(sed -n "${line_begin},${line_end}p" 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log)"
@@ -134,14 +134,15 @@ $(sed -n "${line_begin},${line_end}p" 
"${teamcity_build_checkoutDir}"/run-tpch-q
     if ! grep '^Total hot run time' 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log >/dev/null; then exit 1; fi
     line_end=$(sed -n '/^Total hot run time/=' 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log)
     line_begin=$((line_end - 23))
-    comment_body="${comment_body}
+    comment_body_detail="${comment_body_detail}
 
 ----- Round 2, with runtime_filter_mode=off -----
 $(sed -n "${line_begin},${line_end}p" 
"${teamcity_build_checkoutDir}"/run-tpch-queries.log)"
 
     echo "#### 5. comment result on tpch"
-    comment_body=$(echo "${comment_body}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g') # 将所有的 Tab字符替换为\t 换行符替换为\n
-    create_an_issue_comment_tpch "${pull_request_num:-}" "${comment_body}"
+    comment_body_summary="$(echo "${comment_body_summary}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g')" # 将所有的 Tab字符替换为\t 换行符替换为\n
+    comment_body_detail="$(echo "${comment_body_detail}" | sed -e 
':a;N;$!ba;s/\t/\\t/g;s/\n/\\n/g')"   # 将所有的 Tab字符替换为\t 换行符替换为\n
+    create_an_issue_comment_tpch "${pull_request_num:-}" 
"${comment_body_summary}" "${comment_body_detail}"
     rm -f result.csv
 )
 exit_flag="$?"


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to