percentile.sim 2.4 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/exec.sh -n dnode1 -s start
sql connect

$dbPrefix = m_pe_db
$tbPrefix = m_pe_tb
$mtPrefix = m_pe_mt
$tbNum = 10
$rowNum = 20
$totalNum = 200

print =============== step1
$i = 0
$db = $dbPrefix . $i
$mt = $mtPrefix . $i

sql drop database $db -x step1
step1:
sql create database $db
sql use $db
sql create table $mt (ts timestamp, tbcol int) TAGS(tgcol int)

$i = 0
while $i < $tbNum
  $tb = $tbPrefix . $i
  sql create table $tb using $mt tags( $i )
G
Ganlin Zhao 已提交
28

29 30 31 32 33
  $x = 0
  while $x < $rowNum
    $cc = $x * 60000
    $ms = 1601481600000 + $cc

G
Ganlin Zhao 已提交
34
    sql insert into $tb values ($ms , $x )
35
    $x = $x + 1
G
Ganlin Zhao 已提交
36 37
  endw

38
  $i = $i + 1
G
Ganlin Zhao 已提交
39
endw
40 41 42 43 44 45 46

print =============== step2
$i = 1
$tb = $tbPrefix . $i

sql select percentile(tbcol, 10) from $tb
print ===> $data00
G
Ganlin Zhao 已提交
47
if $data00 != 1.900000000 then
48 49 50 51 52
  return -1
endi

sql select percentile(tbcol, 20) from $tb
print ===> $data00
G
Ganlin Zhao 已提交
53
if $data00 != 3.800000000 then
54 55 56 57 58
  return -1
endi

sql select percentile(tbcol, 100) from $tb
print ===> $data00
G
Ganlin Zhao 已提交
59
if $data00 != 19.000000000 then
60 61 62 63 64 65 66 67 68 69 70 71 72
  return -1
endi

sql select percentile(tbcol, 110) from $tb -x step2
  return -1
step2:

print =============== step3
$cc = 4 * 60000
$ms = 1601481600000 + $cc

sql select percentile(tbcol, 1) from $tb where ts > $ms
print ===> $data00
G
Ganlin Zhao 已提交
73
if $data00 != 5.140000000 then
74 75 76 77 78 79 80 81
  return -1
endi

$cc = 4 * 60000
$ms = 1601481600000 + $cc

sql select percentile(tbcol, 5) from $tb where ts > $ms
print ===> $data00
G
Ganlin Zhao 已提交
82
if $data00 != 5.700000000 then
83 84 85 86 87 88 89 90
  return -1
endi

$cc = 4 * 60000
$ms = 1601481600000 + $cc

sql select percentile(tbcol, 0) from $tb where ts > $ms
print ===> $data00
G
Ganlin Zhao 已提交
91
if $data00 != 5.000000000 then
92 93 94 95 96 97 98 99 100
  return -1
endi

print =============== step4
$cc = 4 * 60000
$ms = 1601481600000 + $cc

sql select percentile(tbcol, 1) as c from $tb where ts > $ms
print ===> $data00
G
Ganlin Zhao 已提交
101
if $data00 != 5.140000000 then
102 103 104 105 106 107 108 109
  return -1
endi

$cc = 4 * 60000
$ms = 1601481600000 + $cc

sql select percentile(tbcol, 5) as c from $tb where ts > $ms
print ===> $data00
G
Ganlin Zhao 已提交
110
if $data00 != 5.700000000 then
111 112 113 114 115 116 117 118
  return -1
endi

$cc = 4 * 60000
$ms = 1601481600000 + $cc

sql select percentile(tbcol, 0) as c from $tb where ts > $ms
print ===> $data00
G
Ganlin Zhao 已提交
119
if $data00 != 5.000000000 then
120 121 122 123 124
  return -1
endi

print =============== clear
sql drop database $db
X
Xiaoyu Wang 已提交
125
sql select * from information_schema.ins_databases
G
Ganlin Zhao 已提交
126
if $rows != 2 then
127 128 129
  return -1
endi

G
Ganlin Zhao 已提交
130
system sh/exec.sh -n dnode1 -s stop -x SIGINT