{"id":3878,"date":"2018-11-26T20:15:23","date_gmt":"2018-11-26T22:15:23","guid":{"rendered":"https:\/\/www.dbarj.com.br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/"},"modified":"2018-12-04T12:01:14","modified_gmt":"2018-12-04T14:01:14","slug":"dissecting-181016-bp-psu-ru-and-rur","status":"publish","type":"post","link":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/","title":{"rendered":"Dissecting 181016 BP, PSU, RU and RUR"},"content":{"rendered":"<p>Since 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>To check previous changes, follow the links below:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.dbarj.com.br\/pt-br\/2017\/10\/dissecting-171017-bp-psu-ru-rur-2\/\" target=\"_blank\" rel=\"noopener\">Dissecting 171017 BP, PSU, RU and RUR<\/a><\/li>\n<li><a href=\"https:\/\/www.dbarj.com.br\/pt-br\/2018\/01\/dissecting-180116-bp-psu-ru-rur\/\" target=\"_blank\" rel=\"noopener\">Dissecting 180116 BP, PSU, RU and RUR<\/a><\/li>\n<li><a href=\"https:\/\/www.dbarj.com.br\/pt-br\/2018\/05\/dissecting-180417-bp-psu-ru-and-rur\/\" target=\"_blank\" rel=\"noopener\">Dissecting 180417 BP, PSU, RU and RUR<\/a><\/li>\n<li><a href=\"\/?p=3770\" target=\"_blank\" rel=\"noopener\">Dissecting 180717 BP, PSU, RU and RUR<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>So what oracle internal objects were changed in <strong>October 2018 &#8211; <\/strong><span style=\"text-decoration: underline;\"><strong>181016<\/strong><\/span>?<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">VERSION    PATCH           OWNER      TYPE                 TOTAL\r\n---------- --------------- ---------- --------------- ----------\r\n12.1.0.2   BP              SYS        PACKAGE                  1\r\n12.1.0.2   BP              SYS        PACKAGE BODY             5\r\n12.1.0.2   BP              SYS        VIEW                     3\r\n12.1.0.2   BP              SYSTEM     FUNCTION                 1\r\n12.1.0.2   PSU             SYS        PACKAGE BODY             2\r\n12.1.0.2   PSU &amp; BP        SYS        PACKAGE BODY             1\r\n12.2.0.1   JUL2018RUR      DVSYS      TYPE                     5\r\n12.2.0.1   JUL2018RUR      SYS        PACKAGE BODY             6\r\n12.2.0.1   RU              SYS        PACKAGE                  1\r\n12.2.0.1   RU              SYS        PACKAGE BODY             3\r\n18.0.0.0   18.2RUR         SYS        PACKAGE                  2\r\n18.0.0.0   18.2RUR         SYS        PACKAGE BODY             1\r\n18.0.0.0   18.3RUR         SYS        PACKAGE                  2\r\n18.0.0.0   18.3RUR         SYS        PACKAGE BODY             1\r\n18.0.0.0   RU              CTXSYS     PACKAGE BODY             1\r\n18.0.0.0   RU              SYS        PACKAGE                  4\r\n18.0.0.0   RU              SYS        PACKAGE BODY             6\r\n18.0.0.0   RU              SYS        PROCEDURE                2\r\n<\/pre>\n<p><span style=\"font-size: 12pt; color: #800000;\"><strong>P.S: Nothing was changed for 11.2 in Oracle objects.<\/strong><\/span><\/p>\n<p>And created?<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">VERSION    PATCH           OWNER      TYPE                 TOTAL\r\n---------- --------------- ---------- --------------- ----------\r\n12.1.0.2   BP              SYSTEM     FUNCTION                 1\r\n12.1.0.2   BP              SYSTEM     TYPE                     2<\/pre>\n<p><span style=\"font-size: 12pt; color: #800000;\"><strong>P.S: Nothing was added for 11.2 \/ 12.2 \/ 18 in Oracle objects.<\/strong><\/span><\/p>\n<p>So which are exactly the objects modified by 181016?<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">VERSION    PATCH           OWNER      TYPE            NAME                           ACTION\r\n---------- --------------- ---------- --------------- ------------------------------ ------\r\n12.1.0.2   BP              SYSTEM     FUNCTION        LOGMNR$GSBA_GG_TABF_PUBLIC     NEW\r\n12.1.0.2   BP              SYSTEM     TYPE            LOGMNR$GSBA_GG_REC             NEW\r\n12.1.0.2   BP              SYSTEM     TYPE            LOGMNR$GSBA_GG_RECS            NEW\r\n12.1.0.2   BP              SYS        PACKAGE         DBMS_BACKUP_RESTORE            MOD\r\n12.1.0.2   BP              SYS        PACKAGE BODY    DBMS_BACKUP_RESTORE            MOD\r\n12.1.0.2   BP              SYS        PACKAGE BODY    DBMS_STATS                     MOD\r\n12.1.0.2   BP              SYS        PACKAGE BODY    LOGMNR_DICT_CACHE              MOD\r\n12.1.0.2   BP              SYS        VIEW            LOGSTDBY_RU_UNSUPPORT_TAB_12_1 MOD\r\n12.1.0.2   BP              SYS        VIEW            LOGSTDBY_SUPPORT_TAB_12_1      MOD\r\n12.1.0.2   BP              SYS        VIEW            LOGSTDBY_UNSUPPORT_TAB_12_1    MOD\r\n12.1.0.2   BP              SYSTEM     FUNCTION        LOGMNR$TAB_GG_TABF_PUBLIC      MOD\r\n12.1.0.2   PSU &amp; BP        SYS        PACKAGE BODY    DBMS_AQADM_SYS                 MOD\r\n12.1.0.2   PSU &amp; BP        SYS        PACKAGE BODY    DBMS_PRVTAQIM                  MOD\r\n12.1.0.2   PSU &amp; BP        SYS        PACKAGE BODY    DBMS_RCVMAN                    MOD\r\n12.2.0.1   JUL2018RUR      DVSYS      TYPE            SYS_YOID0000072649$            MOD\r\n12.2.0.1   JUL2018RUR      DVSYS      TYPE            SYS_YOID0000072661$            MOD\r\n12.2.0.1   JUL2018RUR      DVSYS      TYPE            SYS_YOID0000072667$            MOD\r\n12.2.0.1   JUL2018RUR      DVSYS      TYPE            SYS_YOID0000072694$            MOD\r\n12.2.0.1   JUL2018RUR      DVSYS      TYPE            SYS_YOID0000072697$            MOD\r\n12.2.0.1   JUL2018RUR      SYS        PACKAGE BODY    DBMS_XSTREAM_ADM_INTERNAL      MOD\r\n12.2.0.1   JUL2018RUR      SYS        PACKAGE BODY    DBMS_XSTREAM_ADM_UTL           MOD\r\n12.2.0.1   JUL2018RUR      SYS        PACKAGE BODY    DBMS_XSTREAM_AUTH_IVK          MOD\r\n12.2.0.1   JUL2018RUR      SYS        PACKAGE BODY    DBMS_XSTREAM_GG_INTERNAL       MOD\r\n12.2.0.1   JUL2018RUR      SYS        PACKAGE BODY    DBMS_XSTREAM_UTL_IVK           MOD\r\n12.2.0.1   RU              SYS        PACKAGE         DBMS_RCVMAN                    MOD\r\n12.2.0.1   RU              SYS        PACKAGE BODY    DBMS_QOPATCH                   MOD\r\n12.2.0.1   RU              SYS        PACKAGE BODY    DBMS_STATS                     MOD\r\n12.2.0.1   RU &amp; JUL2018RUR SYS        PACKAGE BODY    DBMS_RCVMAN                    MOD\r\n18.0.0.0   RU              CTXSYS     PACKAGE BODY    DRIUTL                         MOD\r\n18.0.0.0   RU              SYS        PACKAGE         DBMS_ISCHED                    MOD\r\n18.0.0.0   RU              SYS        PACKAGE         DBMS_RCVMAN                    MOD\r\n18.0.0.0   RU              SYS        PACKAGE BODY    DBMS_ISCHED                    MOD\r\n18.0.0.0   RU              SYS        PACKAGE BODY    DBMS_QOPATCH                   MOD\r\n18.0.0.0   RU              SYS        PACKAGE BODY    DBMS_REGISTRY                  MOD\r\n18.0.0.0   RU              SYS        PACKAGE BODY    DBMS_SCHEDULER                 MOD\r\n18.0.0.0   RU              SYS        PACKAGE BODY    DBMS_STATS                     MOD\r\n18.0.0.0   RU              SYS        PROCEDURE       DBMS_FEATURE_ACTIVE_DATA_GUARD MOD\r\n18.0.0.0   RU              SYS        PROCEDURE       SCHEDULER$_JOB_EVENT_HANDLER   MOD\r\n18.0.0.0   RU &amp; 18.3RUR &amp;  SYS        PACKAGE         DBMS_BACKUP_RESTORE            MOD\r\n           18.2RUR\r\n18.0.0.0   RU &amp; 18.3RUR &amp;  SYS        PACKAGE         DBMS_REGISTRY                  MOD\r\n           18.2RUR\r\n18.0.0.0   RU &amp; 18.3RUR &amp;  SYS        PACKAGE BODY    DBMS_RCVMAN                    MOD\r\n           18.2RUR<\/pre>\n<h2><strong>What changed for each? (click to see the changes)<\/strong><\/h2>\n<ul>\n<li>12.1.0.2\n<ul>\n<li><a href=\"#SYS.DBMS_BACKUP_RESTORE.PACKAGE.12.1.0.2_BP\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_AQADM_SYS.PACKAGE BODY.12.1.0.2_PSU\">SYS.DBMS_AQADM_SYS &#8211; PACKAGE BODY 12cR1 (PSU &amp; BP)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_BACKUP_RESTORE.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE BODY 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_PRVTAQIM.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_PRVTAQIM &#8211; PACKAGE BODY 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_PRVTAQIM.PACKAGE BODY.12.1.0.2_PSU\">SYS.DBMS_PRVTAQIM &#8211; PACKAGE BODY 12cR1 (PSU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.12.1.0.2_PSU\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 12cR1 (PSU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_STATS.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_STATS &#8211; PACKAGE BODY 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.LOGMNR_DICT_CACHE.PACKAGE BODY.12.1.0.2_BP\">SYS.LOGMNR_DICT_CACHE &#8211; PACKAGE BODY 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.LOGSTDBY_RU_UNSUPPORT_TAB_12_1.VIEW.12.1.0.2_BP\">SYS.LOGSTDBY_RU_UNSUPPORT_TAB_12_1 &#8211; VIEW 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.LOGSTDBY_SUPPORT_TAB_12_1.VIEW.12.1.0.2_BP\">SYS.LOGSTDBY_SUPPORT_TAB_12_1 &#8211; VIEW 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYS.LOGSTDBY_UNSUPPORT_TAB_12_1.VIEW.12.1.0.2_BP\">SYS.LOGSTDBY_UNSUPPORT_TAB_12_1 &#8211; VIEW 12cR1 (BP)<\/a><\/li>\n<li><a href=\"#SYSTEM.LOGMNR$TAB_GG_TABF_PUBLIC.FUNCTION.12.1.0.2_BP\">SYSTEM.LOGMNR$TAB_GG_TABF_PUBLIC &#8211; FUNCTION 12cR1 (BP)<\/a><\/li>\n<\/ul>\n<\/li>\n<li>12.2.0.1\n<ul>\n<li><a href=\"#DVSYS.SYS_YOID0000072649$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072649$ &#8211; TYPE 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#DVSYS.SYS_YOID0000072661$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072661$ &#8211; TYPE 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#DVSYS.SYS_YOID0000072667$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072667$ &#8211; TYPE 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#DVSYS.SYS_YOID0000072694$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072694$ &#8211; TYPE 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#DVSYS.SYS_YOID0000072697$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072697$ &#8211; TYPE 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE.12.2.0.1_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE 12cR2 (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_QOPATCH.PACKAGE BODY.12.2.0.1_RU\">SYS.DBMS_QOPATCH &#8211; PACKAGE BODY 12cR2 (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.12.2.0.1_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 12cR2 (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_STATS.PACKAGE BODY.12.2.0.1_RU\">SYS.DBMS_STATS &#8211; PACKAGE BODY 12cR2 (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_XSTREAM_ADM_INTERNAL.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_ADM_INTERNAL &#8211; PACKAGE BODY 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_XSTREAM_ADM_UTL.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_ADM_UTL &#8211; PACKAGE BODY 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_XSTREAM_AUTH_IVK.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_AUTH_IVK &#8211; PACKAGE BODY 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_XSTREAM_GG_INTERNAL.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_GG_INTERNAL &#8211; PACKAGE BODY 12cR2 (JUL2018RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_XSTREAM_UTL_IVK.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_UTL_IVK &#8211; PACKAGE BODY 12cR2 (JUL2018RUR)<\/a><\/li>\n<\/ul>\n<\/li>\n<li>18.0.0.0\n<ul>\n<li><a href=\"#CTXSYS.DRIUTL.PACKAGE BODY.18.0.0.0_RU\">CTXSYS.DRIUTL &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_BACKUP_RESTORE.PACKAGE.18.0.0.0_18.2RUR\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE 18c (18.2RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_BACKUP_RESTORE.PACKAGE.18.0.0.0_RU\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_BACKUP_RESTORE.PACKAGE.18.0.0.0_18.3RUR\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE 18c (18.3RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_ISCHED.PACKAGE.18.0.0.0_RU\">SYS.DBMS_ISCHED &#8211; PACKAGE 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE.18.0.0.0_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_REGISTRY.PACKAGE.18.0.0.0_18.2RUR\">SYS.DBMS_REGISTRY &#8211; PACKAGE 18c (18.2RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_REGISTRY.PACKAGE.18.0.0.0_RU\">SYS.DBMS_REGISTRY &#8211; PACKAGE 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_REGISTRY.PACKAGE.18.0.0.0_18.3RUR\">SYS.DBMS_REGISTRY &#8211; PACKAGE 18c (18.3RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_ISCHED.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_ISCHED &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_QOPATCH.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_QOPATCH &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.18.0.0.0_18.3RUR\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 18c (18.3RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.18.0.0.0_18.2RUR\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 18c (18.2RUR)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_RCVMAN.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_REGISTRY.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_REGISTRY &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_SCHEDULER.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_SCHEDULER &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_STATS.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_STATS &#8211; PACKAGE BODY 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.DBMS_FEATURE_ACTIVE_DATA_GUARD.PROCEDURE.18.0.0.0_RU\">SYS.DBMS_FEATURE_ACTIVE_DATA_GUARD &#8211; PROCEDURE 18c (RU)<\/a><\/li>\n<li><a href=\"#SYS.SCHEDULER$_JOB_EVENT_HANDLER.PROCEDURE.18.0.0.0_RU\">SYS.SCHEDULER$_JOB_EVENT_HANDLER &#8211; PROCEDURE 18c (RU)<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Changed Objects<\/h2>\n<p><span style=\"font-size: 12pt;\"><strong>P.S:<br \/>\n<\/strong><\/span><span style=\"font-size: 12pt;\"><strong>&gt; = Added Lines<br \/>\n&lt; = Removed Lines<\/strong><\/span><\/p>\n<h3><strong>12.1.0.2<\/strong><\/h3>\n<div id=\"SYS.DBMS_BACKUP_RESTORE.PACKAGE.12.1.0.2_BP\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">8242a8243,8248\r\n&gt; \r\n&gt;   FUNCTION createTempXmlFile\r\n&gt;      RETURN varchar2;\r\n&gt;   -- This procedure returns a temporary filename.\r\n&gt;   -- The temporary filename is derived from ?\/dbs location.\r\n&gt; \r\n<\/pre>\n<div id=\"SYS.DBMS_AQADM_SYS.PACKAGE BODY.12.1.0.2_PSU\">SYS.DBMS_AQADM_SYS &#8211; PACKAGE BODY (PSU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2804c2804,2815\r\n&lt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))));\r\n---\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; \r\n&gt; \r\n&gt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))), 'nls_sort=binary');\r\n<\/pre>\n<div id=\"SYS.DBMS_BACKUP_RESTORE.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE BODY (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">9045a9046,9063\r\n&gt; \r\n&gt; \r\n&gt; FUNCTION KRBI_CREATE_XML RETURN VARCHAR2;\r\n&gt; PRAGMA INTERFACE (C, KRBI_CREATE_XML);\r\n&gt; \r\n&gt; FUNCTION CREATETEMPXMLFILE  RETURN VARCHAR2 IS \r\n&gt;    FNAME VARCHAR2(1024);\r\n&gt; BEGIN\r\n&gt;    ICDSTART(214);\r\n&gt;    FNAME := KRBI_CREATE_XML;\r\n&gt;    ICDFINISH;\r\n&gt;    RETURN FNAME;\r\n&gt; EXCEPTION\r\n&gt;    WHEN OTHERS THEN\r\n&gt;       ICDFINISH;\r\n&gt;       RAISE;\r\n&gt; END;\r\n&gt; \r\n<\/pre>\n<div id=\"SYS.DBMS_PRVTAQIM.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_PRVTAQIM &#8211; PACKAGE BODY (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">1714c1714,1725\r\n&lt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))));\r\n---\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; \r\n&gt; \r\n&gt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))), 'nls_sort=binary');\r\n<\/pre>\n<div id=\"SYS.DBMS_PRVTAQIM.PACKAGE BODY.12.1.0.2_PSU\">SYS.DBMS_PRVTAQIM &#8211; PACKAGE BODY (PSU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">1706c1706,1717\r\n&lt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))));\r\n---\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; \r\n&gt; \r\n&gt;       TMP_STR := NLS_UPPER(LTRIM(RTRIM(SORT_TAB(I))), 'nls_sort=binary');\r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.12.1.0.2_PSU\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (PSU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">23754a23755\r\n&gt;       END IF;\r\n23756,23779c23757,23777\r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&lt;              (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&lt;               USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&lt;               LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&lt;             IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&lt;                DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             ELSE\r\n&lt;                DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             END IF;\r\n&lt;             USABLE_INCR := LOCAL;\r\n&lt;             AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n---\r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&gt;           (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&gt;            USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&gt;            LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&gt;          IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&gt;             DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n&gt;          ELSE\r\n&gt;             DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n23780a23779,23780\r\n&gt;          USABLE_INCR := LOCAL;\r\n&gt;          AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">23947a23948\r\n&gt;       END IF;\r\n23949,23972c23950,23970\r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&lt;              (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&lt;               USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&lt;               LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&lt;             IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&lt;                DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             ELSE\r\n&lt;                DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             END IF;\r\n&lt;             USABLE_INCR := LOCAL;\r\n&lt;             AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n---\r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&gt;           (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&gt;            USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&gt;            LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&gt;          IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&gt;             DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n&gt;          ELSE\r\n&gt;             DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n23973a23972,23973\r\n&gt;          USABLE_INCR := LOCAL;\r\n&gt;          AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n<\/pre>\n<div id=\"SYS.DBMS_STATS.PACKAGE BODY.12.1.0.2_BP\">SYS.DBMS_STATS &#8211; PACKAGE BODY (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">1203c1203,1204\r\n&lt;   TYPE VARCHARTAB  IS TABLE OF VARCHAR2(4000) INDEX BY VARCHAR2(64);\r\n---\r\n&gt;   \r\n&gt;   TYPE VARCHARTAB  IS TABLE OF VARCHAR2(32767) INDEX BY VARCHAR2(64);\r\n<\/pre>\n<div id=\"SYS.LOGMNR_DICT_CACHE.PACKAGE BODY.12.1.0.2_BP\">SYS.LOGMNR_DICT_CACHE &#8211; PACKAGE BODY (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">5749,5754c5749,5757\r\n&lt; \r\n&lt;   UNSUPPORTEDCOLS_LOCAL  NUMBER := NULL;\r\n&lt;   UNSUPPORTEDCOLS_LOCAL2 NUMBER := NULL;\r\n&lt;   COMPLEXTYPECOLS_LOCAL  NUMBER := NULL;\r\n&lt;   TLOFLAGS_LOCAL         NUMBER := NULL;\r\n&lt;   LOGMNRMCV_LOCAL VARCHAR2(32)  := NULL;\r\n---\r\n&gt;   UNSUPPORTEDCOLS_LOCAL  NUMBER := 0;\r\n&gt;   UNSUPPORTEDCOLS_LOCAL2 NUMBER := 0;\r\n&gt;   COMPLEXTYPECOLS_LOCAL  NUMBER := 0;\r\n&gt;   TLOFLAGS_LOCAL         NUMBER := 0;\r\n&gt;   LOGMNRMCV_LOCAL        VARCHAR2(32) := NULL;\r\n&gt;   OWNERNAME              VARCHAR2(390);\r\n&gt;   OBJNAME                VARCHAR2(390);\r\n&gt;   LONG_IDEN              NUMBER := 0;\r\n&gt;   IS_APPLICATION_CON     NUMBER := 0;\r\n<\/pre>\n<div id=\"SYS.LOGSTDBY_RU_UNSUPPORT_TAB_12_1.VIEW.12.1.0.2_BP\">SYS.LOGSTDBY_RU_UNSUPPORT_TAB_12_1 &#8211; VIEW (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">141c141\r\n&lt;        and (c2.type# in (114, 122) or                \/* BFILE\/Nested Table *\/\r\n---\r\n&gt;        and (c2.type# in (114, 122, 111) or       \/* BFILE\/Nested Table\/REF *\/\r\n<\/pre>\n<div id=\"SYS.LOGSTDBY_SUPPORT_TAB_12_1.VIEW.12.1.0.2_BP\">SYS.LOGSTDBY_SUPPORT_TAB_12_1 &#8211; VIEW (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">153c153\r\n&lt;        and (c2.type# in (114, 122) or                \/* BFILE\/Nested Table *\/\r\n---\r\n&gt;        and (c2.type# in (114, 122, 111) or       \/* BFILE\/Nested Table\/REF *\/\r\n<\/pre>\n<div id=\"SYS.LOGSTDBY_UNSUPPORT_TAB_12_1.VIEW.12.1.0.2_BP\">SYS.LOGSTDBY_UNSUPPORT_TAB_12_1 &#8211; VIEW (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">143c143\r\n&lt;        and (c2.type# in (114, 122) or                \/* BFILE\/Nested Table *\/\r\n---\r\n&gt;        and (c2.type# in (114, 122, 111) or       \/* BFILE\/Nested Table\/REF *\/\r\n<\/pre>\n<div id=\"SYSTEM.LOGMNR$TAB_GG_TABF_PUBLIC.FUNCTION.12.1.0.2_BP\">SYSTEM.LOGMNR$TAB_GG_TABF_PUBLIC &#8211; FUNCTION (BP):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">32c32\r\n&lt;           DECODE(BITAND(LOGMNRTLOFLAGS, 14), 0, 'NO', 'YES')\r\n---\r\n&gt;           DECODE(BITAND(NVL(LOGMNRTLOFLAGS,0), 14), 0, 'NO', 'YES')\r\n44,45c44,48\r\n&lt;           LOGMNR_SPARE9, UNSUPPORTEDCOLS, COMPLEXTYPECOLS, NTPARENTOBJNUM, \r\n&lt;           NTPARENTOBJVERSION, NTPARENTINTCOLNUM, LOGMNRTLOFLAGS, \r\n---\r\n&gt;           LOGMNR_SPARE9, UNSUPPORTEDCOLS, \r\n&gt;           NVL(COMPLEXTYPECOLS,0) COMPLEXTYPECOLS,\r\n&gt;           NTPARENTOBJNUM, \r\n&gt;           NTPARENTOBJVERSION, NTPARENTINTCOLNUM, \r\n&gt;           NVL(LOGMNRTLOFLAGS,0) LOGMNRTLOFLAGS, \r\n<\/pre>\n<h3><strong>12.2.0.1<\/strong><\/h3>\n<div id=\"DVSYS.SYS_YOID0000072649$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072649$ &#8211; TYPE (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2c2\r\n&lt; type         \"SYS_YOID0000072649$\"              as object( \"SYS_NC00001$\" RAW(16))\r\n---\r\n&gt; type         \"SYS_YOID0000072649$\"              as object( \"SYS_NC00001$\" VARCHAR2(128 BYTE), \"SYS_NC00002$\" VARCHAR2(128 BYTE), \"SYS_NC00003$\" VARCHAR2(128 BYTE))\r\n<\/pre>\n<div id=\"DVSYS.SYS_YOID0000072661$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072661$ &#8211; TYPE (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2c2\r\n&lt; type         \"SYS_YOID0000072661$\"              as object( \"SYS_NC00001$\" RAW(16))\r\n---\r\n&gt; type         \"SYS_YOID0000072661$\"              as object( \"SYS_NC00001$\" VARCHAR2(128 BYTE), \"SYS_NC00002$\" VARCHAR2(128 BYTE))\r\n<\/pre>\n<div id=\"DVSYS.SYS_YOID0000072667$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072667$ &#8211; TYPE (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2c2\r\n&lt; type         \"SYS_YOID0000072667$\"              as object( \"SYS_NC00001$\" RAW(16))\r\n---\r\n&gt; 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)\r\n<\/pre>\n<div id=\"DVSYS.SYS_YOID0000072694$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072694$ &#8211; TYPE (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2c2\r\n&lt; type         \"SYS_YOID0000072694$\"              as object( \"SYS_NC00001$\" RAW(16))\r\n---\r\n&gt; 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))\r\n<\/pre>\n<div id=\"DVSYS.SYS_YOID0000072697$.TYPE.12.2.0.1_JUL2018RUR\">DVSYS.SYS_YOID0000072697$ &#8211; TYPE (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2c2\r\n&lt; type         \"SYS_YOID0000072697$\"              as object( \"SYS_NC00001$\" RAW(16))\r\n---\r\n&gt; 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))\r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE.12.2.0.1_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">554c554,555\r\n&lt;    stamp          number\r\n---\r\n&gt;    stamp          number,\r\n&gt;    order_hint     number\r\n699a701\r\n&gt;    rl_snapstandby        VARCHAR2(3),\r\n3278c3280\r\n&lt;   ,nblocks        OUT     binary_integer -- number of blocks of datafilecopy\r\n---\r\n&gt;   ,nblocks        OUT     number      -- number of blocks of datafilecopy\r\n<\/pre>\n<div id=\"SYS.DBMS_QOPATCH.PACKAGE BODY.12.2.0.1_RU\">SYS.DBMS_QOPATCH &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">23a24,28\r\n&gt; V_CODE     NUMBER;\r\n&gt; V_ERRM     VARCHAR2(128);\r\n&gt; \r\n&gt; \r\n&gt; \r\n78c83\r\n&lt;   RETURN '$Header: rdbms\/src\/client\/tools\/qpinv\/prvtqopi.sql \/st_rdbms_12.2.0.1.0dbbp\/3 2018\/05\/02 15:37:07 surman Exp $';\r\n---\r\n&gt;   RETURN '$Header: rdbms\/src\/client\/tools\/qpinv\/prvtqopi.sql \/st_rdbms_12.2.0.1.0dbbp\/6 2018\/08\/10 12:48:23 aime Exp $';\r\n127a133,149\r\n&gt; --+\r\n&gt; PROCEDURE LOG_STATUS(MSG VARCHAR2) IS\r\n&gt; BEGIN\r\n&gt;         IF DO_DEBUG THEN\r\n&gt;                 DBMS_OUTPUT.PUT_LINE(MSG);\r\n&gt;         END IF;\r\n&gt;         DBMS_SYSTEM.KSDWRT(1,MSG);\r\n&gt; \r\n&gt; END;\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\n143a166,171\r\n&gt;   T_OP_INST_PATH   VARCHAR2(1024) := '';\r\n&gt;   T_OP_SCPT_PATH   VARCHAR2(1024) := '';\r\n&gt;   T_OP_LOG_PATH    VARCHAR2(1024) := '';\r\n&gt;   T_ROOT           VARCHAR2(1024) := '';\r\n&gt;   T_ORABASE        VARCHAR2(1024) := '';\r\n&gt;   OPATCHFILE   VARCHAR2(128) := 'opatch';\r\n168,172c196,198\r\n&lt;       DBMS_SYSTEM.KSDWRT(1,'QPI: Event 22171584 set. Skipping sanity check');\r\n&lt;       DBMS_SYSTEM.KSDWRT(1,'QPI: Please disable the event in case of any errors and try again');\r\n&lt;       IF DO_DEBUG THEN\r\n&lt;         DBMS_OUTPUT.PUT_LINE('Event 22171584 set. Skipping sanity check');\r\n&lt;       END IF;\r\n---\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: Event 22171584 set. Skipping sanity check');\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: Please disable the event in case of any errors and try again');\r\n&gt;         LOG_STATUS('Event 22171584 set. Skipping sanity check');\r\n195a222,229\r\n&gt;     SELECT PLATFORM_ID INTO PFID FROM V$DATABASE;\r\n&gt;     NOT_WIN := IS_NON_WINDOWS (PFID);\r\n&gt; \r\n&gt;     \r\n&gt;     IF NOT NOT_WIN  THEN\r\n&gt;        OPATCHFILE := 'opatch.bat';\r\n&gt;     END IF;\r\n&gt; \r\n208a243,309\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;       T_ROOT := ROOT;\r\n&gt;       T_ORABASE := ORABASE;\r\n&gt;       T_OP_INST_PATH := OP_INST_PATH;\r\n&gt;       T_OP_SCPT_PATH := OP_SCPT_PATH;\r\n&gt;       T_OP_LOG_PATH := OP_LOG_PATH;\r\n&gt;   \r\n&gt;       IF NOT_WIN  THEN\r\n&gt;               IF SUBSTR( ROOT,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_ROOT := ROOT || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_root is ' || T_ROOT);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( ORABASE,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_ORABASE := ORABASE || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_orabase is ' || T_ORABASE);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_INST_PATH,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_OP_INST_PATH := OP_INST_PATH || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_op_inst_path is ' || T_OP_INST_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_SCPT_PATH,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_OP_SCPT_PATH := OP_SCPT_PATH || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_op_scpt_path is ' || T_OP_SCPT_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_LOG_PATH,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_OP_LOG_PATH := OP_LOG_PATH || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_op_log_path is ' || T_OP_LOG_PATH);\r\n&gt;               END IF;\r\n&gt;       ELSE\r\n&gt;               IF SUBSTR( ROOT,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_ROOT := ROOT || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_root is ' || T_ROOT);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( ORABASE,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_ORABASE := ORABASE || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_orabase is ' || T_ORABASE);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_INST_PATH,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_OP_INST_PATH := OP_INST_PATH || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_op_inst_path is ' || T_OP_INST_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_SCPT_PATH,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_OP_SCPT_PATH := OP_SCPT_PATH || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_op_scpt_path is ' || T_OP_SCPT_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_LOG_PATH,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_OP_LOG_PATH := OP_LOG_PATH || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_op_log_path is ' || T_OP_LOG_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;       END IF;\r\n&gt; \r\n230d330\r\n&lt;         SELECT PLATFORM_ID INTO PFID FROM V$DATABASE;\r\n245d344\r\n&lt;           NOT_WIN := IS_NON_WINDOWS (PFID);\r\n292c391\r\n&lt;     UTL_FILE.FGETATTR('OPATCH_INST_DIR', 'opatch', FEXISTS, FILE_LENGTH, BLOCK_SIZE);\r\n---\r\n&gt;     UTL_FILE.FGETATTR('OPATCH_INST_DIR', OPATCHFILE, FEXISTS, FILE_LENGTH, BLOCK_SIZE);\r\n294c393\r\n&lt;       DBMS_SYSTEM.KSDWRT(1,'QPI: opatch file present');\r\n---\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: opatch file present, ' || OPATCHFILE);\r\n296a396\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: opatch executable does not exist, ' || OPATCHFILE);\r\n306c406\r\n&lt;         DBMS_SYSTEM.KSDWRT(1,'QPI: qopiprep.bat file present');\r\n---\r\n&gt;         DBMS_SYSTEM.KSDWRT(3,'QPI: qopiprep.bat file present');\r\n361,363d460\r\n&lt;     IF DO_DEBUG THEN\r\n&lt;           DBMS_OUTPUT.PUT_LINE ('QPI: GOT lock at :' || SYSTIMESTAMP);\r\n&lt;     END IF;\r\n366a464\r\n&gt;        LOG_STATUS('QPI: Obtaining lock FAILED, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n367a466,467\r\n&gt;     ELSIF QP_RESULT = 0 OR QP_RESULT = 4 THEN\r\n&gt;         LOG_STATUS('QPI: Obtaining lock SUCCESSFUL, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n390,391c490,493\r\n&lt;     IF DO_DEBUG THEN\r\n&lt;           DBMS_OUTPUT.PUT_LINE ('QPI: Releasing the lock at :' || SYSTIMESTAMP);\r\n---\r\n&gt;     IF QP_RESULT = 0 THEN\r\n&gt;         LOG_STATUS('QPI: Releasing lock SUCCESSFUL, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n&gt;     ELSE\r\n&gt;         LOG_STATUS('QPI: Releasing lock FAILED, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n417,418d518\r\n&lt;   V_CODE     NUMBER;\r\n&lt;   V_ERRM     VARCHAR2(128);\r\n488,489c588,589\r\n&lt;       V_ERRM := SUBSTR(SQLERRM, 1, 64);\r\n&lt;       DBMS_OUTPUT.PUT_LINE('Error code ' || V_CODE || ': ' || V_ERRM);\r\n---\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in config_oinv_jobs, Error code ' || V_CODE || ': ' || V_ERRM);\r\n507a608\r\n&gt; PROCEDURE CLEAN_METADATA_PRI;\r\n821,824c922,923\r\n&lt;        IF DO_DEBUG THEN\r\n&lt;          DBMS_OUTPUT.PUT_LINE('QPI: Cleaning and refreshing metadata..');\r\n&lt;        END IF;\r\n&lt;          DBMS_SYSTEM.KSDWRT(1,'QPI: Cleaning and refreshing metadata..');\r\n---\r\n&gt;          LOG_STATUS('QPI: Cleaning and refreshing metadata..');\r\n&gt;          DBMS_SYSTEM.KSDWRT(3,'QPI: Cleaning and refreshing metadata..');\r\n866a966,969\r\n&gt;    LOG_STATUS('QPI: Caught error while querying opatch_xml_inv');\r\n&gt;    V_CODE := SQLCODE;\r\n&gt;    V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;    LOG_STATUS('QPI: in REFRESH_OPATCH_DATA, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n927a1031,1037\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_opatch_install_info, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n976a1087,1093\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_opatch_list, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1033a1151,1157\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in IS_PATCH_INSTALLED, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1092a1217,1223\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_DATA, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1158a1290,1296\r\n&gt;     WHEN OTHERS THEN\r\n&gt;       V_CODE := SQLCODE;\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in GET_OPATCH_BUGS, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;       QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;       RAISE;\r\n&gt; \r\n1182a1321,1324\r\n&gt;     QP_RESULT := GET_QOPATCH_LOCK();\r\n&gt; \r\n&gt;     LOG_STATUS('QPI: Got lock get_opatch_files');\r\n&gt; \r\n1194a1337,1340\r\n&gt; \r\n&gt;      LOG_STATUS('QPI: Release lock get_opatch_files');\r\n&gt;      QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n1195a1342,1354\r\n&gt; \r\n&gt;     EXCEPTION \r\n&gt;       WHEN UNABLE_TO_LOCK THEN\r\n&gt;         RAISE_APPLICATION_ERROR(-20016, \r\n&gt;                  'Unable to get the lock : get_opatch_files : ' || QP_RESULT);\r\n&gt; \r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_FILES, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1245a1405,1411\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_COUNT, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1298a1465,1471\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_PREQS, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1347a1521,1532\r\n&gt;     EXCEPTION \r\n&gt;       WHEN UNABLE_TO_LOCK THEN\r\n&gt;         RAISE_APPLICATION_ERROR(-20016, \r\n&gt;                  'Unable to get the lock : get_opatch_install_info : ' || QP_RESULT);\r\n&gt; \r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_OLAYS, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1402a1588,1594\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in PATCH_CONFLICT_DETECTION, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1454c1646\r\n&lt; OPATCHFILE   CONSTANT VARCHAR2(128) := 'opatch';\r\n---\r\n&gt; OPATCHFILE   VARCHAR2(128) := 'opatch';\r\n1491a1684\r\n&gt;       OPATCHFILE := 'opatch.bat';\r\n1544a1738\r\n&gt;     LOG_STATUS('QPI: opatch executable exists and is readable, ' || OPATCHFILE);\r\n1546a1741\r\n&gt;     LOG_STATUS('QPI: opatch executable does not exist or is not redable, ' || OPATCHFILE);\r\n1607,1608d1801\r\n&lt;   V_CODE     NUMBER;\r\n&lt;   V_ERRM     VARCHAR2(128);\r\n1689,1690c1882,1883\r\n&lt;       V_ERRM := SUBSTR(SQLERRM, 1, 64);\r\n&lt;       DBMS_OUTPUT.PUT_LINE('Error code ' || V_CODE || ': ' || V_ERRM);\r\n---\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in add_oinv_job, Error code ' || V_CODE || ': ' || V_ERRM);\r\n1713c1906\r\n&lt;          DBMS_SYSTEM.KSDWRT(1,'Node name: ' || PVAL.NODE_NAME || ' Inst:' || PVAL.INST_NAME|| ' Job:' || PVAL.INST_JOB);\r\n---\r\n&gt;          DBMS_SYSTEM.KSDWRT(3,'Node name: ' || PVAL.NODE_NAME || ' Inst:' || PVAL.INST_NAME|| ' Job:' || PVAL.INST_JOB);\r\n1720c1913\r\n&lt;          DBMS_SYSTEM.KSDWRT(1,'Job: ' || PVAR.JOB_NAME || ' State: ' || PVAR.STATE);\r\n---\r\n&gt;          DBMS_SYSTEM.KSDWRT(3,'Job: ' || PVAR.JOB_NAME || ' State: ' || PVAR.STATE);\r\n1781c1974\r\n&lt;     CLEAN_METADATA();\r\n---\r\n&gt;     CLEAN_METADATA_PRI();\r\n1827a2021\r\n&gt; \r\n2021a2216,2219\r\n&gt;     WHEN UNABLE_TO_LOCK THEN\r\n&gt;       RAISE_APPLICATION_ERROR(-20016, \r\n&gt;                  'Unable to get the lock : get_pending_activity : ' || QP_RESULT);\r\n&gt; \r\n2027a2226,2228\r\n&gt;       V_CODE := SQLCODE;\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in get_pending_activity, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n2265a2467,2473\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_opatch_lsinventory, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2647a2856,2862\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in opatch_compare, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2714a2930,2936\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_patch_details, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2761a2984,2990\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in check_patch_installed, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2835c3064,3067\r\n&lt;         \r\n---\r\n&gt; \r\n&gt;        LOG_STATUS('QPI: Release lock opatch_compare_nodes');\r\n&gt;        QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n2855a3088,3091\r\n&gt; \r\n&gt;         LOG_STATUS('QPI: Release lock opatch_compare_nodes');\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n2862,2866d3097\r\n&lt;    IF DO_DEBUG THEN\r\n&lt;          DBMS_OUTPUT.PUT_LINE('QPI: Release lock opatch_compare_nodes');\r\n&lt;    END IF;\r\n&lt;    QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&lt; \r\n2871a3103,3109\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in OPATCH_COMPARE_NODES, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2886,2888d3123\r\n&lt; \r\n&lt; \r\n&lt; \r\n2890c3125\r\n&lt; PROCEDURE  CLEAN_METADATA   IS\r\n---\r\n&gt; PROCEDURE  CLEAN_METADATA_PRI   IS\r\n2902c3137\r\n&lt;     DBMS_OUTPUT.PUT_LINE('QPI: In clean_metadata');\r\n---\r\n&gt;     DBMS_OUTPUT.PUT_LINE('QPI: In clean_metadata_pri');\r\n2905,2910d3139\r\n&lt;   QP_RESULT := GET_QOPATCH_LOCK();\r\n&lt;  \r\n&lt;   IF DO_DEBUG THEN\r\n&lt;      DBMS_OUTPUT.PUT_LINE('QPI: Got lock clean_metadata');\r\n&lt;   END IF;\r\n&lt; \r\n2919c3148\r\n&lt;       DBMS_OUTPUT.PUT_LINE('QPI: clean_metadata opatch_inst_job :' || NODECNT );\r\n---\r\n&gt;       DBMS_OUTPUT.PUT_LINE('QPI: clean_metadata_pri opatch_inst_job :' || NODECNT );\r\n2951,2955d3179\r\n&lt;   IF DO_DEBUG THEN\r\n&lt;        DBMS_OUTPUT.PUT_LINE('QPI: Release lock clean_metadata');\r\n&lt;   END IF;\r\n&lt;  \r\n&lt;   QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n2959a3184,3223\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in CLEAN_METADATA_PRI, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         RAISE;\r\n&gt; \r\n&gt; END;\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; \r\n&gt; \r\n&gt; \r\n&gt; \r\n&gt; \r\n&gt; \r\n&gt; --+\r\n&gt; \r\n&gt; PROCEDURE  CLEAN_METADATA   IS\r\n&gt; BEGIN\r\n&gt; \r\n&gt;     LOG_STATUS('QPI: In clean_metadata');\r\n&gt; \r\n&gt;   QP_RESULT := GET_QOPATCH_LOCK();\r\n&gt; \r\n&gt;     LOG_STATUS('QPI: Got lock clean_metadata');\r\n&gt; \r\n&gt;   CLEAN_METADATA_PRI();\r\n&gt; \r\n&gt;         LOG_STATUS('QPI: Release lock clean_metadata');\r\n&gt; \r\n&gt;   QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n&gt;   EXCEPTION\r\n2961c3225\r\n&lt;              RAISE_APPLICATION_ERROR(-20016, \r\n---\r\n&gt;              RAISE_APPLICATION_ERROR(-20016,\r\n2963,2964c3227,3234\r\n&lt;        WHEN OTHERS THEN\r\n&lt;             RAISE;\r\n---\r\n&gt; \r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in CLEAN_METADATA, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2966a3237\r\n&gt; \r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">26424c26424,26425\r\n&lt;                 ELSIF (LISTBACKUPINMKS(LBSTATE.LBDFRECTABUS, LBREC,\r\n---\r\n&gt;                 ELSIF (LBREC.FILE_TYPE &lt;&gt; SPFILE_TXT AND\r\n&gt;                        LISTBACKUPINMKS(LBSTATE.LBDFRECTABUS, LBREC,\r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.12.2.0.1_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">545a546\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n614a616\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n691a694\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n756a760\r\n&gt;            'NO'                    RL_SNAPSTANDBY,\r\n820a825\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n892a898\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n901,902c907,910\r\n&lt;            AL.STAMP                LIST_ORDER1,\r\n&lt;            -1                      LIST_ORDER2,\r\n---\r\n&gt;            DECODE(DBINC.SNAPSTANDBY, 1, 0, AL.STAMP)\r\n&gt;                                    LIST_ORDER1,\r\n&gt;            DECODE(DBINC.SNAPSTANDBY, 1, AL.STAMP, -1)\r\n&gt;                                    LIST_ORDER2,\r\n963a972,973\r\n&gt;            DECODE(DBINC.SNAPSTANDBY, 1, 'YES', 'NO')\r\n&gt;                                    RL_SNAPSTANDBY,\r\n983a994,1007\r\n&gt;           LEFT OUTER JOIN\r\n&gt;           (SELECT CASE WHEN\r\n&gt;                        (THIS_DBROLE = 'SNAPSHOT STANDBY'      AND\r\n&gt;                         DBINC.STATUS IN ('CURRENT', 'PARENT') AND\r\n&gt;                         DBINC.INCARNATION# &gt; DI2.DI2SSBY_PIC)\r\n&gt;                        THEN 1 ELSE NULL END SNAPSTANDBY,\r\n&gt;                   DBINC.RESETLOGS_CHANGE#,\r\n&gt;                   DBINC.RESETLOGS_TIME,\r\n&gt;                   DBINC.STATUS\r\n&gt;              FROM V$DATABASE_INCARNATION DBINC, \r\n&gt;                   X$KCCDI2 DI2\r\n&gt;           ) DBINC\r\n&gt;            ON AL.RESETLOGS_CHANGE# = DBINC.RESETLOGS_CHANGE#\r\n&gt;           AND AL.RESETLOGS_TIME    = DBINC.RESETLOGS_TIME\r\n1054a1079\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n1124a1150\r\n&gt;            'NO'                    RL_SNAPSTANDBY,\r\n8264c8290,8291\r\n&lt;           DC.STAMP                  STAMP\r\n---\r\n&gt;           DC.STAMP                  STAMP,\r\n&gt;           0                         ORDER_HINT\r\n8274c8301,8302\r\n&lt;           AL.STAMP                  STAMP\r\n---\r\n&gt;           AL.STAMP                  STAMP,\r\n&gt;           0                         ORDER_HINT\r\n8286c8314,8315\r\n&lt;           RL.STAMP                  STAMP\r\n---\r\n&gt;           RL.STAMP                  STAMP,\r\n&gt;           0                         ORDER_HINT\r\n8297c8326,8327\r\n&lt;           BP.STAMP                  STAMP\r\n---\r\n&gt;           BP.STAMP                  STAMP,\r\n&gt;           0                         ORDER_HINT\r\n8312c8342,8343\r\n&lt;           DC.STAMP              STAMP\r\n---\r\n&gt;           DC.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8347c8378,8379\r\n&lt;           DC.STAMP              STAMP\r\n---\r\n&gt;           DC.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8371c8403,8404\r\n&lt;           DC.STAMP              STAMP\r\n---\r\n&gt;           DC.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8403c8436,8437\r\n&lt;           AL.STAMP              STAMP\r\n---\r\n&gt;           AL.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8439c8473,8474\r\n&lt;           AL.STAMP              STAMP\r\n---\r\n&gt;           AL.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8465c8500,8501\r\n&lt;           AL.STAMP              STAMP\r\n---\r\n&gt;           AL.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8485c8521,8522\r\n&lt;           AL.STAMP              STAMP\r\n---\r\n&gt;           AL.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8605c8642,8643\r\n&lt;           BP.STAMP              STAMP\r\n---\r\n&gt;           BP.STAMP              STAMP,\r\n&gt;           0                     ORDER_HINT\r\n8660c8698,8699\r\n&lt;           AL.STAMP              STAMP\r\n---\r\n&gt;           AL.STAMP              STAMP,\r\n&gt;           DBINC.SNAPSTANDBY     ORDER_HINT\r\n8680c8719,8729\r\n&lt;         V$DATABASE_INCARNATION DBINC\r\n---\r\n&gt;         (SELECT CASE WHEN\r\n&gt;                      (THIS_DBROLE = 'SNAPSHOT STANDBY'      AND\r\n&gt;                       DBINC.STATUS IN ('CURRENT', 'PARENT') AND\r\n&gt;                       DBINC.INCARNATION# &gt; DI2.DI2SSBY_PIC)\r\n&gt;                      THEN 1 ELSE NULL END SNAPSTANDBY,\r\n&gt;                 DBINC.RESETLOGS_CHANGE#,\r\n&gt;                 DBINC.RESETLOGS_TIME,\r\n&gt;                 DBINC.STATUS\r\n&gt;            FROM V$DATABASE_INCARNATION DBINC,\r\n&gt;                 X$KCCDI2 DI2\r\n&gt;         ) DBINC\r\n8690a8740\r\n&gt;           DBINC.SNAPSTANDBY = 1 OR\r\n8694c8744\r\n&lt;    ORDER BY AL.STAMP; \r\n---\r\n&gt;    ORDER BY ORDER_HINT, AL.STAMP; \r\n15122c15172,15174\r\n&lt;    IF (THIS_CFTYPE = 'STANDBY' OR THIS_CFTYPE = 'FARSYNC') THEN\r\n---\r\n&gt;    IF (THIS_CFTYPE = 'STANDBY' OR\r\n&gt;        THIS_DBROLE = 'SNAPSHOT STANDBY' OR\r\n&gt;        THIS_CFTYPE = 'FARSYNC') THEN\r\n15179a15232\r\n&gt;    SETTHIS_DBROLE;\r\n15188a15242\r\n&gt;           THIS_DBROLE &lt;&gt; 'SNAPSHOT STANDBY' AND\r\n15807a15862,15865\r\n&gt;    THIS_CFTYPE := NULL;\r\n&gt;    SETTHIS_CFTYPE;\r\n&gt;    THIS_DBROLE := NULL;\r\n&gt;    SETTHIS_DBROLE;\r\n17002a17061\r\n&gt;       SETTHIS_DBROLE;\r\n17390a17450\r\n&gt;    \r\n17710a17771\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n17779a17841\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n17856a17919\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n17921a17985\r\n&gt;            'NO'                    RL_SNAPSTANDBY,\r\n17985a18050\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n18057a18123\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n18128a18195\r\n&gt;            'NO'                    RL_SNAPSTANDBY,\r\n18220a18288\r\n&gt;            NULL                    RL_SNAPSTANDBY,\r\n18290a18359\r\n&gt;            'NO'                    RL_SNAPSTANDBY,\r\n24509a24579\r\n&gt;       END IF;\r\n24511,24534c24581,24601\r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&lt;              (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&lt;               USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&lt;               LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&lt;             IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&lt;                DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             ELSE\r\n&lt;                DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             END IF;\r\n&lt;             USABLE_INCR := LOCAL;\r\n&lt;             AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n---\r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&gt;           (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&gt;            USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&gt;            LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&gt;          IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&gt;             DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n&gt;          ELSE\r\n&gt;             DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n24535a24603,24604\r\n&gt;          USABLE_INCR := LOCAL;\r\n&gt;          AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n26424c26493,26494\r\n&lt;                 ELSIF (LISTBACKUPINMKS(LBSTATE.LBDFRECTABUS, LBREC,\r\n---\r\n&gt;                 ELSIF (LBREC.FILE_TYPE &lt;&gt; SPFILE_TXT AND\r\n&gt;                        LISTBACKUPINMKS(LBSTATE.LBDFRECTABUS, LBREC,\r\n26462a26533,26538\r\n&gt; \r\n&gt;           \r\n&gt;           IF (RECOVERYDESTFILE AND LBREC.RL_SNAPSTANDBY = 'YES') THEN\r\n&gt;              IF (DEBUG) THEN \r\n&gt;                 DEB(DEB_IN, 'snapshot standby archivelog');\r\n&gt;              END IF;\r\n26467c26543\r\n&lt;           IF ((LBREC.RL_NEXT_CHANGE# &gt;= LBSTATE.LBMINGRSP AND\r\n---\r\n&gt;           ELSIF ((LBREC.RL_NEXT_CHANGE# &gt;= LBSTATE.LBMINGRSP AND\r\n28925c29001\r\n&lt;   ,NBLOCKS         OUT     BINARY_INTEGER\r\n---\r\n&gt;   ,NBLOCKS         OUT     NUMBER\r\n<\/pre>\n<div id=\"SYS.DBMS_STATS.PACKAGE BODY.12.2.0.1_RU\">SYS.DBMS_STATS &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">14406,14409c14406,14411\r\n&lt;     TRANSFER_COLUMN_STATS(OWNER, DBMS_STATS_INTERNAL.DQ(TAB_NAME), EXTN_NAME, \r\n&lt;       NULL, NULL, NULL,\r\n&lt;       NULL, NULL, TRUE, TRUE, NULL, FALSE, FALSE, DSC_NON_FXT, TRUE, \r\n&lt;       'ALL', FALSE, NULL, TRUE);\r\n---\r\n&gt;     \r\n&gt;     \r\n&gt;     TRANSFER_COLUMN_STATS(DBMS_STATS_INTERNAL.DQ(OWNER), \r\n&gt;       DBMS_STATS_INTERNAL.DQ(TAB_NAME), DBMS_STATS_INTERNAL.DQ(EXTN_NAME),\r\n&gt;       NULL, NULL, NULL, NULL, NULL, TRUE, TRUE, NULL, FALSE, FALSE, \r\n&gt;       DSC_NON_FXT, TRUE, 'ALL', FALSE, NULL, TRUE);\r\n<\/pre>\n<div id=\"SYS.DBMS_XSTREAM_ADM_INTERNAL.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_ADM_INTERNAL &#8211; PACKAGE BODY (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">445c445\r\n&lt;         END IF;\r\n---\r\n&gt;       END IF;\r\n496c496\r\n&lt;       INCREMENT := INCREMENT + 1;      \r\n---\r\n&gt;       INCREMENT := INCREMENT + 1;\r\n583c583\r\n&lt;       END IF;\r\n---\r\n&gt;     END IF;\r\n2727c2727\r\n&lt; \r\n---\r\n&gt;     \r\n3310c3310\r\n&lt;     HAS_ROLE            NUMBER := 0;\r\n---\r\n&gt;     HAS_ROLE        NUMBER := 0;\r\n3433c3433\r\n&lt; \r\n---\r\n&gt;       \r\n3484c3484\r\n&lt;  \r\n---\r\n&gt; \r\n<\/pre>\n<div id=\"SYS.DBMS_XSTREAM_ADM_UTL.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_ADM_UTL &#8211; PACKAGE BODY (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">687c687\r\n&lt;                SCN     OCINUMBER,  SCN INDICATOR SB2,\r\n---\r\n&gt;                SCN OCINUMBER, SCN INDICATOR SB2,\r\n689,690c689,690\r\n&lt;                POS     OCIRAW,     POS  INDICATOR SB2,\r\n&lt;                POS     MAXLEN SB4, POS LENGTH SB4)\r\n---\r\n&gt;                POS OCIRAW, POS  INDICATOR SB2,\r\n&gt;                POS MAXLEN SB4, POS LENGTH SB4)\r\n1526c1526\r\n&lt;       DBMS_XSTREAM_ADM_UTL.CONVERT_SCN_TO_POS(PROCESSED_LWM_SCN,\r\n---\r\n&gt;       DBMS_XSTREAM_ADM_UTL.CONVERT_SCN_TO_POS(PROCESSED_LWM_SCN, \r\n<\/pre>\n<div id=\"SYS.DBMS_XSTREAM_AUTH_IVK.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_AUTH_IVK &#8211; PACKAGE BODY (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">792c792\r\n&lt;     INCREMENT := INCREMENT + 1;     \r\n---\r\n&gt;     INCREMENT := INCREMENT + 1; \r\n908c908\r\n&lt;     END IF;    \r\n---\r\n&gt;     END IF;\r\n<\/pre>\n<div id=\"SYS.DBMS_XSTREAM_GG_INTERNAL.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_GG_INTERNAL &#8211; PACKAGE BODY (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">77a78\r\n&gt;       PRBA NUMBER := RBA;\r\n87c88\r\n&lt;           SEQ# = SEQNO AND RBA = RBA AND INDEX# = INDEX_NUM;\r\n---\r\n&gt;           SEQ# = SEQNO AND RBA = PRBA AND INDEX# = INDEX_NUM;\r\n91c92\r\n&lt;           SEQ# = SEQNO AND RBA = RBA AND INDEX# = INDEX_NUM;\r\n---\r\n&gt;           SEQ# = SEQNO AND RBA = PRBA AND INDEX# = INDEX_NUM;\r\n<\/pre>\n<div id=\"SYS.DBMS_XSTREAM_UTL_IVK.PACKAGE BODY.12.2.0.1_JUL2018RUR\">SYS.DBMS_XSTREAM_UTL_IVK &#8211; PACKAGE BODY (JUL2018RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">1438c1438\r\n&lt;       ' queue=' || QUEUE_NAME || ' src_db=' || SOURCE_DATABASE || \r\n---\r\n&gt;       ' queue=' || QUEUE_NAME || ' src_db=' || SOURCE_DATABASE ||\r\n2908c2908\r\n&lt;         END IF;\r\n---\r\n&gt;       END IF; \r\n<\/pre>\n<h3><strong>18.0.0.0<\/strong><\/h3>\n<div id=\"CTXSYS.DRIUTL.PACKAGE BODY.18.0.0.0_RU\">CTXSYS.DRIUTL &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">2203a2204,2249\r\n&gt; FUNCTION ENQUOTE_PARTS(P_SPEC IN VARCHAR2, CAPITALIZE IN BOOLEAN := TRUE)\r\n&gt;   RETURN VARCHAR2 IS\r\n&gt;   L_SPEC DRVUTL.DR_QLID3;\r\n&gt;   L_PERIOD1 NUMBER;\r\n&gt;   L_PERIOD2 NUMBER;\r\n&gt; BEGIN\r\n&gt;   IF INSTR(P_SPEC, '\"') = 1 THEN\r\n&gt;     \r\n&gt;     L_SPEC := P_SPEC;\r\n&gt;   ELSIF INSTR(P_SPEC, '.') = 0 THEN\r\n&gt;     \r\n&gt;     L_SPEC := DBMS_ASSERT.ENQUOTE_NAME(P_SPEC, CAPITALIZE);\r\n&gt;   ELSE\r\n&gt;     \r\n&gt;     L_PERIOD1 := INSTR(P_SPEC, '.');\r\n&gt;     L_PERIOD2 := INSTR(P_SPEC, '.', L_PERIOD1 + 1);\r\n&gt;     \r\n&gt;     L_SPEC :=\r\n&gt;       DBMS_ASSERT.ENQUOTE_NAME(SUBSTR(P_SPEC, 1, L_PERIOD1 - 1), CAPITALIZE) || '.';\r\n&gt;     IF L_PERIOD2 = 0 THEN\r\n&gt;       L_SPEC := L_SPEC ||\r\n&gt;         DBMS_ASSERT.ENQUOTE_NAME(SUBSTR(P_SPEC, L_PERIOD1 + 1), CAPITALIZE);\r\n&gt;     ELSE\r\n&gt;       L_SPEC := L_SPEC ||\r\n&gt;         DBMS_ASSERT.ENQUOTE_NAME(SUBSTR(P_SPEC, L_PERIOD1 + 1,\r\n&gt;                                         (L_PERIOD2 - L_PERIOD1 - 1)), CAPITALIZE) ||\r\n&gt;         '.' ||\r\n&gt;         DBMS_ASSERT.ENQUOTE_NAME(SUBSTR(P_SPEC, L_PERIOD2 + 1), CAPITALIZE);\r\n&gt;     END IF;\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   RETURN L_SPEC;\r\n&gt; END ENQUOTE_PARTS;\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; \r\n&gt; \r\n&gt; \r\n&gt; \r\n<\/pre>\n<div id=\"SYS.DBMS_BACKUP_RESTORE.PACKAGE.18.0.0.0_18.2RUR\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE (18.2RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">12c12\r\n&lt;   bannerVersion CONSTANT VARCHAR2(15) := '18.03.00.00';\r\n---\r\n&gt;   bannerVersion CONSTANT VARCHAR2(15) := '18.02.02.00';\r\n24,26c24,26\r\n&lt;   fsn  CONSTANT NUMBER := instr('18.03.00.00', '.');\r\n&lt;   msn  CONSTANT NUMBER := instr('18.03.00.00', '.', fsn + 1);\r\n&lt;   psn  CONSTANT NUMBER := instr('18.03.00.00', '.', msn + 1);\r\n---\r\n&gt;   fsn  CONSTANT NUMBER := instr('18.02.02.00', '.');\r\n&gt;   msn  CONSTANT NUMBER := instr('18.02.02.00', '.', fsn + 1);\r\n&gt;   psn  CONSTANT NUMBER := instr('18.02.02.00', '.', msn + 1);\r\n29c29\r\n&lt;                            to_number(substr('18.03.00.00', 1, fsn - 1));\r\n---\r\n&gt;                            to_number(substr('18.02.02.00', 1, fsn - 1));\r\n31c31\r\n&lt;                to_number(substr('18.03.00.00', fsn + 1, msn - fsn - 1));\r\n---\r\n&gt;                to_number(substr('18.02.02.00', fsn + 1, msn - fsn - 1));\r\n33c33\r\n&lt;               to_number(substr('18.03.00.00',  msn + 1, psn - msn - 1));\r\n---\r\n&gt;               to_number(substr('18.02.02.00',  msn + 1, psn - msn - 1));\r\n35c35\r\n&lt;                              to_number(substr('18.03.00.00',  psn + 1));\r\n---\r\n&gt;                              to_number(substr('18.02.02.00',  psn + 1));\r\n<\/pre>\n<div id=\"SYS.DBMS_BACKUP_RESTORE.PACKAGE.18.0.0.0_RU\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">12c12\r\n&lt;   bannerVersion CONSTANT VARCHAR2(15) := '18.03.00.00';\r\n---\r\n&gt;   bannerVersion CONSTANT VARCHAR2(15) := '18.04.00.00';\r\n24,26c24,26\r\n&lt;   fsn  CONSTANT NUMBER := instr('18.03.00.00', '.');\r\n&lt;   msn  CONSTANT NUMBER := instr('18.03.00.00', '.', fsn + 1);\r\n&lt;   psn  CONSTANT NUMBER := instr('18.03.00.00', '.', msn + 1);\r\n---\r\n&gt;   fsn  CONSTANT NUMBER := instr('18.04.00.00', '.');\r\n&gt;   msn  CONSTANT NUMBER := instr('18.04.00.00', '.', fsn + 1);\r\n&gt;   psn  CONSTANT NUMBER := instr('18.04.00.00', '.', msn + 1);\r\n29c29\r\n&lt;                            to_number(substr('18.03.00.00', 1, fsn - 1));\r\n---\r\n&gt;                            to_number(substr('18.04.00.00', 1, fsn - 1));\r\n31c31\r\n&lt;                to_number(substr('18.03.00.00', fsn + 1, msn - fsn - 1));\r\n---\r\n&gt;                to_number(substr('18.04.00.00', fsn + 1, msn - fsn - 1));\r\n33c33\r\n&lt;               to_number(substr('18.03.00.00',  msn + 1, psn - msn - 1));\r\n---\r\n&gt;               to_number(substr('18.04.00.00',  msn + 1, psn - msn - 1));\r\n35c35\r\n&lt;                              to_number(substr('18.03.00.00',  psn + 1));\r\n---\r\n&gt;                              to_number(substr('18.04.00.00',  psn + 1));\r\n<\/pre>\n<div id=\"SYS.DBMS_BACKUP_RESTORE.PACKAGE.18.0.0.0_18.3RUR\">SYS.DBMS_BACKUP_RESTORE &#8211; PACKAGE (18.3RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">12c12\r\n&lt;   bannerVersion CONSTANT VARCHAR2(15) := '18.03.00.00';\r\n---\r\n&gt;   bannerVersion CONSTANT VARCHAR2(15) := '18.03.01.00';\r\n24,26c24,26\r\n&lt;   fsn  CONSTANT NUMBER := instr('18.03.00.00', '.');\r\n&lt;   msn  CONSTANT NUMBER := instr('18.03.00.00', '.', fsn + 1);\r\n&lt;   psn  CONSTANT NUMBER := instr('18.03.00.00', '.', msn + 1);\r\n---\r\n&gt;   fsn  CONSTANT NUMBER := instr('18.03.01.00', '.');\r\n&gt;   msn  CONSTANT NUMBER := instr('18.03.01.00', '.', fsn + 1);\r\n&gt;   psn  CONSTANT NUMBER := instr('18.03.01.00', '.', msn + 1);\r\n29c29\r\n&lt;                            to_number(substr('18.03.00.00', 1, fsn - 1));\r\n---\r\n&gt;                            to_number(substr('18.03.01.00', 1, fsn - 1));\r\n31c31\r\n&lt;                to_number(substr('18.03.00.00', fsn + 1, msn - fsn - 1));\r\n---\r\n&gt;                to_number(substr('18.03.01.00', fsn + 1, msn - fsn - 1));\r\n33c33\r\n&lt;               to_number(substr('18.03.00.00',  msn + 1, psn - msn - 1));\r\n---\r\n&gt;               to_number(substr('18.03.01.00',  msn + 1, psn - msn - 1));\r\n35c35\r\n&lt;                              to_number(substr('18.03.00.00',  psn + 1));\r\n---\r\n&gt;                              to_number(substr('18.03.01.00',  psn + 1));\r\n<\/pre>\n<div id=\"SYS.DBMS_ISCHED.PACKAGE.18.0.0.0_RU\">SYS.DBMS_ISCHED &#8211; PACKAGE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">1387c1387,1418\r\n&lt;   CUR_SCHEMA           IN VARCHAR2);\r\n---\r\n&gt;   CUR_SCHEMA           IN VARCHAR2,\r\n&gt;   LOCK_NAME           OUT DBMS_ID,\r\n&gt;   LOCK_HANDLE         OUT VARCHAR2,\r\n&gt;   RECIPIENTS_LIST     OUT DBMS_UTILITY.LNAME_ARRAY,\r\n&gt;  NEW_RAISE_EVENTS_NUM OUT PLS_INTEGER,\r\n&gt;   CANON_JOB_NAME   IN OUT DBMS_ID,\r\n&gt;  CANON_JOB_SUBNAME IN OUT DBMS_ID,\r\n&gt;   CANON_JOB_OWNER  IN OUT DBMS_ID,\r\n&gt;   CUR_FLAGS           OUT NUMBER,\r\n&gt;   DOES_SUB_EXIST      OUT BOOLEAN,\r\n&gt;   DOES_REG_EXIST      OUT BOOLEAN,\r\n&gt;   REAL_JB_NAME        IN VARCHAR2 \r\n&gt; );\r\n&gt; \r\n&gt; PROCEDURE ADD_JOB_EMAIL_NOTIFICATION_PH3\r\n&gt; (\r\n&gt;   RECIPIENTS_LIST      IN DBMS_UTILITY.LNAME_ARRAY,\r\n&gt;   NEW_RAISE_EVENTS_NUM IN PLS_INTEGER,\r\n&gt;   CANON_JOB_NAME       IN DBMS_ID,\r\n&gt;   CANON_JOB_SUBNAME    IN DBMS_ID,\r\n&gt;   CANON_JOB_OWNER      IN DBMS_ID,\r\n&gt;   INVOKER              IN VARCHAR2,\r\n&gt;   SENDER               IN VARCHAR2,\r\n&gt;   SUBJECT              IN VARCHAR2,\r\n&gt;   BODY                 IN VARCHAR2,\r\n&gt;   FILTER_CONDITION     IN VARCHAR2,\r\n&gt;   LOCK_NAME            IN DBMS_ID,\r\n&gt;   LOCK_HANDLE          IN VARCHAR2,\r\n&gt;   CUR_FLAGS            IN NUMBER,\r\n&gt;   RECIPIENTS           IN VARCHAR2,\r\n&gt;   EVENTS               IN VARCHAR2\r\n&gt; );\r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE.18.0.0.0_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">3289c3289\r\n&lt;   ,nblocks        OUT     binary_integer -- number of blocks of datafilecopy\r\n---\r\n&gt;   ,nblocks        OUT     number      -- number of blocks of datafilecopy\r\n<\/pre>\n<div id=\"SYS.DBMS_REGISTRY.PACKAGE.18.0.0.0_18.2RUR\">SYS.DBMS_REGISTRY &#8211; PACKAGE (18.2RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">13c13\r\n&lt;                                '18.3.0.0.0';\r\n---\r\n&gt;                                '18.2.2.0.0';\r\n231,237c231,233\r\n&lt; PROCEDURE RU_apply    (comp_version      IN VARCHAR2  DEFAULT NULL,\r\n&lt;                        build_description IN VARCHAR2  DEFAULT NULL,\r\n&lt;                        build_timestamp   IN TIMESTAMP DEFAULT NULL);\r\n&lt; \r\n&lt; PROCEDURE RU_rollback (comp_version      IN VARCHAR2  DEFAULT NULL,\r\n&lt;                        build_description IN VARCHAR2  DEFAULT NULL,\r\n&lt;                        build_timestamp   IN TIMESTAMP DEFAULT NULL);\r\n---\r\n&gt; PROCEDURE RU_apply    (comp_version IN VARCHAR2 DEFAULT NULL);\r\n&gt; \r\n&gt; PROCEDURE RU_rollback (comp_version IN VARCHAR2 DEFAULT NULL);\r\n<\/pre>\n<div id=\"SYS.DBMS_REGISTRY.PACKAGE.18.0.0.0_RU\">SYS.DBMS_REGISTRY &#8211; PACKAGE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">13c13\r\n&lt;                                '18.3.0.0.0';\r\n---\r\n&gt;                                '18.4.0.0.0';\r\n<\/pre>\n<div id=\"SYS.DBMS_REGISTRY.PACKAGE.18.0.0.0_18.3RUR\">SYS.DBMS_REGISTRY &#8211; PACKAGE (18.3RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">13c13\r\n&lt;                                '18.3.0.0.0';\r\n---\r\n&gt;                                '18.3.1.0.0';\r\n<\/pre>\n<div id=\"SYS.DBMS_ISCHED.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_ISCHED &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">7763a7764\r\n&gt; \r\n7775,7778c7776,7788\r\n&lt;   CUR_SCHEMA           IN VARCHAR2) IS\r\n&lt; CANON_JOB_NAME     DBMS_ID;\r\n&lt; CANON_JOB_SUBNAME  DBMS_ID;\r\n&lt; CANON_JOB_OWNER    DBMS_ID;\r\n---\r\n&gt;   CUR_SCHEMA           IN VARCHAR2,\r\n&gt;   LOCK_NAME           OUT DBMS_ID,\r\n&gt;   LOCK_HANDLE         OUT VARCHAR2,\r\n&gt;   RECIPIENTS_LIST     OUT DBMS_UTILITY.LNAME_ARRAY,\r\n&gt;  NEW_RAISE_EVENTS_NUM OUT PLS_INTEGER,\r\n&gt;   CANON_JOB_NAME   IN OUT DBMS_ID,\r\n&gt;  CANON_JOB_SUBNAME IN OUT DBMS_ID,\r\n&gt;   CANON_JOB_OWNER  IN OUT DBMS_ID,\r\n&gt;   CUR_FLAGS           OUT NUMBER,\r\n&gt;   DOES_SUB_EXIST      OUT BOOLEAN,\r\n&gt;   DOES_REG_EXIST      OUT BOOLEAN,\r\n&gt;   REAL_JB_NAME        IN VARCHAR2 \r\n&gt; ) IS\r\n7782d7791\r\n&lt; NEW_RAISE_EVENTS_NUM PLS_INTEGER := 0;\r\n7791d7799\r\n&lt; EVENT_10862       PLS_INTEGER := 0;\r\n7798,7799d7805\r\n&lt; LOCK_NAME                  DBMS_ID;\r\n&lt; LOCK_HANDLE                VARCHAR2(128);\r\n7802d7807\r\n&lt; RECIPIENTS_LIST   DBMS_UTILITY.LNAME_ARRAY;\r\n7805d7809\r\n&lt; CUR_FLAGS              NUMBER;\r\n7807c7811\r\n&lt; REAL_JOB_NAME          VARCHAR2(2 * ORA_MAX_NAME_LEN + 5) := JOB_NAME;\r\n---\r\n&gt; REAL_JOB_NAME          VARCHAR2(2 * ORA_MAX_NAME_LEN + 5) := REAL_JB_NAME;\r\n7817c7821,7822\r\n&lt;    SYS.DBMS_ISCHED.TRACE_EMAIL('Entering add_job_email_notification');\r\n---\r\n&gt;    SYS.DBMS_ISCHED.TRACE_EMAIL('Entering ' || \r\n&gt;          'dbms_isched.add_job_email_notification');\r\n7819a7825,7836\r\n&gt;   IF DO_TRC THEN\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current user: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','CURRENT_USER') );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Session user: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','SESSION_USER') );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current schema: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','CURRENT_SCHEMA') );\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   NEW_RAISE_EVENTS_NUM := 0;\r\n&gt;   CUR_FLAGS := 0;\r\n&gt; \r\n7844,7868c7861,7862\r\n&lt;   RESOLVE3_NAME(REAL_JOB_NAME, CANON_JOB_NAME, CANON_JOB_SUBNAME,\r\n&lt;     CANON_JOB_OWNER, CUR_SCHEMA);\r\n&lt; \r\n&lt;   \r\n&lt;   FULL_JOB_NAME := '\"'||CANON_JOB_OWNER||'\".\"'||CANON_JOB_NAME||'\"';\r\n&lt; \r\n&lt;   \r\n&lt;   IF INVOKER != CANON_JOB_OWNER AND INVOKER != 'SYS' AND\r\n&lt;     BITAND(SYS_PRIVS, 2) = 0\r\n&lt;   THEN\r\n&lt;     \r\n&lt;     BEGIN\r\n&lt;       SYS.DBMS_ISCHED_UTL.CHECK_OBJECT_PRIVS(CANON_JOB_NAME, CANON_JOB_OWNER, 'JOB',\r\n&lt;         INVOKER, 'ALTER', TRUE, SYS_PRIVS);\r\n&lt;     EXCEPTION WHEN OTHERS THEN\r\n&lt;       \r\n&lt;       IF SQLCODE = -23306 AND CANON_JOB_SUBNAME IS NULL\r\n&lt;        AND REAL_JOB_NAME = JOB_NAME THEN\r\n&lt;         REAL_JOB_NAME := '\"'||CUR_SCHEMA||'\".' || JOB_NAME;\r\n&lt;         GOTO TRY_RESOLVE_AGAIN;\r\n&lt;       ELSE\r\n&lt;         RAISE;\r\n&lt;       END IF;\r\n&lt;     END;\r\n&lt;   END IF;\r\n---\r\n&gt;   FULL_JOB_NAME := DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_OWNER, FALSE) ||'.'||\r\n&gt;                    DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_NAME , FALSE);\r\n7892c7886,7890\r\n&lt;       REAL_JOB_NAME := '\"'||CUR_SCHEMA||'\".' || JOB_NAME;\r\n---\r\n&gt;       REAL_JOB_NAME := DBMS_ASSERT.ENQUOTE_NAME(CUR_SCHEMA, FALSE) ||\r\n&gt;                        '.' || JOB_NAME;\r\n&gt;       \r\n&gt;       RESOLVE3_NAME(REAL_JOB_NAME, CANON_JOB_NAME, CANON_JOB_SUBNAME,\r\n&gt;       CANON_JOB_OWNER, CUR_SCHEMA);\r\n7981,7990d7978\r\n&lt;   \r\n&lt;   \r\n&lt;   \r\n&lt;   DBMS_SYSTEM.READ_EV(10862, EVENT_10862);\r\n&lt;   IF EVENT_10862 = 0 THEN\r\n&lt;     EXECUTE IMMEDIATE\r\n&lt;       'ALTER SESSION SET EVENTS ''10862 TRACE NAME CONTEXT FOREVER, LEVEL 1''';\r\n&lt;   END IF;\r\n&lt; \r\n&lt;   \r\n7992,7993c7980,7981\r\n&lt;     'select count(*) from sys.dba_QUEUE_SUBSCRIBERS where owner=''SYS''\r\n&lt;        and queue_name=''SCHEDULER$_EVENT_QUEUE'' and consumer_name=:lname'\r\n---\r\n&gt;     'select count(*) from sys.user_QUEUE_SUBSCRIBERS where \r\n&gt;        queue_name=''SCHEDULER$_EVENT_QUEUE'' and consumer_name=:lname'\r\n7996,8003c7984,7985\r\n&lt;   BEGIN\r\n&lt;     \r\n&lt;     DBMS_AQADM.ADD_SUBSCRIBER\r\n&lt;      (QUEUE_NAME =&gt; 'SYS.SCHEDULER$_EVENT_QUEUE',\r\n&lt;       SUBSCRIBER =&gt; SYS.AQ$_AGENT(LOCK_NAME, NULL, NULL));\r\n&lt;   EXCEPTION WHEN OTHERS THEN\r\n&lt;     IF SQLCODE = -24034 THEN NULL;\r\n&lt;     ELSE\r\n---\r\n&gt;     DOES_SUB_EXIST := FALSE;\r\n&gt;     BEGIN\r\n8005,8007c7987,7994\r\n&lt;       IF EVENT_10862 = 0 THEN\r\n&lt;         EXECUTE IMMEDIATE 'ALTER SESSION SET EVENTS ' ||\r\n&lt;           '''10862 TRACE NAME CONTEXT OFF''' ;\r\n---\r\n&gt;       DBMS_AQADM.ADD_SUBSCRIBER\r\n&gt;        (QUEUE_NAME =&gt; 'SYS.SCHEDULER$_EVENT_QUEUE',\r\n&gt;         SUBSCRIBER =&gt; SYS.AQ$_AGENT(LOCK_NAME, NULL, NULL));\r\n&gt;     EXCEPTION WHEN OTHERS THEN\r\n&gt;       IF SQLCODE = -24034 THEN NULL;\r\n&gt;       ELSE\r\n&gt;         LOCK_ERROR := DBMS_LOCK.RELEASE(LOCKHANDLE=&gt;LOCK_HANDLE);\r\n&gt;         RAISE;\r\n8009,8019c7996,7998\r\n&lt; \r\n&lt;       LOCK_ERROR := DBMS_LOCK.RELEASE(LOCKHANDLE=&gt;LOCK_HANDLE);\r\n&lt;       RAISE;\r\n&lt;     END IF;\r\n&lt;   END;\r\n&lt;   END IF;\r\n&lt; \r\n&lt;   \r\n&lt;   IF EVENT_10862 = 0 THEN\r\n&lt;     EXECUTE IMMEDIATE 'ALTER SESSION SET EVENTS ' ||\r\n&lt;       '''10862 TRACE NAME CONTEXT OFF''' ;\r\n---\r\n&gt;     END;\r\n&gt;   ELSE\r\n&gt;     DOES_SUB_EXIST := TRUE;\r\n8025,8029d8003\r\n&lt;   IF ROW_COUNT = 0 THEN\r\n&lt;     \r\n&lt;     SYS.DBMS_AQADM_SYS.ENABLE_DB_ACCESS(LOCK_NAME,INVOKER,TRUE);\r\n&lt;   END IF;\r\n&lt; \r\n8033a8008,8012\r\n&gt;   EXCEPTION WHEN OTHERS THEN\r\n&gt;     LOCK_ERROR := DBMS_LOCK.RELEASE(LOCKHANDLE=&gt;LOCK_HANDLE);\r\n&gt;     RAISE;\r\n&gt;   END;\r\n&gt; \r\n8035,8042c8014,8020\r\n&lt;     \r\n&lt;     \r\n&lt;     REGINFO := SYS.AQ$_REG_INFO('SYS.SCHEDULER$_EVENT_QUEUE:\"'||LOCK_NAME||'\"',\r\n&lt;                                 DBMS_AQ.NAMESPACE_AQ,\r\n&lt;                                 'plsql:\/\/SYS.SCHEDULER$_JOB_EVENT_HANDLER',\r\n&lt;                                  NULL);\r\n&lt;     REGLIST := SYS.AQ$_REG_INFO_LIST(REGINFO);\r\n&lt;     DBMS_AQ.REGISTER ( REGLIST, 1 );\r\n---\r\n&gt;     DOES_REG_EXIST := FALSE;\r\n&gt;   ELSE \r\n&gt;     DOES_REG_EXIST := TRUE;\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   IF DO_TRC THEN\r\n&gt;    SYS.DBMS_ISCHED.TRACE_EMAIL('Exiting dbms_isched.add_job_email_notification');\r\n8045a8024,8078\r\n&gt; \r\n&gt; END;\r\n&gt; \r\n&gt; PROCEDURE ADD_JOB_EMAIL_NOTIFICATION_PH3\r\n&gt; (\r\n&gt;   RECIPIENTS_LIST      IN DBMS_UTILITY.LNAME_ARRAY,\r\n&gt;   NEW_RAISE_EVENTS_NUM IN PLS_INTEGER,\r\n&gt;   CANON_JOB_NAME       IN DBMS_ID,\r\n&gt;   CANON_JOB_SUBNAME    IN DBMS_ID,\r\n&gt;   CANON_JOB_OWNER      IN DBMS_ID,\r\n&gt;   INVOKER              IN VARCHAR2,\r\n&gt;   SENDER               IN VARCHAR2,\r\n&gt;   SUBJECT              IN VARCHAR2,\r\n&gt;   BODY                 IN VARCHAR2,\r\n&gt;   FILTER_CONDITION     IN VARCHAR2,\r\n&gt;   LOCK_NAME            IN DBMS_ID,\r\n&gt;   LOCK_HANDLE          IN VARCHAR2,\r\n&gt;   CUR_FLAGS            IN NUMBER,\r\n&gt;   RECIPIENTS           IN VARCHAR2,\r\n&gt;   EVENTS               IN VARCHAR2\r\n&gt; ) IS\r\n&gt; TYPE EVENT_NAME_LIST IS TABLE OF DBMS_ID;\r\n&gt; TYPE EVENT_NUMBER_LIST IS TABLE OF NUMBER;\r\n&gt; EVENT_NAMES EVENT_NAME_LIST :=  EVENT_NAME_LIST('JOB_STARTED',\r\n&gt;   'JOB_SUCCEEDED', 'JOB_FAILED', 'JOB_BROKEN', 'JOB_COMPLETED',\r\n&gt;   'JOB_STOPPED', 'JOB_SCH_LIM_REACHED', 'JOB_DISABLED',\r\n&gt;   'JOB_CHAIN_STALLED','JOB_OVER_MAX_DUR','JOB_RUN_COMPLETED','JOB_ALL_EVENTS');\r\n&gt; EVENT_NUMBERS EVENT_NUMBER_LIST :=\r\n&gt;   EVENT_NUMBER_LIST(1,2,4,8,16,32,64,128,256,512,2+4+32,1024-1);\r\n&gt; EVENT_10862       PLS_INTEGER := 0;\r\n&gt; LOCK_ERROR        PLS_INTEGER;\r\n&gt; FULL_JOB_NAME     VARCHAR2(3 * ORA_MAX_NAME_LEN + 8);\r\n&gt; DO_TRC            BOOLEAN := FALSE;\r\n&gt; EV_27402          PLS_INTEGER;\r\n&gt; BEGIN\r\n&gt;   \r\n&gt;   DBMS_SYSTEM.READ_EV(27402, EV_27402);\r\n&gt;   IF BITAND(EV_27402,128)=128 THEN DO_TRC := TRUE; END IF;\r\n&gt; \r\n&gt;   \r\n&gt;   IF DO_TRC THEN\r\n&gt;    SYS.DBMS_ISCHED.TRACE_EMAIL('Entered add_job_email_notification_ph3');\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   IF DO_TRC THEN\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current user: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','CURRENT_USER') );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Session user: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','SESSION_USER') );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current schema: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','CURRENT_SCHEMA') );\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   BEGIN \r\n&gt;   \r\n8152a8186,8189\r\n&gt;   FULL_JOB_NAME := DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_OWNER, FALSE) ||'.'||\r\n&gt;                    DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_NAME , FALSE);\r\n&gt; \r\n&gt;   \r\n8159c8196,8197\r\n&lt;         FULL_JOB_NAME := FULL_JOB_NAME ||'.\"'||CANON_JOB_SUBNAME||'\"';\r\n---\r\n&gt;         FULL_JOB_NAME := FULL_JOB_NAME ||'.'||\r\n&gt;                          DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_SUBNAME,FALSE);\r\n8165a8204,8208\r\n&gt; \r\n&gt;   \r\n&gt;   IF DO_TRC THEN\r\n&gt;    SYS.DBMS_ISCHED.TRACE_EMAIL('Exiting add_job_email_notification_ph3');\r\n&gt;   END IF;\r\n<\/pre>\n<div id=\"SYS.DBMS_QOPATCH.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_QOPATCH &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">25a26,30\r\n&gt; V_CODE     NUMBER;\r\n&gt; V_ERRM     VARCHAR2(128);\r\n&gt; \r\n&gt; \r\n&gt; \r\n80c85\r\n&lt;   RETURN '$Header: rdbms\/src\/client\/tools\/qpinv\/prvtqopi.sql \/st_rdbms_18.0\/1 2018\/03\/05 00:47:50 sspulava Exp $';\r\n---\r\n&gt;   RETURN '$Header: rdbms\/src\/client\/tools\/qpinv\/prvtqopi.sql \/st_rdbms_18.0\/3 2018\/07\/12 07:15:49 apfwkr Exp $';\r\n162a168,173\r\n&gt;   T_OP_INST_PATH   VARCHAR2(1024) := '';\r\n&gt;   T_OP_SCPT_PATH   VARCHAR2(1024) := '';\r\n&gt;   T_OP_LOG_PATH    VARCHAR2(1024) := '';\r\n&gt;   T_ROOT           VARCHAR2(1024) := '';\r\n&gt;   T_ORABASE        VARCHAR2(1024) := '';\r\n&gt;   OPATCHFILE   VARCHAR2(128) := 'opatch';\r\n185,186c196,197\r\n&lt;       DBMS_SYSTEM.KSDWRT(1,'QPI: Event 22171584 set. Skipping sanity check');\r\n&lt;       DBMS_SYSTEM.KSDWRT(1,'QPI: Please disable the event in case of any errors and try again');\r\n---\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: Event 22171584 set. Skipping sanity check');\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: Please disable the event in case of any errors and try again');\r\n210a222,229\r\n&gt;     SELECT PLATFORM_ID INTO PFID FROM V$DATABASE;\r\n&gt;     NOT_WIN := IS_NON_WINDOWS (PFID);\r\n&gt; \r\n&gt;     \r\n&gt;     IF NOT NOT_WIN  THEN\r\n&gt;        OPATCHFILE := 'opatch.bat';\r\n&gt;     END IF;\r\n&gt; \r\n223a243,309\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;       T_ROOT := ROOT;\r\n&gt;       T_ORABASE := ORABASE;\r\n&gt;       T_OP_INST_PATH := OP_INST_PATH;\r\n&gt;       T_OP_SCPT_PATH := OP_SCPT_PATH;\r\n&gt;       T_OP_LOG_PATH := OP_LOG_PATH;\r\n&gt;   \r\n&gt;       IF NOT_WIN  THEN\r\n&gt;               IF SUBSTR( ROOT,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_ROOT := ROOT || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_root is ' || T_ROOT);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( ORABASE,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_ORABASE := ORABASE || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_orabase is ' || T_ORABASE);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_INST_PATH,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_OP_INST_PATH := OP_INST_PATH || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_op_inst_path is ' || T_OP_INST_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_SCPT_PATH,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_OP_SCPT_PATH := OP_SCPT_PATH || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_op_scpt_path is ' || T_OP_SCPT_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_LOG_PATH,-1,1 ) &lt;&gt; '\/' THEN\r\n&gt;                  T_OP_LOG_PATH := OP_LOG_PATH || '\/';\r\n&gt;                  LOG_STATUS('QPI:  t_op_log_path is ' || T_OP_LOG_PATH);\r\n&gt;               END IF;\r\n&gt;       ELSE\r\n&gt;               IF SUBSTR( ROOT,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_ROOT := ROOT || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_root is ' || T_ROOT);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( ORABASE,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_ORABASE := ORABASE || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_orabase is ' || T_ORABASE);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_INST_PATH,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_OP_INST_PATH := OP_INST_PATH || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_op_inst_path is ' || T_OP_INST_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_SCPT_PATH,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_OP_SCPT_PATH := OP_SCPT_PATH || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_op_scpt_path is ' || T_OP_SCPT_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;               IF SUBSTR( OP_LOG_PATH,-1,1 ) &lt;&gt; '\\' THEN\r\n&gt;                  T_OP_LOG_PATH := OP_LOG_PATH || '\\';\r\n&gt;                  LOG_STATUS('QPI:  t_op_log_path is ' || T_OP_LOG_PATH);\r\n&gt;               END IF;\r\n&gt; \r\n&gt;       END IF;\r\n&gt; \r\n243d328\r\n&lt;         SELECT PLATFORM_ID INTO PFID FROM V$DATABASE;\r\n258d342\r\n&lt;           NOT_WIN := IS_NON_WINDOWS (PFID);\r\n305c389\r\n&lt;     UTL_FILE.FGETATTR('OPATCH_INST_DIR', 'opatch', FEXISTS, FILE_LENGTH, BLOCK_SIZE);\r\n---\r\n&gt;     UTL_FILE.FGETATTR('OPATCH_INST_DIR', OPATCHFILE, FEXISTS, FILE_LENGTH, BLOCK_SIZE);\r\n307c391\r\n&lt;       DBMS_SYSTEM.KSDWRT(1,'QPI: opatch file present');\r\n---\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: opatch file present, ' || OPATCHFILE);\r\n309a394\r\n&gt;       DBMS_SYSTEM.KSDWRT(3,'QPI: opatch executable does not exist, ' || OPATCHFILE);\r\n319c404\r\n&lt;         DBMS_SYSTEM.KSDWRT(1,'QPI: qopiprep.bat file present');\r\n---\r\n&gt;         DBMS_SYSTEM.KSDWRT(3,'QPI: qopiprep.bat file present');\r\n374d458\r\n&lt;           LOG_STATUS ('QPI: GOT lock at :' || SYSTIMESTAMP);\r\n377a462\r\n&gt;        LOG_STATUS('QPI: Obtaining lock FAILED, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n378a464,465\r\n&gt;     ELSIF QP_RESULT = 0 OR QP_RESULT = 4 THEN\r\n&gt;         LOG_STATUS('QPI: Obtaining lock SUCCESSFUL, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n401c488,492\r\n&lt;           LOG_STATUS ('QPI: Releasing the lock at :' || SYSTIMESTAMP);\r\n---\r\n&gt;     IF QP_RESULT = 0 THEN\r\n&gt;         LOG_STATUS('QPI: Releasing lock SUCCESSFUL, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n&gt;     ELSE\r\n&gt;         LOG_STATUS('QPI: Releasing lock FAILED, qp_result=' || QP_RESULT || ' at : ' || SYSTIMESTAMP);\r\n&gt;     END IF;\r\n426,427d516\r\n&lt;   V_CODE     NUMBER;\r\n&lt;   V_ERRM     VARCHAR2(128);\r\n493,494c582,583\r\n&lt;       V_ERRM := SUBSTR(SQLERRM, 1, 64);\r\n&lt;       LOG_STATUS('Error code ' || V_CODE || ': ' || V_ERRM);\r\n---\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in config_oinv_jobs, Error code ' || V_CODE || ': ' || V_ERRM);\r\n799c888\r\n&lt;          DBMS_SYSTEM.KSDWRT(1,'QPI: Cleaning and refreshing metadata..');\r\n---\r\n&gt;          DBMS_SYSTEM.KSDWRT(3,'QPI: Cleaning and refreshing metadata..');\r\n837a927,930\r\n&gt;    LOG_STATUS('QPI: Caught error while querying opatch_xml_inv');\r\n&gt;    V_CODE := SQLCODE;\r\n&gt;    V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;    LOG_STATUS('QPI: in REFRESH_OPATCH_DATA, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n892a986,992\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_opatch_install_info, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n935a1036,1042\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_opatch_list, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n986a1094,1100\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in IS_PATCH_INSTALLED, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1039a1154,1160\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_DATA, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1099a1221,1227\r\n&gt;     WHEN OTHERS THEN\r\n&gt;       V_CODE := SQLCODE;\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in GET_OPATCH_BUGS, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;       QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;       RAISE;\r\n&gt; \r\n1121a1250,1253\r\n&gt;     QP_RESULT := GET_QOPATCH_LOCK();\r\n&gt; \r\n&gt;     LOG_STATUS('QPI: Got lock get_opatch_files');\r\n&gt; \r\n1133a1266,1269\r\n&gt; \r\n&gt;      LOG_STATUS('QPI: Release lock get_opatch_files');\r\n&gt;      QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n1134a1271,1283\r\n&gt; \r\n&gt;     EXCEPTION \r\n&gt;       WHEN UNABLE_TO_LOCK THEN\r\n&gt;         RAISE_APPLICATION_ERROR(-20016, \r\n&gt;                  'Unable to get the lock : get_opatch_files : ' || QP_RESULT);\r\n&gt; \r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_FILES, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1178a1328,1334\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_COUNT, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1225a1382,1388\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_PREQS, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1268a1432,1443\r\n&gt;     EXCEPTION \r\n&gt;       WHEN UNABLE_TO_LOCK THEN\r\n&gt;         RAISE_APPLICATION_ERROR(-20016, \r\n&gt;                  'Unable to get the lock : get_opatch_install_info : ' || QP_RESULT);\r\n&gt; \r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in GET_OPATCH_OLAYS, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1317a1493,1499\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in PATCH_CONFLICT_DETECTION, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n1370c1552\r\n&lt; OPATCHFILE   CONSTANT VARCHAR2(128) := 'opatch';\r\n---\r\n&gt; OPATCHFILE   VARCHAR2(128) := 'opatch';\r\n1406a1589\r\n&gt;       OPATCHFILE := 'opatch.bat';\r\n1453a1637\r\n&gt;     LOG_STATUS('QPI: opatch executable exists and is readable, ' || OPATCHFILE);\r\n1455a1640\r\n&gt;     LOG_STATUS('QPI: opatch executable does not exist or is not redable, ' || OPATCHFILE);\r\n1514,1515d1698\r\n&lt;   V_CODE     NUMBER;\r\n&lt;   V_ERRM     VARCHAR2(128);\r\n1590,1591c1773,1774\r\n&lt;       V_ERRM := SUBSTR(SQLERRM, 1, 64);\r\n&lt;       LOG_STATUS('Error code ' || V_CODE || ': ' || V_ERRM);\r\n---\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in add_oinv_job, Error code ' || V_CODE || ': ' || V_ERRM);\r\n1612c1795\r\n&lt;          DBMS_SYSTEM.KSDWRT(1,'Node name: ' || PVAL.NODE_NAME || ' Inst:' || PVAL.INST_NAME|| ' Job:' || PVAL.INST_JOB);\r\n---\r\n&gt;          DBMS_SYSTEM.KSDWRT(3,'Node name: ' || PVAL.NODE_NAME || ' Inst:' || PVAL.INST_NAME|| ' Job:' || PVAL.INST_JOB);\r\n1619c1802\r\n&lt;          DBMS_SYSTEM.KSDWRT(1,'Job: ' || PVAR.JOB_NAME || ' State: ' || PVAR.STATE);\r\n---\r\n&gt;          DBMS_SYSTEM.KSDWRT(3,'Job: ' || PVAR.JOB_NAME || ' State: ' || PVAR.STATE);\r\n1718a1902\r\n&gt; \r\n1900a2085,2088\r\n&gt;     WHEN UNABLE_TO_LOCK THEN\r\n&gt;       RAISE_APPLICATION_ERROR(-20016, \r\n&gt;                  'Unable to get the lock : get_pending_activity : ' || QP_RESULT);\r\n&gt; \r\n1906a2095,2097\r\n&gt;       V_CODE := SQLCODE;\r\n&gt;       V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;       LOG_STATUS('QPI: in get_pending_activity, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n2136a2328,2334\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_opatch_lsinventory, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2635a2834,2840\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in opatch_compare, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2741a2947,2953\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in get_patch_details, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2784a2997,3003\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in check_patch_installed, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2856c3075,3078\r\n&lt;         \r\n---\r\n&gt; \r\n&gt;        LOG_STATUS('QPI: Release lock opatch_compare_nodes');\r\n&gt;        QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n2876a3099,3102\r\n&gt; \r\n&gt;         LOG_STATUS('QPI: Release lock opatch_compare_nodes');\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt; \r\n2883,2885d3108\r\n&lt;          LOG_STATUS('QPI: Release lock opatch_compare_nodes');\r\n&lt;    QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&lt; \r\n2890a3114,3120\r\n&gt;       WHEN OTHERS THEN\r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in OPATCH_COMPARE_NODES, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2917a3148\r\n&gt;  \r\n2989c3220\r\n&lt;        WHEN UNABLE_TO_LOCK THEN\r\n---\r\n&gt;       WHEN UNABLE_TO_LOCK THEN \r\n2992,2993c3223,3230\r\n&lt;        WHEN OTHERS THEN\r\n&lt;             RAISE;\r\n---\r\n&gt; \r\n&gt;       WHEN OTHERS THEN \r\n&gt;         V_CODE := SQLCODE;\r\n&gt;         V_ERRM := SUBSTR(SQLERRM, 1, 128);\r\n&gt;         LOG_STATUS('QPI: in CLEAN_METADATA, ERROR code ' || V_CODE || ' : ' || V_ERRM);\r\n&gt;         QP_RESULT:= RELEASE_QOPATCH_LOCK();\r\n&gt;         RAISE;\r\n&gt; \r\n2995a3233,3234\r\n&gt; \r\n&gt; \r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.18.0.0.0_18.3RUR\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (18.3RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">122c122\r\n&lt; CATALOGVERSION CONSTANT VARCHAR2(11) := '18.03.00.00'; \r\n---\r\n&gt; CATALOGVERSION CONSTANT VARCHAR2(11) := '18.03.01.00'; \r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.18.0.0.0_18.2RUR\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (18.2RUR):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">122c122\r\n&lt; CATALOGVERSION CONSTANT VARCHAR2(11) := '18.03.00.00'; \r\n---\r\n&gt; CATALOGVERSION CONSTANT VARCHAR2(11) := '18.02.02.00'; \r\n<\/pre>\n<div id=\"SYS.DBMS_RCVMAN.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_RCVMAN &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">122c122\r\n&lt; CATALOGVERSION CONSTANT VARCHAR2(11) := '18.03.00.00'; \r\n---\r\n&gt; CATALOGVERSION CONSTANT VARCHAR2(11) := '18.04.00.00'; \r\n24765a24766\r\n&gt;       END IF;\r\n24767,24790c24768,24788\r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          \r\n&lt;          IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&lt;              (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&lt;               USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&lt;               LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&lt;             IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&lt;                DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             ELSE\r\n&lt;                DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&lt;                               AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&lt;                               LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&lt;                               LOCAL.DFCREATIONSCN_OBJ);\r\n&lt;             END IF;\r\n&lt;             USABLE_INCR := LOCAL;\r\n&lt;             AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n---\r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       \r\n&gt;       IF (AVAILABLE_FROMSCN_ACT IS NULL OR\r\n&gt;           (USABLE_INCR.DFNUMBER_OBJ = LOCAL.DFNUMBER_OBJ AND\r\n&gt;            USABLE_INCR.DFCREATIONSCN_OBJ = LOCAL.DFCREATIONSCN_OBJ AND\r\n&gt;            LOCAL.TOSCN_ACT &lt; AVAILABLE_FROMSCN_ACT)) THEN\r\n&gt;          IF (AVAILABLE_FROMSCN_ACT IS NULL) THEN\r\n&gt;             DEB(DEB_PRINT, 'available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file# ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n&gt;          ELSE\r\n&gt;             DEB(DEB_PRINT, 'broken chain, available_fromSCN_act set to ' ||\r\n&gt;                            AVAILABLE_FROMSCN_ACT || ' for file ' ||\r\n&gt;                            LOCAL.DFNUMBER_OBJ || ', creation_scn '||\r\n&gt;                            LOCAL.DFCREATIONSCN_OBJ);\r\n24791a24790,24791\r\n&gt;          USABLE_INCR := LOCAL;\r\n&gt;          AVAILABLE_FROMSCN_ACT := LOCAL.FROMSCN_ACT;\r\n27205a27206,27208\r\n&gt; \r\n&gt;     \r\n&gt;     IF (DFREC.PDBID &lt;= 1 OR TRANSLATEPDB2NAME(DFREC.PDBID) IS NOT NULL) THEN\r\n27206a27210\r\n&gt;     END IF;\r\n29222c29226\r\n&lt;   ,NBLOCKS         OUT     BINARY_INTEGER\r\n---\r\n&gt;   ,NBLOCKS         OUT     NUMBER\r\n<\/pre>\n<div id=\"SYS.DBMS_REGISTRY.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_REGISTRY &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">624,625c624,625\r\n&lt;             TO_CHAR(P_DATE, 'MM-DD-YYYY HH24:MI:SS') || P_EDITION || 'FBC238'),\r\n&lt;             DBMS_CRYPTO.HASH_MD5);\r\n---\r\n&gt;             TO_CHAR(P_DATE, 'MM-DD-YYYY HH24:MI:SS','nls_calendar=Gregorian')\r\n&gt;             || P_EDITION || 'FBC238'), DBMS_CRYPTO.HASH_MD5);\r\n<\/pre>\n<div id=\"SYS.DBMS_SCHEDULER.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_SCHEDULER &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">4389a4390,4408\r\n&gt;   DOES_SUB_EXIST          BOOLEAN := FALSE;\r\n&gt;   DOES_REG_EXIST          BOOLEAN := FALSE;\r\n&gt;   LOCK_NAME               DBMS_ID;\r\n&gt;   LOCK_HANDLE             VARCHAR2(128);\r\n&gt;   LOCK_ERROR              PLS_INTEGER;\r\n&gt;   REGINFO                 SYS.AQ$_REG_INFO;\r\n&gt;   REGLIST                 SYS.AQ$_REG_INFO_LIST;\r\n&gt;   RECIPIENTS_LIST         DBMS_UTILITY.LNAME_ARRAY;\r\n&gt;   NEW_RAISE_EVENTS_NUM    PLS_INTEGER := 0;\r\n&gt;   CANON_JOB_NAME          DBMS_ID;\r\n&gt;   CANON_JOB_SUBNAME       DBMS_ID;\r\n&gt;   CANON_JOB_OWNER         DBMS_ID;\r\n&gt;   CUR_FLAGS               NUMBER;\r\n&gt;   EV_27402                PLS_INTEGER := 0;\r\n&gt;   DO_TRC                  BOOLEAN := FALSE;\r\n&gt;   CURRENT_USER            DBMS_ID := SYS_CONTEXT('USERENV','CURRENT_USER');\r\n&gt;   CUR_SCHEMA              DBMS_ID := SYS_CONTEXT('USERENV','CURRENT_SCHEMA');\r\n&gt;   REAL_JOB_NAME           VARCHAR2(2 * ORA_MAX_NAME_LEN + 5) := JOB_NAME;\r\n&gt;   FULL_JOB_NAME           VARCHAR2(3 * ORA_MAX_NAME_LEN + 8);\r\n4392a4412,4429\r\n&gt;   SYS.DBMS_SYSTEM.READ_EV(27402, EV_27402);\r\n&gt;   IF BITAND(EV_27402,128)=128 THEN DO_TRC := TRUE; END IF;\r\n&gt;  \r\n&gt;   IF DO_TRC THEN\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Entered ' || \r\n&gt;           'dbms_scheduler.add_job_email_notification');\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   IF DO_TRC THEN\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current user: ' ||\r\n&gt;           CURRENT_USER );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Session user: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','SESSION_USER') );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current schema: ' ||\r\n&gt;           CUR_SCHEMA );\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   \r\n4424a4462,4497\r\n&gt;   \r\n&gt; \r\n&gt;   &lt;&lt;TRY_RESOLVE_AGAIN&gt;&gt;\r\n&gt; \r\n&gt;   \r\n&gt;   SYS.DBMS_ISCHED.RESOLVE3_NAME(REAL_JOB_NAME, CANON_JOB_NAME, \r\n&gt;     CANON_JOB_SUBNAME, CANON_JOB_OWNER, CUR_SCHEMA);\r\n&gt; \r\n&gt;   \r\n&gt;   FULL_JOB_NAME := SYS.DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_OWNER, FALSE) ||'.'||\r\n&gt;                    SYS.DBMS_ASSERT.ENQUOTE_NAME(CANON_JOB_NAME , FALSE);\r\n&gt; \r\n&gt;   \r\n&gt;   IF CURRENT_USER != CANON_JOB_OWNER AND CURRENT_USER != 'SYS' AND\r\n&gt;     BITAND(SYS_PRIVS, 2) = 0\r\n&gt;   THEN\r\n&gt;     \r\n&gt;     BEGIN\r\n&gt;       SYS.DBMS_ISCHED_UTL.CHECK_OBJECT_PRIVS(CANON_JOB_NAME, CANON_JOB_OWNER, \r\n&gt;         'JOB', CURRENT_USER, 'ALTER', TRUE, SYS_PRIVS);\r\n&gt;     EXCEPTION WHEN OTHERS THEN\r\n&gt;       \r\n&gt;       IF SQLCODE = -23306 AND CANON_JOB_SUBNAME IS NULL\r\n&gt;        AND REAL_JOB_NAME = JOB_NAME THEN\r\n&gt;         REAL_JOB_NAME := SYS.DBMS_ASSERT.ENQUOTE_NAME(CUR_SCHEMA, FALSE) ||\r\n&gt;                          '.' || JOB_NAME;\r\n&gt;         GOTO TRY_RESOLVE_AGAIN;\r\n&gt;       ELSE\r\n&gt;         RAISE;\r\n&gt;       END IF;\r\n&gt;     END;\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   \r\n&gt; \r\n&gt;   \r\n4427,4428c4500,4541\r\n&lt;     SYS_CONTEXT('USERENV','CURRENT_USER'), SYS_PRIVS,\r\n&lt;     SYS_CONTEXT('USERENV','CURRENT_SCHEMA'));\r\n---\r\n&gt;     CURRENT_USER, SYS_PRIVS,\r\n&gt;     CUR_SCHEMA,\r\n&gt;     LOCK_NAME, LOCK_HANDLE, RECIPIENTS_LIST, NEW_RAISE_EVENTS_NUM, \r\n&gt;     CANON_JOB_NAME, CANON_JOB_SUBNAME, CANON_JOB_OWNER, CUR_FLAGS,\r\n&gt;     DOES_SUB_EXIST, DOES_REG_EXIST, REAL_JOB_NAME);\r\n&gt; \r\n&gt;   \r\n&gt; \r\n&gt;   IF NOT DOES_SUB_EXIST THEN\r\n&gt;     \r\n&gt;     SYS.DBMS_AQADM.ENABLE_DB_ACCESS(LOCK_NAME,\r\n&gt;         SYS.DBMS_ASSERT.ENQUOTE_NAME(CURRENT_USER, FALSE));\r\n&gt;   END IF;\r\n&gt; \r\n&gt;   BEGIN\r\n&gt;     IF NOT DOES_REG_EXIST THEN\r\n&gt;     \r\n&gt;     \r\n&gt;     REGINFO := SYS.AQ$_REG_INFO('SYS.SCHEDULER$_EVENT_QUEUE:\"'||LOCK_NAME||'\"',\r\n&gt;                                 SYS.DBMS_AQ.NAMESPACE_AQ,\r\n&gt;                                 'plsql:\/\/SYS.SCHEDULER$_JOB_EVENT_HANDLER',\r\n&gt;                                  NULL);\r\n&gt;     REGLIST := SYS.AQ$_REG_INFO_LIST(REGINFO);\r\n&gt;     SYS.DBMS_AQ.REGISTER ( REGLIST, 1 );\r\n&gt;     END IF;\r\n&gt;   EXCEPTION WHEN OTHERS THEN\r\n&gt;     LOCK_ERROR := SYS.DBMS_LOCK.RELEASE(LOCKHANDLE=&gt;LOCK_HANDLE);\r\n&gt;     RAISE;\r\n&gt;   END;\r\n&gt; \r\n&gt;   \r\n&gt; \r\n&gt;   SYS.DBMS_ISCHED.ADD_JOB_EMAIL_NOTIFICATION_PH3(RECIPIENTS_LIST, \r\n&gt;      NEW_RAISE_EVENTS_NUM, CANON_JOB_NAME, CANON_JOB_SUBNAME, \r\n&gt;      CANON_JOB_OWNER, CURRENT_USER,\r\n&gt;      SENDER, SUBJECT, BODY, FILTER_CONDITION, LOCK_NAME, LOCK_HANDLE,\r\n&gt;      CUR_FLAGS, RECIPIENTS, EVENTS);\r\n&gt; \r\n&gt;   IF DO_TRC THEN\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Exiting' ||\r\n&gt;           'dbms_scheduler.add_job_email_notification');\r\n&gt;   END IF;\r\n<\/pre>\n<div id=\"SYS.DBMS_STATS.PACKAGE BODY.18.0.0.0_RU\">SYS.DBMS_STATS &#8211; PACKAGE BODY (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">15195,15198c15195,15200\r\n&lt;     TRANSFER_COLUMN_STATS(OWNER, DBMS_STATS_INTERNAL.DQ(TAB_NAME), EXTN_NAME, \r\n&lt;       NULL, NULL, NULL,\r\n&lt;       NULL, NULL, TRUE, TRUE, NULL, FALSE, FALSE, DSC_NON_FXT, TRUE, \r\n&lt;       'ALL', FALSE, NULL, TRUE);\r\n---\r\n&gt;     \r\n&gt;     \r\n&gt;     TRANSFER_COLUMN_STATS(DBMS_STATS_INTERNAL.DQ(OWNER), \r\n&gt;       DBMS_STATS_INTERNAL.DQ(TAB_NAME), DBMS_STATS_INTERNAL.DQ(EXTN_NAME),\r\n&gt;       NULL, NULL, NULL, NULL, NULL, TRUE, TRUE, NULL, FALSE, FALSE, \r\n&gt;       DSC_NON_FXT, TRUE, 'ALL', FALSE, NULL, TRUE);\r\n<\/pre>\n<div id=\"SYS.DBMS_FEATURE_ACTIVE_DATA_GUARD.PROCEDURE.18.0.0.0_RU\">SYS.DBMS_FEATURE_ACTIVE_DATA_GUARD &#8211; PROCEDURE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">64c64,65\r\n&lt;             'where (PARENT_DBUN not in ' ||\r\n---\r\n&gt;             'where (DEST_ROLE != ''LOGICAL STANDBY'') ' ||\r\n&gt;             'and (PARENT_DBUN not in ' ||\r\n<\/pre>\n<div id=\"SYS.SCHEDULER$_JOB_EVENT_HANDLER.PROCEDURE.18.0.0.0_RU\">SYS.SCHEDULER$_JOB_EVENT_HANDLER &#8211; PROCEDURE (RU):<\/div>\n<pre class=\"EnlighterJSRAW enlighter-collapse\" data-enlighter-language=\"diff\" data-enlighter-linenumbers=\"false\">32,34c32\r\n&lt;   NOTIF_OWNER            DBMS_ID := '';\r\n&lt;   NOTIF_OWNER_ID         PLS_INTEGER;\r\n&lt;   HAS_SYS_PRVLG          VARCHAR2(1) := 'N';\r\n---\r\n&gt;   CURRENT_USER           DBMS_ID := SYS_CONTEXT('USERENV','CURRENT_USER');\r\n38,43d35\r\n&lt;   \r\n&lt;   \r\n&lt;   \r\n&lt;   \r\n&lt; \r\n&lt;   \r\n49,52c41,46\r\n&lt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current user: '||\r\n&lt;                         SYS_CONTEXT('USERENV','CURRENT_USER'));\r\n&lt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Consumer name: '||\r\n&lt;                                           DESCR.CONSUMER_NAME);\r\n---\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Consumer name: ' || DESCR.CONSUMER_NAME);\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current user: ' || CURRENT_USER);\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Session user: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','SESSION_USER') );\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Current schema: ' ||\r\n&gt;           SYS_CONTEXT('USERENV','CURRENT_SCHEMA') );\r\n55a50,52\r\n&gt;    SYS_PRIVS := SYS.DBMS_SCHEDULER.CHECK_SYS_PRIVS();\r\n&gt; \r\n&gt;   \r\n75,117d71\r\n&lt; \r\n&lt;   \r\n&lt;   BEGIN\r\n&lt;     NOTIF_OWNER_ID := TO_NUMBER(REGEXP_SUBSTR(DESCR.CONSUMER_NAME, '[0-9]+$')); \r\n&lt;     SELECT NAME INTO NOTIF_OWNER FROM SYS.USER$ \r\n&lt;       WHERE USER#=NOTIF_OWNER_ID;\r\n&lt;   IF DO_TRC THEN\r\n&lt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Notification owner: '||\r\n&lt;                                 NOTIF_OWNER);\r\n&lt;   END IF;\r\n&lt;   EXCEPTION WHEN NO_DATA_FOUND THEN\r\n&lt;       SYS.DBMS_ISCHED.TRACE_EMAIL(\r\n&lt;         'No data found: notif_owner_id: ' || NOTIF_OWNER_ID);\r\n&lt;     WHEN OTHERS THEN RAISE;\r\n&lt;   END;\r\n&lt; \r\n&lt;   \r\n&lt;   SELECT DECODE(SIGN(COUNT(UNIQUE UP)),1, 'Y', 'N') \r\n&lt;     INTO HAS_SYS_PRVLG\r\n&lt;   FROM (\r\n&lt;     SELECT GRANTED_ROLE UP\r\n&lt;     FROM (\r\n&lt;       SELECT NULL GRANTEE,  USERNAME GRANTED_ROLE\r\n&lt;       FROM SYS.DBA_USERS\r\n&lt;       WHERE USERNAME = NOTIF_OWNER\r\n&lt;       UNION\r\n&lt;       SELECT GRANTEE, GRANTED_ROLE\r\n&lt;       FROM SYS.DBA_ROLE_PRIVS\r\n&lt;       UNION\r\n&lt;       SELECT GRANTEE, PRIVILEGE\r\n&lt;       FROM SYS.DBA_SYS_PRIVS\r\n&lt;     )\r\n&lt;     START WITH GRANTEE IS NULL\r\n&lt;     CONNECT BY GRANTEE = PRIOR GRANTED_ROLE\r\n&lt;   )\r\n&lt;   WHERE UP IN ('CREATE ANY JOB', \r\n&lt;                'MANAGE SCHEDULER', \r\n&lt;                'SCHEDULER_ADMIN');\r\n&lt; \r\n&lt;   IF DO_TRC THEN\r\n&lt;     SYS.DBMS_ISCHED.TRACE_EMAIL('has_sys_prvlg: '||\r\n&lt;                                 HAS_SYS_PRVLG);\r\n&lt;   END IF;\r\n124,125d77\r\n&lt;   \r\n&lt;   \r\n127,129c79,81\r\n&lt;   IF NOTIF_OWNER   != MESSAGE.OBJECT_OWNER  AND\r\n&lt;      NOTIF_OWNER   != 'SYS' AND\r\n&lt;      HAS_SYS_PRVLG != 'Y' \r\n---\r\n&gt;   IF CURRENT_USER != MESSAGE.OBJECT_OWNER  AND\r\n&gt;      CURRENT_USER != 'SYS' AND\r\n&gt;      BITAND(SYS_PRIVS,2) = 0 \r\n131,133c83,86\r\n&lt;       \r\n&lt;       SYS.DBMS_ISCHED_UTL.CHECK_OBJECT_PRIVS(MESSAGE.OBJECT_NAME , MESSAGE.OBJECT_OWNER, \r\n&lt;         'JOB', NOTIF_OWNER, 'ALTER', TRUE, 0);\r\n---\r\n&gt;     \r\n&gt;     SYS.DBMS_ISCHED_UTL.CHECK_OBJECT_PRIVS(MESSAGE.OBJECT_NAME,\r\n&gt;         MESSAGE.OBJECT_OWNER, 'JOB', CURRENT_USER,\r\n&gt;         'ALTER', TRUE, SYS_PRIVS);\r\n145,146d97\r\n&lt;   \r\n&lt;   \r\n149c100\r\n&lt;     NOTIF_OWNER, EVT_FLAG, SENDER_ARR, BODY_ARR, \r\n---\r\n&gt;     CURRENT_USER, EVT_FLAG, SENDER_ARR, BODY_ARR, \r\n353a305,308\r\n&gt; \r\n&gt;   IF DO_TRC THEN\r\n&gt;     SYS.DBMS_ISCHED.TRACE_EMAIL('Exiting job event handler.');\r\n&gt;   END IF;\r\n<\/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 October CPU: <a href=\"https:\/\/www.oracle.com\/technetwork\/security-advisory\/cpuoct2018-4428296.html\" target=\"_blank\" rel=\"noopener\">https:\/\/www.oracle.com\/technetwork\/security-advisory\/cpuoct2018-4428296.html<\/a><\/li>\n<\/ul>\n<b>Have you enjoyed? Please leave a comment or give a \ud83d\udc4d!<\/b>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style2 like-3878 jlk' href='javascript:void(0)' data-task='like' data-post_id='3878' 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-3878 lc'>0<\/span><\/a><\/div><\/div> <div class='status-3878 status align-left'><\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>Since 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. To check previous changes, follow the links below: Dissecting 171017 BP, PSU, RU and RUR Dissecting 180116 BP, PSU, RU and RUR Dissecting 180417 BP, PSU, RU &hellip; <\/p>\n<p><a class=\"more-link btn\" href=\"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/\">Continue lendo<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19,2],"tags":[],"class_list":["post-3878","post","type-post","status-publish","format-standard","hentry","category-security","category-database","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 181016 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides<\/title>\n<meta name=\"description\" content=\"All the changes performed by Oracle October Database CPU (181016) dissected.\" \/>\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\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"DBA RJ\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"58 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/\"},\"author\":{\"name\":\"DBA RJ\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\"},\"headline\":\"Dissecting 181016 BP, PSU, RU and RUR\",\"datePublished\":\"2018-11-26T22:15:23+00:00\",\"dateModified\":\"2018-12-04T14:01:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/\"},\"wordCount\":887,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\"},\"articleSection\":[\"Database Security\",\"Oracle Database General\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/\",\"url\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/\",\"name\":\"Dissecting 181016 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/#website\"},\"datePublished\":\"2018-11-26T22:15:23+00:00\",\"dateModified\":\"2018-12-04T14:01:14+00:00\",\"description\":\"All the changes performed by Oracle October Database CPU (181016) dissected.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/2018\\\/11\\\/dissecting-181016-bp-psu-ru-and-rur\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dissecting 181016 BP, PSU, RU and RUR\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/#website\",\"url\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/\",\"name\":\"DBA - Rodrigo Jorge - Oracle Tips and Guides\",\"description\":\"Blog about Databases, Security and High Availability\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.dbarj.com.br\\\/pt-br\\\/#\\\/schema\\\/person\\\/28a44ca3a6633fe4156ad1ea209d40a9\",\"name\":\"DBA RJ\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@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 181016 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides","description":"All the changes performed by Oracle October Database CPU (181016) dissected.","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\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/","twitter_misc":{"Escrito por":"DBA RJ","Est. tempo de leitura":"58 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/#article","isPartOf":{"@id":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/"},"author":{"name":"DBA RJ","@id":"https:\/\/www.dbarj.com.br\/pt-br\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9"},"headline":"Dissecting 181016 BP, PSU, RU and RUR","datePublished":"2018-11-26T22:15:23+00:00","dateModified":"2018-12-04T14:01:14+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/"},"wordCount":887,"commentCount":0,"publisher":{"@id":"https:\/\/www.dbarj.com.br\/pt-br\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9"},"articleSection":["Database Security","Oracle Database General"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/","url":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/","name":"Dissecting 181016 BP, PSU, RU and RUR - DBA - Rodrigo Jorge - Oracle Tips and Guides","isPartOf":{"@id":"https:\/\/www.dbarj.com.br\/pt-br\/#website"},"datePublished":"2018-11-26T22:15:23+00:00","dateModified":"2018-12-04T14:01:14+00:00","description":"All the changes performed by Oracle October Database CPU (181016) dissected.","breadcrumb":{"@id":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbarj.com.br\/pt-br\/2018\/11\/dissecting-181016-bp-psu-ru-and-rur\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.dbarj.com.br\/pt-br\/"},{"@type":"ListItem","position":2,"name":"Dissecting 181016 BP, PSU, RU and RUR"}]},{"@type":"WebSite","@id":"https:\/\/www.dbarj.com.br\/pt-br\/#website","url":"https:\/\/www.dbarj.com.br\/pt-br\/","name":"DBA - Rodrigo Jorge - Oracle Tips and Guides","description":"Blog about Databases, Security and High Availability","publisher":{"@id":"https:\/\/www.dbarj.com.br\/pt-br\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbarj.com.br\/pt-br\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":["Person","Organization"],"@id":"https:\/\/www.dbarj.com.br\/pt-br\/#\/schema\/person\/28a44ca3a6633fe4156ad1ea209d40a9","name":"DBA RJ","image":{"@type":"ImageObject","inLanguage":"pt-BR","@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\/pt-br\/wp-json\/wp\/v2\/posts\/3878","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/comments?post=3878"}],"version-history":[{"count":0,"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/posts\/3878\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/media?parent=3878"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/categories?post=3878"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbarj.com.br\/pt-br\/wp-json\/wp\/v2\/tags?post=3878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}