patch backup piece to 3.1. open source

This commit is contained in:
xuhuleon
2021-09-02 15:26:39 +08:00
committed by wangzelin.wzl
parent 153f16ad8a
commit 62cb470338
314 changed files with 88279 additions and 35466 deletions

View File

@ -199,6 +199,7 @@ END_P SET_VAR DELIMITER
BACKUP BALANCE BASE BASELINE BASELINE_ID BASIC BEGI BINDING BINLOG BIT BLOCK BLOCK_INDEX
BLOCK_SIZE BLOOM_FILTER BOOL BOOLEAN BOOTSTRAP BTREE BYTE BREADTH BUCKETS BISON_LIST BACKUPSET
BACKED BACKUPPIECE BACKUP_BACKUP_DEST BACKUPROUND
CACHE CANCEL CASCADED CAST CATALOG_NAME CHAIN CHANGED CHARSET CHECKSUM CHECKPOINT CHUNK CIPHER
CLASS_ORIGIN CLEAN CLEAR CLIENT CLOG CLOSE CLUSTER CLUSTER_ID CLUSTER_NAME COALESCE COLUMN_STAT
@ -255,7 +256,7 @@ END_P SET_VAR DELIMITER
PERCENT_RANK PHASE PLAN PHYSICAL PLANREGRESS PLUGIN PLUGIN_DIR PLUGINS POINT POLYGON PERFORMANCE
PROTECTION PRIORITY PL POOL PORT POSITION PREPARE PRESERVE PREV PRIMARY_ZONE PRIVILEGES PROCESS
PROCESSLIST PROFILE PROFILES PROXY PRECEDING PCTFREE P_ENTITY P_CHUNK PRIMARY_ROOTSERVICE_LIST
PRIMARY_CLUSTER_ID PUBLIC PROGRESSIVE_MERGE_NUM PS
PRIMARY_CLUSTER_ID PUBLIC PROGRESSIVE_MERGE_NUM PREVIEW PS
QUARTER QUERY QUEUE_TIME QUICK
@ -282,10 +283,10 @@ END_P SET_VAR DELIMITER
TABLE_CHECKSUM TABLE_MODE TABLE_ID TABLE_NAME TABLEGROUPS TABLES TABLESPACE TABLET TABLET_MAX_SIZE
TEMPLATE TEMPORARY TEMPTABLE TENANT TEXT THAN TIME TIMESTAMP TIMESTAMPADD TIMESTAMPDIFF TP_NO
TP_NAME TRACE TRADITIONAL TRANSACTION TRIGGERS TRIM TRUNCATE TYPE TYPES TASK TABLET_SIZE
TABLEGROUP_ID TENANT_ID THROTTLE TIME_ZONE_INFO
TABLEGROUP_ID TENANT_ID THROTTLE TIME_ZONE_INFO TIMES
UNCOMMITTED UNDEFINED UNDO_BUFFER_SIZE UNDOFILE UNICODE UNINSTALL UNIT UNIT_NUM UNLOCKED UNTIL
UNUSUAL UPGRADE USE_BLOOM_FILTER UNKNOWN USE_FRM USER USER_RESOURCES UNBOUNDED
UNUSUAL UPGRADE USE_BLOOM_FILTER UNKNOWN USE_FRM USER USER_RESOURCES UNBOUNDED UP
VALID VALUE VARIANCE VARIABLES VERBOSE VERIFY VIEW VISIBLE VIRTUAL_COLUMN_ID VALIDATE VAR_POP
VAR_SAMP
@ -427,6 +428,7 @@ END_P SET_VAR DELIMITER
%type <node> opt_qb_name
%type <node> opt_force_purge
%type <node> opt_sql_throttle_for_priority opt_sql_throttle_using_cond sql_throttle_one_or_more_metrics sql_throttle_metric get_format_unit
%type <node> opt_copy_id opt_backup_dest opt_preview opt_backup_backup_dest opt_tenant_info opt_with_active_piece
%start sql_stmt
%%
////////////////////////////////////////////////////////////////
@ -9359,7 +9361,13 @@ SHOW opt_full TABLES opt_from_or_in_database_clause opt_show_condition
malloc_terminal_node($$, result->malloc_pool_, T_SHOW_RECYCLEBIN);
}
| SHOW CREATE TABLEGROUP relation_name
{ malloc_non_terminal_node($$, result->malloc_pool_, T_SHOW_CREATE_TABLEGROUP, 1, $4); }
{
malloc_non_terminal_node($$, result->malloc_pool_, T_SHOW_CREATE_TABLEGROUP, 1, $4);
}
| SHOW RESTORE PREVIEW
{
malloc_terminal_node($$, result->malloc_pool_, T_SHOW_RESTORE_PREVIEW);
}
;
databases_or_schemas:
@ -11316,10 +11324,10 @@ ALTER SYSTEM opt_set alter_system_set_parameter_actions
malloc_non_terminal_node($$, result->malloc_pool_, T_ALTER_SYSTEM_SET_PARAMETER, 1, $$);
}
|
ALTER SYSTEM SET_TP alter_system_settp_actions
ALTER SYSTEM SET_TP alter_system_settp_actions opt_server_or_zone
{
merge_nodes($$, result, T_SYTEM_SETTP_LIST, $4);
malloc_non_terminal_node($$, result->malloc_pool_, T_ALTER_SYSTEM_SETTP, 1, $$);
malloc_non_terminal_node($$, result->malloc_pool_, T_ALTER_SYSTEM_SETTP, 2, $$, $5);
}
|
ALTER SYSTEM CLEAR LOCATION CACHE opt_server_or_zone
@ -11414,14 +11422,31 @@ ALTER SYSTEM SET DISK VALID ip_port
malloc_non_terminal_node($$, result->malloc_pool_, T_SET_DISK_VALID, 1, $6);
}
|
ALTER SYSTEM ADD RESTORE SOURCE STRING_VALUE
{
malloc_non_terminal_node($$, result->malloc_pool_, T_ADD_RESTORE_SOURCE, 1, $6);
}
|
ALTER SYSTEM CLEAR RESTORE SOURCE
{
malloc_terminal_node($$, result->malloc_pool_, T_CLEAR_RESTORE_SOURCE);
}
|
ALTER SYSTEM RESTORE tenant_name FROM STRING_VALUE
{
malloc_non_terminal_node($$, result->malloc_pool_, T_RESTORE_TENANT, 2, $4, $6);
}
|
ALTER SYSTEM RESTORE relation_name FROM relation_name AT STRING_VALUE UNTIL STRING_VALUE WITH STRING_VALUE
ALTER SYSTEM RESTORE table_list FOR relation_name FROM relation_name AT STRING_VALUE UNTIL STRING_VALUE WITH STRING_VALUE
{
malloc_non_terminal_node($$, result->malloc_pool_, T_PHYSICAL_RESTORE_TENANT, 5, $4, $6, $8, $10, $12);
ParseNode *tables = NULL;
merge_nodes(tables, result, T_TABLE_LIST, $4);
malloc_non_terminal_node($$, result->malloc_pool_, T_PHYSICAL_RESTORE_TENANT, 6, $6, $8, $10, $12, $14, tables);
}
|
ALTER SYSTEM RESTORE relation_name FROM relation_name opt_backup_dest UNTIL STRING_VALUE WITH STRING_VALUE opt_preview
{
malloc_non_terminal_node($$, result->malloc_pool_, T_PHYSICAL_RESTORE_TENANT, 6, $4, $6, $7, $9, $11, $12);
}
|
ALTER SYSTEM CHANGE TENANT change_tenant_name_or_tenant_id
@ -11520,7 +11545,7 @@ ALTER SYSTEM RESUME BACKUP
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
}
|
ALTER SYSTEM DELETE EXPIRED BACKUP
ALTER SYSTEM DELETE EXPIRED BACKUP opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
@ -11530,10 +11555,10 @@ ALTER SYSTEM DELETE EXPIRED BACKUP
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $6);
}
|
ALTER SYSTEM DELETE BACKUPSET INTNUM
ALTER SYSTEM DELETE BACKUPSET INTNUM opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
@ -11543,10 +11568,10 @@ ALTER SYSTEM DELETE BACKUPSET INTNUM
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = $5->value_;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $6);
}
|
ALTER SYSTEM VALIDATE DATABASE
ALTER SYSTEM VALIDATE DATABASE opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
@ -11556,10 +11581,10 @@ ALTER SYSTEM VALIDATE DATABASE
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $5);
}
|
ALTER SYSTEM VALIDATE BACKUPSET INTNUM
ALTER SYSTEM VALIDATE BACKUPSET INTNUM opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
@ -11569,10 +11594,10 @@ ALTER SYSTEM VALIDATE BACKUPSET INTNUM
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = $5->value_;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $6);
}
|
ALTER SYSTEM CANCEL VALIDATE INTNUM
ALTER SYSTEM CANCEL VALIDATE INTNUM opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
@ -11582,7 +11607,7 @@ ALTER SYSTEM CANCEL VALIDATE INTNUM
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = $5->value_;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $6);
}
|
ALTER SYSTEM DELETE OBSOLETE BACKUP
@ -11601,13 +11626,180 @@ ALTER SYSTEM CANCEL DELETE BACKUP
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 10;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
}
|
ALTER SYSTEM CANCEL BACKUP BACKUPSET
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 9;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
}
|
ALTER SYSTEM DELETE BACKUPPIECE INTNUM opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 11;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = $5->value_;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $6);
}
|
ALTER SYSTEM CANCEL BACKUP BACKUPPIECE
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 13;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
}
|
ALTER SYSTEM DELETE BACKUPROUND INTNUM opt_copy_id
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 14;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = $5->value_;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_MANAGE, 3, type, value, $6);
}
|
ALTER SYSTEM BACKUP BACKUPSET ALL opt_tenant_info opt_backup_backup_dest
{
ParseNode *backup_set_id = NULL;
malloc_terminal_node(backup_set_id, result->malloc_pool_, T_INT);
backup_set_id->value_ = 0;
ParseNode *max_backup_times = NULL;
malloc_terminal_node(max_backup_times, result->malloc_pool_, T_INT);
max_backup_times->value_ = -1;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_BACKUPSET, 4, backup_set_id, $6, $7, max_backup_times);
}
|
ALTER SYSTEM BACKUP BACKUPSET opt_equal_mark INTNUM opt_tenant_info opt_backup_backup_dest
{
(void)($5);
ParseNode *backup_set_id= NULL;
malloc_terminal_node(backup_set_id, result->malloc_pool_, T_INT);
backup_set_id->value_ = $6->value_;
ParseNode *max_backup_times = NULL;
malloc_terminal_node(max_backup_times, result->malloc_pool_, T_INT);
max_backup_times->value_ = -1;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_BACKUPSET, 4, backup_set_id, $7, $8, max_backup_times);
}
|
ALTER SYSTEM BACKUP BACKUPSET ALL NOT BACKED UP INTNUM TIMES opt_tenant_info opt_backup_backup_dest
{
ParseNode *backup_set_id = NULL;
malloc_terminal_node(backup_set_id, result->malloc_pool_, T_INT);
backup_set_id->value_ = 0;
ParseNode *max_backup_times = NULL;
malloc_terminal_node(max_backup_times, result->malloc_pool_, T_INT);
max_backup_times->value_ = $9->value_;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_BACKUPSET, 4, backup_set_id, $11, $12, max_backup_times);
}
|
ALTER SYSTEM START BACKUP ARCHIVELOG
{
ParseNode *enable = NULL;
malloc_terminal_node(enable, result->malloc_pool_, T_INT);
enable->value_ = 1;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_ARCHIVELOG, 1, enable);
}
|
ALTER SYSTEM STOP BACKUP ARCHIVELOG
{
ParseNode *enable = NULL;
malloc_terminal_node(enable, result->malloc_pool_, T_INT);
enable->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_ARCHIVELOG, 1, enable);
}
|
ALTER SYSTEM BACKUP BACKUPPIECE ALL opt_with_active_piece opt_tenant_info opt_backup_backup_dest
{
ParseNode *piece_id = NULL;
malloc_terminal_node(piece_id, result->malloc_pool_, T_INT);
piece_id->value_ = 0;
ParseNode *backup_all = NULL;
malloc_terminal_node(backup_all, result->malloc_pool_, T_INT);
backup_all->value_ = 1;
ParseNode *backup_times = NULL;
malloc_terminal_node(backup_times, result->malloc_pool_, T_INT);
backup_times->value_ = -1;
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 0;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_BACKUPPIECE, 7, piece_id, backup_all, backup_times, $6, $7, $8, type);
}
|
ALTER SYSTEM BACKUP BACKUPPIECE opt_equal_mark INTNUM opt_with_active_piece opt_tenant_info opt_backup_backup_dest
{
ParseNode *piece_id = NULL;
malloc_terminal_node(piece_id, result->malloc_pool_, T_INT);
piece_id->value_ = $6->value_;
ParseNode *backup_all = NULL;
malloc_terminal_node(backup_all, result->malloc_pool_, T_INT);
backup_all->value_ = 0;
ParseNode *backup_times = NULL;
malloc_terminal_node(backup_times, result->malloc_pool_, T_INT);
backup_times->value_ = -1;
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 1;
(void)($5);
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_BACKUPPIECE, 7, piece_id, backup_all, backup_times, $7, $8, $9, type);
}
|
ALTER SYSTEM BACKUP BACKUPPIECE ALL NOT BACKED UP INTNUM TIMES opt_with_active_piece opt_tenant_info opt_backup_backup_dest
{
ParseNode *piece_id = NULL;
malloc_terminal_node(piece_id, result->malloc_pool_, T_INT);
piece_id->value_ = 0;
ParseNode *backup_all = NULL;
malloc_terminal_node(backup_all, result->malloc_pool_, T_INT);
backup_all->value_ = 1;
ParseNode *backup_times = NULL;
malloc_terminal_node(backup_times, result->malloc_pool_, T_INT);
backup_times->value_ = $9->value_;
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 2;
malloc_non_terminal_node($$, result->malloc_pool_, T_BACKUP_BACKUPPIECE, 7, piece_id, backup_all, backup_times, $11, $12, $13, type);
}
|
SET ENCRYPTION ON IDENTIFIED BY STRING_VALUE ONLY
{
ParseNode *mode = NULL;
@ -11926,6 +12118,41 @@ STRING_VALUE
}
;
opt_backup_dest:
/*empry*/
{
$$ = NULL;
}
| AT STRING_VALUE
{
$$ = $2;
}
;
opt_backup_backup_dest:
/*empty*/
{
$$ = NULL;
}
| BACKUP_BACKUP_DEST opt_equal_mark STRING_VALUE
{
(void)($2);
$$ = $3;
}
;
opt_with_active_piece:
/*empty*/
{
$$ = NULL;
}
| WITH ACTIVE
{
malloc_terminal_node($$, result->malloc_pool_, T_BOOL);
$$->value_ = 1;
}
;
opt_server_list:
/*empty*/
{
@ -12005,6 +12232,28 @@ zone_desc
}
;
opt_copy_id:
COPY INTNUM
{
malloc_non_terminal_node($$, result->malloc_pool_, T_COPY_ID, 1, $2);
}
| /* EMPTY */
{
$$ = NULL;
}
;
opt_preview:
PREVIEW
{
malloc_terminal_node($$, result->malloc_pool_, T_PREVIEW);
}
|
{
$$ = NULL;
}
;
opt_create_timestamp:
CREATE_TIMESTAMP opt_equal_mark INTNUM
{
@ -12258,6 +12507,27 @@ tenant_name
}
;
opt_tenant_info:
TENANT_ID opt_equal_mark INTNUM
{
(void)($2);
malloc_terminal_node($$, result->malloc_pool_, T_TENANT_ID);
$$->value_ = $3->value_;
}
|
TENANT opt_equal_mark relation_name_or_string
{
(void)($2);
malloc_terminal_node($$, result->malloc_pool_, T_TENANT_NAME);
$$->str_value_ = $3->str_value_;
$$->str_len_ = $3->str_len_;
}
| /* EMPTY */
{
$$ = NULL;
}
;
cache_name :
CACHE opt_equal_mark relation_name_or_string
{
@ -12377,6 +12647,21 @@ opt_server_or_zone opt_tenant_name
);
$$->value_ = $5[0]; /* scope */
}
|
BACKUP_BACKUP_DEST COMP_EQ STRING_VALUE opt_comment opt_config_scope
opt_server_or_zone opt_tenant_name
{
ParseNode *backup_backup_dest = NULL;
make_name_node(backup_backup_dest, result->malloc_pool_, "backup_backup_dest");
malloc_non_terminal_node($$, result->malloc_pool_, T_SYSTEM_ACTION, 5,
backup_backup_dest, /* param_name */
$3, /* param_value */
$4, /* comment */
$6, /* zone or server */
$7 /* tenant */
);
$$->value_ = $5[0]; /* scope */
}
;
opt_comment:
@ -13563,6 +13848,13 @@ ACCOUNT
| PERFORMANCE
| PROTECTION
| OBSOLETE
| BACKUPPIECE
| PREVIEW
| BACKUP_BACKUP_DEST
| BACKUPROUND
| UP
| TIMES
| BACKED
;
unreserved_keyword_special: