I am quarterly writing a post dissecting the changes implemented by Oracle CPUs so we can understand better the modifications implemented by Oracle in our Databases.
To check previous changes, follow the links below:
- Dissecting 190416 BP, PSU, RU and RUR
- Dissecting 190115 BP, PSU, RU and RUR
- Dissecting 181016 BP, PSU, RU and RUR
- Dissecting 180717 BP, PSU, RU and RUR
- Dissecting 180417 BP, PSU, RU and RUR
- Dissecting 180116 BP, PSU, RU and RUR
- Dissecting 171017 BP, PSU, RU and RUR
So what oracle internal objects were changed in July 2019 - 190716?
VERSION PATCH OWNER TYPE TOTAL ---------- ---------- ------------------------------ --------------- ---------- 11.2.0.4 BP SYS PACKAGE 1 11.2.0.4 BP SYS PACKAGE BODY 1 11.2.0.4 PSU SYS PACKAGE 1 11.2.0.4 PSU SYS PACKAGE BODY 1 12.1.0.2 BP DVSYS PACKAGE 1 12.1.0.2 BP DVSYS PACKAGE BODY 2 12.1.0.2 BP LBACSYS PACKAGE BODY 1 12.1.0.2 BP SYS PACKAGE 2 12.1.0.2 BP SYS PACKAGE BODY 5 12.1.0.2 BP SYS TYPE 2 12.1.0.2 PSU SYS PACKAGE 2 12.1.0.2 PSU SYS PACKAGE BODY 2 12.2.0.1 RU DVSYS TYPE 9 12.2.0.1 RU DVSYS VIEW 1 12.2.0.1 RU SYS PACKAGE 2 12.2.0.1 RU SYS PACKAGE BODY 4 12.2.0.1 RU SYS TYPE 2 18.0.0.0 18.5RUR SYS PACKAGE 2 18.0.0.0 18.5RUR SYS PACKAGE BODY 1 18.0.0.0 18.6RUR SYS PACKAGE 2 18.0.0.0 18.6RUR SYS PACKAGE BODY 1 18.0.0.0 RU SYS PACKAGE 3 18.0.0.0 RU SYS PACKAGE BODY 3 18.0.0.0 RU SYS TYPE 2 18.0.0.0 RU SYS VIEW 1 19.0.0.0 19.3RUR SYS PACKAGE 2 19.0.0.0 19.3RUR SYS PACKAGE BODY 1 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE 5 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE BODY 3 19.0.0.0 RU MDSYS PACKAGE 1 19.0.0.0 RU MDSYS PACKAGE BODY 3 19.0.0.0 RU MDSYS TYPE 1 19.0.0.0 RU SYS PACKAGE 7 19.0.0.0 RU SYS PACKAGE BODY 13 19.0.0.0 RU SYS TYPE 2 19.0.0.0 RU SYS VIEW 1
And created?
VERSION PATCH OWNER TYPE TOTAL ---------- ---------- ------------------------------ --------------- ---------- 12.2.0.1 RU SYS PACKAGE 1 12.2.0.1 RU SYS PACKAGE BODY 1
P.S: Nothing was added for 11.2 / 12.1 / 18 / 19 in Oracle objects.
So which are exactly the objects modified by 190716?
VERSION PATCH OWNER TYPE NAME ACTION ---------- --------------- ------------------------------ --------------- ------------------------------ ------ 11.2.0.4 PSU & BP SYS PACKAGE DBMS_RCVMAN MOD 11.2.0.4 PSU & BP SYS PACKAGE BODY DBMS_RCVMAN MOD 12.1.0.2 BP DVSYS PACKAGE DBMS_MACUTL MOD 12.1.0.2 BP DVSYS PACKAGE BODY DBMS_MACADM MOD 12.1.0.2 BP DVSYS PACKAGE BODY DBMS_MACUTL MOD 12.1.0.2 BP LBACSYS PACKAGE BODY OLS_ENFORCEMENT MOD 12.1.0.2 BP SYS PACKAGE DBMS_OPTIM_BUNDLE MOD 12.1.0.2 BP SYS PACKAGE DBMS_REDEFINITION_INTERNAL MOD 12.1.0.2 BP SYS PACKAGE BODY DBMS_OPTIM_BUNDLE MOD 12.1.0.2 BP SYS PACKAGE BODY DBMS_REDEFINITION MOD 12.1.0.2 BP SYS PACKAGE BODY DBMS_REDEFINITION_INTERNAL MOD 12.1.0.2 BP SYS PACKAGE BODY DBMS_STATS MOD 12.1.0.2 BP SYS TYPE DBMS_OPTIM_BUGVALOBTYPE MOD 12.1.0.2 BP SYS TYPE DBMS_OPTIM_FCTABTYPE MOD 12.1.0.2 PSU SYS PACKAGE DBMS_BACKUP_RESTORE MOD 12.1.0.2 PSU SYS PACKAGE DBMS_RCVMAN MOD 12.1.0.2 PSU SYS PACKAGE BODY DBMS_BACKUP_RESTORE MOD 12.1.0.2 PSU & BP SYS PACKAGE BODY DBMS_RCVMAN MOD 12.2.0.1 RU SYS PACKAGE DBMS_BDSQL NEW 12.2.0.1 RU SYS PACKAGE BODY DBMS_BDSQL NEW 12.2.0.1 RU DVSYS TYPE KU$_DV_COMMAND_RULE_T MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072649$ MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072661$ MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072664$ MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072667$ MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072694$ MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072697$ MOD 12.2.0.1 RU DVSYS TYPE SYS_YOID0000072870$ MOD 12.2.0.1 RU DVSYS VIEW KU$_DV_COMMAND_RULE_VIEW MOD 12.2.0.1 RU SYS PACKAGE DBMS_HADOOP MOD 12.2.0.1 RU SYS PACKAGE DBMS_OPTIM_BUNDLE MOD 12.2.0.1 RU SYS PACKAGE BODY CDBVIEW_INTERNAL MOD 12.2.0.1 RU SYS PACKAGE BODY DBMS_HADOOP MOD 12.2.0.1 RU SYS PACKAGE BODY DBMS_OPTIM_BUNDLE MOD 12.2.0.1 RU SYS PACKAGE BODY DBMS_RCVMAN MOD 12.2.0.1 RU SYS TYPE DBMS_OPTIM_BUGVALOBTYPE MOD 12.2.0.1 RU SYS TYPE DBMS_OPTIM_FCTABTYPE MOD 18.0.0.0 RU SYS PACKAGE DBMS_OPTIM_BUNDLE MOD 18.0.0.0 RU SYS PACKAGE BODY CDBVIEW_INTERNAL MOD 18.0.0.0 RU SYS PACKAGE BODY DBMS_OPTIM_BUNDLE MOD 18.0.0.0 RU SYS TYPE DBMS_OPTIM_BUGVALOBTYPE MOD 18.0.0.0 RU SYS TYPE DBMS_OPTIM_FCTABTYPE MOD 18.0.0.0 RU SYS VIEW DBA_APPLY_ERROR MOD 18.0.0.0 RU & 18.6RUR & SYS PACKAGE DBMS_BACKUP_RESTORE MOD 18.5RUR 18.0.0.0 RU & 18.6RUR & SYS PACKAGE DBMS_REGISTRY MOD 18.5RUR 18.0.0.0 RU & 18.6RUR & SYS PACKAGE BODY DBMS_RCVMAN MOD 18.5RUR 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE DBMS_GSM_COMMON MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE DBMS_GSM_DBADMIN MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE DBMS_GSM_POOLADMIN MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE DBMS_GSM_UTILITY MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE EXCHANGE MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE BODY DBMS_GSM_DBADMIN MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE BODY DBMS_GSM_POOLADMIN MOD 19.0.0.0 RU GSMADMIN_INTERNAL PACKAGE BODY EXCHANGE MOD 19.0.0.0 RU MDSYS PACKAGE SDO_GEORX MOD 19.0.0.0 RU MDSYS PACKAGE BODY SDO_CSWADM MOD 19.0.0.0 RU MDSYS PACKAGE BODY SDO_GEOR MOD 19.0.0.0 RU MDSYS PACKAGE BODY SDO_GEORX MOD 19.0.0.0 RU MDSYS TYPE SDO_RDF_TRIPLE_S MOD 19.0.0.0 RU SYS PACKAGE DBMS_ASH MOD 19.0.0.0 RU SYS PACKAGE DBMS_AWR_REPORT_LAYOUT MOD 19.0.0.0 RU SYS PACKAGE DBMS_OPTIM_BUNDLE MOD 19.0.0.0 RU SYS PACKAGE DBMS_RCVMAN MOD 19.0.0.0 RU SYS PACKAGE DBMS_RMIN_SYS MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_ASH MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_AUTO_INDEX_INTERNAL MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_AWR_REPORT_LAYOUT MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_BACKUP_RESTORE MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_DBFS_SFS MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_OPTIM_BUNDLE MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_RESOURCE_MANAGER MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_SPM MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_SPM_INTERNAL MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_STATS MOD 19.0.0.0 RU SYS PACKAGE BODY DBMS_SWRF_REPORT_INTERNAL MOD 19.0.0.0 RU SYS PACKAGE BODY KUPM$MCP MOD 19.0.0.0 RU SYS TYPE DBMS_OPTIM_BUGVALOBTYPE MOD 19.0.0.0 RU SYS TYPE DBMS_OPTIM_FCTABTYPE MOD 19.0.0.0 RU SYS VIEW CDB_TAB_COLS_V$ MOD 19.0.0.0 RU & 19.3RUR SYS PACKAGE DBMS_BACKUP_RESTORE MOD 19.0.0.0 RU & 19.3RUR SYS PACKAGE DBMS_REGISTRY MOD 19.0.0.0 RU & 19.3RUR SYS PACKAGE BODY DBMS_RCVMAN MOD
What changed for each? (click to see the changes)
- 11.2.0.4
- 12.1.0.2
- DVSYS.DBMS_MACUTL - PACKAGE 12cR1 (BP)
- DVSYS.DBMS_MACADM - PACKAGE BODY 12cR1 (BP)
- DVSYS.DBMS_MACUTL - PACKAGE BODY 12cR1 (BP)
- LBACSYS.OLS_ENFORCEMENT - PACKAGE BODY 12cR1 (BP)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE 12cR1 (PSU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE 12cR1 (BP)
- SYS.DBMS_RCVMAN - PACKAGE 12cR1 (PSU)
- SYS.DBMS_REDEFINITION_INTERNAL - PACKAGE 12cR1 (BP)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE BODY 12cR1 (PSU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE BODY 12cR1 (BP)
- SYS.DBMS_RCVMAN - PACKAGE BODY 12cR1 (BP)
- SYS.DBMS_RCVMAN - PACKAGE BODY 12cR1 (PSU)
- SYS.DBMS_REDEFINITION - PACKAGE BODY 12cR1 (BP)
- SYS.DBMS_REDEFINITION_INTERNAL - PACKAGE BODY 12cR1 (BP)
- SYS.DBMS_STATS - PACKAGE BODY 12cR1 (BP)
- SYS.DBMS_OPTIM_BUGVALOBTYPE - TYPE 12cR1 (BP)
- SYS.DBMS_OPTIM_FCTABTYPE - TYPE 12cR1 (BP)
- 12.2.0.1
- DVSYS.KU$_DV_COMMAND_RULE_T - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072649$ - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072661$ - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072664$ - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072667$ - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072694$ - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072697$ - TYPE 12cR2 (RU)
- DVSYS.SYS_YOID0000072870$ - TYPE 12cR2 (RU)
- DVSYS.KU$_DV_COMMAND_RULE_VIEW - VIEW 12cR2 (RU)
- SYS.DBMS_HADOOP - PACKAGE 12cR2 (RU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE 12cR2 (RU)
- SYS.CDBVIEW_INTERNAL - PACKAGE BODY 12cR2 (RU)
- SYS.DBMS_HADOOP - PACKAGE BODY 12cR2 (RU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE BODY 12cR2 (RU)
- SYS.DBMS_RCVMAN - PACKAGE BODY 12cR2 (RU)
- SYS.DBMS_OPTIM_BUGVALOBTYPE - TYPE 12cR2 (RU)
- SYS.DBMS_OPTIM_FCTABTYPE - TYPE 12cR2 (RU)
- 18.0.0.0
- SYS.DBMS_BACKUP_RESTORE - PACKAGE 18c (18.6RUR)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE 18c (18.5RUR)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE 18c (RU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE 18c (RU)
- SYS.DBMS_REGISTRY - PACKAGE 18c (18.5RUR)
- SYS.DBMS_REGISTRY - PACKAGE 18c (RU)
- SYS.DBMS_REGISTRY - PACKAGE 18c (18.6RUR)
- SYS.CDBVIEW_INTERNAL - PACKAGE BODY 18c (RU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE BODY 18c (RU)
- SYS.DBMS_RCVMAN - PACKAGE BODY 18c (18.5RUR)
- SYS.DBMS_RCVMAN - PACKAGE BODY 18c (RU)
- SYS.DBMS_RCVMAN - PACKAGE BODY 18c (18.6RUR)
- SYS.DBMS_OPTIM_BUGVALOBTYPE - TYPE 18c (RU)
- SYS.DBMS_OPTIM_FCTABTYPE - TYPE 18c (RU)
- SYS.DBA_APPLY_ERROR - VIEW 18c (RU)
- 19.0.0.0
- GSMADMIN_INTERNAL.DBMS_GSM_COMMON - PACKAGE 19c (RU)
- GSMADMIN_INTERNAL.DBMS_GSM_DBADMIN - PACKAGE 19c (RU)
- GSMADMIN_INTERNAL.DBMS_GSM_POOLADMIN - PACKAGE 19c (RU)
- GSMADMIN_INTERNAL.DBMS_GSM_UTILITY - PACKAGE 19c (RU)
- GSMADMIN_INTERNAL.EXCHANGE - PACKAGE 19c (RU)
- GSMADMIN_INTERNAL.DBMS_GSM_DBADMIN - PACKAGE BODY 19c (RU)
- GSMADMIN_INTERNAL.DBMS_GSM_POOLADMIN - PACKAGE BODY 19c (RU)
- GSMADMIN_INTERNAL.EXCHANGE - PACKAGE BODY 19c (RU)
- MDSYS.SDO_GEORX - PACKAGE 19c (RU)
- MDSYS.SDO_CSWADM - PACKAGE BODY 19c (RU)
- MDSYS.SDO_GEOR - PACKAGE BODY 19c (RU)
- MDSYS.SDO_GEORX - PACKAGE BODY 19c (RU)
- MDSYS.SDO_RDF_TRIPLE_S - TYPE 19c (RU)
- SYS.DBMS_ASH - PACKAGE 19c (RU)
- SYS.DBMS_AWR_REPORT_LAYOUT - PACKAGE 19c (RU)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE 19c (19.3RUR)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE 19c (RU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE 19c (RU)
- SYS.DBMS_RCVMAN - PACKAGE 19c (RU)
- SYS.DBMS_REGISTRY - PACKAGE 19c (RU)
- SYS.DBMS_REGISTRY - PACKAGE 19c (19.3RUR)
- SYS.DBMS_RMIN_SYS - PACKAGE 19c (RU)
- SYS.DBMS_ASH - PACKAGE BODY 19c (RU)
- SYS.DBMS_AUTO_INDEX_INTERNAL - PACKAGE BODY 19c (RU)
- SYS.DBMS_AWR_REPORT_LAYOUT - PACKAGE BODY 19c (RU)
- SYS.DBMS_BACKUP_RESTORE - PACKAGE BODY 19c (RU)
- SYS.DBMS_DBFS_SFS - PACKAGE BODY 19c (RU)
- SYS.DBMS_OPTIM_BUNDLE - PACKAGE BODY 19c (RU)
- SYS.DBMS_RCVMAN - PACKAGE BODY 19c (RU)
- SYS.DBMS_RCVMAN - PACKAGE BODY 19c (19.3RUR)
- SYS.DBMS_RESOURCE_MANAGER - PACKAGE BODY 19c (RU)
- SYS.DBMS_SPM - PACKAGE BODY 19c (RU)
- SYS.DBMS_SPM_INTERNAL - PACKAGE BODY 19c (RU)
- SYS.DBMS_STATS - PACKAGE BODY 19c (RU)
- SYS.DBMS_SWRF_REPORT_INTERNAL - PACKAGE BODY 19c (RU)
- SYS.KUPM$MCP - PACKAGE BODY 19c (RU)
- SYS.DBMS_OPTIM_BUGVALOBTYPE - TYPE 19c (RU)
- SYS.DBMS_OPTIM_FCTABTYPE - TYPE 19c (RU)
- SYS.CDB_TAB_COLS_V$ - VIEW 19c (RU)
Changed Objects
P.S:
> = Added Lines
< = Removed Lines
11.2.0.4
2974c2974,2975 < ,toDest4 IN varchar2 DEFAULT NULL); --- > ,toDest4 IN varchar2 DEFAULT NULL > ,atAnyScn IN boolean DEFAULT FALSE);
2974c2974,2975 < ,toDest4 IN varchar2 DEFAULT NULL); --- > ,toDest4 IN varchar2 DEFAULT NULL > ,atAnyScn IN boolean DEFAULT FALSE); 3275c3276 < name IN varchar2); --- > name IN varchar2);
6262c6262,6263 < ,PATTERN4 IN VARCHAR2) --- > ,PATTERN4 IN VARCHAR2 > ,BACKEDUPANYSCN IN NUMBER) 6263a6265,6278 > WITH > MY_DBINC AS > (SELECT RESETLOGS_TIME, > RESETLOGS_CHANGE#, > PRIOR RESETLOGS_CHANGE# NEXT_RESETLOGS_CHANGE# > FROM V$DATABASE_INCARNATION > START WITH RESETLOGS_CHANGE# = THIS_RESET_SCN > AND RESETLOGS_TIME = THIS_RESET_TIME > CONNECT BY PRIOR PRIOR_INCARNATION# = INCARNATION# > UNION ALL > SELECT THIS_RESET_TIME RESETLOGS_TIME, > THIS_RESET_SCN RESETLOGS_CHANGE#, > NULL NEXT_RESETLOGS_CHANGE# > FROM DUAL) 6299,6303c6314,6325 < FILE#, CREATION_CHANGE#, PLUGIN_CHANGE#, < PLUGGED_READONLY, CHECKPOINT_CHANGE#, CHECKPOINT_TIME, < RESETLOGS_CHANGE#, RESETLOGS_TIME < FROM V$DATAFILE_COPY < WHERE STATUS = 'A') CDF, --- > CDF.FILE#, CDF.CREATION_CHANGE#, CDF.PLUGIN_CHANGE#, > CDF.PLUGGED_READONLY, CDF.CHECKPOINT_CHANGE#, > CDF.CHECKPOINT_TIME, CDF.RESETLOGS_CHANGE#, > CDF.RESETLOGS_TIME, CDF.ABSOLUTE_FUZZY_CHANGE# > FROM V$DATAFILE_COPY CDF, MY_DBINC > WHERE CDF.STATUS = 'A' > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = FALSE# OR > (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# AND > CDF.FILE# > 0 AND > (MY_DBINC.NEXT_RESETLOGS_CHANGE# IS NULL OR > CDF.ABSOLUTE_FUZZY_CHANGE# <= > MY_DBINC.NEXT_RESETLOGS_CHANGE#)))) CDF, 6336,6337c6358,6360 < AND BDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# < AND BDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME --- > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# OR > (BDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# AND > BDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME)) 6437,6441c6460,6471 < FILE#, CREATION_CHANGE#, PLUGIN_CHANGE#, < PLUGGED_READONLY, CHECKPOINT_CHANGE#, CHECKPOINT_TIME, < RESETLOGS_CHANGE#, RESETLOGS_TIME < FROM V$DATAFILE_COPY < WHERE STATUS = 'A') CDF --- > CDF.FILE#, CDF.CREATION_CHANGE#, CDF.PLUGIN_CHANGE#, > CDF.PLUGGED_READONLY, CDF.CHECKPOINT_CHANGE#, > CDF.CHECKPOINT_TIME, CDF.RESETLOGS_CHANGE#, CDF.RESETLOGS_TIME, > CDF.ABSOLUTE_FUZZY_CHANGE# > FROM V$DATAFILE_COPY CDF, MY_DBINC > WHERE CDF.STATUS = 'A' > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = FALSE# OR > (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# AND > CDF.FILE# > 0 AND > (MY_DBINC.NEXT_RESETLOGS_CHANGE# IS NULL OR > CDF.ABSOLUTE_FUZZY_CHANGE# <= > MY_DBINC.NEXT_RESETLOGS_CHANGE#)))) CDF 6447,6448c6477,6479 < AND XDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# < AND XDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME --- > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# OR > (XDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# AND > XDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME)) 15317c15348,15349 < FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I --- > FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I, > V$DATABASE DB 15333a15366 > AND L.NEXT_CHANGE# >= DB.STANDBY_BECAME_PRIMARY_SCN 23672a23706,23711 > DEB(DEB_IN, 'lbRec.completion_time=' || LBREC.COMPLETION_TIME); > DEB(DEB_IN, 'lbRec.df_ckp_mod_time=' || LBREC.DF_CKP_MOD_TIME); > DEB(DEB_IN, 'lbRec.df_checkpoint_change#=' || > LBREC.DF_CHECKPOINT_CHANGE#); > DEB(DEB_IN, 'lbRec.df_creation_change#=' || > LBREC.DF_CREATION_CHANGE#); 23679,23681c23718,23724 < LBREC.DF_CKP_MOD_TIME < UNTILTIME OR < (UNTILTIME IS NULL AND < LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)))) THEN --- > ((UNTILTIME IS NOT NULL) AND > (NVL(LBREC.COMPLETION_TIME, LBREC.DF_CKP_MOD_TIME) > < UNTILTIME)) OR > ((UNTILTIME IS NULL) AND > (LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)) > ))) THEN > 24283c24326,24327 < ,TODEST4 IN VARCHAR2 DEFAULT NULL) --- > ,TODEST4 IN VARCHAR2 DEFAULT NULL > ,ATANYSCN IN BOOLEAN DEFAULT FALSE) 24295a24340 > BACKEDUPANYSCN NUMBER; 24298a24344,24353 > > > > > IF (ATANYSCN) THEN > BACKEDUPANYSCN := TRUE#; > ELSE > BACKEDUPANYSCN := FALSE#; > END IF; > 24303a24359 > 24311c24367,24368 < PATTERN4 => STARTWITHPATTERN(TODEST4)); --- > PATTERN4 => STARTWITHPATTERN(TODEST4), > BACKEDUPANYSCN => BACKEDUPANYSCN);
6256,6262c6256,6263 < DEVICE_TYPE IN VARCHAR2 < ,CMD IN VARCHAR2 < ,KTAG IN VARCHAR2 < ,PATTERN1 IN VARCHAR2 < ,PATTERN2 IN VARCHAR2 < ,PATTERN3 IN VARCHAR2 < ,PATTERN4 IN VARCHAR2) --- > DEVICE_TYPE IN VARCHAR2 > ,CMD IN VARCHAR2 > ,KTAG IN VARCHAR2 > ,PATTERN1 IN VARCHAR2 > ,PATTERN2 IN VARCHAR2 > ,PATTERN3 IN VARCHAR2 > ,PATTERN4 IN VARCHAR2 > ,BACKEDUPANYSCN IN NUMBER) 6263a6265,6278 > WITH > MY_DBINC AS > (SELECT RESETLOGS_TIME, > RESETLOGS_CHANGE#, > PRIOR RESETLOGS_CHANGE# NEXT_RESETLOGS_CHANGE# > FROM V$DATABASE_INCARNATION > START WITH RESETLOGS_CHANGE# = THIS_RESET_SCN > AND RESETLOGS_TIME = THIS_RESET_TIME > CONNECT BY PRIOR PRIOR_INCARNATION# = INCARNATION# > UNION ALL > SELECT THIS_RESET_TIME RESETLOGS_TIME, > THIS_RESET_SCN RESETLOGS_CHANGE#, > NULL NEXT_RESETLOGS_CHANGE# > FROM DUAL) 6299,6303c6314,6325 < FILE#, CREATION_CHANGE#, PLUGIN_CHANGE#, < PLUGGED_READONLY, CHECKPOINT_CHANGE#, CHECKPOINT_TIME, < RESETLOGS_CHANGE#, RESETLOGS_TIME < FROM V$DATAFILE_COPY < WHERE STATUS = 'A') CDF, --- > CDF.FILE#, CDF.CREATION_CHANGE#, CDF.PLUGIN_CHANGE#, > CDF.PLUGGED_READONLY, CDF.CHECKPOINT_CHANGE#, > CDF.CHECKPOINT_TIME, CDF.RESETLOGS_CHANGE#, > CDF.RESETLOGS_TIME, CDF.ABSOLUTE_FUZZY_CHANGE# > FROM V$DATAFILE_COPY CDF, MY_DBINC > WHERE CDF.STATUS = 'A' > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = FALSE# OR > (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# AND > CDF.FILE# > 0 AND > (MY_DBINC.NEXT_RESETLOGS_CHANGE# IS NULL OR > CDF.ABSOLUTE_FUZZY_CHANGE# <= > MY_DBINC.NEXT_RESETLOGS_CHANGE#)))) CDF, 6336,6337c6358,6360 < AND BDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# < AND BDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME --- > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# OR > (BDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# AND > BDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME)) 6437,6441c6460,6471 < FILE#, CREATION_CHANGE#, PLUGIN_CHANGE#, < PLUGGED_READONLY, CHECKPOINT_CHANGE#, CHECKPOINT_TIME, < RESETLOGS_CHANGE#, RESETLOGS_TIME < FROM V$DATAFILE_COPY < WHERE STATUS = 'A') CDF --- > CDF.FILE#, CDF.CREATION_CHANGE#, CDF.PLUGIN_CHANGE#, > CDF.PLUGGED_READONLY, CDF.CHECKPOINT_CHANGE#, > CDF.CHECKPOINT_TIME, CDF.RESETLOGS_CHANGE#, CDF.RESETLOGS_TIME, > CDF.ABSOLUTE_FUZZY_CHANGE# > FROM V$DATAFILE_COPY CDF, MY_DBINC > WHERE CDF.STATUS = 'A' > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = FALSE# OR > (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# AND > CDF.FILE# > 0 AND > (MY_DBINC.NEXT_RESETLOGS_CHANGE# IS NULL OR > CDF.ABSOLUTE_FUZZY_CHANGE# <= > MY_DBINC.NEXT_RESETLOGS_CHANGE#)))) CDF 6446,6448c6476,6479 < AND XDF.CREATION_CHANGE# = CDF.CREATION_CHANGE# < AND XDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# < AND XDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME --- > AND XDF.CREATION_CHANGE# = CDF.CREATION_CHANGE# > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# OR > (XDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# AND > XDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME)) 10049,10050c10080,10081 < DEB(DEB_PRINT, 'CheckRecAction:matches inc='||INC_IDX|| < ',fromscn='||FROMSCN || --- > DEB(DEB_PRINT, 'CheckRecAction:matches inc='||INC_IDX|| > ',fromscn='|| FROMSCN || 10052c10083 < RETURN SUCCESS; --- > RETURN SUCCESS; 15315c15346,15347 < FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I --- > FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I, > V$DATABASE DB 15331a15364 > AND L.NEXT_CHANGE# >= DB.STANDBY_BECAME_PRIMARY_SCN 17413,17414c17446,17447 < RAISE_APPLICATION_ERROR(-20514, < 'feature requires Availability Machine recovery catalog'); --- > RAISE_APPLICATION_ERROR(-20514, > 'feature requires Availability Machine recovery catalog'); 17721,17722c17754,17755 < DEB(DEB_OPEN, 'translateDatabase_c'); < OPEN TRANSLATEDATABASE_C(FROMSCN, TOSCN); --- > DEB(DEB_OPEN, 'translateDatabase_c'); > OPEN TRANSLATEDATABASE_C(FROMSCN, TOSCN); 17724,17725c17757,17758 < GETDATAFILECURSOR := 'translateDatabase'; < GETDATAFILENOROWS.ERROR := NULL; --- > GETDATAFILECURSOR := 'translateDatabase'; > GETDATAFILENOROWS.ERROR := NULL; 18487c18520 < MASK NUMBER := NVL(STATUSMASK, --- > MASK NUMBER := NVL(STATUSMASK, 18577c18610 < MASK NUMBER := NVL(STATUSMASK, --- > MASK NUMBER := NVL(STATUSMASK, 19783,19784c19816,19817 < CLOSE FINDBACKUPPIECE_C; < DEB(DEB_EXIT, 'with error 20261'); --- > CLOSE FINDBACKUPPIECE_C; > DEB(DEB_EXIT, 'with error 20261'); 19785a19819 > END IF; 19788d19821 < END IF; 21799,21806c21832,21839 < FNO => FILE#, < CRESCN => CREATE_SCN, < RESET_SCN => NVL(RESET_SCN, THIS_RESET_SCN), < RESET_TIME => NVL(RESET_TIME, THIS_RESET_TIME), < LEVEL => ILEVEL, < STATUSMASK => BSAVAILABLE, < TAG => TAG, < ONLYTC => TRUE#, --- > FNO => FILE#, > CRESCN => CREATE_SCN, > RESET_SCN => NVL(RESET_SCN, THIS_RESET_SCN), > RESET_TIME => NVL(RESET_TIME, THIS_RESET_TIME), > LEVEL => ILEVEL, > STATUSMASK => BSAVAILABLE, > TAG => TAG, > ONLYTC => TRUE#, 22446,22447c22479,22481 < DEB(DEB_PRINT, 'getConfig: using primary configurations'); < OPEN FINDCONFIG_C(NAME, VALUE, PRIMARY_DB_UNIQUE_NAME); --- > DEB(DEB_PRINT, 'getConfig: using primary configurations'); > OPEN FINDCONFIG_C(NAME, VALUE, PRIMARY_DB_UNIQUE_NAME); > END IF; 22449d22482 < END IF; 22637,22638c22670,22671 < RETURN FALSE; < END IF; --- > RETURN FALSE; > END IF; 23155,23161c23188,23194 < < < < < < < --- > > > > > > > 23186c23219 < RCVRECPOP(RCVREC); --- > RCVRECPOP(RCVREC); 23670a23704,23709 > DEB(DEB_IN, 'lbRec.completion_time=' || LBREC.COMPLETION_TIME); > DEB(DEB_IN, 'lbRec.df_ckp_mod_time=' || LBREC.DF_CKP_MOD_TIME); > DEB(DEB_IN, 'lbRec.df_checkpoint_change#=' || > LBREC.DF_CHECKPOINT_CHANGE#); > DEB(DEB_IN, 'lbRec.df_creation_change#=' || > LBREC.DF_CREATION_CHANGE#); 23677,23679c23716,23722 < LBREC.DF_CKP_MOD_TIME < UNTILTIME OR < (UNTILTIME IS NULL AND < LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)))) THEN --- > ((UNTILTIME IS NOT NULL) AND > (NVL(LBREC.COMPLETION_TIME, LBREC.DF_CKP_MOD_TIME) > < UNTILTIME)) OR > ((UNTILTIME IS NULL) AND > (LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)) > ))) THEN > 24281c24324,24325 < ,TODEST4 IN VARCHAR2 DEFAULT NULL) --- > ,TODEST4 IN VARCHAR2 DEFAULT NULL > ,ATANYSCN IN BOOLEAN DEFAULT FALSE) 24293a24338 > BACKEDUPANYSCN NUMBER; 24296a24342,24351 > > > > > IF (ATANYSCN) THEN > BACKEDUPANYSCN := TRUE#; > ELSE > BACKEDUPANYSCN := FALSE#; > END IF; > 24301a24357 > 24309c24365,24366 < PATTERN4 => STARTWITHPATTERN(TODEST4)); --- > PATTERN4 => STARTWITHPATTERN(TODEST4), > BACKEDUPANYSCN => BACKEDUPANYSCN); 24915a24973 > END IF; 24917d24974 < END IF; 25753,25754c25810,25811 < OPEN TRANSLATETEMPFILE_C; < GETTEMPFILECURSOR := 'translateTempfile_c'; --- > OPEN TRANSLATETEMPFILE_C; > GETTEMPFILECURSOR := 'translateTempfile_c'; 25924c25981 < NAME IN VARCHAR2 --- > NAME IN VARCHAR2 25930c25987 < RSP RESTORE_POINT_C%ROWTYPE; --- > RSP RESTORE_POINT_C%ROWTYPE; 25941,25943c25998,26000 < RLGSCN := NULL; < RLGTIME := NULL; < SCN := NULL; --- > RLGSCN := NULL; > RLGTIME := NULL; > SCN := NULL; 25946,25948c26003,26005 < RLGSCN := RSP.RESET_SCN; < RLGTIME := RSP.RESET_TIME; < SCN := RSP.SCN; --- > RLGSCN := RSP.RESET_SCN; > RLGTIME := RSP.RESET_TIME; > SCN := RSP.SCN;
12.1.0.2
463a464,472 > /** > * Checks whether the given role is enabled in the current session. > * > * @param p_role Role to check > * @return TRUE if the role is enabled in the current session > */ > FUNCTION session_enabled_role(p_role IN VARCHAR2) > RETURN BOOLEAN; > 499a509,517 > * Checks whether the given role is enabled in the current session. > * > * @param p_role Role to check > * @return Y if the role is enabled in the current session, N otherwise > */ > FUNCTION session_enabled_role_varchar(p_role IN VARCHAR2) > RETURN VARCHAR2; > > /**
3400c3400,3401 < IF DVSYS.DBMS_MACUTL.USER_HAS_ROLE_VARCHAR('DV_ACCTMGR', LOGIN_USER) = 'N' THEN --- > IF DVSYS.DBMS_MACUTL.USER_HAS_ROLE_VARCHAR('DV_ACCTMGR', LOGIN_USER) = 'N' AND > DVSYS.DBMS_MACUTL.SESSION_ENABLED_ROLE_VARCHAR('DV_ACCTMGR') = 'N' THEN
603a604,620 > FUNCTION SESSION_ENABLED_ROLE(P_ROLE IN VARCHAR2) > RETURN BOOLEAN > IS EXTERNAL > LANGUAGE C > NAME "kzvIsRoleEnabled" > LIBRARY DVSYS.KZV$UTL_LIBT > WITH CONTEXT > PARAMETERS > (CONTEXT, > P_ROLE STRING, > P_ROLE INDICATOR SB4, > P_ROLE LENGTH SB4, > > RETURN INDICATOR SB4, > RETURN SB2 > ); > 776a794,805 > FUNCTION SESSION_ENABLED_ROLE_VARCHAR(P_ROLE IN VARCHAR2) > RETURN VARCHAR2 IS > IS_ENABLED BOOLEAN ; > BEGIN > IS_ENABLED := DBMS_MACUTL.SESSION_ENABLED_ROLE(P_ROLE); > > IF ( IS_ENABLED ) THEN > RETURN G_YES; > ELSE > RETURN G_NO; > END IF; > END;
7a8,24 > FUNCTION SESSION_ENABLED_ROLE(P_ROLE IN VARCHAR2) > RETURN BOOLEAN > IS EXTERNAL > LANGUAGE C > NAME "kzvIsRoleEnabled" > LIBRARY LBACSYS.LBAC$EVENT_LIBT > WITH CONTEXT > PARAMETERS > (CONTEXT, > P_ROLE STRING, > P_ROLE INDICATOR SB4, > P_ROLE LENGTH SB4, > > RETURN INDICATOR SB4, > RETURN SB2 > ); > 15a33,40 > > > IF (LBACDBA_ROLE_COUNT + DVOWNER_ROLE_COUNT) < 1 THEN > IF (SESSION_ENABLED_ROLE('DV_OWNER')) THEN > DVOWNER_ROLE_COUNT := 1; > END IF; > END IF; >
8189a8190,8195 > > FUNCTION createTempXmlFile > RETURN varchar2; > -- This procedure returns a temporary filename. > -- The temporary filename is derived from ?/dbs location. >
1c1 < PACKAGE dbms_optim_bundle AS --- > PACKAGE dbms_optim_bundle AUTHID CURRENT_USER AS 15a16,20 > > > ---------------------------- > -- PROCEDURES AND FUNCTIONS > ---------------------------- 99a105,122 > -- USAGE: > -- User can invoke below procedure to display bundle-ids and bundle-names > -- which have fixes with _fix_controls i.e. fixes which may cause plan change. > -- > -- listBundlesWithFCFixes > -- > -- Input arguments: None > -- > -- USAGE EXAMPLE: > -- 1. exec dbms_optim_bundle.listBundlesWithFCFixes; > -- This will display all bundle-ids and names which have > -- fixes with _fix_controls. > -- > -- ERRORS: > -- Application errors used are: > -- -20001 user-supplied value error > -- -20002 internal/other errors > PROCEDURE listBundlesWithFCFixes;
3089c3089,3090 < ,toDest4 IN varchar2 DEFAULT NULL); --- > ,toDest4 IN varchar2 DEFAULT NULL > ,atAnyScn IN boolean DEFAULT FALSE);
306a307,333 > > > FUNCTION GET_IDX_NAME(CONS_NAME IN VARCHAR2, > CONS_OWNER IN VARCHAR2) > RETURN VARCHAR2; > > > > > > > > > > > FUNCTION GET_INT_OBJ_NAME(RID IN PLS_INTEGER, > OTYP IN PLS_INTEGER, > O_OBJ_OWNER IN VARCHAR2, > O_OBJ_NAME IN VARCHAR2) > RETURN VARCHAR2; > > > > > > >
8987a8988,9006 > > > FUNCTION KRBI_CREATE_XML RETURN VARCHAR2; > PRAGMA INTERFACE (C, KRBI_CREATE_XML); > > FUNCTION CREATETEMPXMLFILE RETURN VARCHAR2 IS > FNAME VARCHAR2(1024); > BEGIN > ICDSTART(214); > FNAME := KRBI_CREATE_XML; > ICDFINISH; > RETURN FNAME; > EXCEPTION > WHEN OTHERS THEN > ICDFINISH; > RAISE; > END; > >
12,43d11 < PROCEDURE CREATE_DIRS IS < L_HOME VARCHAR2(255); < DIR VARCHAR2(30); < BEGIN < < SYS.DBMS_SYSTEM.GET_ENV('ORACLE_HOME', L_HOME); < < < DIR := ADMINDIR; < EXECUTE IMMEDIATE 'create directory ' || ADMINDIR || ' as '''||L_HOME||'/rdbms/admin'''; < < DIR := LOGDIR; < EXECUTE IMMEDIATE 'create directory ' || LOGDIR || ' as '''||L_HOME||'/cfgtoollogs'''; < < EXCEPTION < WHEN OTHERS THEN < < IF DIR = LOGDIR THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', directory creation failed for ' || DIR); < END CREATE_DIRS; < < < PROCEDURE CLEANUP IS < DIR VARCHAR2(30); < OBJID NUMBER; < CURSOR C1(NAME VARCHAR2) IS SELECT OBJECT_ID FROM ALL_OBJECTS < WHERE OBJECT_TYPE ='DIRECTORY' AND OBJECT_NAME=NAME; < BEGIN < < DIR := ADMINDIR; 45,62d12 < OPEN C1(ADMINDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < CLOSE C1; < < DIR := LOGDIR; < OPEN C1(LOGDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || LOGDIR; < END IF; < < EXCEPTION < WHEN OTHERS THEN < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', cleanup failed for ' || DIR); < END CLEANUP; 67,71c17 < < < < < FUNCTION GET_LOGFILE_NAME RETURN SYS.V$SYSTEM_PARAMETER.VALUE%TYPE --- > FUNCTION GET_LOGFILE_NAME RETURN "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE 74,75c20 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; < --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 103a49 > RETURN NULL; 160,161d105 < < CLEANUP; 180,181d123 < < CLEANUP; 201c143 < FUNCTION PARSE_INPUT_FILE RETURN NUMBER_ARRAY IS --- > FUNCTION PARSE_INPUT_FILE RETURN FIX_CONTROL_DATA IS 207a150 > FCDATA FIX_CONTROL_DATA; 217c160,161 < OPTIMBUGS := NUMBER_ARRAY(); --- > FCDATA.FIXES := NUMBER_ARRAY(); > FCDATA.VALS := NUMBER_ARRAY(); 229,232c173,181 < OPTIMBUGS.EXTEND(); < OPTIMBUGS(OPTIMBUGS.COUNT) := XML.EXTRACT('/bundlefcp/bundle[' || < P_COUNT || ']/fcbuglist/bug[' || < C_COUNT || ']/fix_control[' || GC_COUNT || ']/text()').GETSTRINGVAL(); --- > FCDATA.FIXES.EXTEND(); > FCDATA.FIXES(FCDATA.FIXES.COUNT) := XML.EXTRACT('/bundlefcp/bundle[' || > P_COUNT || ']/fcbuglist/bug[' || > C_COUNT || ']/fix_control[' || GC_COUNT || ']/text()').GETSTRINGVAL(); > FCDATA.VALS.EXTEND(); > FCDATA.VALS(FCDATA.VALS.COUNT) := XML.EXTRACT('/bundlefcp/bundle[' || > P_COUNT || ']/fcbuglist/bug[' || > C_COUNT || ']/fix_control[' || GC_COUNT || ']/@default_value').GETSTRINGVAL(); > 242c191 < RETURN OPTIMBUGS; --- > RETURN FCDATA; 246,247d194 < < CLEANUP; 249c196 < RETURN OPTIMBUGS; --- > RETURN FCDATA; 268c215 < VALUE VARCHAR2(10); --- > STRVALUE VARCHAR2(10); 322c269 < VALUE := SUBSTR(FIXSTRING, POS+1, LENGTH(FIXSTRING)); --- > STRVALUE := SUBSTR(FIXSTRING, POS+1, LENGTH(FIXSTRING)); 325,327c272,274 < IF IS_NUMBER(VALUE) = 'Y' THEN < SPVALS(SPVALS.COUNT) := TO_NUMBER(VALUE); < ELSIF UPPER(VALUE)='OFF' THEN --- > IF IS_NUMBER(STRVALUE) = 'Y' THEN > SPVALS(SPVALS.COUNT) := TO_NUMBER(STRVALUE); > ELSIF UPPER(STRVALUE)='OFF' THEN 329c276 < ELSIF UPPER(VALUE)='ON' THEN --- > ELSIF UPPER(STRVALUE)='ON' THEN 351,352d297 < < CLEANUP; 426,427d370 < < CLEANUP; 445c388 < SELECT VALUE FROM SYS.V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; --- > SELECT VALUE FROM "PUBLIC".V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; 464c407 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in PUBLIC.v$system_fix_control'); 469c412 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in PUBLIC.v$system_fix_control'); 485,486d427 < < CLEANUP; 497,499c438,439 < PROCEDURE DISPLAY_ALTER_CMD(BUGSARRAY IN NUMBER_ARRAY, < ACTION IN VARCHAR2, < SCOPE IN VARCHAR2) --- > PROCEDURE DISPLAY_ALTER_CMD(BUNDDATA IN FIX_CONTROL_DATA, > SCOPE IN VARCHAR2) 503c443,445 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; > BUGSARRAY NUMBER_ARRAY := BUNDDATA.FIXES; > VALSARRAY NUMBER_ARRAY := BUNDDATA.VALS; 518c460 < SQLCMD := SQLCMD || '''' || BUGSARRAY(I) ||':'|| ACTION || ''','; --- > SQLCMD := SQLCMD || '''' || BUGSARRAY(I) ||':'|| VALSARRAY(I) || ''','; 520c462 < SQLCMD := SQLCMD || '''' || BUGSARRAY(I) ||':'|| ACTION || ''''; --- > SQLCMD := SQLCMD || '''' || BUGSARRAY(I) ||':'|| VALSARRAY(I) || ''''; 538,539d479 < < CLEANUP; 555c495 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 607,608d546 < < CLEANUP; 615c553 < CURSOR C1 IS SELECT COUNT(*) FROM GV$INSTANCE WHERE STATUS='OPEN'; --- > CURSOR C1 IS SELECT COUNT(*) FROM SYS.GV$INSTANCE WHERE STATUS='OPEN'; 618c556 < CURSOR C2 IS SELECT VALUE FROM V$PARAMETER WHERE NAME='cluster_database_instances'; --- > CURSOR C2 IS SELECT VALUE FROM "PUBLIC".V$PARAMETER WHERE NAME='cluster_database_instances'; 620c558 < TOTAL_VAL SYS.V$PARAMETER.VALUE%TYPE; --- > TOTAL_VAL "PUBLIC".V$PARAMETER.VALUE%TYPE; 652,653d589 < < CLEANUP; 661c597 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 748c684 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 867c803 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 981,983d916 < < CLEANUP; < 994d926 < CLEANUP; 1004c936 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1040c972 < 'gv$system_fix_control where inst_id= ' || INSTID; --- > 'sys.gv$system_fix_control where inst_id= ' || INSTID; 1102,1104d1033 < < CLEANUP; < 1115d1043 < CLEANUP; 1142c1070 < SELECT OPEN_MODE INTO OPENMODE FROM V$PDBS; --- > SELECT OPEN_MODE INTO OPENMODE FROM "PUBLIC".V$PDBS; 1165d1092 < CLEANUP; 1178d1104 < BUNDARRAY NUMBER_ARRAY; 1203c1129 < CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1216d1141 < INSTNAMEBIND VARCHAR2(20); 1218c1143,1146 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; > > SPFILE_ERROR EXCEPTION; > PRAGMA EXCEPTION_INIT( SPFILE_ERROR, -32010 ); 1229a1158 > 1233,1234c1162,1164 < < CREATE_DIRS; --- > > > BUNDDATA := PARSE_INPUT_FILE; 1237c1167,1172 < BUNDARRAY := PARSE_INPUT_FILE(); --- > > IF UPPER(ACTION)='OFF' THEN > FOR I IN 1..BUNDDATA.FIXES.COUNT LOOP > BUNDDATA.VALS(I) := 0; > END LOOP; > END IF; 1239,1242c1174,1175 < IF (BUNDARRAY.COUNT = 0) THEN < DBMS_OUTPUT.PUT_LINE(' No fixes with fix_controls applied as part of this bundle.'); < < CLEANUP; --- > IF (BUNDDATA.FIXES.COUNT = 0) THEN > DBMS_OUTPUT.PUT_LINE(' No fixes with fix_controls applied as part of bundles.'); 1249,1251c1182 < DISPLAY_ALTER_CMD(BUNDARRAY, ACTION, SCOPE); < < CLEANUP; --- > DISPLAY_ALTER_CMD(BUNDDATA, SCOPE); 1256,1273d1186 < BUNDDATA.FIXES := BUNDARRAY; < < < BUNDDATA.VALS := NUMBER_ARRAY(); < < FOR I IN 1..BUNDARRAY.COUNT LOOP < < BUNDDATA.VALS.EXTEND(); < < IF UPPER(ACTION)='OFF' THEN < BUNDDATA.VALS(I) := 0; < ELSIF UPPER(ACTION)='ON' THEN < BUNDDATA.VALS(I) := 1; < END IF; < < END LOOP; < < 1293c1206 < SELECT INSTANCE_NAME INTO INSTNAME FROM V$INSTANCE; --- > SELECT INSTANCE_NAME INTO INSTNAME FROM "PUBLIC".V$INSTANCE; 1365c1278 < MEMVALARRAY := GET_BUNDLE_FIXES_INMEMORY_VAL(BUNDARRAY,CON_ID); --- > MEMVALARRAY := GET_BUNDLE_FIXES_INMEMORY_VAL(BUNDDATA.FIXES, CON_ID); 1369c1282 < FINALMEMDATA.FIXES := BUNDARRAY; --- > FINALMEMDATA.FIXES := BUNDDATA.FIXES; 1374c1287 < FINALMEMDATA.FIXES := BUNDARRAY; --- > FINALMEMDATA.FIXES := BUNDDATA.FIXES; 1380,1381c1293,1294 < FOR I IN 1..BUNDARRAY.COUNT LOOP < FIXCONTROL := FIXCONTROL || BUNDARRAY(I) || ':' || MEMVALARRAY(I) || ' '; --- > FOR I IN 1..BUNDDATA.FIXES.COUNT LOOP > FIXCONTROL := FIXCONTROL || BUNDDATA.FIXES(I) || ':' || MEMVALARRAY(I) || ' '; 1393,1394c1306,1307 < FOR I IN 1..BUNDARRAY.COUNT LOOP < FIXCONTROL := FIXCONTROL || BUNDARRAY(I) || ':' || FINALMEMDATA.VALS(I) || ' '; --- > FOR I IN 1..BUNDDATA.FIXES.COUNT LOOP > FIXCONTROL := FIXCONTROL || BUNDDATA.FIXES(I) || ':' || FINALMEMDATA.VALS(I) || ' '; 1479,1480c1392,1394 < INSTNAMEBIND := '''' || INSTNAME || ''''; < SQL_STMT := 'alter system reset "_fix_control" SID=' || INSTNAMEBIND || 'scope=spfile'; --- > SQL_STMT := 'alter system reset "_fix_control" SID=' || > SYS.DBMS_ASSERT.ENQUOTE_LITERAL(INSTNAME) || > ' scope=spfile'; 1484,1492c1398,1406 < WHEN OTHERS THEN < < IF (SQLCODE NOT IN (-32010)) THEN < UTL_FILE.FCLOSE(LOGF); < CLEANUP; < CLOSE C1; < RAISE; < END IF; < END; --- > > > WHEN SPFILE_ERROR THEN > NULL; > WHEN OTHERS THEN > UTL_FILE.FCLOSE(LOGF); > CLOSE C1; > RAISE; > END; 1509,1511d1422 < < CLEANUP; < 1517,1518d1427 < < CLEANUP; 1542,1544d1450 < CREATE_DIRS; < < 1558a1465,1469 > IF P_COUNT = 1 THEN > DBMS_OUTPUT.PUT_LINE( CHR(10) || 'Bundles with fixes which can cause plan changes not applied yet'); > RETURN; > END IF; > 1570,1572c1481,1483 < DBMS_OUTPUT.PUT_LINE(CHR(10) || 'Either invalid bundle-id or no fixes ' < || 'with fix_controls added in corresponding bundle'); < CLEANUP; --- > DBMS_OUTPUT.PUT_LINE(CHR(10) || 'Invalid input value, please execute ' > || 'dbms_optim_bundle.listBundlesWithFCFixes ' > || 'to get list of valid bundleId values'); 1652,1654d1562 < < CLEANUP; < 1657,1658d1564 < < CLEANUP; 1661a1568,1601 > > > PROCEDURE LISTBUNDLESWITHFCFIXES > IS > XCLOB CLOB; > XML XMLTYPE; > BUNDLEID NUMBER; > P_COUNT NUMBER := 1; > BUNDLENAME VARCHAR2(100); > BEGIN > > > XCLOB := GETDOCUMENT(INPUTFILE); > > > XML := XMLTYPE.CREATEXML(XCLOB); > > > WHILE XML.EXISTSNODE('/bundlefcp/bundle[' || P_COUNT || ']') = 1 LOOP > BUNDLEID := TO_NUMBER(XML.EXTRACT('/bundlefcp/bundle[' || P_COUNT || ']/@id').GETSTRINGVAL()); > BUNDLENAME := XML.EXTRACT('/bundlefcp/bundle[' || P_COUNT || ']/@description').GETSTRINGVAL(); > DBMS_OUTPUT.PUT_LINE('bundleId: ' || BUNDLEID || ', bundleName: ' || BUNDLENAME); > P_COUNT := P_COUNT + 1; > END LOOP; > > IF P_COUNT = 1 THEN > DBMS_OUTPUT.PUT_LINE(CHR(10) || 'Bundles with fixes which can cause plan changes not applied yet'); > END IF; > > EXCEPTION > WHEN OTHERS THEN > RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', listBundles Error '); > END LISTBUNDLESWITHFCFIXES; >
16711c16711,16712 < FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I --- > FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I, > V$DATABASE DB 16727a16729 > AND L.NEXT_CHANGE# >= DB.STANDBY_BECAME_PRIMARY_SCN 25871a25874,25881 > DEB(DEB_IN, 'lbRec.completion_time=' || LBREC.COMPLETION_TIME); > DEB(DEB_IN, 'lbRec.df_ckp_mod_time=' || LBREC.DF_CKP_MOD_TIME); > DEB(DEB_IN, 'lbRec.df_checkpoint_change#=' || > LBREC.DF_CHECKPOINT_CHANGE#); > DEB(DEB_IN, 'lbRec.df_plugin_change#=' || > LBREC.DF_PLUGIN_CHANGE#); > DEB(DEB_IN, 'lbRec.df_creation_change#=' || > LBREC.DF_CREATION_CHANGE#); 25878,25880c25888,25896 < LBREC.DF_CKP_MOD_TIME < UNTILTIME OR < (UNTILTIME IS NULL AND < LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)))) THEN --- > ((LBREC.DF_PLUGIN_CHANGE# > LBREC.DF_CREATION_CHANGE#) AND > (LBREC.DF_PLUGIN_CHANGE# <= UNTILSCN)) OR > ((UNTILTIME IS NOT NULL) AND > (NVL(LBREC.COMPLETION_TIME, LBREC.DF_CKP_MOD_TIME) > < UNTILTIME)) OR > ((UNTILTIME IS NULL) AND > (LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)) > ))) THEN >
7209c7209,7210 < ,PATTERN4 IN VARCHAR2) --- > ,PATTERN4 IN VARCHAR2 > ,BACKEDUPANYSCN IN NUMBER) 7210a7212,7225 > WITH > MY_DBINC AS > (SELECT RESETLOGS_TIME, > RESETLOGS_CHANGE#, > PRIOR RESETLOGS_CHANGE# NEXT_RESETLOGS_CHANGE# > FROM V$DATABASE_INCARNATION > START WITH RESETLOGS_CHANGE# = THIS_RESET_SCN > AND RESETLOGS_TIME = THIS_RESET_TIME > CONNECT BY PRIOR PRIOR_INCARNATION# = INCARNATION# > UNION ALL > SELECT THIS_RESET_TIME RESETLOGS_TIME, > THIS_RESET_SCN RESETLOGS_CHANGE#, > NULL NEXT_RESETLOGS_CHANGE# > FROM DUAL) 7246,7250c7261,7272 < FILE#, CREATION_CHANGE#, PLUGIN_CHANGE#, < PLUGGED_READONLY, CHECKPOINT_CHANGE#, CHECKPOINT_TIME, < RESETLOGS_CHANGE#, RESETLOGS_TIME < FROM V$DATAFILE_COPY < WHERE STATUS = 'A') CDF, --- > CDF.FILE#, CDF.CREATION_CHANGE#, CDF.PLUGIN_CHANGE#, > CDF.PLUGGED_READONLY, CDF.CHECKPOINT_CHANGE#, > CDF.CHECKPOINT_TIME, CDF.RESETLOGS_CHANGE#, > CDF.RESETLOGS_TIME, CDF.ABSOLUTE_FUZZY_CHANGE# > FROM V$DATAFILE_COPY CDF, MY_DBINC > WHERE CDF.STATUS = 'A' > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = FALSE# OR > (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# AND > CDF.FILE# > 0 AND > (MY_DBINC.NEXT_RESETLOGS_CHANGE# IS NULL OR > CDF.ABSOLUTE_FUZZY_CHANGE# <= > MY_DBINC.NEXT_RESETLOGS_CHANGE#)))) CDF, 7283,7284c7305,7307 < AND BDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# < AND BDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME --- > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# OR > (BDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# AND > BDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME)) 7384,7388c7407,7418 < FILE#, CREATION_CHANGE#, PLUGIN_CHANGE#, < PLUGGED_READONLY, CHECKPOINT_CHANGE#, CHECKPOINT_TIME, < RESETLOGS_CHANGE#, RESETLOGS_TIME < FROM V$DATAFILE_COPY < WHERE STATUS = 'A') CDF --- > CDF.FILE#, CDF.CREATION_CHANGE#, CDF.PLUGIN_CHANGE#, > CDF.PLUGGED_READONLY, CDF.CHECKPOINT_CHANGE#, > CDF.CHECKPOINT_TIME, CDF.RESETLOGS_CHANGE#, CDF.RESETLOGS_TIME, > CDF.ABSOLUTE_FUZZY_CHANGE# > FROM V$DATAFILE_COPY CDF, MY_DBINC > WHERE CDF.STATUS = 'A' > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = FALSE# OR > (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# AND > CDF.FILE# > 0 AND > (MY_DBINC.NEXT_RESETLOGS_CHANGE# IS NULL OR > CDF.ABSOLUTE_FUZZY_CHANGE# <= > MY_DBINC.NEXT_RESETLOGS_CHANGE#)))) CDF 7394,7395c7424,7426 < AND XDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# < AND XDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME --- > AND (DCBACKUPHISTORY_C.BACKEDUPANYSCN = TRUE# OR > (XDF.CHECKPOINT_CHANGE# = CDF.CHECKPOINT_CHANGE# AND > XDF.CHECKPOINT_TIME = CDF.CHECKPOINT_TIME)) 16593c16624,16625 < FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I --- > FROM V$ARCHIVED_LOG L, V$ARCHIVE_DEST D, V$DATABASE_INCARNATION I, > V$DATABASE DB 16609a16642 > AND L.NEXT_CHANGE# >= DB.STANDBY_BECAME_PRIMARY_SCN 25542a25576,25581 > DEB(DEB_IN, 'lbRec.completion_time=' || LBREC.COMPLETION_TIME); > DEB(DEB_IN, 'lbRec.df_ckp_mod_time=' || LBREC.DF_CKP_MOD_TIME); > DEB(DEB_IN, 'lbRec.df_checkpoint_change#=' || > LBREC.DF_CHECKPOINT_CHANGE#); > DEB(DEB_IN, 'lbRec.df_creation_change#=' || > LBREC.DF_CREATION_CHANGE#); 25549,25551c25588,25594 < LBREC.DF_CKP_MOD_TIME < UNTILTIME OR < (UNTILTIME IS NULL AND < LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)))) THEN --- > ((UNTILTIME IS NOT NULL) AND > (NVL(LBREC.COMPLETION_TIME, LBREC.DF_CKP_MOD_TIME) > < UNTILTIME)) OR > ((UNTILTIME IS NULL) AND > (LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)) > ))) THEN > 26694c26737,26738 < ,TODEST4 IN VARCHAR2 DEFAULT NULL) --- > ,TODEST4 IN VARCHAR2 DEFAULT NULL > ,ATANYSCN IN BOOLEAN DEFAULT FALSE) 26706a26751 > BACKEDUPANYSCN NUMBER; 26709a26755,26764 > > > > > IF (ATANYSCN) THEN > BACKEDUPANYSCN := TRUE#; > ELSE > BACKEDUPANYSCN := FALSE#; > END IF; > 26714a26770 > 26722c26778,26779 < PATTERN4 => STARTWITHPATTERN(TODEST4)); --- > PATTERN4 => STARTWITHPATTERN(TODEST4), > BACKEDUPANYSCN => BACKEDUPANYSCN);
123a124,144 > > > > > > > > PROCEDURE IS_USER_CREATED(TABOWNER IN VARCHAR2, > TABNM IN VARCHAR2, > INDEX_NAME IN VARCHAR2, > IS_USER_CRTD OUT PLS_INTEGER) IS > EXTERNAL > NAME "kkziIsUserCreatedIdx" > LIBRARY DBMS_SNAPSHOT_LIB > WITH CONTEXT > PARAMETERS(CONTEXT, > TABOWNER STRING, TABOWNER LENGTH SB2, > TABNM STRING, TABNM LENGTH SB2, > INDEX_NAME STRING, INDEX_NAME LENGTH SB2, > IS_USER_CRTD UB1) > LANGUAGE C; 1012a1034,1037 > IDX_NAME VARCHAR(128); > IDX_INT_NAME VARCHAR(2000); > IS_INDEX_USER_CRTD PLS_INTEGER := 0; > USING_INDEX BOOLEAN :=FALSE; 1129a1155,1177 > > > > IF (OBJ_TYPE = DBMS_REDEFINITION.CONS_CONSTRAINT) THEN > IDX_NAME := DBMS_REDEFINITION_INTERNAL.GET_IDX_NAME(O_OBJ_NAME, O_OBJ_OWNER); > IF (IDX_NAME IS NOT NULL) THEN > > IS_USER_CREATED( O_OBJ_OWNER, O_BT_NAME, IDX_NAME, IS_INDEX_USER_CRTD); > IF (IS_INDEX_USER_CRTD = 1) THEN > IDX_INT_NAME := DBMS_REDEFINITION_INTERNAL.GET_INT_OBJ_NAME(RID, > DBMS_REDEFINITION.CONS_INDEX,O_OBJ_OWNER,IDX_NAME); > > IF ( IDX_INT_NAME IS NOT NULL) THEN > T_HANDLE:= DBMS_METADATA.ADD_TRANSFORM(HANDLE, 'MODIFY'); > DBMS_METADATA.SET_REMAP_PARAM(T_HANDLE,'REMAP_NAME',IDX_NAME, > IDX_INT_NAME); > USING_INDEX := TRUE; > END IF; > END IF; > END IF; > END IF; > > 1137c1185,1189 < DBMS_METADATA.SET_TRANSFORM_PARAM(DHANDLE,'INDEX_BY_NAME',FALSE); --- > IF ( USING_INDEX ) THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(DHANDLE,'INDEX_BY_NAME',TRUE); > ELSE > DBMS_METADATA.SET_TRANSFORM_PARAM(DHANDLE,'INDEX_BY_NAME',FALSE); > END IF; 1144c1196,1202 < DBMS_METADATA.SET_TRANSFORM_PARAM(DHANDLE,'ONLINE_REDEF',TRUE); --- > IF (NOT USING_INDEX) THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(DHANDLE,'ONLINE_REDEF',TRUE); > END IF; > > > >
46a47,69 > > > > > > > > > FUNCTION GET_IDX_NAME(CONS_NAME IN VARCHAR2, > CONS_OWNER IN VARCHAR2) RETURN VARCHAR2 IS > IDX_NAME VARCHAR2(128); > BEGIN > SELECT INDEX_NAME INTO IDX_NAME > FROM DBA_CONSTRAINTS > WHERE CONSTRAINT_NAME=CONS_NAME AND OWNER=CONS_OWNER; > RETURN IDX_NAME; > EXCEPTION > WHEN NO_DATA_FOUND THEN > RETURN NULL; > WHEN OTHERS THEN > RETURN NULL; > END; > 53a77,105 > > > FUNCTION GET_INT_OBJ_NAME(RID IN PLS_INTEGER, > OTYP IN PLS_INTEGER, > O_OBJ_OWNER IN VARCHAR2, > O_OBJ_NAME IN VARCHAR2) > RETURN VARCHAR2 IS > INT_OBJ_NAME VARCHAR2(2000); > BEGIN > SELECT INT_OBJ_NAME INTO INT_OBJ_NAME > FROM SYS.REDEF_OBJECT$ > WHERE REDEF_ID = RID > AND OBJ_TYPE = OTYP > AND OBJ_OWNER = O_OBJ_OWNER > AND OBJ_NAME = O_OBJ_NAME; > RETURN INT_OBJ_NAME; > EXCEPTION > WHEN NO_DATA_FOUND THEN > RETURN NULL; > WHEN OTHERS THEN > RETURN NULL; > END; > > > > > > >
32494c32494,32498 < MULTI_COMPART := TRUE; --- > > > IF (PNAME IS NULL) THEN > MULTI_COMPART := TRUE; > END IF;
1c1,3 < TYPE dbms_optim_bugValObType as object(fix number, val number) --- > TYPE > dbms_optim_bugValObType FORCE as object(fix number, val number); >
1c1,3 < TYPE dbms_optim_fcTabType as table of dbms_optim_bugValObType --- > TYPE > dbms_optim_fcTabType as table of dbms_optim_bugValObType; >
12.2.0.1
4a5 > oidval raw(16), /* unique id */
2c2 < type "SYS_YOID0000072649$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE), "SYS_NC00003$" VARCHAR2(128 BYTE)) --- > type "SYS_YOID0000072649$" as object( "SYS_NC00001$" RAW(16))
2c2 < type "SYS_YOID0000072661$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE)) --- > type "SYS_YOID0000072661$" as object( "SYS_NC00001$" RAW(16))
1,2c1,2 < type "SYS_YOID0000072664$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE), "SYS_NC00003$" VARCHAR2(128 BYTE), "SYS_NC00004$" NUMBER) < type "SYS_YOID0000072664$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE), "SYS_NC00003$" VARCHAR2(128 BYTE), "SYS_NC00004$" NUMBER) --- > type "SYS_YOID0000072664$" as object( "SYS_NC00001$" RAW(16)) > type "SYS_YOID0000072664$" as object( "SYS_NC00001$" RAW(16))
2c2 < type "SYS_YOID0000072667$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(100 BYTE), "SYS_NC00003$" VARCHAR2(128 BYTE), "SYS_NC00004$" VARCHAR2(128 BYTE), "SYS_NC00005$" VARCHAR2(128 BYTE), "SYS_NC00006$" VARCHAR2(128 BYTE), "SYS_NC00007$" NUMBER) --- > type "SYS_YOID0000072667$" as object( "SYS_NC00001$" RAW(16))
2c2 < type "SYS_YOID0000072694$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE), "SYS_NC00003$" VARCHAR2(128 BYTE), "SYS_NC00004$" VARCHAR2(128 BYTE)) --- > type "SYS_YOID0000072694$" as object( "SYS_NC00001$" RAW(16))
2c2 < type "SYS_YOID0000072697$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE), "SYS_NC00003$" VARCHAR2(100 BYTE), "SYS_NC00004$" VARCHAR2(128 BYTE), "SYS_NC00005$" VARCHAR2(128 BYTE), "SYS_NC00006$" VARCHAR2(128 BYTE), "SYS_NC00007$" VARCHAR2(128 BYTE)) --- > type "SYS_YOID0000072697$" as object( "SYS_NC00001$" RAW(16))
1c1 < type "SYS_YOID0000072870$" as object( "SYS_NC00001$" VARCHAR2(128 BYTE), "SYS_NC00002$" VARCHAR2(128 BYTE), "SYS_NC00003$" VARCHAR2(128 BYTE), "SYS_NC00004$" NUMBER) --- > type "SYS_YOID0000072870$" as object( "SYS_NC00001$" RAW(16))
1c1 < select '0','0', --- > select '0','0', sys_guid(),
60a61,65 > FUNCTION GET_USER_MAP(cluster_name IN VARCHAR2 DEFAULT '[DEFAULT]', > current_database_user IN VARCHAR2) -- NOT NULL > RETURN VARCHAR2; > >
15a16,20 > > > ---------------------------- > -- PROCEDURES AND FUNCTIONS > ----------------------------
189a190,191 > -- Bug 29339155: Check for remoteowner being null to avoid ORA-1422 error > -- if there were remote PL/SQL objects depending on oldview. 192c194,195 < ' AND TYPE# in (2, 4) and owner# = :2' --- > ' AND TYPE# in (2, 4) and owner# = :2' || > ' AND REMOTEOWNER is null'
198c198,251 < END; --- > > > > > > FUNCTION GET_USER_MAP(CLUSTER_NAME IN VARCHAR2 DEFAULT '[DEFAULT]', > CURRENT_DATABASE_USER IN VARCHAR2) > RETURN VARCHAR2 > IS > TABLE_DOES_NOT_EXIST EXCEPTION; > PRAGMA EXCEPTION_INIT(TABLE_DOES_NOT_EXIST, -942); > HDFS_USER_OUT VARCHAR2(128); > NAMESPACE VARCHAR2(128); > PARM_HADOOP VARCHAR2(128); > CURRENT_DATABASE_USER_U VARCHAR2(128) := CURRENT_DATABASE_USER; > DEFAULT_CLUSTER_NAME CONSTANT VARCHAR2(9) := '[DEFAULT]'; > STOPPER_AT CONSTANT CHAR := '@'; > STOPPER_SLASH CONSTANT CHAR := '/'; > AT_LOC PLS_INTEGER; > SLASH_LOC PLS_INTEGER; > FOUND BOOLEAN; > CNT PLS_INTEGER; > USE_LEN PLS_INTEGER; > USE_THIS_CLUSTER_NAME VARCHAR2(128); > MAPPING VARCHAR2(128); > MAP_OUT VARCHAR2(128); > RC PLS_INTEGER; > TRUEORFALSE CHAR(5); > BEGIN > > SELECT SYS_CONTEXT('USERENV', 'ISDBA') INTO TRUEORFALSE FROM DUAL; > > IF TRUEORFALSE != 'TRUE' AND > NOT DBMS_SESSION.IS_ROLE_ENABLED('BDSQL_USER') THEN > > RETURN NULL; > END IF; > IF CLUSTER_NAME <> DEFAULT_CLUSTER_NAME THEN > USE_THIS_CLUSTER_NAME := CLUSTER_NAME; > ELSE > USE_THIS_CLUSTER_NAME := DEFAULT_CLUSTER_NAME; > END IF; > > HDFS_USER_OUT := NULL; > DBMS_BDSQL.SEL_USERMAP(USE_THIS_CLUSTER_NAME, CURRENT_DATABASE_USER, > MAPPING, RC); > HDFS_USER_OUT := MAPPING; > IF (MAPPING IS NULL) THEN MAP_OUT := '<<NULL>>'; > ELSE MAP_OUT := MAPPING; END IF; > RETURN MAPPING; > > END GET_USER_MAP; > > END DBMS_HADOOP;
12,21d11 < PROCEDURE CREATE_DIRS IS < L_HOME VARCHAR2(255); < DIR VARCHAR2(30); < BEGIN < < SYS.DBMS_SYSTEM.GET_ENV('ORACLE_HOME', L_HOME); < < < DIR := ADMINDIR; < EXECUTE IMMEDIATE 'create directory ' || ADMINDIR || ' as '''||L_HOME||'/rdbms/admin'''; 23,33d12 < DIR := LOGDIR; < EXECUTE IMMEDIATE 'create directory ' || LOGDIR || ' as '''||L_HOME||'/cfgtoollogs'''; < < EXCEPTION < WHEN OTHERS THEN < < IF DIR = LOGDIR THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', directory creation failed for ' || DIR); < END CREATE_DIRS; 36,43d14 < PROCEDURE CLEANUP IS < DIR VARCHAR2(30); < OBJID NUMBER; < CURSOR C1(OBJNAME VARCHAR2) IS SELECT OBJECT_ID FROM ALL_OBJECTS < WHERE OBJECT_TYPE ='DIRECTORY' AND OBJECT_NAME=OBJNAME; < BEGIN < < DIR := ADMINDIR; 45,57d15 < OPEN C1(ADMINDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < CLOSE C1; < < DIR := LOGDIR; < OPEN C1(LOGDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || LOGDIR; < END IF; 59,71c17 < EXCEPTION < WHEN OTHERS THEN < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', cleanup failed for ' || DIR); < END CLEANUP; < < < < < < < < < FUNCTION GET_LOGFILE_NAME RETURN SYS.V$SYSTEM_PARAMETER.VALUE%TYPE --- > FUNCTION GET_LOGFILE_NAME RETURN "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE 74,75c20 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; < --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 161,162d105 < < CLEANUP; 181,182d123 < < CLEANUP; 254,255d194 < < CLEANUP; 359,360d297 < < CLEANUP; 434,435d370 < < CLEANUP; 453c388 < SELECT VALUE FROM SYS.V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; --- > SELECT VALUE FROM "PUBLIC".V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; 472c407 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in PUBLIC.v$system_fix_control'); 477c412 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in PUBLIC.v$system_fix_control'); 493,494d427 < < CLEANUP; 510c443 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 547,548d479 < < CLEANUP; 564c495 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 616,617d546 < < CLEANUP; 624c553 < CURSOR C1 IS SELECT COUNT(*) FROM GV$INSTANCE WHERE STATUS='OPEN'; --- > CURSOR C1 IS SELECT COUNT(*) FROM SYS.GV$INSTANCE WHERE STATUS='OPEN'; 627c556 < CURSOR C2 IS SELECT VALUE FROM V$PARAMETER WHERE NAME='cluster_database_instances'; --- > CURSOR C2 IS SELECT VALUE FROM "PUBLIC".V$PARAMETER WHERE NAME='cluster_database_instances'; 629c558 < TOTAL_VAL SYS.V$PARAMETER.VALUE%TYPE; --- > TOTAL_VAL "PUBLIC".V$PARAMETER.VALUE%TYPE; 661,662d589 < < CLEANUP; 670c597 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 757c684 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 876c803 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 990,992d916 < < CLEANUP; < 1003d926 < CLEANUP; 1013c936 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1049c972 < 'gv$system_fix_control where inst_id= ' || INSTID; --- > 'sys.gv$system_fix_control where inst_id= ' || INSTID; 1111,1113d1033 < < CLEANUP; < 1124d1043 < CLEANUP; 1151c1070 < SELECT OPEN_MODE INTO OPENMODE FROM V$PDBS; --- > SELECT OPEN_MODE INTO OPENMODE FROM "PUBLIC".V$PDBS; 1174d1092 < CLEANUP; 1211c1129 < CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1224d1141 < INSTNAMEBIND VARCHAR2(20); 1226c1143 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 1245,1247d1161 < < CREATE_DIRS; < 1262,1263d1175 < < CLEANUP; 1271,1272d1182 < < CLEANUP; 1296c1206 < SELECT INSTANCE_NAME INTO INSTNAME FROM V$INSTANCE; --- > SELECT INSTANCE_NAME INTO INSTNAME FROM "PUBLIC".V$INSTANCE; 1482,1483c1392,1394 < INSTNAMEBIND := '''' || INSTNAME || ''''; < SQL_STMT := 'alter system reset "_fix_control" SID=' || INSTNAMEBIND || 'scope=spfile'; --- > SQL_STMT := 'alter system reset "_fix_control" SID=' || > SYS.DBMS_ASSERT.ENQUOTE_LITERAL(INSTNAME) || > ' scope=spfile'; 1493d1403 < CLEANUP; 1513,1515d1422 < < CLEANUP; < 1521,1522d1427 < < CLEANUP; 1546,1548d1450 < CREATE_DIRS; < < 1565d1466 < CLEANUP; 1583d1483 < CLEANUP; 1663,1665d1562 < < CLEANUP; < 1668,1669d1564 < < CLEANUP; 1683,1684d1577 < < CREATE_DIRS; 1704,1705d1596 < < CLEANUP; 1708,1709d1598 < < CLEANUP;
26504a26505,26512 > DEB(DEB_IN, 'lbRec.completion_time=' || LBREC.COMPLETION_TIME); > DEB(DEB_IN, 'lbRec.df_ckp_mod_time=' || LBREC.DF_CKP_MOD_TIME); > DEB(DEB_IN, 'lbRec.df_checkpoint_change#=' || > LBREC.DF_CHECKPOINT_CHANGE#); > DEB(DEB_IN, 'lbRec.df_plugin_change#=' || > LBREC.DF_PLUGIN_CHANGE#); > DEB(DEB_IN, 'lbRec.df_creation_change#=' || > LBREC.DF_CREATION_CHANGE#); 26511,26513c26519,26527 < LBREC.DF_CKP_MOD_TIME < UNTILTIME OR < (UNTILTIME IS NULL AND < LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)))) THEN --- > ((LBREC.DF_PLUGIN_CHANGE# > LBREC.DF_CREATION_CHANGE#) AND > (LBREC.DF_PLUGIN_CHANGE# <= UNTILSCN)) OR > ((UNTILTIME IS NOT NULL) AND > (NVL(LBREC.COMPLETION_TIME, LBREC.DF_CKP_MOD_TIME) > < UNTILTIME)) OR > ((UNTILTIME IS NULL) AND > (LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)) > ))) THEN >
1c1,3 < TYPE dbms_optim_bugValObType FORCE as object(fix number, val number); --- > TYPE > dbms_optim_bugValObType FORCE as object(fix number, val number); >
1c1,3 < TYPE dbms_optim_fcTabType as table of dbms_optim_bugValObType; --- > TYPE > dbms_optim_fcTabType as table of dbms_optim_bugValObType; >
18.0.0.0
12c12 < bannerVersion CONSTANT VARCHAR2(15) := '18.06.00.00'; --- > bannerVersion CONSTANT VARCHAR2(15) := '18.06.01.00'; 24,26c24,26 < fsn CONSTANT NUMBER := instr('18.06.00.00', '.'); < msn CONSTANT NUMBER := instr('18.06.00.00', '.', fsn + 1); < psn CONSTANT NUMBER := instr('18.06.00.00', '.', msn + 1); --- > fsn CONSTANT NUMBER := instr('18.06.01.00', '.'); > msn CONSTANT NUMBER := instr('18.06.01.00', '.', fsn + 1); > psn CONSTANT NUMBER := instr('18.06.01.00', '.', msn + 1); 29c29 < to_number(substr('18.06.00.00', 1, fsn - 1)); --- > to_number(substr('18.06.01.00', 1, fsn - 1)); 31c31 < to_number(substr('18.06.00.00', fsn + 1, msn - fsn - 1)); --- > to_number(substr('18.06.01.00', fsn + 1, msn - fsn - 1)); 33c33 < to_number(substr('18.06.00.00', msn + 1, psn - msn - 1)); --- > to_number(substr('18.06.01.00', msn + 1, psn - msn - 1)); 35c35 < to_number(substr('18.06.00.00', psn + 1)); --- > to_number(substr('18.06.01.00', psn + 1));
12c12 < bannerVersion CONSTANT VARCHAR2(15) := '18.06.00.00'; --- > bannerVersion CONSTANT VARCHAR2(15) := '18.05.02.00'; 24,26c24,26 < fsn CONSTANT NUMBER := instr('18.06.00.00', '.'); < msn CONSTANT NUMBER := instr('18.06.00.00', '.', fsn + 1); < psn CONSTANT NUMBER := instr('18.06.00.00', '.', msn + 1); --- > fsn CONSTANT NUMBER := instr('18.05.02.00', '.'); > msn CONSTANT NUMBER := instr('18.05.02.00', '.', fsn + 1); > psn CONSTANT NUMBER := instr('18.05.02.00', '.', msn + 1); 29c29 < to_number(substr('18.06.00.00', 1, fsn - 1)); --- > to_number(substr('18.05.02.00', 1, fsn - 1)); 31c31 < to_number(substr('18.06.00.00', fsn + 1, msn - fsn - 1)); --- > to_number(substr('18.05.02.00', fsn + 1, msn - fsn - 1)); 33c33 < to_number(substr('18.06.00.00', msn + 1, psn - msn - 1)); --- > to_number(substr('18.05.02.00', msn + 1, psn - msn - 1)); 35c35 < to_number(substr('18.06.00.00', psn + 1)); --- > to_number(substr('18.05.02.00', psn + 1));
12c12 < bannerVersion CONSTANT VARCHAR2(15) := '18.06.00.00'; --- > bannerVersion CONSTANT VARCHAR2(15) := '18.07.00.00'; 24,26c24,26 < fsn CONSTANT NUMBER := instr('18.06.00.00', '.'); < msn CONSTANT NUMBER := instr('18.06.00.00', '.', fsn + 1); < psn CONSTANT NUMBER := instr('18.06.00.00', '.', msn + 1); --- > fsn CONSTANT NUMBER := instr('18.07.00.00', '.'); > msn CONSTANT NUMBER := instr('18.07.00.00', '.', fsn + 1); > psn CONSTANT NUMBER := instr('18.07.00.00', '.', msn + 1); 29c29 < to_number(substr('18.06.00.00', 1, fsn - 1)); --- > to_number(substr('18.07.00.00', 1, fsn - 1)); 31c31 < to_number(substr('18.06.00.00', fsn + 1, msn - fsn - 1)); --- > to_number(substr('18.07.00.00', fsn + 1, msn - fsn - 1)); 33c33 < to_number(substr('18.06.00.00', msn + 1, psn - msn - 1)); --- > to_number(substr('18.07.00.00', msn + 1, psn - msn - 1)); 35c35 < to_number(substr('18.06.00.00', psn + 1)); --- > to_number(substr('18.07.00.00', psn + 1));
15a16,20 > > > ---------------------------- > -- PROCEDURES AND FUNCTIONS > ----------------------------
13c13 < '18.6.0.0.0'; --- > '18.5.2.0.0';
13c13 < '18.6.0.0.0'; --- > '18.7.0.0.0';
13c13 < '18.6.0.0.0'; --- > '18.6.1.0.0';
197a198,199 > -- Bug 29339155: Check for remoteowner being null to avoid ORA-1422 error > -- if there were remote PL/SQL objects depending on oldview. 200c202,203 < ' AND TYPE# in (2, 4) and owner# = :2' --- > ' AND TYPE# in (2, 4) and owner# = :2' || > ' AND REMOTEOWNER is null'
12,21d11 < PROCEDURE CREATE_DIRS IS < L_HOME VARCHAR2(255); < DIR VARCHAR2(30); < BEGIN < < SYS.DBMS_SYSTEM.GET_ENV('ORACLE_HOME', L_HOME); < < < DIR := ADMINDIR; < EXECUTE IMMEDIATE 'create directory ' || ADMINDIR || ' as '''||L_HOME||'/rdbms/admin'''; 23,33d12 < DIR := LOGDIR; < EXECUTE IMMEDIATE 'create directory ' || LOGDIR || ' as '''||L_HOME||'/cfgtoollogs'''; < < EXCEPTION < WHEN OTHERS THEN < < IF DIR = LOGDIR THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', directory creation failed for ' || DIR); < END CREATE_DIRS; 36,43d14 < PROCEDURE CLEANUP IS < DIR VARCHAR2(30); < OBJID NUMBER; < CURSOR C1(OBJNAME VARCHAR2) IS SELECT OBJECT_ID FROM ALL_OBJECTS < WHERE OBJECT_TYPE ='DIRECTORY' AND OBJECT_NAME=OBJNAME; < BEGIN < < DIR := ADMINDIR; 45,57d15 < OPEN C1(ADMINDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < CLOSE C1; < < DIR := LOGDIR; < OPEN C1(LOGDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || LOGDIR; < END IF; 59,71c17 < EXCEPTION < WHEN OTHERS THEN < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', cleanup failed for ' || DIR); < END CLEANUP; < < < < < < < < < FUNCTION GET_LOGFILE_NAME RETURN SYS.V$SYSTEM_PARAMETER.VALUE%TYPE --- > FUNCTION GET_LOGFILE_NAME RETURN "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE 74,75c20 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; < --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 161,162d105 < < CLEANUP; 181,182d123 < < CLEANUP; 254,255d194 < < CLEANUP; 362,363d300 < < CLEANUP; 437,438d373 < < CLEANUP; 456c391 < SELECT VALUE FROM SYS.V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; --- > SELECT VALUE FROM "PUBLIC".V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; 475c410 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in PUBLIC.v$system_fix_control'); 480c415 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in PUBLIC.v$system_fix_control'); 496,497d430 < < CLEANUP; 513c446 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 550,551d482 < < CLEANUP; 567c498 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 619,620d549 < < CLEANUP; 627c556 < CURSOR C1 IS SELECT COUNT(*) FROM GV$INSTANCE WHERE STATUS='OPEN'; --- > CURSOR C1 IS SELECT COUNT(*) FROM SYS.GV$INSTANCE WHERE STATUS='OPEN'; 630c559 < CURSOR C2 IS SELECT VALUE FROM V$PARAMETER WHERE NAME='cluster_database_instances'; --- > CURSOR C2 IS SELECT VALUE FROM "PUBLIC".V$PARAMETER WHERE NAME='cluster_database_instances'; 632c561 < TOTAL_VAL SYS.V$PARAMETER.VALUE%TYPE; --- > TOTAL_VAL "PUBLIC".V$PARAMETER.VALUE%TYPE; 664,665d592 < < CLEANUP; 673c600 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 760c687 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 882c809 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1002,1004d928 < < CLEANUP; < 1015d938 < CLEANUP; 1025c948 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1061c984 < 'gv$system_fix_control where inst_id= ' || INSTID; --- > 'sys.gv$system_fix_control where inst_id= ' || INSTID; 1123,1125d1045 < < CLEANUP; < 1136d1055 < CLEANUP; 1163c1082 < SELECT OPEN_MODE INTO OPENMODE FROM V$PDBS; --- > SELECT OPEN_MODE INTO OPENMODE FROM "PUBLIC".V$PDBS; 1186d1104 < CLEANUP; 1223c1141 < CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1236d1153 < INSTNAMEBIND VARCHAR2(20); 1238c1155 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 1257,1259d1173 < < CREATE_DIRS; < 1274,1275d1187 < < CLEANUP; 1283,1284d1194 < < CLEANUP; 1308c1218 < SELECT INSTANCE_NAME INTO INSTNAME FROM V$INSTANCE; --- > SELECT INSTANCE_NAME INTO INSTNAME FROM "PUBLIC".V$INSTANCE; 1494,1495c1404,1406 < INSTNAMEBIND := '''' || INSTNAME || ''''; < SQL_STMT := 'alter system reset "_fix_control" SID=' || INSTNAMEBIND || 'scope=spfile'; --- > SQL_STMT := 'alter system reset "_fix_control" SID=' || > SYS.DBMS_ASSERT.ENQUOTE_LITERAL(INSTNAME) || > ' scope=spfile'; 1505d1415 < CLEANUP; 1525,1527d1434 < < CLEANUP; < 1533,1534d1439 < < CLEANUP; 1558,1560d1462 < CREATE_DIRS; < < 1577d1478 < CLEANUP; 1595d1495 < CLEANUP; 1675,1677d1574 < < CLEANUP; < 1680,1681d1576 < < CLEANUP; 1695,1696d1589 < < CREATE_DIRS; 1716,1717d1608 < < CLEANUP; 1720,1721d1610 < < CLEANUP;
122c122 < CATALOGVERSION CONSTANT VARCHAR2(11) := '18.06.00.00'; --- > CATALOGVERSION CONSTANT VARCHAR2(11) := '18.05.02.00';
122c122 < CATALOGVERSION CONSTANT VARCHAR2(11) := '18.06.00.00'; --- > CATALOGVERSION CONSTANT VARCHAR2(11) := '18.07.00.00'; 26660a26661,26668 > DEB(DEB_IN, 'lbRec.completion_time=' || LBREC.COMPLETION_TIME); > DEB(DEB_IN, 'lbRec.df_ckp_mod_time=' || LBREC.DF_CKP_MOD_TIME); > DEB(DEB_IN, 'lbRec.df_checkpoint_change#=' || > LBREC.DF_CHECKPOINT_CHANGE#); > DEB(DEB_IN, 'lbRec.df_plugin_change#=' || > LBREC.DF_PLUGIN_CHANGE#); > DEB(DEB_IN, 'lbRec.df_creation_change#=' || > LBREC.DF_CREATION_CHANGE#); 26667,26669c26675,26683 < LBREC.DF_CKP_MOD_TIME < UNTILTIME OR < (UNTILTIME IS NULL AND < LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)))) THEN --- > ((LBREC.DF_PLUGIN_CHANGE# > LBREC.DF_CREATION_CHANGE#) AND > (LBREC.DF_PLUGIN_CHANGE# <= UNTILSCN)) OR > ((UNTILTIME IS NOT NULL) AND > (NVL(LBREC.COMPLETION_TIME, LBREC.DF_CKP_MOD_TIME) > < UNTILTIME)) OR > ((UNTILTIME IS NULL) AND > (LBREC.DF_CHECKPOINT_CHANGE# <= UNTILSCN)) > ))) THEN >
122c122 < CATALOGVERSION CONSTANT VARCHAR2(11) := '18.06.00.00'; --- > CATALOGVERSION CONSTANT VARCHAR2(11) := '18.06.01.00';
1c1,3 < TYPE dbms_optim_bugValObType as object(fix number, val number) --- > TYPE > dbms_optim_bugValObType FORCE as object(fix number, val number) NOT PERSISTABLE; >
1c1,3 < TYPE dbms_optim_fcTabType as table of dbms_optim_bugValObType --- > TYPE > dbms_optim_fcTabType as table of (dbms_optim_bugValObType) NOT PERSISTABLE; >
6a7 > when e.flags > 255 then 'UNDEFINED' 8c9,10 < when (bitand(e.flags, 132) = 132) then 'PROCEDURE ERROR WITH LCRS' --- > when (bitand(e.flags, 32) = 32) then 'REPLICAT RETRIED' > when (bitand(e.flags, 130) = 130) then 'PROCEDURE ERROR WITH LCRS' 11,14c13,22 < when (bitand(e.flags, 66) = 66) then 'CONFLICT INFO, RECORD LCR' < when (bitand(e.flags, 2) = 2) then 'RECORD LCR' < when (bitand(e.flags, 16) = 16) then 'RECORD TXN NO LCRS' < else 'RECORD TXN WITH LCRS' --- > when (bitand(e.flags, 66) = 66) then 'CONFLICT INFO, RECORD LCR' > when (bitand(e.flags, 2) = 2) then 'RECORD LCR' > when (bitand(e.flags, 128) = 128) then 'PROCEDURE ERROR NO LCRS' > when (bitand(e.flags, 16) = 16) then 'RECORD TXN NO LCRS' > else 'RECORD TXN WITH LCRS' > end) > when (bitand(e.flags, 16) = 16) then > (case > when (bitand(e.flags, 128) = 128) then 'PROCEDURE ERROR NO LCRS' > else 'UNHANDLED ERROR NO LCRS' 16d23 < when (bitand(e.flags, 16) = 16) then 'UNHANDLED ERROR NO LCRS' 18c25 < else NULL --- > else 'UNHANDLED ERROR WITH LCRS'
19.0.0.0
180a181 > chunk_predown constant number :=3; 184a186 > ctrlchunk_predown constant number := chunk_predown;
833c833,834 < removeLink IN BOOLEAN default TRUE); --- > removeLink IN BOOLEAN default TRUE, > fastPath IN BOOLEAN default FALSE ); 834a836,838 > PROCEDURE updateMetadataDistrib ( chunk_id IN BINARY_INTEGER, > isOGG IN BOOLEAN, > sh_method IN NUMBER); 883c887 < PROCEDURE importData2( chunk_id NUMBER); --- > PROCEDURE importData2( chunk_id NUMBER, fastpath NUMBER default 0);
1733a1734,1737 > > > PROCEDURE updateChunkLocationRemote ( chunk_id NUMBER); >
1712c1712 < --- > msg_move_dn constant number := 3877;
35c35,36 < NEW_DATAFILES IN D_TYPE DEFAULT NULL); --- > NEW_DATAFILES IN D_TYPE DEFAULT NULL, > CHUNK_ID IN NUMBER DEFAULT 0);
5482c5482 < --- > CHECKCATALOGLINK; 5775a5776 > FINISHMOVE (CHUNK_ID, FASTPATH => TRUE); 5998c5999 < PROCEDURE IMPORTDATA2(CHUNK_ID NUMBER) --- > PROCEDURE IMPORTDATA2(CHUNK_ID NUMBER, FASTPATH NUMBER DEFAULT 0) 6001a6003 > CID NUMBER :=0; 6003c6005,6010 < DBMS_GSM_COMMON.WRITETOGWMTRACING ('Start Data import of Chunk'); --- > DBMS_GSM_COMMON.WRITETOGWMTRACING ('Start Data import of Chunk '||CHUNK_ID|| > ' fastPath: '||FASTPATH ); > > IF (FASTPATH = 1) THEN > CID := CHUNK_ID; > END IF; 6010c6017,6018 < GSMADMIN_INTERNAL.EXCHANGE.EXCHANGE_IN (TBL_FILTER,DBL_NAME); --- > GSMADMIN_INTERNAL.EXCHANGE.EXCHANGE_IN (TBL_FILTER,DBL_NAME, > CHUNK_ID => CID); 6241c6249,6288 < --- > PROCEDURE UPDATEMETADATADISTRIB ( CHUNK_ID IN BINARY_INTEGER, > ISOGG IN BOOLEAN, > SH_METHOD IN NUMBER) > IS > PRAGMA AUTONOMOUS_TRANSACTION; > DBL_NAME VARCHAR2(20); > BEGIN > DBL_NAME := GETDBLINKNAME('C'||TO_CHAR(CHUNK_ID)); > > EXECUTE IMMEDIATE 'ALTER SESSION SET GLOBAL_NAMES=FALSE'; > IF NOT ISOGG THEN > UPDATE CHUNKS > SET STATE = DBMS_GSM_COMMON.CHUNK_UP > WHERE CHUNK_NUMBER = UPDATEMETADATADISTRIB.CHUNK_ID; > END IF; > > > IF SH_METHOD = DBMS_GSM_UTILITY.SH_USERDEF THEN > UPDATE GSMADMIN_INTERNAL.SHARD_SPACE A SET CHUNKS = > (SELECT COUNT(*) FROM GSMADMIN_INTERNAL.CHUNKS B > WHERE A.SHARDSPACE_ID = B.SHARDSPACE_ID > GROUP BY B.SHARDSPACE_ID); > END IF; > DBMS_GSM_COMMON.WRITETOGWMTRACING ('Update of source chunk metadata'); > EXECUTE IMMEDIATE 'UPDATE GSMADMIN_INTERNAL.CHUNKS@'|| > DBMS_ASSERT.NOOP(DBL_NAME)|| > ' set STATE='||TO_CHAR(DBMS_GSM_COMMON.CHUNK_PREDOWN)|| > ' WHERE CHUNK_NUMBER = :1' > USING UPDATEMETADATADISTRIB.CHUNK_ID; > > DBMS_GSM_COMMON.WRITETOGWMTRACING ('Update of catalog chunk metadata'); > EXECUTE IMMEDIATE > ' begin gsmadmin_internal.dbms_gsm_pooladmin.updateChunkLocationRemote'|| > '@GDS$CATALOG.LINK(:1); end;' USING UPDATEMETADATADISTRIB.CHUNK_ID; > > IF NOT ISOGG THEN > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove send FAN'); > CONTROLCHUNK(CHUNK_ID, DBMS_GSM_COMMON.CTRLCHUNK_UP, 0); > END IF; > END UPDATEMETADATADISTRIB; 6249c6296,6297 < REMOVELINK IN BOOLEAN DEFAULT TRUE) --- > REMOVELINK IN BOOLEAN DEFAULT TRUE, > FASTPATH IN BOOLEAN DEFAULT FALSE) 6396a6445,6446 > C_STAT NUMBER:=0; > SKIPSTEPS BOOLEAN := FALSE; 6563,6564c6613,6657 < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove optype: '||OPTYPE|| < ' chunk:'|| CHUNK_ID); --- > BEGIN > SELECT STATE INTO C_STAT FROM CHUNKS > WHERE CHUNK_NUMBER = FINISHMOVE.CHUNK_ID; > EXCEPTION > WHEN NO_DATA_FOUND THEN C_STAT := NULL; > END; > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove optype: ' || OPTYPE || > ' chunk:'|| CHUNK_ID || > ' state:'|| C_STAT); > > IF (DB_ROLE = DBMS_GSM_COMMON.MOVECHUNK_TARGET AND > C_STAT = DBMS_GSM_COMMON.CHUNK_UP ) THEN > IF (OPTYPE=1) THEN > DBMS_GSM_COMMON.WRITETOGWMTRACING ( > 'finishMove immediate return after fast path ') ; > RETURN; > ELSE > > > > DBMS_GSM_COMMON.WRITETOGWMTRACING ( > 'finishMove changing rollback to commit due to the fact that > fastpath advanced to no-return point ') ; > OPTYPE := 1; > SKIPSTEPS := TRUE; > END IF; > ELSIF (DB_ROLE = DBMS_GSM_COMMON.MOVECHUNK_SOURCE AND > C_STAT = DBMS_GSM_COMMON.CHUNK_PREDOWN ) THEN > > > > IF (OPTYPE = 2) THEN > DBMS_GSM_COMMON.WRITETOGWMTRACING ( > 'finishMove changing rollback to commit due to the fact that > fastpath advanced to no-return point ') ; > OPTYPE := 0; > END IF; > ELSIF (DB_ROLE = DBMS_GSM_COMMON.MOVECHUNK_SOURCE AND C_STAT IS NULL AND NOT FASTPATH ) > THEN > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove on source is skipped. > Slow path after full cleanup'); > RETURN; > > END IF; > 6858,6878c6951 < < OPEN TS_CURSOR FOR TS_C_STR USING FINISHMOVE.CHUNK_ID; < LOOP < FETCH TS_CURSOR INTO TS_NAME, READ_FL; < EXIT WHEN TS_CURSOR%NOTFOUND; < BEGIN < IF (OPTYPE =1 OR READ_FL=1) THEN < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove TS online: '|| < TS_NAME); < < UPDATE SHARD_TS SET MOVE_FLAG = 0 WHERE TABLESPACE_NAME = TS_NAME; < EXECUTE IMMEDIATE ' alter tablespace '|| ENQ_NAME(TS_NAME) || < ' read write'; < END IF; < EXCEPTION < WHEN NOT_READONLY THEN < NULL; < END; < END LOOP; < CLOSE TS_CURSOR; < IF (OPTYPE = 1) THEN --- > IF (NOT SKIPSTEPS) THEN 6880c6953 < OPEN TAB_CURSOR FOR SPART_C2_STR USING FINISHMOVE.CHUNK_ID; --- > OPEN TS_CURSOR FOR TS_C_STR USING FINISHMOVE.CHUNK_ID; 6882,6891c6955,6969 < FETCH TAB_CURSOR INTO OWN_NAME, TAB_NAME, PART_NAME, TS_NAME; < EXIT WHEN TAB_CURSOR%NOTFOUND; < < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove part default ts: ' < || ENQ_NAME(TAB_NAME) || ' owner:' || ENQ_NAME(OWN_NAME) || < 'partition:' || ENQ_NAME(PART_NAME) || 'ts:' || ENQ_NAME(TS_NAME)); < < ALTERFRAGMENT(OWN_NAME, TAB_NAME, NULL, < PART_NAME, TS_NAME, GSM_FRAG_COMPOSITE); < MODINDEXPARTTS(OWN_NAME, TAB_NAME, NULL); --- > FETCH TS_CURSOR INTO TS_NAME, READ_FL; > EXIT WHEN TS_CURSOR%NOTFOUND; > BEGIN > IF (OPTYPE =1 OR READ_FL=1) THEN > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove TS online: '|| > TS_NAME); > > UPDATE SHARD_TS SET MOVE_FLAG = 0 WHERE TABLESPACE_NAME = TS_NAME; > EXECUTE IMMEDIATE ' alter tablespace '|| ENQ_NAME(TS_NAME) || > ' read write'; > END IF; > EXCEPTION > WHEN NOT_READONLY THEN > NULL; > END; 6893,6898c6971,6977 < CLOSE TAB_CURSOR; < < OPEN TAB_CURSOR FOR PART_C2_STR USING FINISHMOVE.CHUNK_ID; < LOOP < FETCH TAB_CURSOR INTO OWN_NAME, TAB_NAME, PART_NAME; < EXIT WHEN TAB_CURSOR%NOTFOUND; --- > CLOSE TS_CURSOR; > IF (OPTYPE = 1) THEN > > OPEN TAB_CURSOR FOR SPART_C2_STR USING FINISHMOVE.CHUNK_ID; > LOOP > FETCH TAB_CURSOR INTO OWN_NAME, TAB_NAME, PART_NAME, TS_NAME; > EXIT WHEN TAB_CURSOR%NOTFOUND; 6900,6902c6979,6981 < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove part RW: ' < || ENQ_NAME(TAB_NAME) || ' owner:' || ENQ_NAME(OWN_NAME) || < 'partition:' || ENQ_NAME(PART_NAME)); --- > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove part default ts: ' > || ENQ_NAME(TAB_NAME) || ' owner:' || ENQ_NAME(OWN_NAME) || > 'partition:' || ENQ_NAME(PART_NAME) || 'ts:' || ENQ_NAME(TS_NAME)); 6904,6910c6983,6992 < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove table partition RW'); < EXECUTE IMMEDIATE ' ALTER TABLE ' || ENQ_QNAME(OWN_NAME, TAB_NAME) || < ' MODIFY PARTITION '|| ENQ_NAME(PART_NAME) || < ' READ WRITE'; < END LOOP; < CLOSE TAB_CURSOR; < END IF; --- > ALTERFRAGMENT(OWN_NAME, TAB_NAME, NULL, > PART_NAME, TS_NAME, GSM_FRAG_COMPOSITE); > MODINDEXPARTTS(OWN_NAME, TAB_NAME, NULL); > END LOOP; > CLOSE TAB_CURSOR; > > OPEN TAB_CURSOR FOR PART_C2_STR USING FINISHMOVE.CHUNK_ID; > LOOP > FETCH TAB_CURSOR INTO OWN_NAME, TAB_NAME, PART_NAME; > EXIT WHEN TAB_CURSOR%NOTFOUND; 6912,6921c6994,7004 < < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove chunks metadata'); < IF NOT ISOGG THEN < UPDATE CHUNKS < SET STATE = DBMS_GSM_COMMON.CHUNK_UP < WHERE CHUNK_NUMBER = FINISHMOVE.CHUNK_ID; < COMMIT; < DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove send FAN'); < CONTROLCHUNK(CHUNK_ID, DBMS_GSM_COMMON.CTRLCHUNK_UP, 0); < END IF; --- > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove part RW: ' > || ENQ_NAME(TAB_NAME) || ' owner:' || ENQ_NAME(OWN_NAME) || > 'partition:' || ENQ_NAME(PART_NAME)); > > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove table partition RW'); > EXECUTE IMMEDIATE ' ALTER TABLE ' || ENQ_QNAME(OWN_NAME, TAB_NAME) || > ' MODIFY PARTITION '|| ENQ_NAME(PART_NAME) || > ' READ WRITE'; > END LOOP; > CLOSE TAB_CURSOR; > END IF; 6923,6930c7006,7018 < < < IF SH_METHOD = DBMS_GSM_UTILITY.SH_USERDEF THEN < UPDATE GSMADMIN_INTERNAL.SHARD_SPACE A SET CHUNKS = < (SELECT COUNT(*) FROM GSMADMIN_INTERNAL.CHUNKS B < WHERE A.SHARDSPACE_ID = B.SHARDSPACE_ID < GROUP BY B.SHARDSPACE_ID); < END IF; --- > > IF (FASTPATH) THEN > UPDATEMETADATADISTRIB(CHUNK_ID, ISOGG, SH_METHOD); > ELSE > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove chunks metadata'); > IF NOT ISOGG THEN > UPDATE CHUNKS > SET STATE = DBMS_GSM_COMMON.CHUNK_UP > WHERE CHUNK_NUMBER = FINISHMOVE.CHUNK_ID; > COMMIT; > DBMS_GSM_COMMON.WRITETOGWMTRACING ('finishMove send FAN'); > CONTROLCHUNK(CHUNK_ID, DBMS_GSM_COMMON.CTRLCHUNK_UP, 0); > END IF; 6931a7020,7029 > > > IF SH_METHOD = DBMS_GSM_UTILITY.SH_USERDEF THEN > UPDATE GSMADMIN_INTERNAL.SHARD_SPACE A SET CHUNKS = > (SELECT COUNT(*) FROM GSMADMIN_INTERNAL.CHUNKS B > WHERE A.SHARDSPACE_ID = B.SHARDSPACE_ID > GROUP BY B.SHARDSPACE_ID); > END IF; > > END IF; 6932a7031 > END IF;
11486a11487,11511 > > PROCEDURE UPDATECHUNKLOCATIONREMOTE ( CHUNK_ID NUMBER) > IS > SDBNUM NUMBER := 0; > TDBNUM NUMBER := 0; > GCTL_ID NUMBER :=0; > MESSAGE VARCHAR2(1024); > BEGIN > SELECT SOURCE_DB,TARGET_DB,GDSCTL_ID > INTO SDBNUM,TDBNUM,GCTL_ID > FROM CATALOG_REQUESTS > WHERE > STATUS = DBMS_GSM_UTILITY.MOVE_ST_INIT AND > OBJ_ID = UPDATECHUNKLOCATIONREMOTE.CHUNK_ID; > UPDATECHUNKLOCATION( SDBNUM, TDBNUM, CHUNK_ID); > > COMMIT; > IF ( GCTL_ID > 0 ) > THEN > DBMS_GSM_COMMON.GETMSG(DBMS_GSM_UTILITY.MSG_MOVE_DN, MESSAGE, MESSAGE_PARAM_LIST()); > DBMS_GSM_UTILITY.SEND_GDSCTL_MSG(MESSAGE, GCTL_ID); > END IF; > > END UPDATECHUNKLOCATIONREMOTE; > 11515a11541 > AFTERFP NUMBER; 11541,11542c11567,11574 < IF (STATE = DBMS_GSM_UTILITY.MOVE_ST_MFNT) THEN < UPDATECHUNKLOCATION(SDBNUM, TDBNUM, CHUNK); --- > IF (STATE = DBMS_GSM_UTILITY.MOVE_ST_MFNT) THEN > SELECT COUNT(1) INTO AFTERFP FROM CHUNK_LOC > WHERE CHUNK_NUMBER = CHUNK AND DATABASE_NUM = SDBNUM; > IF AFTERFP>0 THEN > UPDATECHUNKLOCATION(SDBNUM, TDBNUM, CHUNK); > ELSE > DBMS_GSM_COMMON.WRITETOGWMTRACING('updateMoveState: after Fast PAth'); > END IF;
32a33,37 > P_W_HANDLE NUMBER :=NULL; > P_TR_HANDLE NUMBER :=NULL; > P_OBJ_TYPE VARCHAR2(100) :=NULL; > P_OP_NAME VARCHAR2(256) :=NULL; > 305d309 < 333,340c337,357 < W_HANDLE := DBMS_METADATA.OPENW(OBJ_TYPE); < TR_HANDLE := DBMS_METADATA.ADD_TRANSFORM(W_HANDLE,'DDL'); < IF OBJ_TYPE NOT LIKE '%PLUGTS%' THEN < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'EXPORT',TRUE); < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'TRANSPORTABLE',1); < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'UNIQUE_NAME',GUID); < IF OBJ_TYPE IN ('PARTITION','SUBPARTITION') THEN < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'CONSTRAINTS_AS_ALTER',TRUE); --- > IF (P_W_HANDLE IS NOT NULL AND P_OBJ_TYPE=OBJ_TYPE AND > (P_OP_NAME = OPERATION OR (P_OP_NAME='CREATE' AND OPERATION IS NULL))) THEN > W_HANDLE := P_W_HANDLE; > ELSE > PUT_LINE('do_ddl new handle obj_type '||OBJ_TYPE||' operation '|| OPERATION); > IF (P_W_HANDLE IS NOT NULL) THEN DBMS_METADATA.CLOSE(P_W_HANDLE); END IF; > W_HANDLE := DBMS_METADATA.OPENW(OBJ_TYPE); > P_W_HANDLE := W_HANDLE; > P_OBJ_TYPE := OBJ_TYPE; > TR_HANDLE := DBMS_METADATA.ADD_TRANSFORM(W_HANDLE,'DDL'); > P_TR_HANDLE :=TR_HANDLE; > IF OBJ_TYPE NOT LIKE '%PLUGTS%' THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'EXPORT',TRUE); > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'TRANSPORTABLE',1); > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'UNIQUE_NAME',GUID); > IF OBJ_TYPE IN ('PARTITION','SUBPARTITION') THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'CONSTRAINTS_AS_ALTER',TRUE); > IF EXCHANGE_OPERATION = 'OUT' THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'EXCHANGE_OUT',TRUE); > END IF; > END IF; 342c359 < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'EXCHANGE_OUT',TRUE); --- > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'STORAGE',FALSE); 343a361,367 > IF OPERATION IS NOT NULL THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'OPERATION_TYPE',OPERATION); > OPERATION_NAME := OPERATION; > ELSE > OPERATION_NAME := 'CREATE'; > END IF; > P_OP_NAME := OPERATION_NAME; 345,354c369,373 < IF EXCHANGE_OPERATION = 'OUT' THEN < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'SHARD_TABLESPACE',NEW_TBS); < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'STORAGE',FALSE); < END IF; < IF OPERATION IS NOT NULL THEN < DBMS_METADATA.SET_TRANSFORM_PARAM(TR_HANDLE,'OPERATION_TYPE',OPERATION); < OPERATION_NAME := OPERATION; < ELSE < OPERATION_NAME := 'CREATE'; < END IF; --- > DBMS_METADATA.SET_PARSE_ITEM(W_HANDLE,'VERB'); > DBMS_METADATA.SET_PARSE_ITEM(W_HANDLE,'BIND_PATTERN'); > END IF; > IF EXCHANGE_OPERATION = 'OUT' THEN > DBMS_METADATA.SET_TRANSFORM_PARAM(P_TR_HANDLE,'SHARD_TABLESPACE',NEW_TBS); 356,357c375,376 < DBMS_METADATA.SET_PARSE_ITEM(W_HANDLE,'VERB'); < DBMS_METADATA.SET_PARSE_ITEM(W_HANDLE,'BIND_PATTERN'); --- > > PUT_LINE('Convert ddls '); 359c378 < DBMS_METADATA.CLOSE(W_HANDLE); --- > 382,383c401,402 < IF DOEXEC THEN BEGIN < PUT_LINE('do_ddl: operation '||OPERATION_NAME||' - "'||VERB|| --- > IF DOEXEC THEN BEGIN > PUT_LINE('do_ddl: operation '||P_OP_NAME||' - "'||VERB|| 414c433 < PUT_LINE('>>>>ignoring exception for '||OPERATION_NAME|| --- > PUT_LINE('>>>>ignoring exception for '||P_OP_NAME|| 417c436 < PUT_LINE('>>>>exception for operation '||OPERATION_NAME|| --- > PUT_LINE('>>>>exception for operation '||P_OP_NAME|| 450c469 < PUT_LINE('>>>>exception during operation '||OPERATION_NAME); --- > PUT_LINE('>>>>exception during operation '||P_OP_NAME); 652c671,672 < NEW_DATAFILES IN D_TYPE DEFAULT NULL) IS --- > NEW_DATAFILES IN D_TYPE DEFAULT NULL, > CHUNK_ID IN NUMBER DEFAULT 0) IS 762a783,787 > IF (CHUNK_ID !=0 ) THEN > GSMADMIN_INTERNAL.DBMS_GSM_DBADMIN.FINISHMOVE( > CHUNK_ID, DBMS_GSM_COMMON.MOVECHUNK_TARGET, FASTPATH=> TRUE); > END IF; > 765a791 > IF (P_W_HANDLE IS NOT NULL) THEN DBMS_METADATA.CLOSE(P_W_HANDLE); END IF;
7c7,12 < FUNCTION SCHEMAVALIDATE(METADATA IN XMLTYPE) --- > FUNCTION SCHEMAVALIDATE > ( > XML IN XMLTYPE, > URI IN VARCHAR2, > XMLSCHEMA IN XMLTYPE > )
19a20,21 > NULL; > /* 41a44 > */ 137a141,142 > NULL; > /* 148a154 > */
4344a4345 > XSCHEMA XMLTYPE; 4351d4351 < 4353,4355c4353,4366 < XDOC := GEORASTER.METADATA.CREATESCHEMABASEDXML(URL); < XDOC.SCHEMAVALIDATE(); < RESULT := 'TRUE'; --- > SELECT XMLTYPE(XMLSCHEMA) INTO XSCHEMA FROM MDSYS.SDO_GEOR_XMLSCHEMA_TABLE > WHERE ID = 1; > IF XSCHEMA IS NULL THEN > MDERR.RAISE_MD_ERROR('MD', 'SDO', -13454); > RETURN 'NULL'; > END IF; > > XDOC := GEORASTER.METADATA; > RESULT := MDSYS.SDO_GEORX.SCHEMAVALIDATE(XDOC, URL, XSCHEMA); > > > > >
3c3,8 < FUNCTION SCHEMAVALIDATE(METADATA IN XMLTYPE) --- > FUNCTION SCHEMAVALIDATE > ( > XML IN XMLTYPE, > URI IN VARCHAR2, > XMLSCHEMA IN XMLTYPE > ) 11,12c16,21 < METADATA, < METADATA INDICATOR, --- > XML, > XML INDICATOR, > URI OCISTRING, > URI INDICATOR, > XMLSCHEMA, > XMLSCHEMA INDICATOR,
284a285,322 > ALTER TYPE sdo_rdf_triple_s > ADD MEMBER FUNCTION get_obj_value RETURN VARCHAR2 > DETERMINISTIC CASCADE > ALTER TYPE sdo_rdf_triple_s > ADD MEMBER FUNCTION is_object_clob RETURN VARCHAR2 > DETERMINISTIC CASCADE > ALTER TYPE sdo_rdf_triple_s > ADD MEMBER FUNCTION get_model RETURN VARCHAR2 > DETERMINISTIC CASCADE > > ALTER TYPE sdo_rdf_triple_s > DROP MEMBER FUNCTION get_model RETURN VARCHAR2 > DETERMINISTIC CASCADE > > ALTER TYPE sdo_rdf_triple_s > DROP MEMBER FUNCTION get_obj_value RETURN VARCHAR2 > DETERMINISTIC CASCADE > > ALTER TYPE sdo_rdf_triple_s > DROP MEMBER FUNCTION is_object_clob RETURN VARCHAR2 > DETERMINISTIC CASCADE > ALTER TYPE sdo_rdf_triple_s > ADD CONSTRUCTOR FUNCTION sdo_rdf_triple_s(model_name VARCHAR2, > reif_subject VARCHAR2, > reif_property VARCHAR2, > subject VARCHAR2, > property VARCHAR2, > object CLOB) > RETURN SELF AS RESULT DETERMINISTIC CASCADE > ALTER TYPE sdo_rdf_triple_s > DROP CONSTRUCTOR FUNCTION sdo_rdf_triple_s( > model_name VARCHAR2, > reif_subject VARCHAR2, > reif_property VARCHAR2, > subject VARCHAR2, > property VARCHAR2, > object CLOB) > RETURN SELF AS RESULT DETERMINISTIC CASCADE
62a63,66 > , SYSTZ NUMBER > , MINAVAILTIMEUTC DATE > , MAXAVAILTIMEUTC DATE > 114c118 < REPORT_INTERNAL_VERSION CONSTANT VARCHAR2(64) := '40'; --- > REPORT_INTERNAL_VERSION CONSTANT VARCHAR2(64) := '41';
276a277 > TOP_NONDB_WAIT_TIME CONSTANT BINARY_INTEGER := 9200;
12c12 < bannerVersion CONSTANT VARCHAR2(15) := '19.03.00.00'; --- > bannerVersion CONSTANT VARCHAR2(15) := '19.03.01.00'; 24,26c24,26 < fsn CONSTANT NUMBER := instr('19.03.00.00', '.'); < msn CONSTANT NUMBER := instr('19.03.00.00', '.', fsn + 1); < psn CONSTANT NUMBER := instr('19.03.00.00', '.', msn + 1); --- > fsn CONSTANT NUMBER := instr('19.03.01.00', '.'); > msn CONSTANT NUMBER := instr('19.03.01.00', '.', fsn + 1); > psn CONSTANT NUMBER := instr('19.03.01.00', '.', msn + 1); 29c29 < to_number(substr('19.03.00.00', 1, fsn - 1)); --- > to_number(substr('19.03.01.00', 1, fsn - 1)); 31c31 < to_number(substr('19.03.00.00', fsn + 1, msn - fsn - 1)); --- > to_number(substr('19.03.01.00', fsn + 1, msn - fsn - 1)); 33c33 < to_number(substr('19.03.00.00', msn + 1, psn - msn - 1)); --- > to_number(substr('19.03.01.00', msn + 1, psn - msn - 1)); 35c35 < to_number(substr('19.03.00.00', psn + 1)); --- > to_number(substr('19.03.01.00', psn + 1));
12c12 < bannerVersion CONSTANT VARCHAR2(15) := '19.03.00.00'; --- > bannerVersion CONSTANT VARCHAR2(15) := '19.04.00.00'; 24,26c24,26 < fsn CONSTANT NUMBER := instr('19.03.00.00', '.'); < msn CONSTANT NUMBER := instr('19.03.00.00', '.', fsn + 1); < psn CONSTANT NUMBER := instr('19.03.00.00', '.', msn + 1); --- > fsn CONSTANT NUMBER := instr('19.04.00.00', '.'); > msn CONSTANT NUMBER := instr('19.04.00.00', '.', fsn + 1); > psn CONSTANT NUMBER := instr('19.04.00.00', '.', msn + 1); 29c29 < to_number(substr('19.03.00.00', 1, fsn - 1)); --- > to_number(substr('19.04.00.00', 1, fsn - 1)); 31c31 < to_number(substr('19.03.00.00', fsn + 1, msn - fsn - 1)); --- > to_number(substr('19.04.00.00', fsn + 1, msn - fsn - 1)); 33c33 < to_number(substr('19.03.00.00', msn + 1, psn - msn - 1)); --- > to_number(substr('19.04.00.00', msn + 1, psn - msn - 1)); 35c35 < to_number(substr('19.03.00.00', psn + 1)); --- > to_number(substr('19.04.00.00', psn + 1)); 9339a9340,9347 > > PROCEDURE restoreSetXttfile( pltfrmfr IN binary_integer > ,xttincr IN boolean > ,pdbid IN number); > -- Additional input parameters: > -- pdbid > -- PDB id to which this cross platform restore is performed. > --
15a16,20 > > > ---------------------------- > -- PROCEDURES AND FUNCTIONS > ----------------------------
1269c1269,1271 < -- by the find functions. --- > -- by the find functions. This tag is also used by report/delete obsolete > -- functions to restrict what backups to consider and what backups to filter > -- for backup optimization. 1273c1275 < -- tag of the datafile copies to be translated --- > -- tag of the datafile copies/backup sets to be translated 1274a1277,1278 > -- use_like > -- input tag parameter to be used similar to LIKE semantics in SQL 1276c1280 < PROCEDURE setTag(tag IN varchar2 DEFAULT NULL); --- > PROCEDURE setTag(tag IN varchar2 DEFAULT NULL, use_like IN number DEFAULT 0);
13c13 < '19.3.0.0.0'; --- > '19.4.0.0.0';
13c13 < '19.3.0.0.0'; --- > '19.3.1.0.0';
376a377,379 > > PROCEDURE RM$_VERIFY_PENDING_AREA_ACT; >
135a136,140 > DBMS_OUTPUT.PUT_LINE('sysTZ = ' || CONTEXT.SYSTZ); > DBMS_OUTPUT.PUT_LINE('minAvailTimeUTC = ' || > TO_CHAR(CONTEXT.MINAVAILTIMEUTC, OMC_TIME_FORMAT)); > DBMS_OUTPUT.PUT_LINE('maxAvailTimeUTC = ' || > TO_CHAR(CONTEXT.MAXAVAILTIMEUTC, OMC_TIME_FORMAT)); 405a411,413 > , CONTEXT.SYSTZ AS "sysTZ" > , TO_CHAR(CONTEXT.MINAVAILTIMEUTC,OMC_TIME_FORMAT) AS "minAvailTimeUTC" > , TO_CHAR(CONTEXT.MAXAVAILTIMEUTC,OMC_TIME_FORMAT) AS "maxAvailTimeUTC" 448a457,471 > FUNCTION GETSYSINFOXML(CONTEXT IN OUT NOCOPY CONTEXTTYPE) > RETURN XMLTYPE > IS > L_RESULT XMLTYPE; > BEGIN > SELECT XMLELEMENT("sys_info",XMLATTRIBUTES( > CONTEXT.SYSTZ AS "sys_tz" > ,TO_CHAR(CONTEXT.MINAVAILTIMEUTC,OMC_TIME_FORMAT) AS "min_time" > ,TO_CHAR(CONTEXT.MAXAVAILTIMEUTC,OMC_TIME_FORMAT) AS "max_time" > )) > INTO L_RESULT > FROM SYS.DUAL; > RETURN L_RESULT; > END GETSYSINFOXML; > 579a603,606 > > CONTEXT.SYSTZ := CAST(SYSTIMESTAMP AS DATE) - CAST(SYS_EXTRACT_UTC(SYSTIMESTAMP) AS DATE); > CONTEXT.SYSTZ := ROUND(CONTEXT.SYSTZ*96,0)/4; > 2185a2213 > L_SYS_INFO XMLTYPE := NULL; 2275a2304 > L_SYS_INFO := GETSYSINFOXML(CONTEXT); 2282a2312 > ,L_SYS_INFO 4649a4680 > L_SYS_INFO XMLTYPE; 4708a4740 > L_SYS_INFO := GETSYSINFOXML(CONTEXT); 4720c4752,4753 < L_TIMING, P_INPUT,L_CPU, CONTEXT.ACTIVITYLINEXML, RETXML) --- > L_SYS_INFO,L_TIMING, P_INPUT, > L_CPU, CONTEXT.ACTIVITYLINEXML, RETXML)
1003a1004,1042 > > > > > > > > > > > > > > > > > > > > > > > > > > > PROCEDURE SET_INTERRUPT_MODE( > TASK_ID IN NUMBER, > CAN_CANCEL IN INTEGER, > CAN_INTERRUPT IN INTEGER > ) IS > EXTERNAL NAME "kapiSetInterruptMode" WITH CONTEXT > PARAMETERS(CONTEXT, > TASK_ID OCINUMBER, TASK_ID INDICATOR SB4, > CAN_CANCEL OCINUMBER, CAN_CANCEL INDICATOR SB4, > CAN_INTERRUPT OCINUMBER, CAN_INTERRUPT INDICATOR SB4 > ) > LIBRARY DBMS_AUTO_INDEX_LIB; > 4904a4944,4984 > > > > > > > > > > > > > > > > > > > > > > > > PROCEDURE INTERRUPT_TASK( > TASK_NAME VARCHAR2) > IS > BEGIN > DBMS_ADVISOR.INTERRUPT_TASK(TASK_NAME); > EXCEPTION > WHEN OTHERS THEN > IF SQLCODE = -13643 THEN > > > > DUMP_TRACE('interrupt of ' || TASK_NAME || > ' failed, trying to resume anyway'); > ELSE > RAISE; > END IF; > END INTERRUPT_TASK; > 4980c5060 < DBMS_ADVISOR.INTERRUPT_TASK(P_TASK_NAME); --- > INTERRUPT_TASK(P_TASK_NAME); 5750c5830 < /*+dynamic_sampling(11) --- > /*+dynamic_sampling(11) NO_XML_QUERY_REWRITE 6351a6432 > and sql_text not like '%/*+%dbms_stats%' 6949c7030 < /*+dynamic_sampling(11) */ --- > /*+dynamic_sampling(11) NO_XML_QUERY_REWRITE */ 6989a7071 > AND SQL_TEXT NOT LIKE '%/*+%dbms_stats%' 7021a7104,7106 > SET_INTERRUPT_MODE(AI_CTX.TASK_ID, 1, 1); > > 7315c7400 < DBMS_ADVISOR.INTERRUPT_TASK(AI_TASK_NAME); --- > INTERRUPT_TASK(AI_TASK_NAME);
19365,19366c19365,19445 < < IF (INCLUDE_ASH) THEN --- > > > > > > SEC := TOP_NONDB_WAIT_TIME; > COL := 1; > MH := 1; > RPT_SECS(SEC).TITLE := 'Top Non-DB Wait Time'; > RPT_SECS(SEC).OPTIONS := OPT_NO_FOOTER + OPT_THIN_HEADING + OPT_FIXED_TABLE; > RPT_SECS(SEC).BINDS(1) := BIND_SNAP_RANGE + BIND_DBTIME; > RPT_SECS(SEC).BINDS(3) := BIND_CONDBID_LIST; > > RPT_SECS(SEC).SUMMARY := > 'This table displays top non-db wait time events by total wait time'; > RPT_SECS(SEC).SQLSTR := > 'with agg_nondb_event as (' || DT_SRC_SYSEVT_1 || ') > select event > , wtfg waits > , tmfg/1000000 time > , decode(wtfg, 0, to_number(null), tmfg/wtfg)/1000 avwait > , decode(:dbtime, 0, to_number(null), tmfg/:dbtime)*100 pctwtt > , wcls > from ( > select event, wtfg, tmfg, wcls > from ( > select e.event_name event > , e.total_waits - nvl(b.total_waits,0) wtfg > , e.time_waited_micro - nvl(b.time_waited_micro,0) tmfg > , e.wait_class wcls > from agg_nondb_event b > , agg_nondb_event e > where b.snap_id (+) = :bid > and e.snap_id = :eid > and e.dbid = :dbid > and e.instance_number = :inst_num > and e.dbid = b.dbid (+) > and e.instance_number = b.instance_number (+) > and e.event_id = b.event_id (+) > and ((e.total_waits > nvl(b.total_waits,0)) or > (e.time_waited_micro > nvl(b.time_waited_micro,0))) > and e.event_name in (''Network Retrans by Server'', > ''Network Retrans by Client'') > ) > order by tmfg desc, wtfg desc, event)'; > > RPT_SECS(SEC).ROW_DESC(COL).TYPE := VARCHAR2_TYPE; > RPT_SECS(SEC).ROW_DESC(COL).SUBTYPE := SUBTYPE_ROWHEAD; > RPT_SECS(SEC).ROW_DESC(COL).FORMAT := 'a30'; > RPT_SECS(SEC).ROW_DESC(COL).HEADING := 'Event'; > COL := COL + 1; > > RPT_SECS(SEC).ROW_DESC(COL).TYPE := NUMBER_TYPE; > RPT_SECS(SEC).ROW_DESC(COL).FORMAT := '99,999,990|blanknull'; > RPT_SECS(SEC).ROW_DESC(COL).HEADING := 'Waits'; > COL := COL + 1; > > RPT_SECS(SEC).ROW_DESC(COL).TYPE := NUMBER_TYPE; > RPT_SECS(SEC).ROW_DESC(COL).FORMAT := 'm10'; > RPT_SECS(SEC).ROW_DESC(COL).HEADING := 'Total Wait|Time (sec)'; > COL := COL + 1; > > RPT_SECS(SEC).ROW_DESC(COL).TYPE := NUMBER_TYPE; > RPT_SECS(SEC).ROW_DESC(COL).FORMAT := 's9|blanknull'; > RPT_SECS(SEC).ROW_DESC(COL).HEADING := 'Avg|Wait'; > COL := COL + 1; > > RPT_SECS(SEC).ROW_DESC(COL).TYPE := NUMBER_TYPE; > RPT_SECS(SEC).ROW_DESC(COL).FORMAT := '999.9|blanknull'; > RPT_SECS(SEC).ROW_DESC(COL).HEADING := '% DB|time'; > COL := COL + 1; > > RPT_SECS(SEC).ROW_DESC(COL).TYPE := VARCHAR2_TYPE; > RPT_SECS(SEC).ROW_DESC(COL).FORMAT := 'a8'; > RPT_SECS(SEC).ROW_DESC(COL).HEADING := 'Wait|Class'; > COL := COL + 1; > > DBMS_SWRF_REPORT_INTERNAL.BUILD_HEADING_INFO(SEC); > > > IF (INCLUDE_ASH) THEN
2781c2781,2782 < ,FOREIGNAL IN BOOLEAN DEFAULT FALSE); --- > ,FOREIGNAL IN BOOLEAN DEFAULT FALSE > ,PDBID IN NUMBER DEFAULT NULL); 9603a9605,9613 > BEGIN > RESTORESETXTTFILE(PLTFRMFR => PLTFRMFR, > XTTINCR => XTTINCR, > PDBID => NULL); > END RESTORESETXTTFILE; > > PROCEDURE RESTORESETXTTFILE( PLTFRMFR IN BINARY_INTEGER > ,XTTINCR IN BOOLEAN > ,PDBID IN NUMBER) IS 9619c9629,9630 < ,PREPLUGIN => FALSE); --- > ,PREPLUGIN => FALSE > ,PDBID => PDBID); 9626c9637 < END; --- > END RESTORESETXTTFILE;
11493a11494 > GOODLINK BOOLEAN; 11511a11513,11520 > > IF DBMS_DBFS_SFS_ADMIN.GET_PARAM('_dbfs_symlink_path_prefix') THEN > GOODLINK := DBMS_PDB_IS_VALID_PATH(LINK); > IF NOT GOODLINK THEN > LINK := ''; > RAISE DBMS_DBFS_CONTENT.UNSUPPORTED_OPERATION; > END IF; > END IF;
12,21d11 < PROCEDURE CREATE_DIRS IS < L_HOME VARCHAR2(255); < DIR VARCHAR2(30); < BEGIN < < SYS.DBMS_SYSTEM.GET_ENV('ORACLE_HOME', L_HOME); < < < DIR := ADMINDIR; < EXECUTE IMMEDIATE 'create directory ' || ADMINDIR || ' as '''||L_HOME||'/rdbms/admin'''; 23,33d12 < DIR := LOGDIR; < EXECUTE IMMEDIATE 'create directory ' || LOGDIR || ' as '''||L_HOME||'/cfgtoollogs'''; < < EXCEPTION < WHEN OTHERS THEN < < IF DIR = LOGDIR THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', directory creation failed for ' || DIR); < END CREATE_DIRS; 36,43d14 < PROCEDURE CLEANUP IS < DIR VARCHAR2(30); < OBJID NUMBER; < CURSOR C1(OBJNAME VARCHAR2) IS SELECT OBJECT_ID FROM ALL_OBJECTS < WHERE OBJECT_TYPE ='DIRECTORY' AND OBJECT_NAME=OBJNAME; < BEGIN < < DIR := ADMINDIR; 45,57d15 < OPEN C1(ADMINDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || ADMINDIR; < END IF; < CLOSE C1; < < DIR := LOGDIR; < OPEN C1(LOGDIR); < FETCH C1 INTO OBJID; < IF C1%FOUND THEN < EXECUTE IMMEDIATE 'drop directory ' || LOGDIR; < END IF; 59,71c17 < EXCEPTION < WHEN OTHERS THEN < RAISE_APPLICATION_ERROR(-20002, SQLERRM || ', cleanup failed for ' || DIR); < END CLEANUP; < < < < < < < < < FUNCTION GET_LOGFILE_NAME RETURN SYS.V$SYSTEM_PARAMETER.VALUE%TYPE --- > FUNCTION GET_LOGFILE_NAME RETURN "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE 74,75c20 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; < --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 161,162d105 < < CLEANUP; 181,182d123 < < CLEANUP; 254,255d194 < < CLEANUP; 362,363d300 < < CLEANUP; 437,438d373 < < CLEANUP; 456c391 < SELECT VALUE FROM SYS.V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; --- > SELECT VALUE FROM "PUBLIC".V$SYSTEM_FIX_CONTROL WHERE BUGNO=BUGNUM; 475c410 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: bundle bug ' || BUGSARRAY(I) || ' not present in PUBLIC.v$system_fix_control'); 480c415 < RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in v$system_fix_control'); --- > RAISE_APPLICATION_ERROR(-20002, 'get_bundle_fixes_inmemory_val: multiple occurences of ' || BUGSARRAY(I) || ' in PUBLIC.v$system_fix_control'); 496,497d430 < < CLEANUP; 513c446 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 550,551d482 < < CLEANUP; 567c498 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 619,620d549 < < CLEANUP; 627c556 < CURSOR C1 IS SELECT COUNT(*) FROM GV$INSTANCE WHERE STATUS='OPEN'; --- > CURSOR C1 IS SELECT COUNT(*) FROM SYS.GV$INSTANCE WHERE STATUS='OPEN'; 630c559 < CURSOR C2 IS SELECT VALUE FROM V$PARAMETER WHERE NAME='cluster_database_instances'; --- > CURSOR C2 IS SELECT VALUE FROM "PUBLIC".V$PARAMETER WHERE NAME='cluster_database_instances'; 632c561 < TOTAL_VAL SYS.V$PARAMETER.VALUE%TYPE; --- > TOTAL_VAL "PUBLIC".V$PARAMETER.VALUE%TYPE; 664,665d592 < < CLEANUP; 673c600 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 760c687 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 882c809 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1002,1004d928 < < CLEANUP; < 1015d938 < CLEANUP; 1025c948 < SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1061c984 < 'gv$system_fix_control where inst_id= ' || INSTID; --- > 'sys.gv$system_fix_control where inst_id= ' || INSTID; 1123,1125d1045 < < CLEANUP; < 1136d1055 < CLEANUP; 1163c1082 < SELECT OPEN_MODE INTO OPENMODE FROM V$PDBS; --- > SELECT OPEN_MODE INTO OPENMODE FROM "PUBLIC".V$PDBS; 1186d1104 < CLEANUP; 1223c1141 < CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM GV$INSTANCE --- > CURSOR C1 IS SELECT INST_ID, INSTANCE_NAME FROM SYS.GV$INSTANCE 1236d1153 < INSTNAMEBIND VARCHAR2(20); 1238c1155 < LOGFILE SYS.V$SYSTEM_PARAMETER.VALUE%TYPE; --- > LOGFILE "PUBLIC".V$SYSTEM_PARAMETER.VALUE%TYPE; 1257,1259d1173 < < CREATE_DIRS; < 1274,1275d1187 < < CLEANUP; 1283,1284d1194 < < CLEANUP; 1308c1218 < SELECT INSTANCE_NAME INTO INSTNAME FROM V$INSTANCE; --- > SELECT INSTANCE_NAME INTO INSTNAME FROM "PUBLIC".V$INSTANCE; 1494,1495c1404,1406 < INSTNAMEBIND := '''' || INSTNAME || ''''; < SQL_STMT := 'alter system reset "_fix_control" SID=' || INSTNAMEBIND || 'scope=spfile'; --- > SQL_STMT := 'alter system reset "_fix_control" SID=' || > SYS.DBMS_ASSERT.ENQUOTE_LITERAL(INSTNAME) || > ' scope=spfile'; 1505d1415 < CLEANUP; 1525,1527d1434 < < CLEANUP; < 1533,1534d1439 < < CLEANUP; 1558,1560d1462 < CREATE_DIRS; < < 1577d1478 < CLEANUP; 1595d1495 < CLEANUP; 1675,1677d1574 < < CLEANUP; < 1680,1681d1576 < < CLEANUP; 1695,1696d1589 < < CREATE_DIRS; 1716,1717d1608 < < CLEANUP; 1720,1721d1610 < < CLEANUP;
122c122 < CATALOGVERSION CONSTANT VARCHAR2(11) := '19.03.00.00'; --- > CATALOGVERSION CONSTANT VARCHAR2(11) := '19.04.00.00'; 211a212 > TAG_LIKE NUMBER := 0; 665a667,669 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 947a952,954 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1056a1064 > AND RESTORETAG IS NULL 1128a1137,1139 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1199a1211,1213 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1333a1348,1350 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1441a1459,1461 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1760a1781,1783 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1884a1908,1910 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 1982a2009,2011 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 2111a2141,2143 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 2167a2200,2202 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 2304a2340,2342 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 2830a2869,2871 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 2919a2961,2963 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3015a3060,3062 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3098a3146,3148 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3225a3276 > AND RESTORETAG IS NULL 3446a3498,3500 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3665a3720,3722 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3778a3836,3838 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3825a3886,3888 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3847a3911,3913 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3873a3940,3942 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3908a3978,3980 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 3968a4041,4043 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 4016a4092,4094 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 4066a4145,4147 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 4105a4187,4189 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7282a7367,7369 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7297a7385,7387 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7431a7522,7524 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7478a7572,7574 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7518a7615,7617 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7602a7702,7704 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7682a7785,7787 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7750a7856,7858 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7825a7934,7936 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7856a7968,7970 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 7927a8042,8044 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8004a8122,8124 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8064a8185,8187 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8117a8241,8243 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8203a8330,8332 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8277a8407,8409 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8339a8472,8474 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8392a8528,8530 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8484a8623,8625 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8501a8643,8645 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8524c8668,8671 < WHERE (STATUS = 'A' OR STATUS = 'X')) DC --- > WHERE (STATUS = 'A' OR STATUS = 'X') > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG)))) DC 8554a8702,8704 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND XDF.TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND XDF.TAG = RESTORETAG))) 8580a8731,8733 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8623a8777,8779 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND XAL.TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND XAL.TAG = RESTORETAG))) 8692a8849,8851 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8722a8882,8884 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8791a8954,8956 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8908a9074,9076 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 8951a9120,9122 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 9201a9373,9375 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 9445a9620,9622 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 9571a9749,9751 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 9795c9975,9976 < C1REC.TAG_CON = RESTORETAG OR --- > ((TAG_LIKE = 1 AND C1REC.TAG_CON LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND C1REC.TAG_CON = RESTORETAG)) OR 9911a10093 > 10009c10191,10192 < C1REC.TAG_CON = RESTORETAG OR --- > ((TAG_LIKE = 1 AND C1REC.TAG_CON LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND C1REC.TAG_CON = RESTORETAG)) OR 11173c11356 < IF (TAG IS NOT NULL AND NOT TAGMATCHREQUIRED) THEN --- > IF (TAG IS NOT NULL AND TAGMATCHREQUIRED) THEN 11178c11361,11362 < IF (TAG = LOCAL.TAG) THEN --- > IF ((TAG_LIKE = 1 AND LOCAL.TAG LIKE TAG) OR > (TAG_LIKE <> 1 AND LOCAL.TAG = TAG)) THEN 11194c11378,11379 < DEB(DEB_IN, 'tag does not match, continuing search'); --- > DEB(DEB_IN, 'tag does not match, continuing search:' || > LOCAL.TAG); 11899,11900c12084,12088 < (ACTION.TAG_CON <> RESTORETAG OR ACTION.TAG_CON IS NULL)) THEN < DEB(DEB_PRINT, 'isValidAction: tag mismatch - skipped:'); --- > (((TAG_LIKE = 1 AND ACTION.TAG_CON NOT LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND ACTION.TAG_CON <> RESTORETAG)) OR > ACTION.TAG_CON IS NULL)) THEN > DEB(DEB_PRINT, 'isValidAction: tag mismatch - skipped:' || > NVL(ACTION.TAG_CON, '<NUL>')); 12908c13096,13099 < IF (NVL(TAG, ' ') != NVL(CACHEBSRECTABLE.TAG, NVL(TAG, ' '))) THEN --- > IF ((TAG_LIKE = 1 AND > NVL(TAG, ' ') NOT LIKE NVL(CACHEBSRECTABLE.TAG, NVL(TAG, ' '))) OR > (TAG_LIKE <> 1 AND > NVL(TAG, ' ') != NVL(CACHEBSRECTABLE.TAG, NVL(TAG, ' ')))) THEN 13876a14068,14071 > > > > 14115,14116c14310,14311 < < IF (RMANCMD != OBSOLETECMD_T) THEN --- > IF (RMANCMD != OBSOLETECMD_T OR > (RESTORETAG IS NOT NULL AND RMANCMD = OBSOLETECMD_T)) THEN 14264d14458 < 14266,14267c14460 < ACTION.TYPE_CON = BACKUPSET_CON_T AND < RMANCMD != OBSOLETECMD_T ) THEN --- > ACTION.TYPE_CON = BACKUPSET_CON_T) THEN 14276c14469,14470 < IF (VALIDATIONREC.TAG = RESTORETAG OR --- > IF (((TAG_LIKE = 1 AND VALIDATIONREC.TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND VALIDATIONREC.TAG = RESTORETAG)) OR 14336,14341d14529 < < IF (RMANCMD = OBSOLETECMD_T AND NOT ISVALIDACTION(ACTION)) THEN < DEB(DEB_EXIT, 'with action_SKIP'); < RETURN ACTION_SKIP; < END IF; < 17797c17985,17988 < IF (NVL(TAG, ' ') != NVL(CACHEBSRECTABLE.TAG, NVL(TAG, ' '))) THEN --- > IF ((TAG_LIKE = 1 AND > NVL(TAG, ' ') NOT LIKE NVL(CACHEBSRECTABLE.TAG, NVL(TAG, ' '))) OR > (TAG_LIKE <> 1 AND > NVL(TAG, ' ') != NVL(CACHEBSRECTABLE.TAG, NVL(TAG, ' ')))) THEN 18093a18285,18287 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 18375a18570,18572 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 18467a18665 > AND RESTORETAG IS NULL 18540a18739,18741 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 18611a18813,18815 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 19180c19384,19385 < AL.FIRST_CHANGE# < D2.NEXT_RESETLOGS_CHANGE#)); --- > AL.FIRST_CHANGE# < D2.NEXT_RESETLOGS_CHANGE#)) > AND RESTORETAG IS NULL; 19222c19427,19430 < XAL.FIRST_CHANGE# < D2.NEXT_RESETLOGS_CHANGE#)); --- > XAL.FIRST_CHANGE# < D2.NEXT_RESETLOGS_CHANGE#)) > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))); 19269a19478 > AND RESTORETAG IS NULL 19320a19530,19532 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND XAL.TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND XAL.TAG = RESTORETAG))) 19386a19599 > AND RESTORETAG IS NULL 19421a19635,19637 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 19450a19667,19669 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 19508c19727 < --- > AND RESTORETAG IS NULL 19539a19759,19761 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 19564a19787,19789 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 19639a19865 > AND RESTORETAG IS NULL 19678a19905,19907 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 19710a19940,19942 > AND (RESTORETAG IS NULL OR > ((TAG_LIKE = 1 AND TAG LIKE RESTORETAG) OR > (TAG_LIKE <> 1 AND TAG = RESTORETAG))) 20298c20530,20531 < TAG IN VARCHAR2 DEFAULT NULL) --- > TAG IN VARCHAR2 DEFAULT NULL, > USE_LIKE IN NUMBER DEFAULT 0) 20300a20534,20539 > > > IF (NVL(TAG, ' ') <> NVL(RESTORETAG, ' ') AND RCVRECCURSOR1_C%ISOPEN) THEN > DEB(DEB_PRINT, 'closing cursor rcRecCursor_c'); > CLOSE RCVRECCURSOR1_C; > END IF; 20301a20541,20542 > TAG_LIKE := USE_LIKE; > DEB(DEB_PRINT, 'restoreTag='|| RESTORETAG || ',tag_like='|| TAG_LIKE); 25918a26160,26162 > > VALIDATIONREC VALIDBACKUPSETREC_T; > BS_RCVREC RCVREC_T; 26576a26821,26822 > <<NEXTROW>> > 26803a27050,27085 > END IF; > > > IF (LBREC.BACKUP_TYPE = BACKUPSET_TXT AND RESTORETAG IS NOT NULL) THEN > BS_RCVREC.BSKEY_CON := LBREC.BS_KEY; > BS_RCVREC.SETCOUNT_CON := LBREC.BS_COUNT; > BS_RCVREC.SETSTAMP_CON := LBREC.BS_STAMP; > BS_RCVREC.PIECECOUNT_CON := LBREC.BS_PIECES; > IF (LBREC.FILE_TYPE = ARCHIVEDLOG_TXT) THEN > BS_RCVREC.LOGLOWSCN_OBJ := LBREC.RL_FIRST_CHANGE#; > BS_RCVREC.LOGTHREAD_OBJ := LBREC.RL_THREAD#; > BS_RCVREC.LOGSEQUENCE_OBJ := LBREC.RL_SEQUENCE#; > ELSIF (LBREC.FILE_TYPE IN (SPFILE_TXT, CONTROLFILE_TXT)) THEN > BS_RCVREC.DFNUMBER_OBJ := 0; > BS_RCVREC.FROMSCN_ACT := 0; > ELSIF (LBREC.FILE_TYPE = DATAFILE_TXT) THEN > BS_RCVREC.DFNUMBER_OBJ := 0; > BS_RCVREC.FROMSCN_ACT := LBREC.DF_CHECKPOINT_CHANGE#; > IF (LBREC.DF_INCREMENTAL_CHANGE# = LBREC.DF_CREATION_CHANGE# OR > LBREC.BS_INCR_TYPE = FULL_TXT) THEN > BS_RCVREC.FROMSCN_ACT := 0; > ELSIF (LBREC.BS_INCR_TYPE <> FULL_TXT) THEN > BS_RCVREC.FROMSCN_ACT := LBREC.DF_INCREMENTAL_CHANGE#; > END IF; > END IF; > > IF VALIDATEBACKUPSET(BACKUPSETREC=> BS_RCVREC, > TAG => RESTORETAG, > TAGMATCHREQUIRED => TRUE, > CHECKDEVICEISALLOCATED => TRUE, > AVAILABLEMASK => BSAVAILABLE, > VALIDREC => VALIDATIONREC) <> SUCCESS THEN > DEB(DEB_IN, 'tag does not match: bs_key=' || LBREC.BS_KEY); > GOTO NEXTROW; > END IF; > 28103c28385 < ,ATANYSCN IN BOOLEAN DEFAULT FALSE) --- > ,ATANYSCN IN BOOLEAN DEFAULT FALSE) 28720c29002 < DEB(DEB_IN, 'tag does not match'); --- > DEB(DEB_IN, 'tag does not match for controlfile proxy copy'); 29045c29327 < DEB(DEB_EXIT, 'tag does not match'); --- > DEB(DEB_EXIT, 'tag does not match for proxy copy:'||BRLREC.TAG_CON); 29284,29296c29566,29572 < IF (RMANCMD = OBSOLETECMD_T) THEN < < < VALRC := SUCCESS; < ELSE < VALRC := VALIDATEBACKUPSET( < BACKUPSETREC => BSFREC, < TAG => RESTORETAG, < TAGMATCHREQUIRED => TRUE, < CHECKDEVICEISALLOCATED => TRUE, < AVAILABLEMASK => BSAVAILABLE, < VALIDREC => VALIDATEREC); < END IF; --- > VALRC := VALIDATEBACKUPSET( > BACKUPSETREC => BSFREC, > TAG => RESTORETAG, > TAGMATCHREQUIRED => TRUE, > CHECKDEVICEISALLOCATED => TRUE, > AVAILABLEMASK => BSAVAILABLE, > VALIDREC => VALIDATEREC); 29313,29322d29588 < ELSIF (RMANCMD = OBSOLETECMD_T) THEN < DEB(DEB_IN, ' Added bsfRec:'); < < RCVRECPUSH(BSFREC); < GETBS_STATUS := SUCCESS; < IF (LCOPIES > 1) THEN < LCOPIES := LCOPIES - 1; < ELSE < EXIT; < END IF; 29590a29857 > DEB(DEB_PRINT, 'getRA_likePattern='|| PATTERN);
122c122 < CATALOGVERSION CONSTANT VARCHAR2(11) := '19.03.00.00'; --- > CATALOGVERSION CONSTANT VARCHAR2(11) := '19.03.01.00';
643a644,648 > > > > DBMS_RMIN_SYS.RM$_CLRPAREA(FALSE); > 681,683c686,688 < PENDING_AREA BOOLEAN; < PENDING_AREA_EXISTS EXCEPTION; < PRAGMA EXCEPTION_INIT(PENDING_AREA_EXISTS, -29370); --- > PENDING_AREA_CREATED BOOLEAN; > NO_PENDING_AREA EXCEPTION; > PRAGMA EXCEPTION_INIT(NO_PENDING_AREA, -29371); 696,698c701,702 < PENDING_AREA := FALSE; < DBMS_RMIN_SYS.RM$_CRTPAREA(FALSE); < --- > PENDING_AREA_CREATED := FALSE; > DBMS_RMIN_SYS.RM$_VERIFY_PENDING_AREA_ACT; 700,702c704,705 < WHEN PENDING_AREA_EXISTS THEN < < PENDING_AREA := TRUE; --- > WHEN NO_PENDING_AREA THEN > PENDING_AREA_CREATED := TRUE; 707a711,714 > IF PENDING_AREA_CREATED THEN > DBMS_RMIN_SYS.RM$_CRTPAREA(FALSE); > END IF; > 712c719 < IF (NOT PENDING_AREA) THEN --- > IF (PENDING_AREA_CREATED) THEN 718c725 < IF (NOT PENDING_AREA) THEN --- > IF (PENDING_AREA_CREATED) THEN
83a84 > PAR_ALTERNATE_BASELINE CONSTANT VARCHAR2(23) := 'ALTERNATE_PLAN_BASELINE'; 537a539,545 > > > DBMS_ADVISOR.SET_TASK_PARAMETER( > DBMS_SPM_INTERNAL.AUTO_EVOLVE_TASK_NAME, > PAR_ALTERNATE_BASELINE, > DBMS_SPM_INTERNAL.AUTO_EVOLVE_TASK_ALTERNATE_VAL); > 2736a2745,2750 > > > IF (PARAMETER = PAR_ALTERNATE_BASELINE AND > VALUE = DBMS_SPM_INTERNAL.AUTO_EVOLVE_TASK_ALTERNATE_VAL) THEN > SYS.DBMS_SPM_INTERNAL.CHECK_AUTO_SPM_ENABLED; > END IF;
2613,2617d2612 < PRVT_ADVISOR.SET_TASK_PARAMETER(TASK_NAME => TNAME, < PARAMETER => 'ALTERNATE_PLAN_BASELINE', < DATA => AUTO_EVOLVE_TASK_ALTERNATE_VAL, < TASK_OWNER_ID => PRVT_ADVISOR.SYS_USER_ID); < 4219a4215,4265 > PROCEDURE AUTO_SPM_ENABLED_CALLOUT( > AUTO_SPM_IS_ENABLED OUT NUMBER > ) IS > EXTERNAL NAME "kapspmEnabled" WITH CONTEXT > PARAMETERS(CONTEXT, > AUTO_SPM_IS_ENABLED OCINUMBER > ) > LIBRARY DBMS_SPM_LIB; > > > > > > > > > > > > > > FUNCTION CHECK_AUTO_SPM_ENABLED > RETURN BOOLEAN > IS > ENABLED_CODE NUMBER; > BEGIN > AUTO_SPM_ENABLED_CALLOUT(ENABLED_CODE); > > IF (ENABLED_CODE = 0) THEN > RETURN FALSE; > END IF; > > RETURN TRUE; > END CHECK_AUTO_SPM_ENABLED; > > > > > > > > > > > > > > > > > 4299c4345,4347 < IF (BASELINES LIKE '%AUTO%') THEN --- > > > IF (BASELINES LIKE '%AUTO%' AND CHECK_AUTO_SPM_ENABLED) THEN 6018,6041d6065 < < < < < < < < < < < < < < < < < PROCEDURE AUTO_SPM_ENABLED_CALLOUT( < AUTO_SPM_IS_ENABLED OUT NUMBER < ) IS < EXTERNAL NAME "kapspmEnabled" WITH CONTEXT < PARAMETERS(CONTEXT, < AUTO_SPM_IS_ENABLED OCINUMBER < ) < LIBRARY DBMS_SPM_LIB;
32624d32623 < 32626c32625 < --- > 32628c32627 < FETCH SYS.DBMS_STATS_INTERNAL.OBJ_NAME_QRY --- > FETCH SYS.DBMS_STATS_INTERNAL.OBJ_NAME_QRY 50983c50982,50985 < SELECT CGU.OBJ# OBJ#, DSC_DMLMON_FLGS_MISSING_EXTN FLGS --- > > > > SELECT DISTINCT CGU.OBJ# OBJ#, DSC_DMLMON_FLGS_MISSING_EXTN FLGS 50990a50993,50998 > > > > BITAND(CGU.FLAGS, > DBMS_STATS_INTERNAL.DSC_CG_SRC_SEED+ > DBMS_STATS_INTERNAL.DSC_CG_SRC_DIR) > 0 AND
14195a14196,14200 > REPORT_SECTION(DBMS_AWR_REPORT_LAYOUT.TOP_NONDB_WAIT_TIME, TO_HTML); > > > >
3318c3318 < '(file_type <> :2)'; --- > '(file_type NOT IN (:2, :3))'; 3322c3322,3323 < KUPCC.MT_FILE_TYPE_DISK; --- > KUPCC.MT_FILE_TYPE_DISK, > KUPCC.MT_FILE_TYPE_URIDISK;
1c1,3 < TYPE dbms_optim_bugValObType as object(fix number, val number) --- > TYPE > dbms_optim_bugValObType FORCE as object(fix number, val number) NOT PERSISTABLE; >
1c1,3 < TYPE dbms_optim_fcTabType as table of dbms_optim_bugValObType --- > TYPE > dbms_optim_fcTabType as table of (dbms_optim_bugValObType) NOT PERSISTABLE; >
1c1 < SELECT k."OWNER",k."TABLE_NAME",k."TABLE_ID",k."COLUMN_NAME",k."COLUMN_INT_ID",k."DATA_TYPE",k."DATA_TYPE_MOD",k."DATA_TYPE_OWNER",k."DATA_LENGTH",k."DATA_PRECISION",k."DATA_SCALE",k."NULLABLE",k."COLUMN_ID",k."DEFAULT_LENGTH",k."NUM_DISTINCT",k."LOW_VALUE",k."HIGH_VALUE",k."DENSITY",k."NUM_NULLS",k."NUM_BUCKETS",k."LAST_ANALYZED",k."SAMPLE_SIZE",k."CHARACTER_SET_NAME",k."CHAR_COL_DECL_LENGTH",k."GLOBAL_STATS",k."USER_STATS",k."NOTES",k."AVG_COL_LEN",k."CHAR_LENGTH",k."CHAR_USED",k."V80_FMT_IMAGE",k."DATA_UPGRADED",k."HIDDEN_COLUMN",k."VIRTUAL_COLUMN",k."SEGMENT_COLUMN_ID",k."INTERNAL_COLUMN_ID",k."HISTOGRAM",k."QUALIFIED_COL_NAME",k."USER_GENERATED",k."DEFAULT_ON_NULL",k."IDENTITY_COLUMN",k."SENSITIVE_COLUMN",k."EVALUATION_EDITION",k."UNUSABLE_BEFORE",k."UNUSABLE_BEGINNING",k."COLLATION",k."COLLATED_COLUMN_ID",k."CON_ID", k.CON$NAME, k.CDB$NAME, k.CON$ERRNUM, k.CON$ERRMSG FROM CONTAINERS("SYS"."DBA_TAB_COLS_V$") k --- > SELECT k."OWNER",k."OWNER_ID",k."TABLE_NAME",k."TABLE_ID",k."COLUMN_NAME",k."COLUMN_INT_ID",k."DATA_TYPE",k."DATA_TYPE_MOD",k."DATA_TYPE_OWNER",k."DATA_LENGTH",k."DATA_PRECISION",k."DATA_SCALE",k."NULLABLE",k."COLUMN_ID",k."DEFAULT_LENGTH",k."NUM_DISTINCT",k."LOW_VALUE",k."HIGH_VALUE",k."DENSITY",k."NUM_NULLS",k."NUM_BUCKETS",k."LAST_ANALYZED",k."SAMPLE_SIZE",k."CHARACTER_SET_NAME",k."CHAR_COL_DECL_LENGTH",k."GLOBAL_STATS",k."USER_STATS",k."NOTES",k."AVG_COL_LEN",k."CHAR_LENGTH",k."CHAR_USED",k."V80_FMT_IMAGE",k."DATA_UPGRADED",k."HIDDEN_COLUMN",k."VIRTUAL_COLUMN",k."SEGMENT_COLUMN_ID",k."INTERNAL_COLUMN_ID",k."HISTOGRAM",k."QUALIFIED_COL_NAME",k."USER_GENERATED",k."DEFAULT_ON_NULL",k."IDENTITY_COLUMN",k."SENSITIVE_COLUMN",k."EVALUATION_EDITION",k."UNUSABLE_BEFORE",k."UNUSABLE_BEGINNING",k."COLLATION",k."COLLATED_COLUMN_ID",k."CON_ID", k.CON$NAME, k.CDB$NAME, k.CON$ERRNUM, k.CON$ERRMSG FROM CONTAINERS("SYS"."DBA_TAB_COLS_V$") k
Useful Links:
- Download Assistant: MOS Note: 2118136.2
- 2019 July CPU: https://www.oracle.com/technetwork/security-advisory/cpujul2019-5072835.html