[FEAT MERGE]4_1_sql_feature

Co-authored-by: leslieyuchen <leslieyuchen@gmail.com>
Co-authored-by: Charles0429 <xiezhenjiang@gmail.com>
Co-authored-by: raywill <hustos@gmail.com>
This commit is contained in:
obdev
2023-01-28 16:01:26 +08:00
committed by ob-robot
parent 3080f2b66f
commit 2d19a9d8f5
846 changed files with 161957 additions and 116661 deletions

View File

@ -123,13 +123,13 @@ TEST_F(ObLogPlanTest, ob_explain_test)
// print plan as json
char output_buf[OB_MAX_LOG_BUFFER_SIZE];
int64_t pos = 0;
Value *val = NULL;
plan.get_plan_root()->to_json(output_buf, OB_MAX_LOG_BUFFER_SIZE, pos, val);
Tidy tidy(val);
LOG_DEBUG("succ to generate json object", K(pos));
// Value *val = NULL;
// plan.get_plan_root()->to_json(output_buf, OB_MAX_LOG_BUFFER_SIZE, pos, val);
// Tidy tidy(val);
// LOG_DEBUG("succ to generate json object", K(pos));
output_buf[0] = '\n';
pos = tidy.to_string(output_buf + pos, OB_MAX_LOG_BUFFER_SIZE - pos);
// output_buf[0] = '\n';
// pos = tidy.to_string(output_buf + pos, OB_MAX_LOG_BUFFER_SIZE - pos);
if (pos < OB_MAX_LOG_BUFFER_SIZE -2) {
output_buf[pos + 1] = '\n';
_OB_LOG(INFO, "%.*s", static_cast<int32_t>(pos + 2), output_buf);

View File

@ -324,15 +324,15 @@ void TestOptimizerUtils::explain_plan_json(ObLogPlan *logical_plan, std::ofstrea
output_buf[pos++] = '\n';
// 1. generate json
Value *val = NULL;
logical_plan->get_plan_root()->to_json(output_buf, OB_MAX_LOG_BUFFER_SIZE, pos, val);
Tidy tidy(val);
LOG_DEBUG("succ to generate json object", K(pos));
// // 1. generate json
// Value *val = NULL;
// logical_plan->get_plan_root()->to_json(output_buf, OB_MAX_LOG_BUFFER_SIZE, pos, val);
// Tidy tidy(val);
// LOG_DEBUG("succ to generate json object", K(pos));
// 2. from json to string
pos = tidy.to_string(buf, OB_MAX_LOG_BUFFER_SIZE);
LOG_DEBUG("succ to print json to string", K(pos));
// // 2. from json to string
// pos = tidy.to_string(buf, OB_MAX_LOG_BUFFER_SIZE);
// LOG_DEBUG("succ to print json to string", K(pos));
if (pos < OB_MAX_LOG_BUFFER_SIZE -2) {
output_buf[pos + 1] = '\n';

View File

@ -540,11 +540,11 @@ question_mask_size: 0
|--[0],[T_STMT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_UPDATE], str_value_=[], value=[0]
|--[0],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[1],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[0],[T_ORG], str_value_=[], value=[9223372036854775807]
|--[0],[T_RELATION_FACTOR], str_value_=[t1], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[1],[T_ASSIGN_LIST], str_value_=[], value=[9223372036854775807]
|--[2],[T_ASSIGN_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_ASSIGN_ITEM], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c2], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[d], value=[9223372036854775807]
@ -555,14 +555,14 @@ question_mask_size: 0
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_INT], str_value_=[1], value=[1]
|--[2],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[3],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_OP_GT], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c1], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[d], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_INT], str_value_=[1], value=[1]
|--[3],[T_ORDER_BY], str_value_=[], value=[9223372036854775807]
|--[4],[T_ORDER_BY], str_value_=[], value=[9223372036854775807]
|--[0],[T_SORT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_SORT_KEY], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c1], value=[9223372036854775807]
@ -570,7 +570,7 @@ question_mask_size: 0
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_SORT_DESC], str_value_=[], value=[2]
|--[4],[T_COMMA_LIMIT_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[5],[T_COMMA_LIMIT_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_INT], str_value_=[0], value=[0]
|--[1],[T_INT], str_value_=[10], value=[10]
@ -580,12 +580,12 @@ question_mask_size: 0
|--[0],[T_STMT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_UPDATE], str_value_=[], value=[0]
|--[0],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[1],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[0],[T_ORG], str_value_=[], value=[9223372036854775807]
|--[0],[T_RELATION_FACTOR], str_value_=[t1], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[d], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[1],[T_ASSIGN_LIST], str_value_=[], value=[9223372036854775807]
|--[2],[T_ASSIGN_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_ASSIGN_ITEM], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c2], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
@ -595,19 +595,19 @@ question_mask_size: 0
|--[1],[T_IDENT], str_value_=[d], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[t1c1], value=[9223372036854775807]
|--[1],[T_INT], str_value_=[1], value=[1]
|--[2],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[3],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_OP_GT], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_INT], str_value_=[1], value=[1]
|--[3],[T_ORDER_BY], str_value_=[], value=[9223372036854775807]
|--[4],[T_ORDER_BY], str_value_=[], value=[9223372036854775807]
|--[0],[T_SORT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_SORT_KEY], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_SORT_DESC], str_value_=[], value=[2]
|--[4],[T_COMMA_LIMIT_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[5],[T_COMMA_LIMIT_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_INT], str_value_=[0], value=[0]
|--[1],[T_INT], str_value_=[10], value=[10]
@ -617,26 +617,26 @@ question_mask_size: 0
|--[0],[T_STMT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_DELETE], str_value_=[], value=[0]
|--[0],[T_DELETE_TABLE_NODE], str_value_=[], value=[9223372036854775807]
|--[1],[T_DELETE_TABLE_NODE], str_value_=[], value=[9223372036854775807]
|--[1],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[0],[T_ORG], str_value_=[], value=[9223372036854775807]
|--[0],[T_RELATION_FACTOR], str_value_=[t1], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[d], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[1],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[2],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_OP_GT], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c2], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[d], value=[9223372036854775807]
|--[1],[T_IDENT], str_value_=[t1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c2], value=[9223372036854775807]
|--[1],[T_INT], str_value_=[10], value=[10]
|--[2],[T_ORDER_BY], str_value_=[], value=[9223372036854775807]
|--[3],[T_ORDER_BY], str_value_=[], value=[9223372036854775807]
|--[0],[T_SORT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_SORT_KEY], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[c1], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[c1], value=[9223372036854775807]
|--[1],[T_SORT_ASC], str_value_=[], value=[2]
|--[3],[T_COMMA_LIMIT_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[4],[T_COMMA_LIMIT_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_INT], str_value_=[0], value=[0]
|--[1],[T_INT], str_value_=[1], value=[1]
@ -1037,7 +1037,7 @@ question_mask_size: 0
|--[0],[T_STMT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_DELETE], str_value_=[], value=[0]
|--[0],[T_DELETE_TABLE_NODE], str_value_=[], value=[9223372036854775807]
|--[1],[T_DELETE_TABLE_NODE], str_value_=[], value=[9223372036854775807]
|--[1],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[0],[T_ORG], str_value_=[], value=[9223372036854775807]
|--[0],[T_RELATION_FACTOR], str_value_=[t1], value=[9223372036854775807]
@ -1054,7 +1054,7 @@ question_mask_size: 0
|--[0],[T_STMT_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_UPDATE], str_value_=[], value=[0]
|--[0],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[1],[T_TABLE_REFERENCES], str_value_=[], value=[9223372036854775807]
|--[0],[T_ORG], str_value_=[], value=[9223372036854775807]
|--[0],[T_RELATION_FACTOR], str_value_=[t1], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[d], value=[9223372036854775807]
@ -1062,12 +1062,12 @@ question_mask_size: 0
|--[2],[T_USE_PARTITION], str_value_=[], value=[9223372036854775807]
|--[0],[T_NAME_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_IDENT], str_value_=[p2], value=[9223372036854775807]
|--[1],[T_ASSIGN_LIST], str_value_=[], value=[9223372036854775807]
|--[2],[T_ASSIGN_LIST], str_value_=[], value=[9223372036854775807]
|--[0],[T_ASSIGN_ITEM], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[id], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[id], value=[9223372036854775807]
|--[1],[T_INT], str_value_=[2], value=[2]
|--[2],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[3],[T_WHERE_CLAUSE], str_value_=[], value=[9223372036854775807]
|--[0],[T_OP_EQ], str_value_=[], value=[9223372036854775807]
|--[0],[T_COLUMN_REF], str_value_=[name], value=[9223372036854775807]
|--[2],[T_IDENT], str_value_=[name], value=[9223372036854775807]

View File

@ -3034,6 +3034,7 @@ question_mask_size: 0
"str_len":0,
"str_val":"",
"children": [
{ },
{
"type":"T_TABLE_REFERENCES",
"int_val":9223372036854775807,
@ -3295,6 +3296,7 @@ question_mask_size: 0
"str_len":0,
"str_val":"",
"children": [
{ },
{
"type":"T_TABLE_REFERENCES",
"int_val":9223372036854775807,
@ -3541,6 +3543,7 @@ question_mask_size: 0
"str_len":0,
"str_val":"",
"children": [
{ },
{
"type":"T_DELETE_TABLE_NODE",
"int_val":9223372036854775807,
@ -6136,6 +6139,7 @@ question_mask_size: 0
"str_len":0,
"str_val":"",
"children": [
{ },
{
"type":"T_DELETE_TABLE_NODE",
"int_val":9223372036854775807,
@ -6237,6 +6241,7 @@ question_mask_size: 0
"str_len":0,
"str_val":"",
"children": [
{ },
{
"type":"T_TABLE_REFERENCES",
"int_val":9223372036854775807,

View File

@ -27,8 +27,6 @@ not (10 > 5 and 100 < 9)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_LE",
@ -56,8 +54,6 @@ not (10 > 5 and 100 < 9)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -147,8 +143,6 @@ not (10 > 5 and 100 < 9)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -240,8 +234,6 @@ not not a > b
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -276,9 +268,6 @@ not not a > b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -326,9 +315,6 @@ not not a > b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -371,8 +357,6 @@ not a > b
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -407,9 +391,6 @@ not a > b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -457,9 +438,6 @@ not a > b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -502,8 +480,6 @@ not a = b
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -538,9 +514,6 @@ not a = b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -588,9 +561,6 @@ not a = b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -633,8 +603,6 @@ not a < b
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -669,9 +637,6 @@ not a < b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -719,9 +684,6 @@ not a < b
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -765,8 +727,6 @@ not a is true
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -801,9 +761,6 @@ not a is true
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -847,36 +804,6 @@ not a is true
"value": {
"TINYINT":1
}
},
{
"item_type":"T_BOOL",
"result_type": {
"meta": {
"type":"TINYINT",
"collation":"binary",
"coercibility":"NUMERIC"
},
"accuracy": {
"length":-1,
"precision":-1,
"scale":-1
},
"flag":0,
"calc_type": {
"type":"NULL",
"collation":"invalid_type",
"coercibility":"INVALID"
}
},
"expr_info": [
"IS_CONST",
"CNT_CONST"
],
"rel_id": [
],
"value": {
"TINYINT":0
}
}
]
}
@ -909,8 +836,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_LT",
@ -939,8 +864,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -975,9 +898,6 @@ not a between 1 and 100
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1051,8 +971,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -1087,9 +1005,6 @@ not a between 1 and 100
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1165,8 +1080,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -1347,8 +1260,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -1530,8 +1441,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -1591,8 +1500,6 @@ not a between 1 and 100
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -1686,8 +1593,6 @@ not(not(a))
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_NOT",
@ -1716,8 +1621,6 @@ not(not(a))
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_BOOL",
@ -1745,8 +1648,6 @@ not(not(a))
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -1781,9 +1682,6 @@ not(not(a))
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1833,8 +1731,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_BOOL",
@ -1892,8 +1788,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -1928,9 +1822,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1975,8 +1866,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_BOOL",
@ -2004,8 +1893,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2040,9 +1927,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2085,8 +1969,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2121,9 +2003,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2168,8 +2047,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_BOOL",
@ -2197,8 +2074,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2233,9 +2108,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2278,8 +2150,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2314,9 +2184,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2361,8 +2228,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_BOOL",
@ -2390,8 +2255,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2426,9 +2289,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2471,8 +2331,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2507,9 +2365,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2552,8 +2407,6 @@ A or (A And B) or (A And C)
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2588,9 +2441,6 @@ A or (A And B) or (A And C)
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],

View File

@ -25,8 +25,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -149,8 +147,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_VARCHAR",
@ -279,8 +275,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -338,8 +332,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -464,8 +456,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -523,8 +513,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -649,8 +637,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -741,8 +727,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -835,8 +819,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -894,8 +876,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -988,8 +968,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"arg_case": {
"item_type":"T_REF_COLUMN",
"result_type": {
@ -1023,9 +1001,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1233,8 +1208,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"arg_case":null,
"default": {
"item_type":"T_VARCHAR",
@ -1295,8 +1268,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -1427,8 +1398,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"current_timestamp",
"children": [
],
@ -1465,8 +1434,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"utc_timestamp",
"children": [
],
@ -1502,8 +1469,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"floor",
"children": [
{
@ -1568,9 +1533,6 @@
"rel_id": [
0
],
"expr_level":-1,
"expr_levels": [
],
"children": [
],
"distinct":false,
@ -1616,9 +1578,6 @@
"rel_id": [
0
],
"expr_level":-1,
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -1653,9 +1612,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1713,8 +1669,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -1749,9 +1703,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -1793,12 +1744,10 @@
"rel_id": [
],
"id":-1,
"expr_level":-1,
"expr_levels": [
],
"output_column":0,
"is_set":true,
"is_cursor":false,
"is_multiset":false,
"column_types": [
],
"enum_set_values": [
@ -1836,8 +1785,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -1896,12 +1843,10 @@
"rel_id": [
],
"id":-1,
"expr_level":-1,
"expr_levels": [
],
"output_column":0,
"is_set":false,
"is_cursor":false,
"is_multiset":false,
"column_types": [
],
"enum_set_values": [
@ -1939,8 +1884,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_ROW",
@ -1967,8 +1910,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2003,9 +1944,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2053,9 +1991,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2099,12 +2034,10 @@
"rel_id": [
],
"id":-1,
"expr_level":-1,
"expr_levels": [
],
"output_column":0,
"is_set":false,
"is_cursor":false,
"is_multiset":false,
"column_types": [
],
"enum_set_values": [
@ -2174,8 +2107,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"get_sys_var",
"children": [
{
@ -2274,8 +2205,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"",
"children": [
{
@ -2350,9 +2279,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2394,8 +2320,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -2488,8 +2412,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -2550,8 +2472,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_ADD",
@ -2578,8 +2498,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2614,9 +2532,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2664,9 +2579,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2708,8 +2620,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2744,9 +2654,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2794,9 +2701,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2843,8 +2747,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2879,9 +2781,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -2956,8 +2855,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -2992,9 +2889,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3067,8 +2961,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -3103,9 +2995,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3153,9 +3042,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3202,8 +3088,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -3238,9 +3122,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3281,8 +3162,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -3435,8 +3314,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_GE",
@ -3465,8 +3342,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -3501,9 +3376,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3577,8 +3449,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -3613,9 +3483,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3692,8 +3559,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_ADD",
@ -3721,8 +3586,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -3819,9 +3682,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3867,8 +3727,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -3903,9 +3761,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -3946,8 +3801,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -4041,8 +3894,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_GE",
@ -4072,8 +3923,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -4108,9 +3957,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -4151,8 +3997,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -4245,8 +4089,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -4281,9 +4123,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -4363,8 +4202,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_AND",
@ -4394,8 +4231,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_GT",
@ -4424,8 +4259,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_ADD",
@ -4453,8 +4286,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_INT",
@ -4519,9 +4350,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -4599,8 +4427,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_VARCHAR",
@ -4665,8 +4491,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -4701,9 +4525,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -4783,8 +4604,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"cast",
"children": [
{
@ -4815,8 +4634,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"cast",
"children": [
{
@ -4847,8 +4664,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"set_collation",
"children": [
{
@ -4879,8 +4694,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"func":"set_collation",
"children": [
{
@ -5080,8 +4893,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_LIKE",
@ -5109,8 +4920,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -5145,9 +4954,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -5195,9 +5001,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -5276,8 +5079,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_OP_REGEXP",
@ -5304,8 +5105,6 @@
],
"rel_id": [
],
"expr_levels": [
],
"children": [
{
"item_type":"T_REF_COLUMN",
@ -5340,9 +5139,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],
@ -5390,9 +5186,6 @@
"synonym_name":"",
"synonym_db_name":"",
"column_name":"",
"expr_level":-1,
"expr_levels": [
],
"column_flags":0,
"enum_set_values": [
],

View File

@ -93,6 +93,7 @@ bool TestResolver::is_show_sql(const ParseNode &node) const
case T_SHOW_SERVER_STATUS:
case T_SHOW_WARNINGS:
case T_SHOW_RESTORE_PREVIEW:
case T_SHOW_SEQUENCES:
case T_SHOW_GRANTS:{
ret = true;
break;
@ -587,7 +588,7 @@ void TestResolver::do_stmt_tostring_test() {
memset(buffer, '\0', OB_MAX_SQL_LENGTH);
int64_t pos = 0;
ObSelectStmtPrinter stmt_printer(buffer, OB_MAX_SQL_LENGTH, &pos,
static_cast<ObSelectStmt*>(stmt), ObObjPrintParams(), NULL, false);
static_cast<ObSelectStmt*>(stmt), ObObjPrintParams());
stmt_printer.do_print();
buffer[pos] = '\0';
of_tmp << "*************** Case "<< ++case_id << " ***************" << std::endl;

View File

@ -291,6 +291,13 @@ protected:
void get_query_range(const char *expr, const char *&json_expr);
void get_query_range_filter(const char *sql_expr, const char *&json_expr, char *buf, int64_t &pos, const int64_t cols_num);
void get_query_range_collation(const char *expr, const char *&json_expr, char *buf, int64_t &pos);
inline bool is_min_to_max_range(const ObQueryRangeArray &ranges)
{
return 1 == ranges.count() &&
NULL != ranges.at(0) &&
ranges.at(0)->start_key_.is_min_row() &&
ranges.at(0)->end_key_.is_max_row();
}
};
ObQueryRangeTest::ObQueryRangeTest()
@ -530,7 +537,7 @@ void ObQueryRangeTest::get_query_range(const char *sql_expr, const char *&json_e
} else {
databuff_printf(buf, BUF_LEN, pos, "query range need to deep copy\n");
}
OK(query_range.is_min_to_max_range(flag, NULL));
flag = is_min_to_max_range(ranges);
if (flag) {
databuff_printf(buf, BUF_LEN, pos, "is min_to_max_range\n");
} else {
@ -586,7 +593,7 @@ void ObQueryRangeTest::get_query_range_filter(const char *sql_expr, const char *
OK(query_range.get_tablet_ranges(allocator, exec_ctx_, ranges, get_methods, NULL));
}
OK(query_range.is_min_to_max_range(flag, NULL));
flag = is_min_to_max_range(ranges);
if (flag) {
databuff_printf(buf, BUF_LEN, pos, "is min_to_max_range\n");
} else {
@ -636,8 +643,7 @@ void ObQueryRangeTest::get_query_range_collation(const char *sql_expr, const cha
OK(query_range.preliminary_extract_query_range(range_columns, expr, dtc_params, &exec_ctx_));
OK(query_range.final_extract_query_range(exec_ctx_, NULL));
OK(query_range.get_tablet_ranges(ranges, get_methods, dtc_params));
bool flag = false;
OK(query_range.is_min_to_max_range(flag, NULL));
bool flag = is_min_to_max_range(ranges);
if (flag) {
databuff_printf(buf, BUF_LEN, pos, "is min_to_max_range\n");
} else {