sql plan monitor occupy position
This commit is contained in:
@ -827,6 +827,22 @@ int ObVirtualSqlPlanMonitor::convert_node_to_row(ObMonitorNode &node, ObNewRow *
|
|||||||
cells[cell_idx].set_int(int_value);
|
cells[cell_idx].set_int(int_value);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case WORKAREA_MEM: {
|
||||||
|
cells[cell_idx].set_null();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case WORKAREA_MAX_MEM: {
|
||||||
|
cells[cell_idx].set_null();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case WORKAREA_TEMPSEG: {
|
||||||
|
cells[cell_idx].set_null();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case WORKAREA_MAX_TEMPSEG: {
|
||||||
|
cells[cell_idx].set_null();
|
||||||
|
break;
|
||||||
|
}
|
||||||
default: {
|
default: {
|
||||||
ret = OB_ERR_UNEXPECTED;
|
ret = OB_ERR_UNEXPECTED;
|
||||||
SERVER_LOG(WARN, "invalid column id", K(cell_idx),
|
SERVER_LOG(WARN, "invalid column id", K(cell_idx),
|
||||||
|
|||||||
@ -105,7 +105,11 @@ private:
|
|||||||
OUTPUT_BATCHES, // for batch
|
OUTPUT_BATCHES, // for batch
|
||||||
SKIPPED_ROWS_COUNT, // for batch
|
SKIPPED_ROWS_COUNT, // for batch
|
||||||
DB_TIME,
|
DB_TIME,
|
||||||
USER_IO_WAIT_TIME
|
USER_IO_WAIT_TIME,
|
||||||
|
WORKAREA_MEM,
|
||||||
|
WORKAREA_MAX_MEM,
|
||||||
|
WORKAREA_TEMPSEG,
|
||||||
|
WORKAREA_MAX_TEMPSEG
|
||||||
};
|
};
|
||||||
DISALLOW_COPY_AND_ASSIGN(ObVirtualSqlPlanMonitor);
|
DISALLOW_COPY_AND_ASSIGN(ObVirtualSqlPlanMonitor);
|
||||||
|
|
||||||
|
|||||||
@ -5861,6 +5861,66 @@ int ObInnerTableSchema::all_virtual_sql_plan_monitor_schema(ObTableSchema &table
|
|||||||
false, //is_nullable
|
false, //is_nullable
|
||||||
false); //is_autoincrement
|
false); //is_autoincrement
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_MEM", //column_name
|
||||||
|
++column_id, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false, //is_nullable
|
||||||
|
false); //is_autoincrement
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_MAX_MEM", //column_name
|
||||||
|
++column_id, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false, //is_nullable
|
||||||
|
false); //is_autoincrement
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_TEMPSEG", //column_name
|
||||||
|
++column_id, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false, //is_nullable
|
||||||
|
false); //is_autoincrement
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_MAX_TEMPSEG", //column_name
|
||||||
|
++column_id, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false, //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);
|
||||||
@ -6594,7 +6654,75 @@ int ObInnerTableSchema::all_virtual_sql_plan_monitor_all_virtual_sql_plan_monito
|
|||||||
true);//is_storing_column
|
true);//is_storing_column
|
||||||
}
|
}
|
||||||
|
|
||||||
table_schema.set_max_used_column_id(column_id + 39);
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_MEM", //column_name
|
||||||
|
column_id + 40, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_MAX_MEM", //column_name
|
||||||
|
column_id + 41, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_TEMPSEG", //column_name
|
||||||
|
column_id + 42, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_MAX_TEMPSEG", //column_name
|
||||||
|
column_id + 43, //column_id
|
||||||
|
0, //rowkey_id
|
||||||
|
0, //index_id
|
||||||
|
0, //part_key_pos
|
||||||
|
ObIntType, //column_type
|
||||||
|
CS_TYPE_INVALID, //column_collation_type
|
||||||
|
sizeof(int64_t), //column_length
|
||||||
|
-1, //column_precision
|
||||||
|
-1, //column_scale
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
table_schema.set_max_used_column_id(column_id + 43);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -643,6 +643,66 @@ int ObInnerTableSchema::all_virtual_sql_plan_monitor_ora_schema(ObTableSchema &t
|
|||||||
false, //is_nullable
|
false, //is_nullable
|
||||||
false); //is_autoincrement
|
false); //is_autoincrement
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_MEM", //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
|
||||||
|
false, //is_nullable
|
||||||
|
false); //is_autoincrement
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_MAX_MEM", //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
|
||||||
|
false, //is_nullable
|
||||||
|
false); //is_autoincrement
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_TEMPSEG", //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
|
||||||
|
false, //is_nullable
|
||||||
|
false); //is_autoincrement
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA("WORKAREA_MAX_TEMPSEG", //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
|
||||||
|
false, //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);
|
||||||
@ -1372,7 +1432,75 @@ int ObInnerTableSchema::all_virtual_sql_plan_monitor_ora_all_virtual_sql_plan_mo
|
|||||||
true);//is_storing_column
|
true);//is_storing_column
|
||||||
}
|
}
|
||||||
|
|
||||||
table_schema.set_max_used_column_id(column_id + 39);
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_MEM", //column_name
|
||||||
|
column_id + 40, //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
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_MAX_MEM", //column_name
|
||||||
|
column_id + 41, //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
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_TEMPSEG", //column_name
|
||||||
|
column_id + 42, //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
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
ADD_COLUMN_SCHEMA_WITH_COLUMN_FLAGS("WORKAREA_MAX_TEMPSEG", //column_name
|
||||||
|
column_id + 43, //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
|
||||||
|
false,//is_nullable
|
||||||
|
false,//is_autoincrement
|
||||||
|
false,//is_hidden
|
||||||
|
true);//is_storing_column
|
||||||
|
}
|
||||||
|
|
||||||
|
table_schema.set_max_used_column_id(column_id + 43);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -10952,6 +10952,10 @@ def_table_schema(
|
|||||||
('SKIPPED_ROWS_COUNT', 'int'),
|
('SKIPPED_ROWS_COUNT', 'int'),
|
||||||
('DB_TIME', 'int'),
|
('DB_TIME', 'int'),
|
||||||
('USER_IO_WAIT_TIME', 'int'),
|
('USER_IO_WAIT_TIME', 'int'),
|
||||||
|
('WORKAREA_MEM', 'int'),
|
||||||
|
('WORKAREA_MAX_MEM', 'int'),
|
||||||
|
('WORKAREA_TEMPSEG', 'int'),
|
||||||
|
('WORKAREA_MAX_TEMPSEG', 'int'),
|
||||||
],
|
],
|
||||||
partition_columns = ['SVR_IP', 'SVR_PORT'],
|
partition_columns = ['SVR_IP', 'SVR_PORT'],
|
||||||
vtable_route_policy = 'distributed',
|
vtable_route_policy = 'distributed',
|
||||||
|
|||||||
@ -2042,6 +2042,10 @@ OUTPUT_BATCHES bigint(20) NO NULL
|
|||||||
SKIPPED_ROWS_COUNT bigint(20) NO NULL
|
SKIPPED_ROWS_COUNT bigint(20) NO NULL
|
||||||
DB_TIME bigint(20) NO NULL
|
DB_TIME bigint(20) NO NULL
|
||||||
USER_IO_WAIT_TIME bigint(20) NO NULL
|
USER_IO_WAIT_TIME bigint(20) NO NULL
|
||||||
|
WORKAREA_MEM bigint(20) NO NULL
|
||||||
|
WORKAREA_MAX_MEM bigint(20) NO NULL
|
||||||
|
WORKAREA_TEMPSEG bigint(20) NO NULL
|
||||||
|
WORKAREA_MAX_TEMPSEG bigint(20) NO NULL
|
||||||
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_plan_monitor;
|
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_plan_monitor;
|
||||||
IF(count(*) >= 0, 1, 0)
|
IF(count(*) >= 0, 1, 0)
|
||||||
1
|
1
|
||||||
|
|||||||
@ -4635,6 +4635,10 @@ OUTPUT_BATCHES bigint(20) NO NULL
|
|||||||
SKIPPED_ROWS_COUNT bigint(20) NO NULL
|
SKIPPED_ROWS_COUNT bigint(20) NO NULL
|
||||||
DB_TIME bigint(20) NO NULL
|
DB_TIME bigint(20) NO NULL
|
||||||
USER_IO_WAIT_TIME bigint(20) NO NULL
|
USER_IO_WAIT_TIME bigint(20) NO NULL
|
||||||
|
WORKAREA_MEM bigint(20) NO NULL
|
||||||
|
WORKAREA_MAX_MEM bigint(20) NO NULL
|
||||||
|
WORKAREA_TEMPSEG bigint(20) NO NULL
|
||||||
|
WORKAREA_MAX_TEMPSEG bigint(20) NO NULL
|
||||||
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_plan_monitor;
|
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_sql_plan_monitor;
|
||||||
IF(count(*) >= 0, 1, 0)
|
IF(count(*) >= 0, 1, 0)
|
||||||
1
|
1
|
||||||
|
|||||||
Reference in New Issue
Block a user