SQL Audit adds network_wait_time column placeholder

This commit is contained in:
AntiTopQuark
2024-02-09 17:14:46 +00:00
committed by ob-robot
parent 211948977a
commit 2919f17c94
7 changed files with 76 additions and 4 deletions

View File

@ -545,7 +545,8 @@ bool ObGvSqlAudit::is_perf_event_dep_field(uint64_t col_id) {
case INDEX_BLOCK_CACHE_HIT: case INDEX_BLOCK_CACHE_HIT:
case BLOCKSCAN_BLOCK_CNT: case BLOCKSCAN_BLOCK_CNT:
case BLOCKSCAN_ROW_CNT: case BLOCKSCAN_ROW_CNT:
case PUSHDOWN_STORAGE_FILTER_ROW_CNT: { case PUSHDOWN_STORAGE_FILTER_ROW_CNT:
case NETWORK_WAIT_TIME: {
is_contain = true; is_contain = true;
break; break;
} }
@ -1052,6 +1053,9 @@ int ObGvSqlAudit::fill_cells(obmysql::ObMySQLRequestRecord &record)
case PLSQL_EXEC_TIME: { case PLSQL_EXEC_TIME: {
cells[cell_idx].set_null(); cells[cell_idx].set_null();
} break; } break;
case NETWORK_WAIT_TIME: {
cells[cell_idx].set_null();
} break;
default: { default: {
ret = OB_ERR_UNEXPECTED; ret = OB_ERR_UNEXPECTED;
SERVER_LOG(WARN, "invalid column id", K(ret), K(cell_idx), K(col_id)); SERVER_LOG(WARN, "invalid column id", K(ret), K(cell_idx), K(col_id));

View File

@ -170,6 +170,7 @@ private:
PL_TRACE_ID, PL_TRACE_ID,
PLSQL_EXEC_TIME, PLSQL_EXEC_TIME,
NETWORK_WAIT_TIME,
}; };
const static int64_t PRI_KEY_IP_IDX = 0; const static int64_t PRI_KEY_IP_IDX = 0;

View File

@ -11104,6 +11104,21 @@ int ObInnerTableSchema::all_virtual_sql_audit_schema(ObTableSchema &table_schema
false, //is_nullable false, //is_nullable
false); //is_autoincrement false); //is_autoincrement
} }
if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA("network_wait_time", //column_name
++column_id, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObUInt64Type, //column_type
CS_TYPE_INVALID, //column_collation_type
sizeof(uint64_t), //column_length
-1, //column_precision
-1, //column_scale
true, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) { if (OB_SUCC(ret)) {
table_schema.get_part_option().set_part_num(1); table_schema.get_part_option().set_part_num(1);
table_schema.set_part_level(PARTITION_LEVEL_ONE); table_schema.set_part_level(PARTITION_LEVEL_ONE);
@ -12870,7 +12885,24 @@ int ObInnerTableSchema::all_virtual_sql_audit_all_virtual_sql_audit_i1_schema(Ob
true);//is_storing_column true);//is_storing_column
} }
table_schema.set_max_used_column_id(column_id + 100); if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("network_wait_time", //column_name
column_id + 101, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObUInt64Type, //column_type
CS_TYPE_INVALID, //column_collation_type
sizeof(uint64_t), //column_length
-1, //column_precision
-1, //column_scale
true,//is_nullable
false,//is_autoincrement
false,//is_hidden
true);//is_storing_column
}
table_schema.set_max_used_column_id(column_id + 101);
return ret; return ret;
} }

View File

@ -1558,6 +1558,21 @@ int ObInnerTableSchema::all_virtual_sql_audit_ora_schema(ObTableSchema &table_sc
false, //is_nullable false, //is_nullable
false); //is_autoincrement false); //is_autoincrement
} }
if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA("NETWORK_WAIT_TIME", //column_name
++column_id, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObNumberType, //column_type
CS_TYPE_INVALID, //column_collation_type
38, //column_length
38, //column_precision
0, //column_scale
true, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) { if (OB_SUCC(ret)) {
table_schema.get_part_option().set_part_num(1); table_schema.get_part_option().set_part_num(1);
table_schema.set_part_level(PARTITION_LEVEL_ONE); table_schema.set_part_level(PARTITION_LEVEL_ONE);
@ -3324,7 +3339,24 @@ int ObInnerTableSchema::all_virtual_sql_audit_ora_all_virtual_sql_audit_i1_schem
true);//is_storing_column true);//is_storing_column
} }
table_schema.set_max_used_column_id(column_id + 100); if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("NETWORK_WAIT_TIME", //column_name
column_id + 101, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObNumberType, //column_type
CS_TYPE_INVALID, //column_collation_type
38, //column_length
38, //column_precision
0, //column_scale
true,//is_nullable
false,//is_autoincrement
false,//is_hidden
true);//is_storing_column
}
table_schema.set_max_used_column_id(column_id + 101);
return ret; return ret;
} }

View File

@ -8160,7 +8160,8 @@ def_table_schema(
('tx_internal_route_version', 'uint'), ('tx_internal_route_version', 'uint'),
('flt_trace_id', 'varchar:OB_MAX_SPAN_LENGTH'), ('flt_trace_id', 'varchar:OB_MAX_SPAN_LENGTH'),
('pl_trace_id', 'varchar:OB_MAX_HOST_NAME_LENGTH', 'true'), ('pl_trace_id', 'varchar:OB_MAX_HOST_NAME_LENGTH', 'true'),
('plsql_exec_time', 'int') ('plsql_exec_time', 'int'),
('network_wait_time', 'uint', 'true'),
], ],
partition_columns = ['svr_ip', 'svr_port'], partition_columns = ['svr_ip', 'svr_port'],
vtable_route_policy = 'distributed', vtable_route_policy = 'distributed',

View File

@ -782,6 +782,7 @@ tx_internal_route_version bigint(20) unsigned NO NULL
flt_trace_id varchar(1024) NO NULL flt_trace_id varchar(1024) NO NULL
pl_trace_id varchar(128) YES NULL pl_trace_id varchar(128) YES NULL
plsql_exec_time bigint(20) NO NULL plsql_exec_time bigint(20) NO NULL
network_wait_time bigint(20) unsigned YES NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_audit; select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_audit;
IF(count(*) >= 0, 1, 0) IF(count(*) >= 0, 1, 0)
1 1

View File

@ -855,6 +855,7 @@ tx_internal_route_version bigint(20) unsigned NO NULL
flt_trace_id varchar(1024) NO NULL flt_trace_id varchar(1024) NO NULL
pl_trace_id varchar(128) YES NULL pl_trace_id varchar(128) YES NULL
plsql_exec_time bigint(20) NO NULL plsql_exec_time bigint(20) NO NULL
network_wait_time bigint(20) unsigned YES NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_audit; select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_audit;
IF(count(*) >= 0, 1, 0) IF(count(*) >= 0, 1, 0)
1 1