[ci](perf) integration clickbench test into new performance pipeline (#29429)

This commit is contained in:
Dongyang Li
2024-01-05 22:29:02 +08:00
committed by GitHub
parent 88323c73fd
commit 0ae449f732
60 changed files with 717 additions and 155 deletions

View File

@ -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"

View File

@ -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="

View File

@ -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}
\`\`\`

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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;

View File

@ -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,WindowClientWidth,WindowClientHeight,ClientTimeZone,ClientEventTime,SilverlightVersion1,SilverlightVersion2,SilverlightVersion3,SilverlightVersion4,PageCharset,CodeVersion,IsLink,IsDownload,IsNotBounce,FUniqID,OriginalURL,HID,IsOldCounter,IsEvent,IsParameter,DontCountHits,WithHash,HitColor,LocalEventTime,Age,Sex,Income,Interests,Robotness,RemoteIP,WindowName,OpenerName,HistoryLength,BrowserLanguage,BrowserCountry,SocialNetwork,SocialAction,HTTPError,SendTiming,DNSTiming,ConnectTiming,ResponseStartTiming,ResponseEndTiming,FetchTiming,SocialSourceNetworkID,SocialSourcePage,ParamPrice,ParamOrderID,ParamCurrency,ParamCurrencyID,OpenstatServiceName,OpenstatCampaignID,OpenstatAdID,OpenstatSourceID,UTMSource,UTMMedium,UTMCampaign,UTMContent,UTMTerm,FromTag,HasGCLID,RefererHash,URLHash,CLID FROM hits WHERE URL LIKE '%google%' ORDER BY EventTime LIMIT 10;
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(ResolutionWidth + 18), SUM(ResolutionWidth + 19), SUM(ResolutionWidth + 20), SUM(ResolutionWidth + 21), SUM(ResolutionWidth + 22), SUM(ResolutionWidth + 23), SUM(ResolutionWidth + 24), SUM(ResolutionWidth + 25), SUM(ResolutionWidth + 26), SUM(ResolutionWidth + 27), SUM(ResolutionWidth + 28), SUM(ResolutionWidth + 29), SUM(ResolutionWidth + 30), SUM(ResolutionWidth + 31), SUM(ResolutionWidth + 32), SUM(ResolutionWidth + 33), SUM(ResolutionWidth + 34), SUM(ResolutionWidth + 35), SUM(ResolutionWidth + 36), SUM(ResolutionWidth + 37), SUM(ResolutionWidth + 38), SUM(ResolutionWidth + 39), SUM(ResolutionWidth + 40), SUM(ResolutionWidth + 41), SUM(ResolutionWidth + 42), SUM(ResolutionWidth + 43), SUM(ResolutionWidth + 44), SUM(ResolutionWidth + 45), SUM(ResolutionWidth + 46), SUM(ResolutionWidth + 47), SUM(ResolutionWidth + 48), SUM(ResolutionWidth + 49), SUM(ResolutionWidth + 50), SUM(ResolutionWidth + 51), SUM(ResolutionWidth + 52), SUM(ResolutionWidth + 53), SUM(ResolutionWidth + 54), SUM(ResolutionWidth + 55), SUM(ResolutionWidth + 56), SUM(ResolutionWidth + 57), SUM(ResolutionWidth + 58), SUM(ResolutionWidth + 59), SUM(ResolutionWidth + 60), SUM(ResolutionWidth + 61), SUM(ResolutionWidth + 62), SUM(ResolutionWidth + 63), SUM(ResolutionWidth + 64), SUM(ResolutionWidth + 65), SUM(ResolutionWidth + 66), SUM(ResolutionWidth + 67), SUM(ResolutionWidth + 68), SUM(ResolutionWidth + 69), SUM(ResolutionWidth + 70), SUM(ResolutionWidth + 71), SUM(ResolutionWidth + 72), SUM(ResolutionWidth + 73), SUM(ResolutionWidth + 74), SUM(ResolutionWidth + 75), SUM(ResolutionWidth + 76), SUM(ResolutionWidth + 77), SUM(ResolutionWidth + 78), SUM(ResolutionWidth + 79), SUM(ResolutionWidth + 80), SUM(ResolutionWidth + 81), SUM(ResolutionWidth + 82), SUM(ResolutionWidth + 83), SUM(ResolutionWidth + 84), SUM(ResolutionWidth + 85), SUM(ResolutionWidth + 86), SUM(ResolutionWidth + 87), SUM(ResolutionWidth + 88), SUM(ResolutionWidth + 89) FROM hits;
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;

View File

@ -0,0 +1,2 @@
count(*)
99997497

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,11 @@
SearchPhrase c
карелки 70263
албатрутдин 34675
смотреть онлайн 24580
смотреть онлайн бесплатно 21647
смотреть 19707
мангу в зарабей грама 19195
дружке помещение 17284
galaxy table 16746
экзоидные 16620
сколько мытищи 12317

View File

@ -0,0 +1,11 @@
SearchPhrase u
карелки 23673
смотреть онлайн 19747
албатрутдин 18394
смотреть онлайн бесплатно 17553
смотреть 14603
экзоидные 14529
мангу в зарабей грама 14198
сколько мытищи 9007
дружке помещение 8792
комбинирование смотреть 7572

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,2 @@
count(*)
630500

View File

@ -0,0 +1,5 @@
UserID
435090932899640449
435090932899640449
435090932899640449
435090932899640449

View File

@ -0,0 +1,2 @@
count(*)
15911

View File

@ -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

View File

@ -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

View File

@ -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 WindowClientWidth WindowClientHeight ClientTimeZone ClientEventTime SilverlightVersion1 SilverlightVersion2 SilverlightVersion3 SilverlightVersion4 PageCharset CodeVersion IsLink IsDownload IsNotBounce FUniqID OriginalURL HID IsOldCounter IsEvent IsParameter DontCountHits WithHash HitColor LocalEventTime Age Sex Income Interests Robotness RemoteIP WindowName OpenerName HistoryLength BrowserLanguage BrowserCountry SocialNetwork SocialAction HTTPError SendTiming DNSTiming ConnectTiming ResponseStartTiming ResponseEndTiming FetchTiming SocialSourceNetworkID SocialSourcePage ParamPrice ParamOrderID ParamCurrency ParamCurrencyID OpenstatServiceName OpenstatCampaignID OpenstatAdID OpenstatSourceID UTMSource UTMMedium UTMCampaign UTMContent UTMTerm FromTag HasGCLID RefererHash URLHash CLID
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 S0 �\\f 0 0 0 0 445 1234 0 0 0 NH 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 S0 �\\f 0 0 0 0 0 16 0 0 0 NH 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 h1 0 0 0 0 0 0 0 0 0 NH 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 1 3 11237 31 1870660671 -1 -1 -1 E3 _i 0 0 0 0 0 0 0 0 0 NH 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 5 2013-07-02 02:35:42 31 2 3 694 57 1448806868 -1 -1 -1 E3 _i 0 0 0 3 345 147 239 0 0 NH 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:12 4 1 15738 0 windows-1251;charset 1 0 0 0 8007561756096276896 1034507462 0 0 0 0 0 5 2013-07-02 10:03:56 0 0 0 0 0 2016848722 -1 -1 -1 S0 h1 0 0 0 0 0 0 0 0 0 NH 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 2001459352 -1 -1 -1 S0 �\\f 0 0 0 0 0 0 0 0 0 NH 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 -1 -1 S0 �\\f 0 0 0 0 0 0 0 0 0 NH 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 1972 778 135 2013-07-01 21:05:07 4 1 16561 0 windows 1601 0 0 0 6494516778257365839 393719418 0 0 0 0 0 5 2013-07-02 16:28:10 31 2 2 14851 1 -1016483843 61823 -1 1 S0 �\\f 0 0 0 0 0 0 0 0 0 NH 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

View File

@ -0,0 +1,11 @@
SearchPhrase
фильм небольшой бизнеса североятно
симптомы регистратов
ночно китая женщины
galaxy s4 zoom фильм
слон.руб., д. а.л. конфигурды по оргатства мультет
скачать читалию в духовке
расписание мультиварка для
отдыха чем прокат
компьютерапии серия нарий
брита ганам котлы на шерлок

View File

@ -0,0 +1,11 @@
SearchPhrase
береж
за русский стил видео какой
завод тандалищные прода
заочное по земли в обрезни и метро
заочное сад цены нарощения музыка визу
зве
земные огурцы раб
золотой сайт samsung
прав
светы женске 2 сезон

View File

@ -0,0 +1,11 @@
SearchPhrase
galaxy s4 zoom фильм
ночно китая женщины
симптомы регистратов
фильм небольшой бизнеса североятно
авом констеть ребенка краево
анапа оперевянные волшебную
брита ганам котлы на шерлок
компьютерапии серия нарий
отдыха чем прокат
расписание мультиварка для

View File

@ -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

View File

@ -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/

View File

@ -0,0 +1,2 @@
sum(`AdvEngineID`) count(*) avg(`ResolutionWidth`)
7280088 99997497 1513.4879349030107

View File

@ -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) sum(`ResolutionWidth` + 18) sum(`ResolutionWidth` + 19) sum(`ResolutionWidth` + 20) sum(`ResolutionWidth` + 21) sum(`ResolutionWidth` + 22) sum(`ResolutionWidth` + 23) sum(`ResolutionWidth` + 24) sum(`ResolutionWidth` + 25) sum(`ResolutionWidth` + 26) sum(`ResolutionWidth` + 27) sum(`ResolutionWidth` + 28) sum(`ResolutionWidth` + 29) sum(`ResolutionWidth` + 30) sum(`ResolutionWidth` + 31) sum(`ResolutionWidth` + 32) sum(`ResolutionWidth` + 33) sum(`ResolutionWidth` + 34) sum(`ResolutionWidth` + 35) sum(`ResolutionWidth` + 36) sum(`ResolutionWidth` + 37) sum(`ResolutionWidth` + 38) sum(`ResolutionWidth` + 39) sum(`ResolutionWidth` + 40) sum(`ResolutionWidth` + 41) sum(`ResolutionWidth` + 42) sum(`ResolutionWidth` + 43) sum(`ResolutionWidth` + 44) sum(`ResolutionWidth` + 45) sum(`ResolutionWidth` + 46) sum(`ResolutionWidth` + 47) sum(`ResolutionWidth` + 48) sum(`ResolutionWidth` + 49) sum(`ResolutionWidth` + 50) sum(`ResolutionWidth` + 51) sum(`ResolutionWidth` + 52) sum(`ResolutionWidth` + 53) sum(`ResolutionWidth` + 54) sum(`ResolutionWidth` + 55) sum(`ResolutionWidth` + 56) sum(`ResolutionWidth` + 57) sum(`ResolutionWidth` + 58) sum(`ResolutionWidth` + 59) sum(`ResolutionWidth` + 60) sum(`ResolutionWidth` + 61) sum(`ResolutionWidth` + 62) sum(`ResolutionWidth` + 63) sum(`ResolutionWidth` + 64) sum(`ResolutionWidth` + 65) sum(`ResolutionWidth` + 66) sum(`ResolutionWidth` + 67) sum(`ResolutionWidth` + 68) sum(`ResolutionWidth` + 69) sum(`ResolutionWidth` + 70) sum(`ResolutionWidth` + 71) sum(`ResolutionWidth` + 72) sum(`ResolutionWidth` + 73) sum(`ResolutionWidth` + 74) sum(`ResolutionWidth` + 75) sum(`ResolutionWidth` + 76) sum(`ResolutionWidth` + 77) sum(`ResolutionWidth` + 78) sum(`ResolutionWidth` + 79) sum(`ResolutionWidth` + 80) sum(`ResolutionWidth` + 81) sum(`ResolutionWidth` + 82) sum(`ResolutionWidth` + 83) sum(`ResolutionWidth` + 84) sum(`ResolutionWidth` + 85) sum(`ResolutionWidth` + 86) sum(`ResolutionWidth` + 87) sum(`ResolutionWidth` + 88) sum(`ResolutionWidth` + 89)
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 155044912619 155144910116 155244907613 155344905110 155444902607 155544900104 155644897601 155744895098 155844892595 155944890092 156044887589 156144885086 156244882583 156344880080 156444877577 156544875074 156644872571 156744870068 156844867565 156944865062 157044862559 157144860056 157244857553 157344855050 157444852547 157544850044 157644847541 157744845038 157844842535 157944840032 158044837529 158144835026 158244832523 158344830020 158444827517 158544825014 158644822511 158744820008 158844817505 158944815002 159044812499 159144809996 159244807493 159344804990 159444802487 159544799984 159644797481 159744794978 159844792475 159944789972 160044787469 160144784966 160244782463

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,2 @@
avg(`UserID`)
2.52895302979023e+18

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,2 @@
count(DISTINCT `UserID`)
17630976

View File

@ -0,0 +1,2 @@
count(DISTINCT `SearchPhrase`)
6019103

View File

@ -0,0 +1,2 @@
min(`EventDate`) max(`EventDate`)
2013-07-02 2013-07-31

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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="$?"

View File

@ -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="$?"