[fix](regression)Fix test_agg_complex_type fail case. Improve analyze_stats time consumption. (#37895) (#38014)

backport: https://github.com/apache/doris/pull/37895
This commit is contained in:
Jibing-Li
2024-07-17 22:15:21 +08:00
committed by GitHub
parent 3d5043817a
commit 2dbc996a1b

View File

@ -23,6 +23,7 @@ suite("test_analyze") {
String tbl = "analyzetestlimited_duplicate_all"
sql """set global enable_auto_analyze=false"""
sql """
DROP DATABASE IF EXISTS `${db}`
"""
@ -163,14 +164,30 @@ suite("test_analyze") {
exception = e
}
// Test sample agg table value column. Min max is N/A when zone map is not available.
sql """
CREATE TABLE `agg_table_test` (
`id` BIGINT NOT NULL,
`name` VARCHAR(10) REPLACE NULL
) ENGINE=OLAP
AGGREGATE KEY(`id`)
COMMENT 'OLAP'
DISTRIBUTED BY HASH(`id`) BUCKETS 32
PROPERTIES (
"replication_num" = "1"
);
"""
sql """insert into agg_table_test values (1,'name1'), (2, 'name2')"""
sql """analyze table agg_table_test with sample rows 100 with sync"""
def agg_result = sql """show column stats agg_table_test (name)"""
logger.info("show column agg_table_test(name) stats: " + agg_result)
assertEquals(agg_result[0][7], "N/A")
assertEquals(agg_result[0][8], "N/A")
def a_result_1 = sql """
ANALYZE DATABASE ${db} WITH SYNC WITH SAMPLE PERCENT 10
"""
def a_result_2 = sql """
ANALYZE DATABASE ${db} WITH SYNC WITH SAMPLE PERCENT 5
"""
def a_result_3 = sql """
ANALYZE DATABASE ${db} WITH SAMPLE PERCENT 5
"""
@ -2614,27 +2631,6 @@ PARTITION `p599` VALUES IN (599)
partition_result = sql """show table stats partition_test"""
assertEquals(partition_result[0][6], "false")
// Test sample agg table value column
sql """
CREATE TABLE `agg_table_test` (
`id` BIGINT NOT NULL,
`name` VARCHAR(10) REPLACE NULL
) ENGINE=OLAP
AGGREGATE KEY(`id`)
COMMENT 'OLAP'
DISTRIBUTED BY HASH(`id`) BUCKETS 32
PROPERTIES (
"replication_num" = "1"
);
"""
sql """insert into agg_table_test values (1,'name1'), (2, 'name2')"""
Thread.sleep(1000 * 60)
sql """analyze table agg_table_test with sample rows 100 with sync"""
def agg_result = sql """show column stats agg_table_test (name)"""
logger.info("show column agg_table_test(name) stats: " + agg_result)
assertEquals(agg_result[0][7], "N/A")
assertEquals(agg_result[0][8], "N/A")
// Test sample string type min max
sql """
CREATE TABLE `string_min_max` (