{"id":3031,"date":"2018-01-23T18:57:25","date_gmt":"2018-01-23T20:57:25","guid":{"rendered":"http:\/\/www.dbarj.com.br\/?p=3031"},"modified":"2018-01-23T18:57:25","modified_gmt":"2018-01-23T20:57:25","slug":"dissecting-180116-bp-psu-ru-rur","status":"publish","type":"post","link":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/","title":{"rendered":"Dissecting 180116 BP, PSU, RU and RUR"},"content":{"rendered":"<p>Since Oct-2017 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.<\/p>\n<p>So what oracle internal objects were changed in 180116?<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">VERSION              PATCH      OWNER                          TYPE                                TOTAL\r\n-------------------- ---------- ------------------------------ ------------------------------ ----------\r\n11.2.0.4             PSU &amp; BP   SYS                            PACKAGE                                 1\r\n11.2.0.4             PSU &amp; BP   SYS                            PACKAGE BODY                            2\r\n12.1.0.2             BP         SYS                            PACKAGE BODY                            3\r\n12.1.0.2             PSU &amp; BP   SYS                            PACKAGE BODY                            1\r\n12.2.0.1             JUL2017RUR SYS                            PACKAGE BODY                            2\r\n12.2.0.1             OCT2017RUR SYS                            PACKAGE BODY                            2\r\n12.2.0.1             RU         CTXSYS                         PACKAGE BODY                            1\r\n12.2.0.1             RU         DVSYS                          TYPE                                    6\r\n12.2.0.1             RU         DVSYS                          VIEW                                    2\r\n12.2.0.1             RU         SYS                            PACKAGE                                 1\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                           10\r\n12.2.0.1             RU         SYS                            VIEW                                   10\r\n<\/pre>\n<p>And created?<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">VERSION              PATCH      OWNER                          TYPE                                TOTAL\r\n-------------------- ---------- ------------------------------ ------------------------------ ----------\r\n11.2.0.4             OJVM       PUBLIC                         SYNONYM                                21\r\n12.1.0.2             BP         SYS                            PACKAGE BODY                            1\r\n12.1.0.2             OJVM       PUBLIC                         SYNONYM                                21\r\n12.1.0.2             PSU        SYS                            PACKAGE BODY                            1<\/pre>\n<p>So which are exactly the objects modified by 180116?<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">VERSION              PATCH      OWNER                          TYPE                           NAME\r\n-------------------- ---------- ------------------------------ ------------------------------ ------------------------------\r\n11.2.0.4             PSU &amp; BP   SYS                            PACKAGE BODY                   DBMS_BACKUP_RESTORE\r\n11.2.0.4             PSU &amp; BP   SYS                            PACKAGE                        DBMS_BACKUP_RESTORE\r\n11.2.0.4             PSU &amp; BP   SYS                            PACKAGE BODY                   DBMS_LOGREP_EXP\r\n12.1.0.2             BP         SYS                            PACKAGE BODY                   DBMS_LOGREP_EXP\r\n12.1.0.2             BP         SYS                            PACKAGE BODY                   DBMS_OPTIM_BUNDLE\r\n12.1.0.2             BP         SYS                            PACKAGE BODY                   PRVT_ILM\r\n12.1.0.2             PSU &amp; BP   SYS                            PACKAGE BODY                   CDBVIEW\r\n12.2.0.1             JUL2017RUR SYS                            PACKAGE BODY                   CDBVIEW\r\n12.2.0.1             JUL2017RUR SYS                            PACKAGE BODY                   PRVTEMX_CELL\r\n12.2.0.1             OCT2017RUR SYS                            PACKAGE BODY                   CDBVIEW\r\n12.2.0.1             OCT2017RUR SYS                            PACKAGE BODY                   PRVTEMX_CELL\r\n12.2.0.1             RU         CTXSYS                         PACKAGE BODY                   DRVDDL\r\n12.2.0.1             RU         DVSYS                          TYPE                           KU$_DV_REALM_MEMBER_T\r\n12.2.0.1             RU         DVSYS                          TYPE                           KU$_DV_RULE_SET_MEMBER_T\r\n12.2.0.1             RU         DVSYS                          TYPE                           SYS_YOID0000072649$\r\n12.2.0.1             RU         DVSYS                          TYPE                           SYS_YOID0000072661$\r\n12.2.0.1             RU         DVSYS                          TYPE                           SYS_YOID0000072855$\r\n12.2.0.1             RU         DVSYS                          TYPE                           SYS_YOID0000072867$\r\n12.2.0.1             RU         DVSYS                          VIEW                           KU$_DV_REALM_MEMBER_VIEW\r\n12.2.0.1             RU         DVSYS                          VIEW                           KU$_DV_RULE_SET_MEMBER_VIEW\r\n12.2.0.1             RU         SYS                            PACKAGE                        PRVT_COMPRESSION\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   CDBVIEW\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_APPLY_ADM_INTERNAL\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_AQADM_SYS\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_COMPRESSION\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_LOGREP_EXP\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_OPTIM_BUNDLE\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_PRVTAQIM\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   DBMS_RCVMAN\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   PRVTEMX_CELL\r\n12.2.0.1             RU         SYS                            PACKAGE BODY                   PRVT_ILM\r\n12.2.0.1             RU         SYS                            VIEW                           LOGSTDBY_RU_UNSUPPORT_TAB_12_1\r\n12.2.0.1             RU         SYS                            VIEW                           LOGSTDBY_RU_UNSUPPORT_TAB_12_2\r\n12.2.0.1             RU         SYS                            VIEW                           LOGSTDBY_SUPPORT_TAB_12_1\r\n12.2.0.1             RU         SYS                            VIEW                           LOGSTDBY_SUPPORT_TAB_12_2\r\n12.2.0.1             RU         SYS                            VIEW                           LOGSTDBY_UNSUPPORT_TAB_12_1\r\n12.2.0.1             RU         SYS                            VIEW                           LOGSTDBY_UNSUPPORT_TAB_12_2\r\n12.2.0.1             RU         SYS                            VIEW                           OGG_SUPPORT_TAB_11_2\r\n12.2.0.1             RU         SYS                            VIEW                           OGG_SUPPORT_TAB_11_2B\r\n12.2.0.1             RU         SYS                            VIEW                           OGG_SUPPORT_TAB_12_1\r\n12.2.0.1             RU         SYS                            VIEW                           OGG_SUPPORT_TAB_12_2<\/pre>\n<h2><strong>What changed for each?<\/strong><\/h2>\n<ul>\n<li><a href=\"#11.2.0.4\">11.2.0.4<\/a><\/li>\n<li><a href=\"#12.1.0.2\">12.1.0.2<\/a><\/li>\n<li><a href=\"#12.2.0.1\">12.2.0.1<\/a><\/li>\n<\/ul>\n<p><span style=\"font-size: 12pt;\"><strong>P.S:\u00a0<\/strong><\/span><\/p>\n<p><span style=\"font-size: 12pt;\"><strong>&lt;\u00a0 = Added Lines<\/strong><\/span><\/p>\n<p><span style=\"font-size: 12pt;\"><strong>&gt;\u00a0 = Removed Lines<\/strong><\/span><\/p>\n<h2 id=\"11.2.0.4\"><strong>11.2.0.4<\/strong><\/h2>\n<p>SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE BODY (PSU &amp; BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1542,1546c1542\r\n&lt;                      ,PLTFRMFR      IN   BINARY_INTEGER\r\n&lt;                      ,ENCRYPT       IN   NUMBER\r\n&lt;                      ,ENC_ALGORITHM IN   NUMBER\r\n&lt;                      ,ALLOWTDE      IN   NUMBER\r\n&lt;                      ,PASSWORD      IN   VARCHAR2);\r\n---\r\n&gt;                      ,PLTFRMFR      IN   BINARY_INTEGER);\r\n1678,1708c1674\r\n&lt;     BEGIN\r\n&lt;         BACKUPBACKUPPIECE(BPNAME, FNAME, HANDLE, COMMENT, MEDIA, CONCUR,\r\n&lt;                           RECID, STAMP, TAG, PARAMS, MEDIA_POOL, REUSE,\r\n&lt;                           CHECK_LOGICAL, COPYNO, DEFFMT, COPY_RECID,\r\n&lt;                           COPY_STAMP, NPIECES, DEST, PLTFRMFR, 0, 0, 0, NULL);\r\n&lt;     END;\r\n&lt; \r\n&lt;   PROCEDURE BACKUPBACKUPPIECE( BPNAME          IN  VARCHAR2\r\n&lt;                               ,FNAME           IN  VARCHAR2\r\n&lt;                               ,HANDLE          OUT VARCHAR2\r\n&lt;                               ,COMMENT         OUT VARCHAR2\r\n&lt;                               ,MEDIA           OUT VARCHAR2\r\n&lt;                               ,CONCUR          OUT BOOLEAN\r\n&lt;                               ,RECID           OUT NUMBER\r\n&lt;                               ,STAMP           OUT NUMBER\r\n&lt;                               ,TAG             IN  VARCHAR2       DEFAULT NULL\r\n&lt;                               ,PARAMS          IN  VARCHAR2       DEFAULT NULL\r\n&lt;                               ,MEDIA_POOL      IN  BINARY_INTEGER DEFAULT 0\r\n&lt;                               ,REUSE           IN  BOOLEAN        DEFAULT FALSE\r\n&lt;                               ,CHECK_LOGICAL   IN  BOOLEAN\r\n&lt;                               ,COPYNO          IN  BINARY_INTEGER\r\n&lt;                               ,DEFFMT          IN  BINARY_INTEGER\r\n&lt;                               ,COPY_RECID      IN  NUMBER\r\n&lt;                               ,COPY_STAMP      IN  NUMBER\r\n&lt;                               ,NPIECES         IN  BINARY_INTEGER\r\n&lt;                               ,DEST            IN  BINARY_INTEGER\r\n&lt;                               ,PLTFRMFR        IN  BINARY_INTEGER\r\n&lt;                               ,ENCRYPT         IN  NUMBER\r\n&lt;                               ,ENC_ALGORITHM   IN  NUMBER\r\n&lt;                               ,ALLOWTDE        IN  NUMBER\r\n&lt;                               ,PASSWORD        IN  VARCHAR2) IS\r\n---\r\n&gt;  \r\n1718,1719c1684\r\n&lt;                  NPIECES, FALSE, DEST, PLTFRMFR,\r\n&lt;                  ENCRYPT, ENC_ALGORITHM, ALLOWTDE, PASSWORD);\r\n---\r\n&gt;                  NPIECES, FALSE, DEST, PLTFRMFR);\r\n1764,1768c1729\r\n&lt;                 ,PLTFRMFR      =&gt; 0\r\n&lt;                 ,ENCRYPT       =&gt; 0\r\n&lt;                 ,ENC_ALGORITHM =&gt; 0\r\n&lt;                 ,ALLOWTDE      =&gt; 0\r\n&lt;                 ,PASSWORD      =&gt; NULL);\r\n---\r\n&gt;                 ,PLTFRMFR      =&gt; 0);<\/pre>\n<p>SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE (PSU &amp; BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">7493,7523d7492\r\n&lt;   PROCEDURE backupBackupPiece( bpname         IN   varchar2\r\n&lt;                               ,fname          IN   varchar2\r\n&lt;                               ,handle         OUT  varchar2\r\n&lt;                               ,comment        OUT  varchar2\r\n&lt;                               ,media          OUT  varchar2\r\n&lt;                               ,concur         OUT  boolean\r\n&lt;                               ,recid          OUT  number\r\n&lt;                               ,stamp          OUT  number\r\n&lt;                               ,tag            IN   varchar2       default NULL\r\n&lt;                               ,params         IN   varchar2       default NULL\r\n&lt;                               ,media_pool     IN   binary_integer default 0\r\n&lt;                               ,reuse          IN   boolean        default FALSE\r\n&lt;                               ,check_logical  IN   boolean\r\n&lt;                               ,copyno         IN   binary_integer\r\n&lt;                               ,deffmt         IN   binary_integer\r\n&lt;                               ,copy_recid     IN   number\r\n&lt;                               ,copy_stamp     IN   number\r\n&lt;                               ,npieces        IN   binary_integer\r\n&lt;                               ,dest           IN   binary_integer\r\n&lt;                               ,pltfrmfr       IN   binary_integer\r\n&lt;                               ,encrypt        IN   number\r\n&lt;                               ,enc_algorithm  IN   number\r\n&lt;                               ,allowTDE       IN   number\r\n&lt;                               ,password       IN   varchar2);\r\n&lt;   --\r\n&lt;   -- Description and return values can be found with original declaration\r\n&lt;   -- above.  The new arguments are:\r\n&lt;   --   encrypt flag\r\n&lt;   --   algorithm used for encryption\r\n&lt;   --   allow TDE\r\n&lt;   --   password<\/pre>\n<p>SYS.DBMS_LOGREP_EXP &#8211; PACKAGE BODY (PSU &amp; BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2961c2961,2962\r\n&lt; \r\n---\r\n&gt; \r\n&gt; \r\n2962a2964,2968\r\n&gt; SELECT NVL(MAX(CO.SCN), 0) INTO IGNORE_SCN\r\n&gt; FROM ALL_CAPTURE_PREPARED_TABLES CO\r\n&gt; WHERE CO.TABLE_OWNER = INSTANCE_EXTENDED_INFO_EXP.SCHEMA\r\n&gt; AND CO.TABLE_NAME = INSTANCE_EXTENDED_INFO_EXP.NAME;\r\n&gt; \r\n2964,2965c2970,2974\r\n&lt; \r\n&lt; IGNORE_SCN := 0;\r\n---\r\n&gt; IF (IGNORE_SCN = 0) THEN\r\n&gt; DBMS_LOGREP_UTIL.DUMP_TRACE(\r\n&gt; 'Warning: ignore_scn is 0 for object '||SCHEMA||'.'||NAME);\r\n&gt; END IF;\r\n&gt;<\/pre>\n<h2 id=\"12.1.0.2\"><strong>12.1.0.2<\/strong><\/h2>\n<p>SYS.DBMS_LOGREP_EXP &#8211; PACKAGE BODY (BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2966a2967\r\n&gt; \r\n2968a2970,2992\r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    BEGIN\r\n&gt;      SELECT \/*+  USE_NL_WITH_INDEX(cd I_CDEF2) *\/  NVL(MAX(CO.SCN), 0)  \r\n&gt;       INTO IGNORE_SCN\r\n&gt;       FROM SYS.DBA_CAPTURE_PREPARED_TABLES CO\r\n&gt;       WHERE CO.TABLE_OWNER = INSTANCE_EXTENDED_INFO_EXP.SCHEMA\r\n&gt;       AND   CO.TABLE_NAME = INSTANCE_EXTENDED_INFO_EXP.NAME;\r\n&gt;   EXCEPTION\r\n&gt;     WHEN DBMS_STREAMS_DECL.TABLE_OR_VIEW_NOT_EXIST THEN\r\n&gt;       SELECT \/*+  USE_NL_WITH_INDEX(cd I_CDEF2) *\/  NVL(MAX(CO.SCN), 0)  \r\n&gt;       INTO IGNORE_SCN\r\n&gt;       FROM SYS.ALL_CAPTURE_PREPARED_TABLES CO\r\n&gt;       WHERE CO.TABLE_OWNER = INSTANCE_EXTENDED_INFO_EXP.SCHEMA\r\n&gt;       AND   CO.TABLE_NAME = INSTANCE_EXTENDED_INFO_EXP.NAME;\r\n&gt;    WHEN OTHERS THEN RAISE;\r\n&gt;    END;\r\n&gt;      \r\n&gt;     \r\n2970,2971c2994,2998\r\n&lt;  \r\n&lt;     IGNORE_SCN := 0;\r\n---\r\n&gt;     IF (IGNORE_SCN = 0) THEN\r\n&gt;       DBMS_LOGREP_UTIL.DUMP_TRACE(\r\n&gt;         'Warning: ignore_scn is 0 for object '||SCHEMA||'.'||NAME);\r\n&gt;     END IF;\r\n&gt;<\/pre>\n<p>SYS.DBMS_OPTIM_BUNDLE &#8211; PACKAGE BODY (BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">271a272\r\n&gt;   LOC_CON_ID NUMBER := CON_ID;\r\n280c281,283\r\n&lt;   \r\n---\r\n&gt;   IF CON_ID = 1 THEN\r\n&gt;     LOC_CON_ID := 0;\r\n&gt;   END IF;\r\n287c290\r\n&lt;   OPEN C1(INSTNAME, CON_ID); \r\n---\r\n&gt;   OPEN C1(INSTNAME, LOC_CON_ID); \r\n302c305\r\n&lt;   OPEN C1(INSTNAME_LOCAL, CON_ID); \r\n---\r\n&gt;   OPEN C1(INSTNAME_LOCAL, LOC_CON_ID); \r\n760a764\r\n&gt;   LOC_CON_ID NUMBER := CON_ID;\r\n765c769,771\r\n&lt;   \r\n---\r\n&gt;   IF CON_ID = 1 THEN\r\n&gt;     LOC_CON_ID := 0;\r\n&gt;   END IF;\r\n769c775\r\n&lt;   SQL_CMD := 'select count(*) from sys.gv$spparameter where NAME =''optimizer_features_enable'' and ISSPECIFIED = ''TRUE'' and con_id = ' || CON_ID;\r\n---\r\n&gt;   SQL_CMD := 'select count(*) from sys.gv$spparameter where NAME =''optimizer_features_enable'' and ISSPECIFIED = ''TRUE'' and con_id = ' || LOC_CON_ID;\r\n781c787\r\n&lt;              ' and SID != ''*'' and ISSPECIFIED = ''TRUE'' and con_id = ' || CON_ID;\r\n---\r\n&gt;              ' and SID != ''*'' and ISSPECIFIED = ''TRUE'' and con_id = ' || LOC_CON_ID;\r\n805c811\r\n&lt;     OPEN CUR_OFE(INSTNAME, CON_ID); \r\n---\r\n&gt;     OPEN CUR_OFE(INSTNAME, LOC_CON_ID); \r\n811c817\r\n&lt;        OPEN CUR_OFE('*', CON_ID);  \r\n---\r\n&gt;        OPEN CUR_OFE('*', LOC_CON_ID);  \r\n894,896c900,908\r\n&lt;   \r\n&lt;   \r\n&lt;   OPEN CUR_COUNT(CON_ID);\r\n---\r\n&gt;   IF CON_ID = 1 THEN\r\n&gt;     \r\n&gt;     \r\n&gt;     \r\n&gt;     OPEN CUR_COUNT(0);\r\n&gt;   ELSE\r\n&gt;     \r\n&gt;     OPEN CUR_COUNT(CON_ID);\r\n&gt;   END IF;<\/pre>\n<p>SYS.PRVT_ILM &#8211; PACKAGE BODY (BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">214a215\r\n&gt;       V_TRACE_LEVEL NUMBER := ILM_DEBUG_NONE;\r\n216,219c217\r\n&lt; \r\n&lt;          \r\n&lt;          \r\n&lt;          IF (ILM_DEBUG_LEVEL &gt; ILM_DEBUG_NONE) THEN\r\n---\r\n&gt;          IF(ILM_DEBUG_LEVEL &gt;= V_TRACE_LEVEL) THEN\r\n222c220\r\n&lt;              TRACE(ILM_DEBUG_LEVEL, 'Start rid            End rid');\r\n---\r\n&gt;              TRACE(V_TRACE_LEVEL, 'Start rid            End rid');\r\n224c222\r\n&lt;                TRACE(ILM_DEBUG_LEVEL, P_TAB_RID(I).START_RID\r\n---\r\n&gt;                TRACE(V_TRACE_LEVEL, P_TAB_RID(I).START_RID\r\n228,230c226,228\r\n&lt;            ELSE\r\n&lt;              TRACE(ILM_DEBUG_LEVEL, 'No rid ranges generated');\r\n&lt;            END IF;\r\n---\r\n&gt;           ELSE\r\n&gt;              TRACE(V_TRACE_LEVEL, 'No rid ranges generated');\r\n&gt;           END IF;\r\n234d231\r\n&lt; \r\n3009,3010d3005\r\n&lt;          \r\n&lt;                                || ' sys.prvt_ilm.setdebug();'<\/pre>\n<p>SYS.CDBVIEW &#8211; PACKAGE BODY (PSU &amp; BP):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2,4d1\r\n&lt; \r\n&lt; function isLegalOwnerViewName(owner IN varchar2, oldview IN varchar2,\r\n&lt;                              newview IN varchar2) return boolean;\r\n21,23d17\r\n&lt;   table_not_found      EXCEPTION;\r\n&lt;   PRAGMA               exception_init(table_not_found, -942);\r\n&lt; \r\n40,43d33\r\n&lt;   if (not isLegalOwnerViewName(owner, oldview_name, newview_name)) then\r\n&lt;     RAISE table_not_found;\r\n&lt;   end if;\r\n&lt; \r\n94,139d83\r\n&lt;   -- This function is created to prevent SQL injection. We couldn't use\r\n&lt;   -- dbms_assert because catcdbviews.sql is called before dbms_assert\r\n&lt;   -- is created\r\n&lt;   function isLegalOwnerViewName(owner IN varchar2, oldview IN varchar2,\r\n&lt;                              newview IN varchar2) return boolean as\r\n&lt;     cCheck       number;\r\n&lt;     cleanOldview varchar2(128);\r\n&lt;     cleanNewview varchar2(128);\r\n&lt;   begin\r\n&lt; \r\n&lt;     -- Check if owner already exist\r\n&lt;     execute immediate 'SELECT COUNT(*) FROM USER$ WHERE NAME = :1'\r\n&lt;              into cCheck using upper(owner);\r\n&lt;     if (cCheck = 0) then\r\n&lt;       RETURN FALSE;\r\n&lt;     end if;\r\n&lt; \r\n&lt;     -- Check if oldview already exist\r\n&lt;     execute immediate 'SELECT COUNT(*) FROM OBJ$ WHERE NAME = :1' ||\r\n&lt;                       ' AND (TYPE# = 4 OR TYPE# = 2)'\r\n&lt;              into cCheck using upper(oldview);\r\n&lt;     if (cCheck = 0) then\r\n&lt;       RETURN FALSE;\r\n&lt;     end if;\r\n&lt; \r\n&lt;     -- Check for appropriate newview name\r\n&lt;     -- The following is allowed for newview name\r\n&lt;     -- 1. Substitute 'DBA' with 'CDB'\r\n&lt;     -- 2. Substitute 'AWR_PDB' with 'CDB_HIST'\r\n&lt;     -- 3. Substitute 'ATTRIBUTES' with 'ATTRIB'\r\n&lt;     -- 4. Substitute 'DATABASE' with 'CDB'\r\n&lt;     -- 5. Remove 'REDUCED'\r\n&lt;     -- 6. Add 'AWRI$_CDB'\r\n&lt;     cleanOldview := REGEXP_REPLACE(upper(oldview),\r\n&lt;        'DBA|DATABASE|_| |HIST|ATTRIB(UTE)?S?|CDB|AWR_PDB|REDUCED');\r\n&lt;     cleanNewview := REGEXP_REPLACE(upper(newview),\r\n&lt;        'CDB|DATABASE|_| |HIST|ATTRIB(UTE)?S?|AWRI\\$');\r\n&lt; \r\n&lt;     if (cleanOldview = cleanNewview) then\r\n&lt;       RETURN TRUE;\r\n&lt;     end if;\r\n&lt; \r\n&lt;     RETURN FALSE;\r\n&lt; \r\n&lt;   end isLegalOwnerViewName;\r\n&lt;<\/pre>\n<h2 id=\"12.2.0.1\"><strong>12.2.0.1<\/strong><\/h2>\n<p>SYS.PRVTEMX_CELL &#8211; PACKAGE BODY (JUL2017RUR):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">6915,6924c6915,6918\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  361, e.metric_value - nvl(b.metric_value,0), \r\n&lt;                                  0)) bytes,\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  360, e.metric_value - nvl(b.metric_value,0),\r\n&lt;                                  0)) rq,\r\n---\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           361, e.metric_value, 0)) bytes,\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           360, e.metric_value, 0)) rq,\r\n6926,6935c6920,6923\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  361, e.metric_value - nvl(b.metric_value,0),\r\n&lt;                                  0)) scrub_by,\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  360, e.metric_value - nvl(b.metric_value,0), \r\n&lt;                                  0)) scrub_rq\r\n---\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           361, e.metric_value, 0)) scrub_by,\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           360, e.metric_value, 0)) scrub_rq\r\n6945c6933\r\n&lt;                          and e.metric_id between 360 and 361\r\n---\r\n&gt;                          and e.metric_id between 360 and 362\r\n<\/pre>\n<p>CTXSYS.DRVDDL &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">3607d3606\r\n&lt;   STARTDOCID          NUMBER := NULL;\r\n3709,3716d3707\r\n&lt;     \r\n&lt;     \r\n&lt;     IF (IDX.IDX_TYPE = DRIXMD.IDX_TYPE_CONTEXT2 AND\r\n&lt;         IXP.IXP_ID != 0) THEN\r\n&lt;       STARTDOCID := DRIXMD.GETNEXTID(IDX.IDX_ID, IXP.IXP_ID);\r\n&lt;     END IF;\r\n&lt; \r\n&lt;     \r\n3736c3727\r\n&lt;     DRVDML.MAINTAINKTAB(IDX, IXP, STARTDOCID);\r\n---\r\n&gt;     DRVDML.MAINTAINKTAB(IDX, IXP);\r\n<\/pre>\n<p>DVSYS.KU$_DV_REALM_MEMBER_T &#8211; TYPE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">5d4\r\n&lt;   oidval        raw(16),                                       \/* unique id *\/\r\n<\/pre>\n<p>DVSYS.KU$_DV_RULE_SET_MEMBER_T &#8211; TYPE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">5d4\r\n&lt;   oidval          raw(16),                                     \/* unique id *\/\r\n<\/pre>\n<p>DVSYS.SYS_YOID0000072649$ &#8211; TYPE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1,2c1,3\r\n&lt; type         \"SYS_YOID0000072649$\"              as object( \"SYS_NC00001$\" RAW(16\r\n&lt; ))\r\n---\r\n&gt; type         \"SYS_YOID0000072649$\"              as object( \"SYS_NC00001$\" VARCHA\r\n&gt; R2(128 BYTE), \"SYS_NC00002$\" VARCHAR2(128 BYTE), \"SYS_NC00003$\" VARCHAR2(128 BYT\r\n&gt; E))\r\n<\/pre>\n<p>DVSYS.SYS_YOID0000072661$ &#8211; TYPE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1,2c1,2\r\n&lt; type         \"SYS_YOID0000072661$\"              as object( \"SYS_NC00001$\" RAW(16\r\n&lt; ))\r\n---\r\n&gt; type         \"SYS_YOID0000072661$\"              as object( \"SYS_NC00001$\" VARCHA\r\n&gt; R2(128 BYTE), \"SYS_NC00002$\" VARCHAR2(128 BYTE))\r\n<\/pre>\n<p>DVSYS.SYS_YOID0000072855$ &#8211; TYPE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1,2c1,3\r\n&lt; type         \"SYS_YOID0000072855$\"              as object( \"SYS_NC00001$\" RAW(16\r\n&lt; ))\r\n---\r\n&gt; type         \"SYS_YOID0000072855$\"              as object( \"SYS_NC00001$\" VARCHA\r\n&gt; R2(128 BYTE), \"SYS_NC00002$\" VARCHAR2(128 BYTE), \"SYS_NC00003$\" VARCHAR2(128 BYT\r\n&gt; E))\r\n<\/pre>\n<p>DVSYS.SYS_YOID0000072867$ &#8211; TYPE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1,2c1,2\r\n&lt; type         \"SYS_YOID0000072867$\"              as object( \"SYS_NC00001$\" RAW(16\r\n&lt; ))\r\n---\r\n&gt; type         \"SYS_YOID0000072867$\"              as object( \"SYS_NC00001$\" VARCHA\r\n&gt; R2(128 BYTE), \"SYS_NC00002$\" VARCHAR2(128 BYTE))\r\n<\/pre>\n<p>DVSYS.KU$_DV_REALM_MEMBER_VIEW &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1c1\r\n&lt; select '0','0',sys_guid(),\r\n---\r\n&gt; select '0','0',\r\n<\/pre>\n<p>DVSYS.KU$_DV_RULE_SET_MEMBER_VIEW &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1c1\r\n&lt; select '0','0', sys_guid(),\r\n---\r\n&gt; select '0','0',\r\n<\/pre>\n<p>SYS.PRVT_COMPRESSION &#8211; PACKAGE (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">3,4d2\r\n&lt; \r\n&lt; \r\n<\/pre>\n<p>SYS.CDBVIEW &#8211; PACKAGE BODY (RU &amp; JUL2017RUR &amp; OCT2017RUR):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2,4d1\r\n&lt; \r\n&lt; function isLegalOwnerViewName(owner IN varchar2, oldview IN varchar2,\r\n&lt;                              newview IN varchar2) return boolean;\r\n25,27d21\r\n&lt;   table_not_found      EXCEPTION;\r\n&lt;   PRAGMA               exception_init(table_not_found, -942);\r\n&lt; \r\n38,41d31\r\n&lt;   if (not isLegalOwnerViewName(owner, oldview_name, newview_name)) then\r\n&lt;     RAISE table_not_found;\r\n&lt;   end if;\r\n&lt; \r\n158,203d147\r\n&lt;   -- This function is created to prevent SQL injection. We couldn't use\r\n&lt;   -- dbms_assert because catcdbviews.sql is called before dbms_assert\r\n&lt;   -- is created\r\n&lt;   function isLegalOwnerViewName(owner IN varchar2, oldview IN varchar2,\r\n&lt;                              newview IN varchar2) return boolean as\r\n&lt;     cCheck       number;\r\n&lt;     cleanOldview varchar2(128);\r\n&lt;     cleanNewview varchar2(128);\r\n&lt;   begin\r\n&lt; \r\n&lt;     -- Check if owner already exist\r\n&lt;     execute immediate 'SELECT COUNT(*) FROM USER$ WHERE NAME = :1'\r\n&lt;              into cCheck using upper(owner);\r\n&lt;     if (cCheck = 0) then\r\n&lt;       RETURN FALSE;\r\n&lt;     end if;\r\n&lt; \r\n&lt;     -- Check if oldview already exist\r\n&lt;     execute immediate 'SELECT COUNT(*) FROM OBJ$ WHERE NAME = :1' ||\r\n&lt;                       ' AND (TYPE# = 4 OR TYPE# = 2)'\r\n&lt;              into cCheck using upper(oldview);\r\n&lt;     if (cCheck = 0) then\r\n&lt;       RETURN FALSE;\r\n&lt;     end if;\r\n&lt; \r\n&lt;     -- Check for appropriate newview name\r\n&lt;     -- The following is allowed for newview name\r\n&lt;     -- 1. Substitute 'DBA' with 'CDB'\r\n&lt;     -- 2. Substitute 'AWR_PDB' with 'CDB_HIST'\r\n&lt;     -- 3. Substitute 'ATTRIBUTES' with 'ATTRIB'\r\n&lt;     -- 4. Substitute 'DATABASE' with 'CDB'\r\n&lt;     -- 5. Remove 'REDUCED'\r\n&lt;     -- 6. Add 'AWRI$_CDB'\r\n&lt;     cleanOldview := REGEXP_REPLACE(upper(oldview),\r\n&lt;        'DBA|DATABASE|_| |HIST|ATTRIB(UTE)?S?|CDB|AWR_PDB|REDUCED');\r\n&lt;     cleanNewview := REGEXP_REPLACE(upper(newview),\r\n&lt;        'CDB|DATABASE|_| |HIST|ATTRIB(UTE)?S?|AWRI\\$');\r\n&lt; \r\n&lt;     if (cleanOldview = cleanNewview) then\r\n&lt;       RETURN TRUE;\r\n&lt;     end if;\r\n&lt; \r\n&lt;     RETURN FALSE;\r\n&lt; \r\n&lt;   end isLegalOwnerViewName;\r\n&lt; \r\n<\/pre>\n<p>SYS.DBMS_APPLY_ADM_INTERNAL &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2165c2165,2166\r\n&lt;     IF ( METHOD_NUM IN (XSDCH_METHOD_MAXIMUM, XSDCH_METHOD_MINIMUM,\r\n---\r\n&gt;     \r\n&gt;     IF ((METHOD_NUM IN (XSDCH_METHOD_MAXIMUM, XSDCH_METHOD_MINIMUM,\r\n2167,2168c2168,2171\r\n&lt;                         XSDCH_METHOD_MIN_AND_EQUALS, XSDCH_METHOD_DELTA) AND\r\n&lt;          OPERATION_NUM NOT IN (XSDCH_OP_NUM_INSERT, XSDCH_OP_NUM_UPDATE)) THEN\r\n---\r\n&gt;         XSDCH_METHOD_MIN_AND_EQUALS) AND\r\n&gt;          OPERATION_NUM NOT IN (XSDCH_OP_NUM_INSERT, XSDCH_OP_NUM_UPDATE)) OR\r\n&gt;         (METHOD_NUM = XSDCH_METHOD_DELTA AND\r\n&gt;          OPERATION_NUM != XSDCH_OP_NUM_UPDATE)) THEN\r\n<\/pre>\n<p>SYS.DBMS_AQADM_SYS &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2922,2933c2922\r\n&lt;       \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))), 'nls_sort=binary');\r\n---\r\n&gt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))));\r\n<\/pre>\n<p>SYS.DBMS_COMPRESSION &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">3,14d2\r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; KDZACMPLVL_MIN                CONSTANT NUMBER := 0;\r\n&lt; KDZACMPLVL_BASIC              CONSTANT NUMBER := 0;\r\n&lt; KDZACMPLVL_UNCMP              CONSTANT NUMBER := 1;\r\n&lt; KDZACMPLVL_ADVANCED           CONSTANT NUMBER := 2;\r\n&lt; KDZACMPLVL_HCCQL              CONSTANT NUMBER := 3;\r\n&lt; KDZACMPLVL_HCCQH              CONSTANT NUMBER := 4;\r\n&lt; KDZACMPLVL_HCCAL              CONSTANT NUMBER := 5;\r\n&lt; KDZACMPLVL_HCCAH              CONSTANT NUMBER := 6;\r\n&lt; \r\n362,363c350,351\r\n&lt;      \r\n&lt;      IF COMP_LEVEL = KDZACMPLVL_UNCMP THEN \r\n---\r\n&gt;        \r\n&gt;      IF COMP_LEVEL = 1 THEN \r\n365c353\r\n&lt;      ELSIF (COMP_LEVEL IN (KDZACMPLVL_BASIC, KDZACMPLVL_ADVANCED)) THEN\r\n---\r\n&gt;      ELSIF COMP_LEVEL = 2 THEN          \r\n422,426c410\r\n&lt;                   IF (COMP_LEVEL = KDZACMPLVL_BASIC) THEN \r\n&lt;                     FOR_COMPRESSION :=COMP_BASIC; \r\n&lt;                   ELSIF COMP_LEVEL = KDZACMPLVL_ADVANCED THEN\r\n&lt;                     FOR_COMPRESSION := COMP_ADVANCED;\r\n&lt;                   END IF;   \r\n---\r\n&gt;                   FOR_COMPRESSION :=COMP_BASIC; \r\n438c422\r\n&lt;      ELSIF COMP_LEVEL = KDZACMPLVL_HCCQL THEN\r\n---\r\n&gt;      ELSIF COMP_LEVEL = 3 THEN\r\n440c424\r\n&lt;      ELSIF COMP_LEVEL = KDZACMPLVL_HCCQH THEN\r\n---\r\n&gt;      ELSIF COMP_LEVEL = 4 THEN\r\n442c426\r\n&lt;      ELSIF COMP_LEVEL = KDZACMPLVL_HCCAL THEN\r\n---\r\n&gt;      ELSIF COMP_LEVEL = 5 THEN\r\n444c428\r\n&lt;      ELSIF COMP_LEVEL = KDZACMPLVL_HCCAH THEN\r\n---\r\n&gt;      ELSIF COMP_LEVEL = 6 THEN\r\n<\/pre>\n<p>SYS.DBMS_LOGREP_EXP &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">2993a2994,3018\r\n&gt; \r\n&gt;     \r\n&gt;     \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    \r\n&gt;    BEGIN\r\n&gt;      SELECT \/*+  USE_NL_WITH_INDEX(cd I_CDEF2) *\/  NVL(MAX(CO.SCN), 0)  \r\n&gt;       INTO IGNORE_SCN\r\n&gt;       FROM SYS.DBA_CAPTURE_PREPARED_TABLES CO\r\n&gt;       WHERE CO.TABLE_OWNER = INSTANCE_EXTENDED_INFO_EXP.SCHEMA\r\n&gt;       AND   CO.TABLE_NAME = INSTANCE_EXTENDED_INFO_EXP.NAME;\r\n&gt;   EXCEPTION\r\n&gt;     WHEN DBMS_STREAMS_DECL.TABLE_OR_VIEW_NOT_EXIST THEN\r\n&gt;       SELECT \/*+  USE_NL_WITH_INDEX(cd I_CDEF2) *\/  NVL(MAX(CO.SCN), 0)  \r\n&gt;       INTO IGNORE_SCN\r\n&gt;       FROM SYS.ALL_CAPTURE_PREPARED_TABLES CO\r\n&gt;       WHERE CO.TABLE_OWNER = INSTANCE_EXTENDED_INFO_EXP.SCHEMA\r\n&gt;       AND   CO.TABLE_NAME = INSTANCE_EXTENDED_INFO_EXP.NAME;\r\n&gt;    WHEN OTHERS THEN RAISE;\r\n&gt;    END;\r\n&gt;      \r\n2996,2997c3021,3025\r\n&lt;  \r\n&lt;     IGNORE_SCN := 0;\r\n---\r\n&gt;     IF (IGNORE_SCN = 0) THEN\r\n&gt;       DBMS_LOGREP_UTIL.DUMP_TRACE(\r\n&gt;         'Warning: ignore_scn is 0 for object '||SCHEMA||'.'||NAME);\r\n&gt;     END IF;\r\n&gt; \r\n<\/pre>\n<p>SYS.DBMS_OPTIM_BUNDLE &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">279a280\r\n&gt;   LOC_CON_ID NUMBER := CON_ID;\r\n288c289,291\r\n&lt;   \r\n---\r\n&gt;   IF CON_ID = 1 THEN\r\n&gt;     LOC_CON_ID := 0;\r\n&gt;   END IF;\r\n295c298\r\n&lt;   OPEN C1(INSTNAME, CON_ID); \r\n---\r\n&gt;   OPEN C1(INSTNAME, LOC_CON_ID); \r\n310c313\r\n&lt;   OPEN C1(INSTNAME_LOCAL, CON_ID); \r\n---\r\n&gt;   OPEN C1(INSTNAME_LOCAL, LOC_CON_ID); \r\n769a773\r\n&gt;   LOC_CON_ID NUMBER := CON_ID;\r\n774c778,780\r\n&lt;   \r\n---\r\n&gt;   IF CON_ID = 1 THEN\r\n&gt;     LOC_CON_ID := 0;\r\n&gt;   END IF;\r\n778c784\r\n&lt;   SQL_CMD := 'select count(*) from sys.gv$spparameter where NAME =''optimizer_features_enable'' and ISSPECIFIED = ''TRUE'' and con_id = ' || CON_ID;\r\n---\r\n&gt;   SQL_CMD := 'select count(*) from sys.gv$spparameter where NAME =''optimizer_features_enable'' and ISSPECIFIED = ''TRUE'' and con_id = ' || LOC_CON_ID;\r\n790c796\r\n&lt;              ' and SID != ''*'' and ISSPECIFIED = ''TRUE'' and con_id = ' || CON_ID;\r\n---\r\n&gt;              ' and SID != ''*'' and ISSPECIFIED = ''TRUE'' and con_id = ' || LOC_CON_ID;\r\n814c820\r\n&lt;     OPEN CUR_OFE(INSTNAME, CON_ID); \r\n---\r\n&gt;     OPEN CUR_OFE(INSTNAME, LOC_CON_ID); \r\n820c826\r\n&lt;        OPEN CUR_OFE('*', CON_ID);  \r\n---\r\n&gt;        OPEN CUR_OFE('*', LOC_CON_ID);  \r\n903,905c909,917\r\n&lt;   \r\n&lt;   \r\n&lt;   OPEN CUR_COUNT(CON_ID);\r\n---\r\n&gt;   IF CON_ID = 1 THEN\r\n&gt;     \r\n&gt;     \r\n&gt;     \r\n&gt;     OPEN CUR_COUNT(0);\r\n&gt;   ELSE\r\n&gt;     \r\n&gt;     OPEN CUR_COUNT(CON_ID);\r\n&gt;   END IF;\r\n<\/pre>\n<p>SYS.DBMS_PRVTAQIM &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">1714,1725c1714\r\n&lt;       \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt; \r\n&lt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))), 'nls_sort=binary');\r\n---\r\n&gt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))));\r\n<\/pre>\n<p>SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">17221,17229c17221,17237\r\n&lt;          SELECT COUNT(*) INTO LOGEXISTS FROM DUAL\r\n&lt;          WHERE EXISTS\r\n&lt;              (SELECT 1 FROM V$ARCHIVED_LOG\r\n&lt;                        WHERE RESETLOGS_TIME = LAST_RESETTIM\r\n&lt;                          AND RESETLOGS_CHANGE# = LAST_RESETNUM\r\n&lt;                          AND ARCHIVED = 'YES' \r\n&lt;                          AND THREAD# = LAST_TRD\r\n&lt;                          AND SEQUENCE# = LAST_SEQ+1);\r\n&lt;          IF LOGEXISTS &gt; 0 THEN\r\n---\r\n&gt;          IF LOG.SEQ = 1 THEN\r\n&gt;            LOGEXISTS := 0;\r\n&gt;            \r\n&gt;            SELECT COUNT(*) INTO LOGEXISTS FROM DUAL\r\n&gt;            WHERE EXISTS\r\n&gt;                (SELECT 1 FROM V$ARCHIVED_LOG \r\n&gt;                          WHERE RESETLOGS_TIME = LAST_RESETTIM\r\n&gt;                            AND RESETLOGS_CHANGE# = LAST_RESETNUM\r\n&gt;                            AND THREAD# = LAST_TRD\r\n&gt;                            AND SEQUENCE# = LAST_SEQ+1);\r\n&gt;            IF LOGEXISTS &gt; 0\r\n&gt;            THEN\r\n&gt;              \r\n&gt;              POSSIBLE_GAP := LAST_SCN;\r\n&gt;              POSSIBLE_GAP_RLGSCN := LAST_RESETNUM;\r\n&gt;            END IF;\r\n&gt;          ELSE\r\n<\/pre>\n<p>SYS.PRVTEMX_CELL &#8211; PACKAGE BODY (RU &amp; OCT2017RUR):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">7102,7111c7102,7105\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  361, e.metric_value - nvl(b.metric_value,0), \r\n&lt;                                  0)) bytes,\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  360, e.metric_value - nvl(b.metric_value,0),\r\n&lt;                                  0)) rq,\r\n---\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           361, e.metric_value, 0)) bytes,\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           360, e.metric_value, 0)) rq,\r\n7113,7122c7107,7110\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  361, e.metric_value - nvl(b.metric_value,0),\r\n&lt;                                  0)) scrub_by,\r\n&lt;                              sum(\r\n&lt;                                decode(\r\n&lt;                                  e.metric_id, \r\n&lt;                                  360, e.metric_value - nvl(b.metric_value,0), \r\n&lt;                                  0)) scrub_rq\r\n---\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           361, e.metric_value, 0)) scrub_by,\r\n&gt;                              sum(decode(e.metric_id, \r\n&gt;                                           360, e.metric_value, 0)) scrub_rq\r\n7132c7120\r\n&lt;                          and e.metric_id between 360 and 361\r\n---\r\n&gt;                          and e.metric_id between 360 and 362\r\n<\/pre>\n<p>SYS.PRVT_ILM &#8211; PACKAGE BODY (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">229a230\r\n&gt;  V_TRACE_LEVEL NUMBER := ILM_DEBUG_NONE;\r\n231,233c232\r\n&lt;   \r\n&lt;   \r\n&lt;   IF(ILM_DEBUG_LEVEL &gt; ILM_DEBUG_NONE) THEN\r\n---\r\n&gt;   IF(ILM_DEBUG_LEVEL &gt;= V_TRACE_LEVEL) THEN\r\n236c235\r\n&lt;        TRACE(ILM_DEBUG_LEVEL, 'Start rid            End rid');\r\n---\r\n&gt;        TRACE(V_TRACE_LEVEL, 'Start rid            End rid');\r\n239c238\r\n&lt;          TRACE(ILM_DEBUG_LEVEL, P_TAB_RID(I).START_RID\r\n---\r\n&gt;          TRACE(V_TRACE_LEVEL, P_TAB_RID(I).START_RID\r\n241a241\r\n&gt;         \r\n243c243\r\n&lt;        TRACE(ILM_DEBUG_LEVEL, 'No rid ranges generated');\r\n---\r\n&gt;        TRACE(V_TRACE_LEVEL, 'No rid ranges generated');\r\n244a245\r\n&gt;    \r\n3703,3704d3703\r\n&lt;          \r\n&lt;                                || ' sys.prvt_ilm.setdebug();'\r\n<\/pre>\n<p>SYS.LOGSTDBY_RU_UNSUPPORT_TAB_12_1 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">92c92\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n184c184,185\r\n&lt;      where t.obj# = c2.obj#\r\n---\r\n&gt;      where bitand(c2.property, 32) = 32                          \/* Hidden *\/\r\n&gt;        and t.obj# = c2.obj#\r\n212c213\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n269c270\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n<\/pre>\n<p>SYS.LOGSTDBY_RU_UNSUPPORT_TAB_12_2 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">80,92c80,81\r\n&lt; , 4) = 4) or (c1.type# = 111 and bitand(c1.property, 8) = 8) or (c1.type# in (58\r\n&lt; , 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c1.obj# = ct3.obj#\r\n&lt;          and c1.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/))))))))))  \/* T\r\n&lt; able has a Temporal Validity column *\/\r\n---\r\n&gt; , 4) = 4) or (c1.type# = 111 and bitand(c1.property, 8) = 8)))))))  \/* Table has\r\n&gt;  a Temporal Validity column *\/\r\n170c159,160\r\n&lt;            where t.obj# = c2.obj#\r\n---\r\n&gt;            where bitand(c2.property, 32) = 32                      \/* Hidden *\/\r\n&gt;              and t.obj# = c2.obj#\r\n184,195c174,176\r\n&lt;                  (c2.type# = 111 and bitand(c2.property, 8) = 8) or (c2.type# in\r\n&lt;  (58, 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c2.obj# = ct3.obj#\r\n&lt;          and c2.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/)))))))) or\r\n---\r\n&gt;                  (c2.type# = 111 and bitand(c2.property, 8) = 8)\r\n&gt; \/* REF *\/\r\n&gt;        )))) or\r\n<\/pre>\n<p>SYS.LOGSTDBY_SUPPORT_TAB_12_1 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">85c85\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n195c195,196\r\n&lt;      where t.obj# = c2.obj#\r\n---\r\n&gt;      where bitand(c2.property, 32) = 32                          \/* Hidden *\/\r\n&gt;        and t.obj# = c2.obj#\r\n223c224\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n285c286\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n<\/pre>\n<p>SYS.LOGSTDBY_SUPPORT_TAB_12_2 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">87,97c87\r\n&lt;              = 'FALSE')) or (c1.type# in (58, 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c1.obj# = ct3.obj#\r\n&lt;          and c1.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/))))))))))\r\n---\r\n&gt;              = 'FALSE'))))))))\r\n201c191,192\r\n&lt;            where t.obj# = c2.obj#\r\n---\r\n&gt;            where bitand(c2.property, 32) = 32                      \/* Hidden *\/\r\n&gt;              and t.obj# = c2.obj#\r\n227,237c218,219\r\n&lt;              = 'FALSE')) or (c2.type# in (58, 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c2.obj# = ct3.obj#\r\n&lt;          and c2.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/)))))))) or\r\n---\r\n&gt;              = 'FALSE'))                \/* REF *\/\r\n&gt;        )))) or\r\n<\/pre>\n<p>SYS.LOGSTDBY_UNSUPPORT_TAB_12_1 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">92c92\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n187c187,188\r\n&lt;      where t.obj# = c2.obj#\r\n---\r\n&gt;      where bitand(c2.property, 32) = 32                          \/* Hidden *\/\r\n&gt;        and t.obj# = c2.obj#\r\n215c216\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n272c273\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n<\/pre>\n<p>SYS.LOGSTDBY_UNSUPPORT_TAB_12_2 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">96,107c96,97\r\n&lt;              = 'FALSE')) or (c1.type# in (58, 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c1.obj# = ct3.obj#\r\n&lt;          and c1.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/))))))))))  \/* 0\r\n&lt; x00020000 table is used as an AQ queue table *\/\r\n---\r\n&gt;              = 'FALSE'))))))))  \/* 0x00020000 table is used as an AQ queue table\r\n&gt;  *\/\r\n197c187,188\r\n&lt;            where t.obj# = c2.obj#\r\n---\r\n&gt;            where bitand(c2.property, 32) = 32                      \/* Hidden *\/\r\n&gt;              and t.obj# = c2.obj#\r\n223,233c214,215\r\n&lt;              = 'FALSE')) or (c2.type# in (58, 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c2.obj# = ct3.obj#\r\n&lt;          and c2.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/)))))))) or\r\n---\r\n&gt;              = 'FALSE'))                \/* REF *\/\r\n&gt;        )))) or\r\n<\/pre>\n<p>SYS.OGG_SUPPORT_TAB_11_2 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">40,57d39\r\n&lt;              \/* ADT typed table with BFILE attribute *\/\r\n&lt;              and ((bitand(t.property, 1) = 1 and\r\n&lt;                    c.type# = 114 \/* BFILE *\/ and\r\n&lt;                    exists(select 1\r\n&lt;                           from sys.col$ c1\r\n&lt;                           where c1.obj#=t.obj# and\r\n&lt;                                 c1.name = 'SYS_NC_ROWINFO$' and\r\n&lt;                                 c1.type# = 121))\r\n&lt;              \/* Relational table with ADT column having BFILE attribute *\/\r\n&lt;              or (bitand(t.property, 1) = 0 and\r\n&lt;                  c.type# = 114 \/* BFILE *\/ and\r\n&lt;                  bitand(c.property, 32) = 32 \/* hidden *\/ and\r\n&lt;                  exists (select 1\r\n&lt;                          from sys.col$ c1\r\n&lt;                          where c1.obj#=t.obj# and\r\n&lt;                                c1.col# = c.col# and\r\n&lt;                                bitand(c1.property, 32) = 0 \/* not hidden *\/ and\r\n&lt;                                c1.type# = 121))\r\n59c41\r\n&lt;              or ((c.type# in (8,24,58,112,113,114,115,121,123)\r\n---\r\n&gt;              and ((c.type# in (8,24,58,112,113,114,115,121,123)\r\n61,80c43,61\r\n&lt;                and (bitand(t.property, 1) = 0        \/* not a typed table or *\/\r\n&lt;                  and 0 = (select count(*) from sys.col$ c2\r\n&lt;                  where t.obj# = c2.obj#\r\n&lt;                  and bitand(c2.property, 32)  != 32            \/* Not hidden *\/\r\n&lt;                  and bitand(c2.property, 8)   != 8            \/* Not virtual *\/\r\n&lt;                  and bitand(c2.property, 128) != 128    \/* not stored in lob *\/\r\n&lt;                  and (c2.type# in ( 1,                           \/* VARCHAR2 *\/\r\n&lt;                                     2,                             \/* NUMBER *\/\r\n&lt;                                     12,                              \/* DATE *\/\r\n&lt;                                     23,                               \/* RAW *\/\r\n&lt;                                     96,                              \/* CHAR *\/\r\n&lt;                                     100,                     \/* BINARY FLOAT *\/\r\n&lt;                                     101,                    \/* BINARY DOUBLE *\/\r\n&lt;                                     180,                   \/* TIMESTAMP (..) *\/\r\n&lt;                                     181,     \/* TIMESTAMP(..) WITH TIME ZONE *\/\r\n&lt;                                     182,       \/* INTERVAL YEAR(..) TO MONTH *\/\r\n&lt;                                     183,   \/* INTERVAL DAY(..) TO SECOND(..) *\/\r\n&lt;                                     208,                           \/* UROWID *\/\r\n&lt;                                     231)      \/* TIMESTAMP(..) WITH LOCAL TZ *\/\r\n&lt;                   ))))))\r\n---\r\n&gt;              and (bitand(t.property, 1) = 0          \/* not a typed table or *\/\r\n&gt;              and 0 = (select count(*) from sys.col$ c2\r\n&gt;                where t.obj# = c2.obj#\r\n&gt;                and bitand(c2.property, 32)  != 32              \/* Not hidden *\/\r\n&gt;                and bitand(c2.property, 8)   != 8              \/* Not virtual *\/\r\n&gt;                and bitand(c2.property, 128) != 128      \/* not stored in lob *\/\r\n&gt;                and (c2.type# in ( 1,                             \/* VARCHAR2 *\/\r\n&gt;                                   2,                               \/* NUMBER *\/\r\n&gt;                                   12,                                \/* DATE *\/\r\n&gt;                                   23,                                 \/* RAW *\/\r\n&gt;                                   96,                                \/* CHAR *\/\r\n&gt;                                   100,                       \/* BINARY FLOAT *\/\r\n&gt;                                   101,                      \/* BINARY DOUBLE *\/\r\n&gt;                                   180,                     \/* TIMESTAMP (..) *\/\r\n&gt;                                   181,       \/* TIMESTAMP(..) WITH TIME ZONE *\/\r\n&gt;                                   182,         \/* INTERVAL YEAR(..) TO MONTH *\/\r\n&gt;                                   183,     \/* INTERVAL DAY(..) TO SECOND(..) *\/\r\n&gt;                                   231) \/* TIMESTAMP(..) WITH LOCAL TIME ZONE *\/\r\n&gt;                 )))))\r\n128d108\r\n&lt;                                   208,                             \/* UROWID *\/\r\n<\/pre>\n<p>SYS.OGG_SUPPORT_TAB_11_2B &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">41,58d40\r\n&lt;              \/* ADT typed table with BFILE attribute *\/\r\n&lt;              and ((bitand(t.property, 1) = 1 and\r\n&lt;                    c.type# = 114 \/* BFILE *\/ and\r\n&lt;                    exists(select 1\r\n&lt;                           from sys.col$ c1\r\n&lt;                           where c1.obj#=t.obj# and\r\n&lt;                                 c1.name = 'SYS_NC_ROWINFO$' and\r\n&lt;                                 c1.type# = 121))\r\n&lt;              \/* Relational table with ADT column having BFILE attribute *\/\r\n&lt;              or (bitand(t.property, 1) = 0 and\r\n&lt;                  c.type# = 114 \/* BFILE *\/ and\r\n&lt;                  bitand(c.property, 32) = 32 \/* hidden *\/ and\r\n&lt;                  exists (select 1\r\n&lt;                          from sys.col$ c1\r\n&lt;                          where c1.obj#=t.obj# and\r\n&lt;                                c1.col# = c.col# and\r\n&lt;                                bitand(c1.property, 32) = 0 \/* not hidden *\/ and\r\n&lt;                                c1.type# = 121))\r\n60c42\r\n&lt;              or ((c.type# in (8,24,58,112,113,114,115,121,123)\r\n---\r\n&gt;              and ((c.type# in (8,24,58,112,113,114,115,121,123)\r\n62,81c44,62\r\n&lt;                and (bitand(t.property, 1) = 0        \/* not a typed table or *\/\r\n&lt;                and 0 = (select count(*) from sys.col$ c2\r\n&lt;                  where t.obj# = c2.obj#\r\n&lt;                  and bitand(c2.property, 32)  != 32            \/* Not hidden *\/\r\n&lt;                  and bitand(c2.property, 8)   != 8            \/* Not virtual *\/\r\n&lt;                  and bitand(c2.property, 128) != 128    \/* not stored in lob *\/\r\n&lt;                  and (c2.type# in ( 1,                           \/* VARCHAR2 *\/\r\n&lt;                                     2,                             \/* NUMBER *\/\r\n&lt;                                     12,                              \/* DATE *\/\r\n&lt;                                     23,                               \/* RAW *\/\r\n&lt;                                     96,                              \/* CHAR *\/\r\n&lt;                                     100,                     \/* BINARY FLOAT *\/\r\n&lt;                                     101,                    \/* BINARY DOUBLE *\/\r\n&lt;                                     180,                   \/* TIMESTAMP (..) *\/\r\n&lt;                                     181,     \/* TIMESTAMP(..) WITH TIME ZONE *\/\r\n&lt;                                     182,       \/* INTERVAL YEAR(..) TO MONTH *\/\r\n&lt;                                     183,   \/* INTERVAL DAY(..) TO SECOND(..) *\/\r\n&lt;                                     208,                           \/* UROWID *\/\r\n&lt;                                     231)      \/* TIMESTAMP(..) WITH LOCAL TZ *\/\r\n&lt;                   ))))))\r\n---\r\n&gt;              and (bitand(t.property, 1) = 0          \/* not a typed table or *\/\r\n&gt;              and 0 = (select count(*) from sys.col$ c2\r\n&gt;                where t.obj# = c2.obj#\r\n&gt;                and bitand(c2.property, 32)  != 32              \/* Not hidden *\/\r\n&gt;                and bitand(c2.property, 8)   != 8              \/* Not virtual *\/\r\n&gt;                and bitand(c2.property, 128) != 128      \/* not stored in lob *\/\r\n&gt;                and (c2.type# in ( 1,                             \/* VARCHAR2 *\/\r\n&gt;                                   2,                               \/* NUMBER *\/\r\n&gt;                                   12,                                \/* DATE *\/\r\n&gt;                                   23,                                 \/* RAW *\/\r\n&gt;                                   96,                                \/* CHAR *\/\r\n&gt;                                   100,                       \/* BINARY FLOAT *\/\r\n&gt;                                   101,                      \/* BINARY DOUBLE *\/\r\n&gt;                                   180,                     \/* TIMESTAMP (..) *\/\r\n&gt;                                   181,       \/* TIMESTAMP(..) WITH TIME ZONE *\/\r\n&gt;                                   182,         \/* INTERVAL YEAR(..) TO MONTH *\/\r\n&gt;                                   183,     \/* INTERVAL DAY(..) TO SECOND(..) *\/\r\n&gt;                                   231) \/* TIMESTAMP(..) WITH LOCAL TIME ZONE *\/\r\n&gt;                 )))))\r\n124d104\r\n&lt;                                   208,                             \/* UROWID *\/\r\n<\/pre>\n<p>SYS.OGG_SUPPORT_TAB_12_1 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">66,96d65\r\n&lt;              \/* ADT typed table with BFILE attribute *\/\r\n&lt;              or (bitand(t.property, 1) = 1 and\r\n&lt;                  c.type# = 114 \/* BFILE *\/ and\r\n&lt;                  exists(select 1\r\n&lt;                         from sys.col$ c1\r\n&lt;                         where c1.obj# = t.obj# and\r\n&lt;                               c1.name = 'SYS_NC_ROWINFO$' and\r\n&lt;                               c1.type# = 121))\r\n&lt;              \/* Relational table with ADT column having BFILE attribute *\/\r\n&lt;              or (bitand(t.property, 1) = 0 and\r\n&lt;                  c.type# = 114 \/* BFILE *\/ and\r\n&lt;                  bitand(c.property, 32)=32 \/* hidden *\/ and\r\n&lt;                  exists (select 1\r\n&lt;                          from sys.col$ c1\r\n&lt;                          where c1.obj# = t.obj# and\r\n&lt;                                c1.col# = c.col# and\r\n&lt;                                bitand(c1.property, 32) = 0 \/* not hidden *\/ and\r\n&lt;                                c1.type# = 121))\r\n&lt;              \/* Any table (relational or typed) that has an unsupported *\/\r\n&lt;              \/* built-in ADT *\/\r\n&lt;              or (c.type# in (58, 121, 123) and\r\n&lt;  (exists\r\n&lt;   (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;     where u3.user# = o3.owner#\r\n&lt;       and c.obj# = ct3.obj#\r\n&lt;       and c.intcol# = ct3.intcol#\r\n&lt;       and ct3.toid = o3.oid$\r\n&lt;       and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                    where sk.action in (-11)\r\n&lt;                      and sk.name = u3.name   \/* type owner *\/\r\n&lt;                      and sk.name2 = o3.name  \/* type name  *\/))))\r\n117d85\r\n&lt;                                   208,                             \/* UROWID *\/\r\n162c130\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n201d168\r\n&lt;                                   208,                             \/* UROWID *\/\r\n223c190,191\r\n&lt;      where t.obj# = c2.obj#\r\n---\r\n&gt;      where bitand(c2.property, 32) = 32                          \/* Hidden *\/\r\n&gt;        and t.obj# = c2.obj#\r\n251c219\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n289c257\r\n&lt;                    where sk.action in (-5, -11)\r\n---\r\n&gt;                    where sk.action=-5\r\n<\/pre>\n<p>SYS.OGG_SUPPORT_TAB_12_2 &#8211; VIEW (RU):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">67,97d66\r\n&lt;              \/* ADT typed table with BFILE attribute *\/\r\n&lt;              or (bitand(t.property, 1) = 1 and\r\n&lt;                  c.type# = 114 \/* BFILE *\/ and\r\n&lt;                  exists(select 1\r\n&lt;                         from sys.col$ c1\r\n&lt;                         where c1.obj#=t.obj# and\r\n&lt;                               c1.name = 'SYS_NC_ROWINFO$' and\r\n&lt;                               c1.type# = 121))\r\n&lt;              \/* Relational table with ADT column having BFILE attribute *\/\r\n&lt;              or (bitand(t.property, 1) = 0 and\r\n&lt;                  c.type# = 114 \/* BFILE *\/ and\r\n&lt;                  bitand(c.property, 32) = 32 \/* hidden *\/ and\r\n&lt;                  exists (select 1\r\n&lt;                          from sys.col$ c1\r\n&lt;                          where c1.obj#=t.obj# and\r\n&lt;                                c1.col# = c.col# and\r\n&lt;                                bitand(c1.property, 32) = 0 \/* not hidden *\/ and\r\n&lt;                                c1.type# = 121))\r\n&lt;              \/* Any table (relational or typed) that has an unsupported *\/\r\n&lt;              \/* built-in ADT *\/\r\n&lt;              or (c.type# in (58, 121, 123) and\r\n&lt;      (exists\r\n&lt;       (select 1 from obj$ o3, coltype$ ct3, user$ u3\r\n&lt;        where u3.user# = o3.owner#\r\n&lt;          and c.obj# = ct3.obj#\r\n&lt;          and c.intcol# = ct3.intcol#\r\n&lt;          and ct3.toid = o3.oid$\r\n&lt;          and exists (select 1 from system.logstdby$skip_support sk\r\n&lt;                       where sk.action=-11\r\n&lt;                         and sk.name = u3.name   \/* type owner *\/\r\n&lt;                         and sk.name2 = o3.name  \/* type name  *\/))))\r\n118d86\r\n&lt;                                   208,                             \/* UROWID *\/\r\n177d144\r\n&lt;                                   208,                             \/* UROWID *\/\r\n195c162,163\r\n&lt;            where t.obj# = c2.obj#\r\n---\r\n&gt;            where bitand(c2.property, 32) = 32                      \/* Hidden *\/\r\n&gt;              and t.obj# = c2.obj#\r\n209c177,179\r\n&lt;                  (c2.type# = 111 and bitand(c2.property, 8) = 8))))) or\r\n---\r\n&gt;                  (c2.type# = 111 and bitand(c2.property, 8) = 8)\r\n&gt; \/* REF *\/\r\n&gt;        )))) or<\/pre>\n<hr \/>\n<p>Useful Links:<\/p>\n<ul>\n<li>Download Assistant: <a href=\"https:\/\/support.oracle.com\/epmos\/faces\/DocumentDisplay?id=2118136.2\" target=\"_blank\" rel=\"noopener\">MOS Note: 2118136.2<\/a><\/li>\n<li>2018 January CPU: <a href=\"http:\/\/www.oracle.com\/technetwork\/security-advisory\/cpujan2018-3236628.html\" target=\"_blank\" rel=\"noopener\">http:\/\/www.oracle.com\/technetwork\/security-advisory\/cpujan2018-3236628.html<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<b>Have you enjoyed? Please leave a comment or give a \ud83d\udc4d!<\/b>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<p><object id=\"__symantecPKIClientMessenger\" style=\"display: none;\" width=\"300\" height=\"150\" data-install-updates-user-configuration=\"true\" data-supports-flavor-configuration=\"true\" data-extension-version=\"0.5.0.161\"><\/object><\/p>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style2 like-3031 jlk' href='javascript:void(0)' data-task='like' data-post_id='3031' data-nonce='de4404f630' rel='nofollow'><img class='wti-pixel' src='https:\/\/www.dbarj.com.br\/wp-content\/plugins\/wti-like-post\/images\/pixel.gif' title='Like' \/><span class='lc-3031 lc'>+2<\/span><\/a><\/div><\/div> <div class='status-3031 status align-left'><\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>Since Oct-2017 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. So what oracle internal objects were changed in 180116? VERSION PATCH OWNER TYPE TOTAL &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; &#8212;&#8212;&#8212;- 11.2.0.4 PSU &amp; BP SYS PACKAGE 1 11.2.0.4 &hellip; <\/p>\n<p><a class=\"more-link btn\" href=\"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/\">Continue reading<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20,15],"tags":[],"class_list":["post-3031","post","type-post","status-publish","format-standard","hentry","category-security-en","category-database-en","item-wrap"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dissecting 180116 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DBA RJ\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"28 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/\"},\"author\":{\"name\":\"DBA RJ\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\"},\"headline\":\"Dissecting 180116 BP, PSU, RU and RUR\",\"datePublished\":\"2018-01-23T20:57:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/\"},\"wordCount\":384,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\"},\"articleSection\":[\"Database Security\",\"Oracle Database General\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/\",\"url\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/\",\"name\":\"Dissecting 180116 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/#website\"},\"datePublished\":\"2018-01-23T20:57:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/2018\\\/01\\\/dissecting-180116-bp-psu-ru-rur\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dissecting 180116 BP, PSU, RU and RUR\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/\",\"name\":\"DBA - Rodrigo Jorge - Oracle Tips and Guides\",\"description\":\"Blog about Databases, Security and High Availability\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/en\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\",\"name\":\"DBA RJ\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/RodrigoJorgePOUG19.png\",\"url\":\"https:\\\/\\\/www.dbarj.com.br\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/RodrigoJorgePOUG19.png\",\"contentUrl\":\"https:\\\/\\\/www.dbarj.com.br\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/RodrigoJorgePOUG19.png\",\"width\":712,\"height\":712,\"caption\":\"DBA RJ\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/RodrigoJorgePOUG19.png\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dissecting 180116 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/","twitter_misc":{"Written by":"DBA RJ","Est. reading time":"28 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/#article","isPartOf":{"@id":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/"},"author":{"name":"DBA RJ","@id":"https:\/\/www.dbarj.com.br\/en\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9"},"headline":"Dissecting 180116 BP, PSU, RU and RUR","datePublished":"2018-01-23T20:57:25+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/"},"wordCount":384,"commentCount":2,"publisher":{"@id":"https:\/\/www.dbarj.com.br\/en\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9"},"articleSection":["Database Security","Oracle Database General"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/","url":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/","name":"Dissecting 180116 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides","isPartOf":{"@id":"https:\/\/www.dbarj.com.br\/en\/#website"},"datePublished":"2018-01-23T20:57:25+00:00","breadcrumb":{"@id":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbarj.com.br\/en\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.dbarj.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Dissecting 180116 BP, PSU, RU and RUR"}]},{"@type":"WebSite","@id":"https:\/\/www.dbarj.com.br\/en\/#website","url":"https:\/\/www.dbarj.com.br\/en\/","name":"DBA - Rodrigo Jorge - Oracle Tips and Guides","description":"Blog about Databases, Security and High Availability","publisher":{"@id":"https:\/\/www.dbarj.com.br\/en\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbarj.com.br\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.dbarj.com.br\/en\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9","name":"DBA RJ","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbarj.com.br\/wp-content\/uploads\/2019\/09\/RodrigoJorgePOUG19.png","url":"https:\/\/www.dbarj.com.br\/wp-content\/uploads\/2019\/09\/RodrigoJorgePOUG19.png","contentUrl":"https:\/\/www.dbarj.com.br\/wp-content\/uploads\/2019\/09\/RodrigoJorgePOUG19.png","width":712,"height":712,"caption":"DBA RJ"},"logo":{"@id":"https:\/\/www.dbarj.com.br\/wp-content\/uploads\/2019\/09\/RodrigoJorgePOUG19.png"}}]}},"_links":{"self":[{"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/posts\/3031","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/comments?post=3031"}],"version-history":[{"count":0,"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/posts\/3031\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/media?parent=3031"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/categories?post=3031"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbarj.com.br\/en\/wp-json\/wp\/v2\/tags?post=3031"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}