Fix MVREF_RUN_STATS views

This commit is contained in:
obdev
2024-02-09 10:31:29 +00:00
committed by ob-robot
parent ce55f20e6f
commit 2557752e6f
3 changed files with 60 additions and 8 deletions

View File

@ -760,7 +760,7 @@ int ObInnerTableSchema::cdb_mvref_run_stats_schema(ObTableSchema &table_schema)
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT B.TENANT_ID AS TENANT_ID, CAST(A.USER_NAME AS CHAR(128)) AS RUN_OWNER, B.REFRESH_ID AS REFRESH_ID, B.NUM_MVS_TOTAL AS NUM_MVS, CAST(B.MVIEWS AS CHAR(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS CHAR(4000)) AS BASE_TABLES, CAST(B.METHOD AS CHAR(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS CHAR(4000)) AS ROLLBACK_SEG, CAST(IF(B.PUSH_DEFERRED_RPC = 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(IF(B.REFRESH_AFTER_ERRORS = 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, B.PURGE_OPTION AS PURGE_OPTION, B.PARALLELISM AS PARALLELISM, B.HEAP_SIZE AS HEAP_SIZE, CAST(IF(B.ATOMIC_REFRESH = 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(IF(B.NESTED = 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(IF(B.OUT_OF_PLACE = 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, B.NUMBER_OF_FAILURES AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS DATETIME) AS START_TIME, CAST(B.END_TIME AS DATETIME) AS END_TIME, B.ELAPSED_TIME AS ELAPSED_TIME, CAST(0 AS SIGNED) AS LOG_SETUP_TIME, B.LOG_PURGE_TIME AS LOG_PURGE_TIME, CAST(IF(B.COMPLETE_STATS_AVALIABLE = 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM oceanbase.__all_virtual_user A, oceanbase.__all_virtual_mview_refresh_run_stats B WHERE A.TENANT_ID = B.TENANT_ID AND A.USER_ID = B.RUN_USER_ID )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT B.TENANT_ID AS TENANT_ID, CAST(A.USER_NAME AS CHAR(128)) AS RUN_OWNER, B.REFRESH_ID AS REFRESH_ID, B.NUM_MVS_TOTAL AS NUM_MVS, CAST(B.MVIEWS AS CHAR(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS CHAR(4000)) AS BASE_TABLES, CAST(B.METHOD AS CHAR(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS CHAR(4000)) AS ROLLBACK_SEG, CAST(IF(B.PUSH_DEFERRED_RPC = 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(IF(B.REFRESH_AFTER_ERRORS = 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, B.PURGE_OPTION AS PURGE_OPTION, B.PARALLELISM AS PARALLELISM, B.HEAP_SIZE AS HEAP_SIZE, CAST(IF(B.ATOMIC_REFRESH = 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(IF(B.NESTED = 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(IF(B.OUT_OF_PLACE = 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, B.NUMBER_OF_FAILURES AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS DATETIME) AS START_TIME, CAST(B.END_TIME AS DATETIME) AS END_TIME, B.ELAPSED_TIME AS ELAPSED_TIME, CAST(0 AS SIGNED) AS LOG_SETUP_TIME, B.LOG_PURGE_TIME AS LOG_PURGE_TIME, CAST(IF(B.COMPLETE_STATS_AVALIABLE = 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM oceanbase.__all_virtual_user A, oceanbase.__all_virtual_mview_refresh_run_stats B, ( SELECT C1.TENANT_ID AS TENANT_ID, C1.REFRESH_ID AS REFRESH_ID FROM oceanbase.__all_virtual_mview_refresh_stats C1, oceanbase.__all_virtual_table C2 WHERE C1.TENANT_ID = C2.TENANT_ID AND C1.MVIEW_ID = C2.TABLE_ID GROUP BY TENANT_ID, REFRESH_ID ) C WHERE A.TENANT_ID = B.TENANT_ID AND A.USER_ID = B.RUN_USER_ID AND B.TENANT_ID = C.TENANT_ID AND B.REFRESH_ID = C.REFRESH_ID )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}
@ -810,7 +810,7 @@ int ObInnerTableSchema::dba_mvref_run_stats_schema(ObTableSchema &table_schema)
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT CAST(A.USER_NAME AS CHAR(128)) AS RUN_OWNER, B.REFRESH_ID AS REFRESH_ID, B.NUM_MVS_TOTAL AS NUM_MVS, CAST(B.MVIEWS AS CHAR(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS CHAR(4000)) AS BASE_TABLES, CAST(B.METHOD AS CHAR(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS CHAR(4000)) AS ROLLBACK_SEG, CAST(IF(B.PUSH_DEFERRED_RPC = 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(IF(B.REFRESH_AFTER_ERRORS = 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, B.PURGE_OPTION AS PURGE_OPTION, B.PARALLELISM AS PARALLELISM, B.HEAP_SIZE AS HEAP_SIZE, CAST(IF(B.ATOMIC_REFRESH = 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(IF(B.NESTED = 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(IF(B.OUT_OF_PLACE = 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, B.NUMBER_OF_FAILURES AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS DATETIME) AS START_TIME, CAST(B.END_TIME AS DATETIME) AS END_TIME, B.ELAPSED_TIME AS ELAPSED_TIME, CAST(0 AS SIGNED) AS LOG_SETUP_TIME, B.LOG_PURGE_TIME AS LOG_PURGE_TIME, CAST(IF(B.COMPLETE_STATS_AVALIABLE = 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM oceanbase.__all_user A, oceanbase.__all_mview_refresh_run_stats B WHERE A.TENANT_ID = B.TENANT_ID AND A.USER_ID = B.RUN_USER_ID )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT CAST(A.USER_NAME AS CHAR(128)) AS RUN_OWNER, B.REFRESH_ID AS REFRESH_ID, B.NUM_MVS_TOTAL AS NUM_MVS, CAST(B.MVIEWS AS CHAR(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS CHAR(4000)) AS BASE_TABLES, CAST(B.METHOD AS CHAR(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS CHAR(4000)) AS ROLLBACK_SEG, CAST(IF(B.PUSH_DEFERRED_RPC = 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(IF(B.REFRESH_AFTER_ERRORS = 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, B.PURGE_OPTION AS PURGE_OPTION, B.PARALLELISM AS PARALLELISM, B.HEAP_SIZE AS HEAP_SIZE, CAST(IF(B.ATOMIC_REFRESH = 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(IF(B.NESTED = 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(IF(B.OUT_OF_PLACE = 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, B.NUMBER_OF_FAILURES AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS DATETIME) AS START_TIME, CAST(B.END_TIME AS DATETIME) AS END_TIME, B.ELAPSED_TIME AS ELAPSED_TIME, CAST(0 AS SIGNED) AS LOG_SETUP_TIME, B.LOG_PURGE_TIME AS LOG_PURGE_TIME, CAST(IF(B.COMPLETE_STATS_AVALIABLE = 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM oceanbase.__all_user A, oceanbase.__all_mview_refresh_run_stats B, ( SELECT C1.TENANT_ID AS TENANT_ID, C1.REFRESH_ID AS REFRESH_ID FROM oceanbase.__all_mview_refresh_stats C1, oceanbase.__all_table C2 WHERE C1.TENANT_ID = C2.TENANT_ID AND C1.MVIEW_ID = C2.TABLE_ID GROUP BY TENANT_ID, REFRESH_ID ) C WHERE A.TENANT_ID = B.TENANT_ID AND A.USER_ID = B.RUN_USER_ID AND B.TENANT_ID = C.TENANT_ID AND B.REFRESH_ID = C.REFRESH_ID )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}

View File

@ -1510,7 +1510,7 @@ int ObInnerTableSchema::dba_mvref_run_stats_ora_schema(ObTableSchema &table_sche
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT CAST(A.USER_NAME AS VARCHAR2(128)) AS RUN_OWNER, CAST(B.REFRESH_ID AS NUMBER) AS REFRESH_ID, CAST(B.NUM_MVS_TOTAL AS NUMBER) AS NUM_MVS, CAST(B.MVIEWS AS VARCHAR2(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS VARCHAR2(4000)) AS BASE_TABLES, CAST(B.METHOD AS VARCHAR2(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS VARCHAR2(4000)) AS ROLLBACK_SEG, CAST(DECODE(B.PUSH_DEFERRED_RPC, 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(DECODE(B.REFRESH_AFTER_ERRORS, 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, CAST(B.PURGE_OPTION AS NUMBER) AS PURGE_OPTION, CAST(B.PARALLELISM AS NUMBER) AS PARALLELISM, CAST(B.HEAP_SIZE AS NUMBER) AS HEAP_SIZE, CAST(DECODE(B.ATOMIC_REFRESH, 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(DECODE(B.NESTED, 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(DECODE(B.OUT_OF_PLACE, 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, CAST(B.NUMBER_OF_FAILURES AS NUMBER) AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS TIMESTAMP(6)) AS START_TIME, CAST(B.END_TIME AS TIMESTAMP(6)) AS END_TIME, CAST(B.ELAPSED_TIME AS NUMBER) AS ELAPSED_TIME, CAST(0 AS NUMBER) AS LOG_SETUP_TIME, CAST(B.LOG_PURGE_TIME AS NUMBER) AS LOG_PURGE_TIME, CAST(DECODE(B.COMPLETE_STATS_AVALIABLE, 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM SYS.ALL_VIRTUAL_USER_REAL_AGENT A, SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B WHERE A.USER_ID = B.RUN_USER_ID AND A.TENANT_ID = EFFECTIVE_TENANT_ID() AND B.TENANT_ID = EFFECTIVE_TENANT_ID() )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT CAST(A.USER_NAME AS VARCHAR2(128)) AS RUN_OWNER, CAST(B.REFRESH_ID AS NUMBER) AS REFRESH_ID, CAST(B.NUM_MVS_TOTAL AS NUMBER) AS NUM_MVS, CAST(B.MVIEWS AS VARCHAR2(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS VARCHAR2(4000)) AS BASE_TABLES, CAST(B.METHOD AS VARCHAR2(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS VARCHAR2(4000)) AS ROLLBACK_SEG, CAST(DECODE(B.PUSH_DEFERRED_RPC, 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(DECODE(B.REFRESH_AFTER_ERRORS, 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, CAST(B.PURGE_OPTION AS NUMBER) AS PURGE_OPTION, CAST(B.PARALLELISM AS NUMBER) AS PARALLELISM, CAST(B.HEAP_SIZE AS NUMBER) AS HEAP_SIZE, CAST(DECODE(B.ATOMIC_REFRESH, 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(DECODE(B.NESTED, 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(DECODE(B.OUT_OF_PLACE, 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, CAST(B.NUMBER_OF_FAILURES AS NUMBER) AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS TIMESTAMP(6)) AS START_TIME, CAST(B.END_TIME AS TIMESTAMP(6)) AS END_TIME, CAST(B.ELAPSED_TIME AS NUMBER) AS ELAPSED_TIME, CAST(0 AS NUMBER) AS LOG_SETUP_TIME, CAST(B.LOG_PURGE_TIME AS NUMBER) AS LOG_PURGE_TIME, CAST(DECODE(B.COMPLETE_STATS_AVALIABLE, 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM SYS.ALL_VIRTUAL_USER_REAL_AGENT A, SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B, ( SELECT C1.TENANT_ID AS TENANT_ID, C1.REFRESH_ID AS REFRESH_ID FROM SYS.ALL_VIRTUAL_MVIEW_REFRESH_STATS_REAL_AGENT C1, SYS.ALL_VIRTUAL_TABLE_REAL_AGENT C2 WHERE C1.TENANT_ID = C2.TENANT_ID AND C1.MVIEW_ID = C2.TABLE_ID GROUP BY C1.TENANT_ID, C1.REFRESH_ID ) C WHERE A.USER_ID = B.RUN_USER_ID AND B.REFRESH_ID = C.REFRESH_ID AND A.TENANT_ID = EFFECTIVE_TENANT_ID() AND B.TENANT_ID = EFFECTIVE_TENANT_ID() AND C.TENANT_ID = EFFECTIVE_TENANT_ID() )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}
@ -1560,7 +1560,7 @@ int ObInnerTableSchema::user_mvref_run_stats_ora_schema(ObTableSchema &table_sch
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT CAST(B.REFRESH_ID AS NUMBER) AS REFRESH_ID, CAST(B.NUM_MVS_TOTAL AS NUMBER) AS NUM_MVS, CAST(B.MVIEWS AS VARCHAR2(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS VARCHAR2(4000)) AS BASE_TABLES, CAST(B.METHOD AS VARCHAR2(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS VARCHAR2(4000)) AS ROLLBACK_SEG, CAST(DECODE(B.PUSH_DEFERRED_RPC, 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(DECODE(B.REFRESH_AFTER_ERRORS, 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, CAST(B.PURGE_OPTION AS NUMBER) AS PURGE_OPTION, CAST(B.PARALLELISM AS NUMBER) AS PARALLELISM, CAST(B.HEAP_SIZE AS NUMBER) AS HEAP_SIZE, CAST(DECODE(B.ATOMIC_REFRESH, 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(DECODE(B.NESTED, 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(DECODE(B.OUT_OF_PLACE, 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, CAST(B.NUMBER_OF_FAILURES AS NUMBER) AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS TIMESTAMP(6)) AS START_TIME, CAST(B.END_TIME AS TIMESTAMP(6)) AS END_TIME, CAST(B.ELAPSED_TIME AS NUMBER) AS ELAPSED_TIME, CAST(0 AS NUMBER) AS LOG_SETUP_TIME, CAST(B.LOG_PURGE_TIME AS NUMBER) AS LOG_PURGE_TIME, CAST(DECODE(B.COMPLETE_STATS_AVALIABLE, 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM SYS.ALL_VIRTUAL_USER_REAL_AGENT A, SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B WHERE A.USER_ID = B.RUN_USER_ID AND A.TENANT_ID = EFFECTIVE_TENANT_ID() AND B.TENANT_ID = EFFECTIVE_TENANT_ID() AND A.USER_NAME = SYS_CONTEXT('USERENV','CURRENT_USER') )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT CAST(B.REFRESH_ID AS NUMBER) AS REFRESH_ID, CAST(B.NUM_MVS_TOTAL AS NUMBER) AS NUM_MVS, CAST(B.MVIEWS AS VARCHAR2(4000)) AS MVIEWS, CAST(B.BASE_TABLES AS VARCHAR2(4000)) AS BASE_TABLES, CAST(B.METHOD AS VARCHAR2(4000)) AS METHOD, CAST(B.ROLLBACK_SEG AS VARCHAR2(4000)) AS ROLLBACK_SEG, CAST(DECODE(B.PUSH_DEFERRED_RPC, 1, 'Y', 'N') AS CHAR(1)) AS PUSH_DEFERRED_RPC, CAST(DECODE(B.REFRESH_AFTER_ERRORS, 1, 'Y', 'N') AS CHAR(1)) AS REFRESH_AFTER_ERRORS, CAST(B.PURGE_OPTION AS NUMBER) AS PURGE_OPTION, CAST(B.PARALLELISM AS NUMBER) AS PARALLELISM, CAST(B.HEAP_SIZE AS NUMBER) AS HEAP_SIZE, CAST(DECODE(B.ATOMIC_REFRESH, 1, 'Y', 'N') AS CHAR(1)) AS ATOMIC_REFRESH, CAST(DECODE(B.NESTED, 1, 'Y', 'N') AS CHAR(1)) AS NESTED, CAST(DECODE(B.OUT_OF_PLACE, 1, 'Y', 'N') AS CHAR(1)) AS OUT_OF_PLACE, CAST(B.NUMBER_OF_FAILURES AS NUMBER) AS NUMBER_OF_FAILURES, CAST(B.START_TIME AS TIMESTAMP(6)) AS START_TIME, CAST(B.END_TIME AS TIMESTAMP(6)) AS END_TIME, CAST(B.ELAPSED_TIME AS NUMBER) AS ELAPSED_TIME, CAST(0 AS NUMBER) AS LOG_SETUP_TIME, CAST(B.LOG_PURGE_TIME AS NUMBER) AS LOG_PURGE_TIME, CAST(DECODE(B.COMPLETE_STATS_AVALIABLE, 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE FROM SYS.ALL_VIRTUAL_USER_REAL_AGENT A, SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B, ( SELECT C1.TENANT_ID AS TENANT_ID, C1.REFRESH_ID AS REFRESH_ID FROM SYS.ALL_VIRTUAL_MVIEW_REFRESH_STATS_REAL_AGENT C1, SYS.ALL_VIRTUAL_TABLE_REAL_AGENT C2 WHERE C1.TENANT_ID = C2.TENANT_ID AND C1.MVIEW_ID = C2.TABLE_ID GROUP BY C1.TENANT_ID, C1.REFRESH_ID ) C WHERE A.USER_ID = B.RUN_USER_ID AND B.REFRESH_ID = C.REFRESH_ID AND A.TENANT_ID = EFFECTIVE_TENANT_ID() AND B.TENANT_ID = EFFECTIVE_TENANT_ID() AND C.TENANT_ID = EFFECTIVE_TENANT_ID() AND A.USER_NAME = SYS_CONTEXT('USERENV','CURRENT_USER') )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}

View File

@ -31951,9 +31951,22 @@ def_table_schema(
CAST(IF(B.COMPLETE_STATS_AVALIABLE = 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE
FROM
oceanbase.__all_virtual_user A,
oceanbase.__all_virtual_mview_refresh_run_stats B
oceanbase.__all_virtual_mview_refresh_run_stats B,
(
SELECT
C1.TENANT_ID AS TENANT_ID,
C1.REFRESH_ID AS REFRESH_ID
FROM
oceanbase.__all_virtual_mview_refresh_stats C1,
oceanbase.__all_virtual_table C2
WHERE C1.TENANT_ID = C2.TENANT_ID
AND C1.MVIEW_ID = C2.TABLE_ID
GROUP BY TENANT_ID, REFRESH_ID
) C
WHERE A.TENANT_ID = B.TENANT_ID
AND A.USER_ID = B.RUN_USER_ID
AND B.TENANT_ID = C.TENANT_ID
AND B.REFRESH_ID = C.REFRESH_ID
""".replace("\n", " ")
)
@ -31992,9 +32005,22 @@ def_table_schema(
CAST(IF(B.COMPLETE_STATS_AVALIABLE = 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE
FROM
oceanbase.__all_user A,
oceanbase.__all_mview_refresh_run_stats B
oceanbase.__all_mview_refresh_run_stats B,
(
SELECT
C1.TENANT_ID AS TENANT_ID,
C1.REFRESH_ID AS REFRESH_ID
FROM
oceanbase.__all_mview_refresh_stats C1,
oceanbase.__all_table C2
WHERE C1.TENANT_ID = C2.TENANT_ID
AND C1.MVIEW_ID = C2.TABLE_ID
GROUP BY TENANT_ID, REFRESH_ID
) C
WHERE A.TENANT_ID = B.TENANT_ID
AND A.USER_ID = B.RUN_USER_ID
AND B.TENANT_ID = C.TENANT_ID
AND B.REFRESH_ID = C.REFRESH_ID
""".replace("\n", " ")
)
@ -51999,10 +52025,23 @@ def_table_schema(
CAST(DECODE(B.COMPLETE_STATS_AVALIABLE, 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE
FROM
SYS.ALL_VIRTUAL_USER_REAL_AGENT A,
SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B
SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B,
(
SELECT
C1.TENANT_ID AS TENANT_ID,
C1.REFRESH_ID AS REFRESH_ID
FROM
SYS.ALL_VIRTUAL_MVIEW_REFRESH_STATS_REAL_AGENT C1,
SYS.ALL_VIRTUAL_TABLE_REAL_AGENT C2
WHERE C1.TENANT_ID = C2.TENANT_ID
AND C1.MVIEW_ID = C2.TABLE_ID
GROUP BY C1.TENANT_ID, C1.REFRESH_ID
) C
WHERE A.USER_ID = B.RUN_USER_ID
AND B.REFRESH_ID = C.REFRESH_ID
AND A.TENANT_ID = EFFECTIVE_TENANT_ID()
AND B.TENANT_ID = EFFECTIVE_TENANT_ID()
AND C.TENANT_ID = EFFECTIVE_TENANT_ID()
""".replace("\n", " ")
)
@ -52042,10 +52081,23 @@ def_table_schema(
CAST(DECODE(B.COMPLETE_STATS_AVALIABLE, 1, 'Y', 'N') AS CHAR(1)) AS COMPLETE_STATS_AVAILABLE
FROM
SYS.ALL_VIRTUAL_USER_REAL_AGENT A,
SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B
SYS.ALL_VIRTUAL_MVIEW_REFRESH_RUN_STATS_REAL_AGENT B,
(
SELECT
C1.TENANT_ID AS TENANT_ID,
C1.REFRESH_ID AS REFRESH_ID
FROM
SYS.ALL_VIRTUAL_MVIEW_REFRESH_STATS_REAL_AGENT C1,
SYS.ALL_VIRTUAL_TABLE_REAL_AGENT C2
WHERE C1.TENANT_ID = C2.TENANT_ID
AND C1.MVIEW_ID = C2.TABLE_ID
GROUP BY C1.TENANT_ID, C1.REFRESH_ID
) C
WHERE A.USER_ID = B.RUN_USER_ID
AND B.REFRESH_ID = C.REFRESH_ID
AND A.TENANT_ID = EFFECTIVE_TENANT_ID()
AND B.TENANT_ID = EFFECTIVE_TENANT_ID()
AND C.TENANT_ID = EFFECTIVE_TENANT_ID()
AND A.USER_NAME = SYS_CONTEXT('USERENV','CURRENT_USER')
""".replace("\n", " ")
)