[test](regression) Add more regression test for FE (#26384)
This commit is contained in:
Binary file not shown.
@ -0,0 +1,46 @@
|
||||
-- This file is automatically generated. You should know what you did if you want to edit this
|
||||
-- !show --
|
||||
show_create_table_and_views_table CREATE TABLE `show_create_table_and_views_table` (\n `user_id` LARGEINT NOT NULL,\n `good_id` LARGEINT NOT NULL,\n `cost` BIGINT SUM NULL DEFAULT "0"\n) ENGINE=OLAP\nAGGREGATE KEY(`user_id`, `good_id`)\nCOMMENT 'OLAP'\nPARTITION BY RANGE(`good_id`)\n(PARTITION p1 VALUES [("-170141183460469231731687303715884105728"), ("100")),\nPARTITION p2 VALUES [("100"), ("200")),\nPARTITION p3 VALUES [("200"), ("300")),\nPARTITION p4 VALUES [("300"), ("400")),\nPARTITION p5 VALUES [("400"), ("500")),\nPARTITION p6 VALUES [("500"), ("600")),\nPARTITION p7 VALUES [("600"), (MAXVALUE)))\nDISTRIBUTED BY HASH(`user_id`) BUCKETS 2\nPROPERTIES (\n"replication_allocation" = "tag.location.default: 1",\n"min_load_replica_num" = "-1",\n"is_being_synced" = "false",\n"storage_format" = "V2",\n"light_schema_change" = "true",\n"disable_auto_compaction" = "false",\n"binlog.enable" = "false",\n"binlog.ttl_seconds" = "9223372036854775807",\n"binlog.max_bytes" = "9223372036854775807",\n"binlog.max_history_nums" = "9223372036854775807",\n"enable_single_replica_compaction" = "false"\n);
|
||||
|
||||
-- !select --
|
||||
1 1 30
|
||||
1 300 2
|
||||
1 2 5
|
||||
1 3 10
|
||||
2 200 1111
|
||||
2 1 100
|
||||
2 2 10
|
||||
2 3 44
|
||||
3 1 10
|
||||
3 2 1
|
||||
23 900 1
|
||||
100 100 1
|
||||
200 20 1
|
||||
300 20 1
|
||||
|
||||
-- !select --
|
||||
1 5
|
||||
2 10
|
||||
3 1
|
||||
|
||||
-- !show --
|
||||
show_create_table_and_views_view CREATE VIEW `show_create_table_and_views_view` COMMENT 'VIEW' AS SELECT `user_id` AS `user_id`, `cost` AS `cost` FROM `default_cluster:show_create_table_and_views_db`.`show_create_table_and_views_table` WHERE `good_id` = 2; utf8 utf8_general_ci
|
||||
|
||||
-- !select --
|
||||
1 47
|
||||
2 1265
|
||||
3 11
|
||||
23 1
|
||||
100 1
|
||||
200 1
|
||||
300 1
|
||||
|
||||
-- !show --
|
||||
show_create_table_and_views_table CREATE TABLE `show_create_table_and_views_table` (\n `user_id` LARGEINT NOT NULL,\n `good_id` LARGEINT NOT NULL,\n `cost` BIGINT SUM NULL DEFAULT "0"\n) ENGINE=OLAP\nAGGREGATE KEY(`user_id`, `good_id`)\nCOMMENT 'OLAP'\nPARTITION BY RANGE(`good_id`)\n(PARTITION p1 VALUES [("-170141183460469231731687303715884105728"), ("100")),\nPARTITION p2 VALUES [("100"), ("200")),\nPARTITION p3 VALUES [("200"), ("300")),\nPARTITION p4 VALUES [("300"), ("400")),\nPARTITION p5 VALUES [("400"), ("500")),\nPARTITION p6 VALUES [("500"), ("600")),\nPARTITION p7 VALUES [("600"), (MAXVALUE)))\nDISTRIBUTED BY HASH(`user_id`) BUCKETS 2\nPROPERTIES (\n"replication_allocation" = "tag.location.default: 1",\n"min_load_replica_num" = "-1",\n"is_being_synced" = "false",\n"storage_format" = "V2",\n"light_schema_change" = "true",\n"disable_auto_compaction" = "false",\n"binlog.enable" = "false",\n"binlog.ttl_seconds" = "9223372036854775807",\n"binlog.max_bytes" = "9223372036854775807",\n"binlog.max_history_nums" = "9223372036854775807",\n"enable_single_replica_compaction" = "false"\n);
|
||||
|
||||
-- !show --
|
||||
show_create_table_and_views_like CREATE TABLE `show_create_table_and_views_like` (\n `user_id` LARGEINT NOT NULL,\n `good_id` LARGEINT NOT NULL,\n `cost` BIGINT SUM NULL DEFAULT "0"\n) ENGINE=OLAP\nAGGREGATE KEY(`user_id`, `good_id`)\nCOMMENT 'OLAP'\nPARTITION BY RANGE(`good_id`)\n(PARTITION p1 VALUES [("-170141183460469231731687303715884105728"), ("100")),\nPARTITION p2 VALUES [("100"), ("200")),\nPARTITION p3 VALUES [("200"), ("300")),\nPARTITION p4 VALUES [("300"), ("400")),\nPARTITION p5 VALUES [("400"), ("500")),\nPARTITION p6 VALUES [("500"), ("600")),\nPARTITION p7 VALUES [("600"), (MAXVALUE)))\nDISTRIBUTED BY HASH(`user_id`) BUCKETS 2\nPROPERTIES (\n"replication_allocation" = "tag.location.default: 1",\n"min_load_replica_num" = "-1",\n"is_being_synced" = "false",\n"storage_format" = "V2",\n"light_schema_change" = "true",\n"disable_auto_compaction" = "false",\n"binlog.enable" = "false",\n"binlog.ttl_seconds" = "9223372036854775807",\n"binlog.max_bytes" = "9223372036854775807",\n"binlog.max_history_nums" = "9223372036854775807",\n"enable_single_replica_compaction" = "false"\n);
|
||||
|
||||
-- !show --
|
||||
show_create_table_and_views_like_with_rollup CREATE TABLE `show_create_table_and_views_like_with_rollup` (\n `user_id` LARGEINT NOT NULL,\n `good_id` LARGEINT NOT NULL,\n `cost` BIGINT SUM NULL DEFAULT "0"\n) ENGINE=OLAP\nAGGREGATE KEY(`user_id`, `good_id`)\nCOMMENT 'OLAP'\nPARTITION BY RANGE(`good_id`)\n(PARTITION p1 VALUES [("-170141183460469231731687303715884105728"), ("100")),\nPARTITION p2 VALUES [("100"), ("200")),\nPARTITION p3 VALUES [("200"), ("300")),\nPARTITION p4 VALUES [("300"), ("400")),\nPARTITION p5 VALUES [("400"), ("500")),\nPARTITION p6 VALUES [("500"), ("600")),\nPARTITION p7 VALUES [("600"), (MAXVALUE)))\nDISTRIBUTED BY HASH(`user_id`) BUCKETS 2\nPROPERTIES (\n"replication_allocation" = "tag.location.default: 1",\n"min_load_replica_num" = "-1",\n"is_being_synced" = "false",\n"storage_format" = "V2",\n"light_schema_change" = "true",\n"disable_auto_compaction" = "false",\n"binlog.enable" = "false",\n"binlog.ttl_seconds" = "9223372036854775807",\n"binlog.max_bytes" = "9223372036854775807",\n"binlog.max_history_nums" = "9223372036854775807",\n"enable_single_replica_compaction" = "false"\n);
|
||||
|
||||
40
regression-test/data/show_p0/test_show_table_and_views.out
Normal file
40
regression-test/data/show_p0/test_show_table_and_views.out
Normal file
@ -0,0 +1,40 @@
|
||||
-- This file is automatically generated. You should know what you did if you want to edit this
|
||||
-- !show --
|
||||
show_table_and_views_table CREATE TABLE `show_table_and_views_table` (\n `user_id` LARGEINT NOT NULL,\n `good_id` LARGEINT NOT NULL,\n `cost` BIGINT SUM NULL DEFAULT "0"\n) ENGINE=OLAP\nAGGREGATE KEY(`user_id`, `good_id`)\nCOMMENT 'OLAP'\nPARTITION BY RANGE(`good_id`)\n(PARTITION p1 VALUES [("-170141183460469231731687303715884105728"), ("100")),\nPARTITION p2 VALUES [("100"), ("200")),\nPARTITION p3 VALUES [("200"), ("300")),\nPARTITION p4 VALUES [("300"), ("400")),\nPARTITION p5 VALUES [("400"), ("500")),\nPARTITION p6 VALUES [("500"), ("600")),\nPARTITION p7 VALUES [("600"), (MAXVALUE)))\nDISTRIBUTED BY HASH(`user_id`) BUCKETS 2\nPROPERTIES (\n"replication_allocation" = "tag.location.default: 1",\n"min_load_replica_num" = "-1",\n"is_being_synced" = "false",\n"storage_format" = "V2",\n"light_schema_change" = "true",\n"disable_auto_compaction" = "false",\n"enable_single_replica_compaction" = "false"\n);
|
||||
|
||||
-- !select --
|
||||
1 300 2
|
||||
1 1 30
|
||||
1 2 5
|
||||
1 3 10
|
||||
2 200 1111
|
||||
2 1 100
|
||||
2 2 10
|
||||
2 3 44
|
||||
3 1 10
|
||||
3 2 1
|
||||
23 900 1
|
||||
100 100 1
|
||||
200 20 1
|
||||
300 20 1
|
||||
|
||||
-- !select --
|
||||
1 5
|
||||
2 10
|
||||
3 1
|
||||
|
||||
-- !show --
|
||||
show_table_and_views_view CREATE VIEW `show_table_and_views_view` COMMENT 'VIEW' AS SELECT `user_id` AS `user_id`, `cost` AS `cost` FROM `default_cluster:show_table_and_views_db`.`show_table_and_views_table` WHERE `good_id` = 2; utf8 utf8_general_ci
|
||||
|
||||
-- !select --
|
||||
1 47
|
||||
2 1265
|
||||
3 11
|
||||
23 1
|
||||
100 1
|
||||
200 1
|
||||
300 1
|
||||
|
||||
-- !show --
|
||||
show_table_and_views_table CREATE TABLE `show_table_and_views_table` (\n `user_id` LARGEINT NOT NULL,\n `good_id` LARGEINT NOT NULL,\n `cost` BIGINT SUM NULL DEFAULT "0"\n) ENGINE=OLAP\nAGGREGATE KEY(`user_id`, `good_id`)\nCOMMENT 'OLAP'\nPARTITION BY RANGE(`good_id`)\n(PARTITION p1 VALUES [("-170141183460469231731687303715884105728"), ("100")),\nPARTITION p2 VALUES [("100"), ("200")),\nPARTITION p3 VALUES [("200"), ("300")),\nPARTITION p4 VALUES [("300"), ("400")),\nPARTITION p5 VALUES [("400"), ("500")),\nPARTITION p6 VALUES [("500"), ("600")),\nPARTITION p7 VALUES [("600"), (MAXVALUE)))\nDISTRIBUTED BY HASH(`user_id`) BUCKETS 2\nPROPERTIES (\n"replication_allocation" = "tag.location.default: 1",\n"min_load_replica_num" = "-1",\n"is_being_synced" = "false",\n"storage_format" = "V2",\n"light_schema_change" = "true",\n"disable_auto_compaction" = "false",\n"enable_single_replica_compaction" = "false"\n);
|
||||
|
||||
@ -28,9 +28,15 @@ suite("test_backend") {
|
||||
result = sql """SHOW BACKENDS;"""
|
||||
logger.info("result:${result}")
|
||||
|
||||
sql """ALTER SYSTEM MODIFY BACKEND "${address}:${notExistPort}" SET ("disable_query" = "true"); """
|
||||
sql """ALTER SYSTEM MODIFY BACKEND "${address}:${notExistPort}" SET ("disable_load" = "true"); """
|
||||
|
||||
result = sql """SHOW BACKENDS;"""
|
||||
logger.info("result:${result}")
|
||||
|
||||
sql """ALTER SYSTEM DROPP BACKEND "${address}:${notExistPort}";"""
|
||||
|
||||
result = sql """SHOW BACKENDS;"""
|
||||
logger.info("result:${result}")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -232,8 +232,11 @@ suite ("test_rename_column") {
|
||||
}
|
||||
}
|
||||
}
|
||||
String viewName = "renameColumnView1"
|
||||
sql "create view ${viewName} (user_id, max_cost) as select user_id, max(cost) as max_cost from ${tableName} group by user_id"
|
||||
|
||||
qt_select """ select user_id, cost from ${tableName} order by user_id """
|
||||
qt_select """ select user_id, max_cost, "${viewName}" from ${viewName} order by user_id """
|
||||
|
||||
sql """ INSERT INTO ${tableName} VALUES
|
||||
(1, '2017-10-01', 'Beijing', 10, 1, 1, 30, 20, hll_hash(1), to_bitmap(1))
|
||||
@ -261,9 +264,11 @@ suite ("test_rename_column") {
|
||||
qt_desc """ desc ${tableName} """
|
||||
|
||||
qt_select""" select * from ${tableName} order by user_id """
|
||||
qt_select """ select user_id, max_cost, "${viewName}" from ${viewName} order by user_id """
|
||||
|
||||
qt_select """ select user_id, sum(cost) from ${tableName} group by user_id order by user_id """
|
||||
|
||||
sql """ DROP VIEW ${viewName} """
|
||||
sql """ DROP TABLE ${tableName} """
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,124 @@
|
||||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
suite("test_show_create_table_and_views", "show") {
|
||||
def ret = sql "ADMIN SHOW FRONTEND CONFIG like '%enable_feature_binlog%';"
|
||||
logger.info("${ret}")
|
||||
if (ret.size() != 0 && ret[0].size() > 1 && ret[0][1] == 'false') {
|
||||
logger.info("enable_feature_binlog=false in frontend config, no need to run this case.")
|
||||
return
|
||||
}
|
||||
|
||||
String suiteName = "show_create_table_and_views"
|
||||
String dbName = "${suiteName}_db"
|
||||
String tableName = "${suiteName}_table"
|
||||
String viewName = "${suiteName}_view"
|
||||
String rollupName = "${suiteName}_rollup"
|
||||
String likeName = "${suiteName}_like"
|
||||
|
||||
sql "CREATE DATABASE IF NOT EXISTS ${dbName}"
|
||||
sql "DROP TABLE IF EXISTS ${dbName}.${tableName}"
|
||||
sql """
|
||||
CREATE TABLE ${dbName}.${tableName} (
|
||||
`user_id` LARGEINT NOT NULL,
|
||||
`good_id` LARGEINT NOT NULL,
|
||||
`cost` BIGINT SUM DEFAULT "0",
|
||||
)
|
||||
AGGREGATE KEY(`user_id`, `good_id`)
|
||||
PARTITION BY RANGE(`good_id`)
|
||||
(
|
||||
PARTITION p1 VALUES LESS THAN ("100"),
|
||||
PARTITION p2 VALUES LESS THAN ("200"),
|
||||
PARTITION p3 VALUES LESS THAN ("300"),
|
||||
PARTITION p4 VALUES LESS THAN ("400"),
|
||||
PARTITION p5 VALUES LESS THAN ("500"),
|
||||
PARTITION p6 VALUES LESS THAN ("600"),
|
||||
PARTITION p7 VALUES LESS THAN MAXVALUE
|
||||
)
|
||||
DISTRIBUTED BY HASH(`user_id`) BUCKETS 2
|
||||
PROPERTIES (
|
||||
"replication_num" = "1"
|
||||
)
|
||||
"""
|
||||
|
||||
sql """INSERT INTO ${dbName}.${tableName} VALUES
|
||||
(1, 1, 10),
|
||||
(1, 1, 20),
|
||||
(1, 2, 5),
|
||||
(1, 3, 10),
|
||||
(2, 1, 0),
|
||||
(2, 1, 100),
|
||||
(3, 1, 10),
|
||||
(2, 2, 10),
|
||||
(2, 3, 44),
|
||||
(3, 2, 1),
|
||||
(100, 100, 1),
|
||||
(200, 20, 1),
|
||||
(300, 20, 1),
|
||||
(1, 300, 2),
|
||||
(2, 200, 1111),
|
||||
(23, 900, 1)"""
|
||||
|
||||
qt_show "SHOW CREATE TABLE ${dbName}.${tableName}"
|
||||
qt_select "SELECT * FROM ${dbName}.${tableName} ORDER BY user_id"
|
||||
|
||||
// create view and show
|
||||
sql """
|
||||
CREATE VIEW IF NOT EXISTS ${dbName}.${viewName} (user_id, cost)
|
||||
AS
|
||||
SELECT user_id, cost FROM ${dbName}.${tableName}
|
||||
WHERE good_id = 2
|
||||
"""
|
||||
qt_select "SELECT * FROM ${dbName}.${viewName} ORDER BY user_id"
|
||||
qt_show "SHOW CREATE VIEW ${dbName}.${viewName}"
|
||||
|
||||
// create rollup
|
||||
sql """ALTER TABLE ${dbName}.${tableName}
|
||||
ADD ROLLUP ${rollupName} (user_id, cost)
|
||||
"""
|
||||
|
||||
def isAlterTableFinish = { ->
|
||||
def records = sql """SHOW ALTER TABLE ROLLUP FROM ${dbName}"""
|
||||
for (def row in records) {
|
||||
if (row[5] == "${rollupName}" && row[8] == "FINISHED") {
|
||||
return true
|
||||
}
|
||||
}
|
||||
false
|
||||
}
|
||||
while (!isAlterTableFinish()) {
|
||||
Thread.sleep(100)
|
||||
}
|
||||
|
||||
qt_select "SELECT user_id, SUM(cost) FROM ${dbName}.${tableName} GROUP BY user_id ORDER BY user_id"
|
||||
qt_show "SHOW CREATE TABLE ${dbName}.${tableName}"
|
||||
|
||||
// create like
|
||||
sql "CREATE TABLE ${dbName}.${likeName} LIKE ${dbName}.${tableName}"
|
||||
qt_show "SHOW CREATE TABLE ${dbName}.${likeName}"
|
||||
|
||||
// create like with rollup
|
||||
sql "CREATE TABLE ${dbName}.${likeName}_with_rollup LIKE ${dbName}.${tableName} WITH ROLLUP"
|
||||
qt_show "SHOW CREATE TABLE ${dbName}.${likeName}_with_rollup"
|
||||
|
||||
sql "DROP TABLE IF EXISTS ${dbName}.${likeName}_with_rollup FORCE"
|
||||
sql "DROP TABLE ${dbName}.${likeName} FORCE"
|
||||
sql "DROP VIEW ${dbName}.${viewName}"
|
||||
sql "DROP TABLE ${dbName}.${tableName} FORCE"
|
||||
sql "DROP DATABASE ${dbName} FORCE"
|
||||
}
|
||||
|
||||
@ -66,6 +66,22 @@ suite("test_sql_block_rule") {
|
||||
exception "sql match regex sql block rule: test_rule_sql"
|
||||
}
|
||||
|
||||
sql """
|
||||
ALTER SQL_BLOCK_RULE test_rule_sql PROPERTIES("enable"="false")
|
||||
"""
|
||||
|
||||
sql "SELECT * FROM table_2"
|
||||
|
||||
sql """
|
||||
ALTER SQL_BLOCK_RULE test_rule_sql
|
||||
PROPERTIES("sql"="SELECT abcd FROM table_2", "global"= "true", "enable"= "true")
|
||||
"""
|
||||
|
||||
test {
|
||||
sql("SELECT abcd FROM table_2", false)
|
||||
exception "sql match regex sql block rule: test_rule_sql"
|
||||
}
|
||||
|
||||
sql """
|
||||
DROP SQL_BLOCK_RULE if exists test_rule_sql
|
||||
"""
|
||||
|
||||
@ -69,6 +69,7 @@ suite("test_basic_statistics") {
|
||||
assertTrue(result[0][6] == "\'name1\'")
|
||||
assertTrue(result[0][7] == "\'name9\'")
|
||||
|
||||
sql """drop stats ${tbl}"""
|
||||
sql """drop table ${tbl}"""
|
||||
sql """drop database ${db}"""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user