Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Tonvia
TDengine
提交
cf9ba60e
T
TDengine
项目概览
Tonvia
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
cf9ba60e
编写于
9月 21, 2020
作者:
Y
yihaoDeng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
support option to db
上级
4209f666
变更
7
展开全部
显示空白变更内容
内联
并排
Showing
7 changed file
with
1629 addition
and
2279 deletion
+1629
-2279
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+1
-0
src/inc/ttokendef.h
src/inc/ttokendef.h
+206
-205
src/query/inc/qSqlparser.h
src/query/inc/qSqlparser.h
+1
-0
src/query/inc/sql.y
src/query/inc/sql.y
+3
-0
src/query/src/qTokenizer.c
src/query/src/qTokenizer.c
+2
-1
src/query/src/sql.c
src/query/src/sql.c
+1345
-2073
tests/pytest/alter/db_update_options.py
tests/pytest/alter/db_update_options.py
+71
-0
未找到文件。
src/client/src/tscSQLParser.c
浏览文件 @
cf9ba60e
...
...
@@ -5183,6 +5183,7 @@ static void setCreateDBOption(SCMCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) {
pMsg
->
replications
=
pCreateDb
->
replica
;
pMsg
->
quorum
=
pCreateDb
->
quorum
;
pMsg
->
ignoreExist
=
pCreateDb
->
ignoreExists
;
pMsg
->
update
=
pCreateDb
->
update
;
}
int32_t
parseCreateDBOptions
(
SSqlCmd
*
pCmd
,
SCreateDBInfo
*
pCreateDbSql
)
{
...
...
src/inc/ttokendef.h
浏览文件 @
cf9ba60e
...
...
@@ -16,6 +16,7 @@
#ifndef TDENGINE_TTOKENDEF_H
#define TDENGINE_TTOKENDEF_H
#define TK_ID 1
#define TK_BOOL 2
#define TK_TINYINT 3
...
...
@@ -113,115 +114,115 @@
#define TK_FSYNC 95
#define TK_COMP 96
#define TK_PRECISION 97
#define TK_
LP
98
#define TK_
RP
99
#define TK_
TAGS
100
#define TK_
USING
101
#define TK_
AS
102
#define TK_
COMMA
103
#define TK_
NULL
104
#define TK_
SELECT
105
#define TK_
UNION
106
#define TK_
ALL
107
#define TK_
FROM
108
#define TK_
VARIABLE
109
#define TK_
INTERVAL
110
#define TK_
FILL
111
#define TK_
SLIDING
112
#define TK_
ORDER
113
#define TK_
BY
114
#define TK_
ASC
115
#define TK_
DESC
116
#define TK_
GROUP
117
#define TK_
HAVING
118
#define TK_
LIMIT
119
#define TK_
OFFSET
120
#define TK_
SLIMI
T 121
#define TK_S
OFFSET
122
#define TK_
WHERE
123
#define TK_
NOW
124
#define TK_
RESET
125
#define TK_
QUERY
126
#define TK_
ADD
127
#define TK_
COLUMN
128
#define TK_
TAG
129
#define TK_
CHANGE
130
#define TK_
SET
131
#define TK_
KILL
132
#define TK_
CONNECTION
133
#define TK_
STREAM
134
#define TK_
COLON
135
#define TK_
ABORT
136
#define TK_A
FTER
137
#define TK_A
TTACH
138
#define TK_
BEFORE
139
#define TK_BE
GIN
140
#define TK_
CASCADE
141
#define TK_C
LUSTER
142
#define TK_C
ONFLICT
143
#define TK_CO
PY
144
#define TK_
DEFERRED
145
#define TK_DE
LIMITERS
146
#define TK_DE
TACH
147
#define TK_
EACH
148
#define TK_E
ND
149
#define TK_E
XPLAIN
150
#define TK_
FAIL
151
#define TK_F
OR
152
#define TK_
IGNORE
153
#define TK_I
MMEDIATE
154
#define TK_I
NITIALLY
155
#define TK_IN
STEAD
156
#define TK_
MATCH
157
#define TK_
KEY
158
#define TK_
OF
159
#define TK_
RAISE
160
#define TK_R
EPLACE
161
#define TK_RE
STRICT
162
#define TK_R
OW
163
#define TK_
STATEMENT
164
#define TK_
TRIGGER
165
#define TK_
VIEW
166
#define TK_
COUNT
167
#define TK_
SUM
168
#define TK_
AVG
169
#define TK_
MIN
170
#define TK_M
AX
171
#define TK_
FIRST
172
#define TK_
LAST
173
#define TK_
TOP
174
#define TK_
BOTTOM
175
#define TK_
STDDEV
176
#define TK_
PERCENTILE
177
#define TK_
APERCENTILE
178
#define TK_
LEASTSQUARES
179
#define TK_
HISTOGRAM
180
#define TK_
DIFF
181
#define TK_
SPREAD
182
#define TK_
TWA
183
#define TK_
INTERP
184
#define TK_
LAST_ROW
185
#define TK_
RATE
186
#define TK_
IRATE
187
#define TK_
SUM_RATE
188
#define TK_SUM_
IRATE
189
#define TK_
AVG_RATE
190
#define TK_AVG_
IRATE
191
#define TK_
TBID
192
#define TK_
SEMI
193
#define TK_
NONE
194
#define TK_
PREV
195
#define TK_
LINEAR
196
#define TK_
IMPORT
197
#define TK_
METRIC
198
#define TK_
TBNAME
199
#define TK_
JOIN
200
#define TK_
METRICS
201
#define TK_
STABLE
202
#define TK_
INSERT
203
#define TK_IN
TO
204
#define TK_
VALUES
205
#define TK_
UPDATE
98
#define TK_
LP
99
#define TK_
RP
100
#define TK_
TAGS
101
#define TK_
USING
102
#define TK_
AS
103
#define TK_
COMMA
104
#define TK_
NULL
105
#define TK_
SELECT
106
#define TK_
UNION
107
#define TK_
ALL
108
#define TK_
FROM
109
#define TK_
VARIABLE
110
#define TK_
INTERVAL
111
#define TK_
FILL
112
#define TK_
SLIDING
113
#define TK_
ORDER
114
#define TK_
BY
115
#define TK_
ASC
116
#define TK_
DESC
117
#define TK_
GROUP
118
#define TK_
HAVING
119
#define TK_
LIMIT
120
#define TK_
OFFSE
T 121
#define TK_S
LIMIT
122
#define TK_
SOFFSET
123
#define TK_
WHERE
124
#define TK_
NOW
125
#define TK_
RESET
126
#define TK_
QUERY
127
#define TK_
ADD
128
#define TK_
COLUMN
129
#define TK_
TAG
130
#define TK_
CHANGE
131
#define TK_
SET
132
#define TK_
KILL
133
#define TK_
CONNECTION
134
#define TK_
STREAM
135
#define TK_
COLON
136
#define TK_A
BORT
137
#define TK_A
FTER
138
#define TK_
ATTACH
139
#define TK_BE
FORE
140
#define TK_
BEGIN
141
#define TK_C
ASCADE
142
#define TK_C
LUSTER
143
#define TK_CO
NFLICT
144
#define TK_
COPY
145
#define TK_DE
FERRED
146
#define TK_DE
LIMITERS
147
#define TK_
DETACH
148
#define TK_E
ACH
149
#define TK_E
ND
150
#define TK_
EXPLAIN
151
#define TK_F
AIL
152
#define TK_
FOR
153
#define TK_I
GNORE
154
#define TK_I
MMEDIATE
155
#define TK_IN
ITIALLY
156
#define TK_
INSTEAD
157
#define TK_
MATCH
158
#define TK_
KEY
159
#define TK_
OF
160
#define TK_R
AISE
161
#define TK_RE
PLACE
162
#define TK_R
ESTRICT
163
#define TK_
ROW
164
#define TK_
STATEMENT
165
#define TK_
TRIGGER
166
#define TK_
VIEW
167
#define TK_
COUNT
168
#define TK_
SUM
169
#define TK_
AVG
170
#define TK_M
IN
171
#define TK_
MAX
172
#define TK_
FIRST
173
#define TK_
LAST
174
#define TK_
TOP
175
#define TK_
BOTTOM
176
#define TK_
STDDEV
177
#define TK_
PERCENTILE
178
#define TK_
APERCENTILE
179
#define TK_
LEASTSQUARES
180
#define TK_
HISTOGRAM
181
#define TK_
DIFF
182
#define TK_
SPREAD
183
#define TK_
TWA
184
#define TK_
INTERP
185
#define TK_
LAST_ROW
186
#define TK_
RATE
187
#define TK_
IRATE
188
#define TK_SUM_
RATE
189
#define TK_
SUM_IRATE
190
#define TK_AVG_
RATE
191
#define TK_
AVG_IRATE
192
#define TK_
TBID
193
#define TK_
SEMI
194
#define TK_
NONE
195
#define TK_
PREV
196
#define TK_
LINEAR
197
#define TK_
IMPORT
198
#define TK_
METRIC
199
#define TK_
TBNAME
200
#define TK_
JOIN
201
#define TK_
METRICS
202
#define TK_
STABLE
203
#define TK_IN
SERT
204
#define TK_
INTO
205
#define TK_VALUES 206
#define TK_SPACE 300
#define TK_COMMENT 301
...
...
src/query/inc/qSqlparser.h
浏览文件 @
cf9ba60e
...
...
@@ -129,6 +129,7 @@ typedef struct SCreateDBInfo {
int32_t
compressionLevel
;
SStrToken
precision
;
bool
ignoreExists
;
int8_t
update
;
tVariantList
*
keep
;
}
SCreateDBInfo
;
...
...
src/query/inc/sql.y
浏览文件 @
cf9ba60e
...
...
@@ -229,6 +229,7 @@ wal(Y) ::= WAL INTEGER(X). { Y = X; }
fsync(Y) ::= FSYNC INTEGER(X). { Y = X; }
comp(Y) ::= COMP INTEGER(X). { Y = X; }
prec(Y) ::= PRECISION STRING(X). { Y = X; }
update(Y) ::= UPDATE INTEGER(X). { Y = X; }
%type db_optr {SCreateDBInfo}
db_optr(Y) ::= . {setDefaultCreateDbOption(&Y);}
...
...
@@ -246,6 +247,7 @@ db_optr(Y) ::= db_optr(Z) fsync(X). { Y = Z; Y.fsyncPeriod = strtol(X.z
db_optr(Y) ::= db_optr(Z) comp(X). { Y = Z; Y.compressionLevel = strtol(X.z, NULL, 10); }
db_optr(Y) ::= db_optr(Z) prec(X). { Y = Z; Y.precision = X; }
db_optr(Y) ::= db_optr(Z) keep(X). { Y = Z; Y.keep = X; }
db_optr(Y) ::= db_optr(Z) update(X). { Y = Z; Y.update = strtol(X.z, NULL, 10); }
%type alter_db_optr {SCreateDBInfo}
alter_db_optr(Y) ::= . { setDefaultCreateDbOption(&Y);}
...
...
@@ -257,6 +259,7 @@ alter_db_optr(Y) ::= alter_db_optr(Z) blocks(X). { Y = Z; Y.numOfBlocks = s
alter_db_optr(Y) ::= alter_db_optr(Z) comp(X). { Y = Z; Y.compressionLevel = strtol(X.z, NULL, 10); }
alter_db_optr(Y) ::= alter_db_optr(Z) wal(X). { Y = Z; Y.walLevel = strtol(X.z, NULL, 10); }
alter_db_optr(Y) ::= alter_db_optr(Z) fsync(X). { Y = Z; Y.fsyncPeriod = strtol(X.z, NULL, 10); }
alter_db_optr(Y) ::= alter_db_optr(Z) update(X). { Y = Z; Y.update = strtol(X.z, NULL, 10); }
%type typename {TAOS_FIELD}
typename(A) ::= ids(X). {
...
...
src/query/src/qTokenizer.c
浏览文件 @
cf9ba60e
...
...
@@ -155,6 +155,7 @@ static SKeyword keywordTable[] = {
{
"INSERT"
,
TK_INSERT
},
{
"INTO"
,
TK_INTO
},
{
"VALUES"
,
TK_VALUES
},
{
"UPDATE"
,
TK_UPDATE
},
{
"RESET"
,
TK_RESET
},
{
"QUERY"
,
TK_QUERY
},
{
"ADD"
,
TK_ADD
},
...
...
src/query/src/sql.c
浏览文件 @
cf9ba60e
此差异已折叠。
点击以展开。
tests/pytest/alter/db_update_options.py
0 → 100644
浏览文件 @
cf9ba60e
# -*- coding: utf-8 -*-
import
random
import
string
import
subprocess
import
sys
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
run
(
self
):
tdLog
.
debug
(
"check database"
)
tdSql
.
prepare
()
# check default update value
sql
=
"create database if not exists db"
tdSql
.
execute
(
sql
)
tdSql
.
query
(
'show databases'
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
16
,
0
)
sql
=
"alter database db update 1"
# check update value
tdSql
.
execute
(
sql
)
tdSql
.
query
(
'show databases'
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
16
,
1
)
sql
=
"alter database db update 0"
tdSql
.
execute
(
sql
)
tdSql
.
query
(
'show databases'
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
16
,
0
)
sql
=
"alter database db update -1"
tdSql
.
error
(
sql
)
sql
=
"alter database db update 100"
tdSql
.
error
(
sql
)
tdSql
.
query
(
'show databases'
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
16
,
0
)
tdSql
.
execute
(
'drop database db'
)
tdSql
.
error
(
'create database db update 100'
)
tdSql
.
error
(
'create database db update -1'
)
tdSql
.
execute
(
'create database db update 1'
)
tdSql
.
query
(
'show databases'
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
16
,
1
)
tdSql
.
execute
(
'drop database db'
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录