[FEAT MERGE] skip scan feature and performance optimization
This commit is contained in:
3
src/sql/parser/sql_parser_mysql_mode.l
Normal file → Executable file
3
src/sql/parser/sql_parser_mysql_mode.l
Normal file → Executable file
@ -881,6 +881,9 @@ Timestamp{whitespace}?\"[^\"]*\" {
|
||||
<hint>NO_INDEX { return NO_INDEX_HINT; }
|
||||
<hint>USE_DAS { return USE_DAS_HINT; }
|
||||
<hint>NO_USE_DAS { return NO_USE_DAS_HINT; }
|
||||
<hint>INDEX_SS { return INDEX_SS_HINT; }
|
||||
<hint>INDEX_SS_ASC { return INDEX_SS_ASC_HINT; }
|
||||
<hint>INDEX_SS_DESC { return INDEX_SS_DESC_HINT; }
|
||||
<hint>USE_NL { return USE_NL; }
|
||||
<hint>NO_USE_NL { return NO_USE_NL; }
|
||||
<hint>USE_NL_MATERIALIZATION { return USE_NL_MATERIALIZATION; }
|
||||
|
||||
16
src/sql/parser/sql_parser_mysql_mode.y
Normal file → Executable file
16
src/sql/parser/sql_parser_mysql_mode.y
Normal file → Executable file
@ -166,7 +166,9 @@ COALESCE_SQ NO_COALESCE_SQ COUNT_TO_EXISTS NO_COUNT_TO_EXISTS LEFT_TO_ANTI NO_LE
|
||||
ELIMINATE_JOIN NO_ELIMINATE_JOIN PUSH_LIMIT NO_PUSH_LIMIT PULLUP_EXPR NO_PULLUP_EXPR
|
||||
WIN_MAGIC NO_WIN_MAGIC
|
||||
// optimize hint
|
||||
INDEX_HINT FULL_HINT NO_INDEX_HINT USE_DAS_HINT NO_USE_DAS_HINT LEADING_HINT ORDERED
|
||||
INDEX_HINT FULL_HINT NO_INDEX_HINT USE_DAS_HINT NO_USE_DAS_HINT
|
||||
INDEX_SS_HINT INDEX_SS_ASC_HINT INDEX_SS_DESC_HINT
|
||||
LEADING_HINT ORDERED
|
||||
USE_NL USE_MERGE USE_HASH NO_USE_HASH NO_USE_MERGE NO_USE_NL
|
||||
USE_NL_MATERIALIZATION NO_USE_NL_MATERIALIZATION
|
||||
USE_HASH_AGGREGATION NO_USE_HASH_AGGREGATION
|
||||
@ -8680,6 +8682,18 @@ INDEX_HINT '(' qb_name_option relation_factor_in_hint NAME_OB ')'
|
||||
{
|
||||
malloc_non_terminal_node($$, result->malloc_pool_, T_NO_USE_DAS_HINT, 2, $3, $4);
|
||||
}
|
||||
| INDEX_SS_HINT '(' qb_name_option relation_factor_in_hint NAME_OB ')'
|
||||
{
|
||||
malloc_non_terminal_node($$, result->malloc_pool_, T_INDEX_SS_HINT, 3, $3, $4, $5);
|
||||
}
|
||||
| INDEX_SS_ASC_HINT '(' qb_name_option relation_factor_in_hint NAME_OB ')'
|
||||
{
|
||||
malloc_non_terminal_node($$, result->malloc_pool_, T_INDEX_SS_ASC_HINT, 3, $3, $4, $5);
|
||||
}
|
||||
| INDEX_SS_DESC_HINT '(' qb_name_option relation_factor_in_hint NAME_OB ')'
|
||||
{
|
||||
malloc_non_terminal_node($$, result->malloc_pool_, T_INDEX_SS_DESC_HINT, 3, $3, $4, $5);
|
||||
}
|
||||
| LEADING_HINT '(' qb_name_option relation_factor_in_leading_hint_list ')'
|
||||
{
|
||||
malloc_non_terminal_node($$, result->malloc_pool_, T_LEADING, 2, $3, $4);
|
||||
|
||||
Reference in New Issue
Block a user