{"id":787,"date":"2020-08-17T19:39:39","date_gmt":"2020-08-17T22:39:39","guid":{"rendered":"https:\/\/www.fernandosimon.com\/blog\/?p=787"},"modified":"2020-08-24T19:44:46","modified_gmt":"2020-08-24T22:44:46","slug":"patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8","status":"publish","type":"post","link":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/","title":{"rendered":"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8"},"content":{"rendered":"<p style=\"text-align: justify;\">The process of patch ODA is not complicated but requires attention over some steps. The 19.6 version was the first that was possible to patch from 18.8 version, and the version that allows upgrades to newer. If you want to go directly to 19.5 you need to reimage of the appliance. In this post, I will cover the process that I made recently to patch from 18.3 to 19.8 version.<\/p>\n<p style=\"text-align: justify;\">The first part covers the upgrade from 18.3 to 18.8.<\/p>\n<h2 style=\"text-align: justify;\">Patch Matrix<\/h2>\n<p style=\"text-align: justify;\">The matrix of what can be done can be found at <a href=\"https:\/\/blogs.oracle.com\/oda\/oracle-database-19c-support-for-oracle-database-appliance\" target=\"_blank\" rel=\"noopener noreferrer\">this post from ODA blog<\/a>, and you can check below:<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-788 size-full\" src=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\" alt=\"\" width=\"963\" height=\"505\" srcset=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg 963w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix-300x157.jpg 300w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix-768x403.jpg 768w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix-624x327.jpg 624w\" sizes=\"auto, (max-width: 963px) 100vw, 963px\" \/><\/a>Another important detail is to check the MOS note <a href=\"https:\/\/support.oracle.com\/epmos\/faces\/DocContentDisplay?id=2680219.1\" target=\"_blank\" rel=\"noopener noreferrer\"><span id=\"kmPgTpl:sd_r1:0:dv_rDoc:0:ol22\" class=\"p_AFHoverTarget xq\">ODA: Quick Reference Matrix for Linux Release and Kernel by ODA Hardware Type and Version (Doc ID 2680219.1)<\/span><\/a> and verify if your hardware is still compatible.<\/p>\n<p style=\"text-align: justify;\">Remember that in this process, the ODA will reboot several times, so, you need to inform your teams that databases will be unavailable during the process.<\/p>\n<p style=\"text-align: justify;\"><!--more Click here to read more...--><\/p>\n<h2 style=\"text-align: justify;\">Actual environment<\/h2>\n<p style=\"text-align: justify;\">The environment is ODA X5-2, running the version 18.3. This same environment I reimaged last year, and you can see the steps that I made <a href=\"https:\/\/www.fernandosimon.com\/blog\/reimage-oda\/\" target=\"_blank\" rel=\"noopener noreferrer\">in a previous post<\/a>. And it running bare metal (BM).<\/p>\n<p style=\"text-align: justify;\">The first thing to do is to check the actual hardware about errors. If you have, please fix it before the start. Another important detail is to verify if your disks have smartctl warnings. To do that, execute <strong>smartctl -q errorsonly -H -l xerror \/dev\/DISK<\/strong>; If you have \u201c<em>SMART Health Status: WARNING: ascq=0x97 [asc=b, ascq=97]<\/em>\u201d report (or similar warning), please open an SR to replace the disks. Even the warning can lead to an error during the patch.<\/p>\n<p style=\"text-align: justify;\">I recommend you to save outside of ODA some config files from BOTH nodes (to have quick access in case you need):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 ~]# mkdir \/nfs\/ODA_PATCH_18\/bkp_files_odat1\r\n[root@odat1 ~]# cp \/etc\/hosts \/nfs\/ODA_PATCH_18\/bkp_files_odat1\r\n[root@odat1 ~]# cp \/etc\/fstab \/nfs\/ODA_PATCH_18\/bkp_files_odat1\r\n[root@odat1 ~]# cp \/etc\/resolv.conf \/nfs\/ODA_PATCH_18\/bkp_files_odat1\r\n[root@odat1 ~]# cp \/etc\/sysconfig\/network-scripts\/* \/nfs\/ODA_PATCH_18\/bkp_files_odat1\/\r\ncp: omitting directory `\/etc\/sysconfig\/network-scripts\/backupifcfgFiles'\r\ncp: omitting directory `\/etc\/sysconfig\/network-scripts\/bkupIfcfgOrig'\r\n[root@odat1 ~]#\r\n[root@odat1 ~]# cp \/u01\/app\/18.0.0.0\/grid\/network\/admin\/listener* \/nfs\/ODA_PATCH_18\/bkp_files_odat1\/\r\n[root@odat1 ~]#<\/pre>\n<p style=\"text-align: justify;\">Another detail before the start is to check the actual components and running versions. To do that we execute the <em>odacli describe-component<\/em>:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 ~]# odacli describe-component\r\nSystem Version\r\n---------------\r\n18.3.0.0.0\r\n\r\nSystem node Name\r\n---------------\r\nodat1\r\n\r\nLocal System Version\r\n---------------\r\n18.3.0.0.0\r\n\r\nComponent                                Installed Version    Available Version\r\n---------------------------------------- -------------------- --------------------\r\nOAK                                       18.3.0.0.0            up-to-date\r\n\r\nGI                                        18.3.0.0.180717       up-to-date\r\n\r\nDB {\r\n[ OraDB18000_home1 ]                      18.3.0.0.180717       up-to-date\r\n[ OraDB12102_home1,OraDB12102_home2 ]     12.1.0.2.180717       up-to-date\r\n[ OraDB11204_home1,OraDB11204_home2 ]     11.2.0.4.180717       up-to-date\r\n}\r\n\r\nDCSAGENT                                  18.3.0.0.0            up-to-date\r\n\r\nILOM                                      4.0.2.26.b.r125868    up-to-date\r\n\r\nBIOS                                      30130500              up-to-date\r\n\r\nOS                                        6.10                  up-to-date\r\n\r\nFIRMWARECONTROLLER {\r\n[ c0 ]                                    4.650.00-7176         up-to-date\r\n[ c1,c2 ]                                 13.00.00.00           up-to-date\r\n}\r\n\r\nFIRMWAREEXPANDER                          0018                  up-to-date\r\n\r\nFIRMWAREDISK {\r\n[ c0d0,c0d1 ]                             A7E0                  up-to-date\r\n[ c1d0,c1d15,c2d0,c2d15 ]                 PD51                  pag1\r\n[ c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,c1d7,     PAG1                  up-to-date\r\nc1d8,c1d9,c1d10,c1d11,c1d12,c1d13,c1d14,\r\nc2d1,c2d2,c2d3,c2d4,c2d5,c2d6,c2d7,c2d8,\r\nc2d9,c2d10,c2d11,c2d12,c2d13,c2d14 ]\r\n[ c1d16,c1d17,c1d18,c1d19,c1d20,c1d21,    A29A                  up-to-date\r\nc1d22,c1d23,c2d16,c2d17,c2d18,c2d19,\r\nc2d20,c2d21,c2d22,c2d23 ]\r\n}\r\n\r\nSystem node Name\r\n---------------\r\nodat2\r\n\r\nLocal System Version\r\n---------------\r\n18.3.0.0.0\r\n\r\nComponent                                Installed Version    Available Version\r\n---------------------------------------- -------------------- --------------------\r\nOAK                                       18.3.0.0.0            up-to-date\r\n\r\nGI                                        18.3.0.0.180717       up-to-date\r\n\r\nDB {\r\n[ OraDB18000_home1 ]                      18.3.0.0.180717       up-to-date\r\n[ OraDB12102_home1,OraDB12102_home2 ]     12.1.0.2.180717       up-to-date\r\n[ OraDB11204_home1,OraDB11204_home2 ]     11.2.0.4.180717       up-to-date\r\n}\r\n\r\nDCSAGENT                                  18.3.0.0.0            up-to-date\r\n\r\nILOM                                      4.0.2.26.b.r125868    up-to-date\r\n\r\nBIOS                                      30130500              up-to-date\r\n\r\nOS                                        6.10                  up-to-date\r\n\r\nFIRMWARECONTROLLER {\r\n[ c0 ]                                    4.650.00-7176         up-to-date\r\n[ c1,c2 ]                                 13.00.00.00           up-to-date\r\n}\r\n\r\nFIRMWAREEXPANDER                          0018                  up-to-date\r\n\r\nFIRMWAREDISK {\r\n[ c0d0,c0d1 ]                             A7E0                  up-to-date\r\n[ c1d0,c1d15,c2d0,c2d15 ]                 PD51                  pag1\r\n[ c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,c1d7,     PAG1                  up-to-date\r\nc1d8,c1d9,c1d10,c1d11,c1d12,c1d13,c1d14,\r\nc2d1,c2d2,c2d3,c2d4,c2d5,c2d6,c2d7,c2d8,\r\nc2d9,c2d10,c2d11,c2d12,c2d13,c2d14 ]\r\n[ c1d16,c1d17,c1d18,c1d19,c1d20,c1d21,    A29A                  up-to-date\r\nc1d22,c1d23,c2d16,c2d17,c2d18,c2d19,\r\nc2d20,c2d21,c2d22,c2d23 ]\r\n}\r\n\r\n\r\n[root@odat1 ~]#<\/pre>\n<p style=\"text-align: justify;\">Check above that some disks are running the firmware PD51. This occurs because they were changed after the 18.3 version and the firmware is newer than the one that exists at 18.3. If you have something that you want to update you can call the <em>odacli update-storage<\/em> to do the update. Remember that doing this the ODA nodes can reboot.<\/p>\n<h2 style=\"text-align: justify;\">18.8<\/h2>\n<p style=\"text-align: justify;\">The first thing to do is download the patch ODA of 18.8 version using the patch 30518425. since you will have some reboot during the process, is required to stop the databases. I recommend stopping all databases running to speed up the process. This reduces the load over ASM and to stop\/start GI (done internally during the process).<\/p>\n<p style=\"text-align: justify;\">Another point is about HAIP. The HAIP needs to be disabled after you patch the 18.8. If you are coming from a reimaged 18.3 version (like me in this case), the patch process will disable HAIP automatically (since it was never configured), but if your 18.3 came because you already upgrade is from 12.x version, you need to manually disable it.<\/p>\n<p style=\"text-align: justify;\">The process to disable it is not quite simple because evolve CRS and cluster definitions. I made this for Exadata\/ZDLRA and you can check in this <a href=\"https:\/\/www.fernandosimon.com\/blog\/exadata-and-zdlra-disable-haip\/\" target=\"_blank\" rel=\"noopener noreferrer\">previous post<\/a>. To ODA you can check <a href=\"https:\/\/www.luxoug.org\/how-to-remove-haip-on-oda-18-8-0-0-0\/\" target=\"_blank\" rel=\"noopener noreferrer\">this post<\/a>. Or <a href=\"https:\/\/docs.oracle.com\/en\/engineered-systems\/oracle-database-appliance\/18.8\/cmtxn\/patching-oda.html#GUID-24C39800-90EB-49E4-92DF-F68B05FEE52D\" target=\"_blank\" rel=\"noopener noreferrer\">read the ODA<\/a> documentation. Disable HAIP is done after patch to 18.8, and not before.<\/p>\n<h3 style=\"text-align: justify;\">Update Repository<\/h3>\n<p style=\"text-align: justify;\">The first step is to upload the unzipped patch files at the internal ODA repository. This process is done using the <strong>odacli update-repository<\/strong> and you pass the full path to unzip patch files (here my files are in NFS folder):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli update-repository -f \/nfs\/ODA_PATCH_18\/18.8\/oda-sm-18.8.0.0.0-200209-server1of2.zip,\/nfs\/ODA_PATCH_18\/18.8\/oda-sm-18.8.0.0.0-200209-server2of2.zip\r\n{\r\n  \"jobId\" : \"3368e5ba-f5da-4e07-af69-f9f51c29517e\",\r\n  \"status\" : \"Created\",\r\n  \"message\" : \"\/nfs\/ODA_PATCH_18\/18.8\/oda-sm-18.8.0.0.0-200209-server1of2.zip,\/nfs\/ODA_PATCH_18\/18.8\/oda-sm-18.8.0.0.0-200209-server2of2.zip\",\r\n  \"reports\" : [ ],\r\n  \"createTimestamp\" : \"July 25, 2020 10:10:35 AM CEST\",\r\n  \"resourceList\" : [ ],\r\n  \"description\" : \"Repository Update\",\r\n  \"updatedTime\" : \"July 25, 2020 10:10:35 AM CEST\"\r\n}\r\n[root@odat1 18.8]#<\/pre>\n<p style=\"text-align: justify;\">This generates one jobId that you can follow until it ends using <em>odacli describe-job<\/em>:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i  \"3368e5ba-f5da-4e07-af69-f9f51c29517e\"\r\n\r\nJob details\r\n----------------------------------------------------------------\r\n                     ID:  3368e5ba-f5da-4e07-af69-f9f51c29517e\r\n            Description:  Repository Update\r\n                 Status:  Success\r\n                Created:  July 25, 2020 10:10:35 AM CEST\r\n                Message:  \/nfs\/ODA_PATCH_18\/18.8\/oda-sm-18.8.0.0.0-200209-server1of2.zip,\/nfs\/ODA_PATCH_18\/18.8\/oda-sm-18.8.0.0.0-200209-server2of2.zip\r\n\r\nTask Name                                Start Time                          End Time                            Status\r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nCheck AvailableSpace                     July 25, 2020 10:10:36 AM CEST      July 25, 2020 10:10:36 AM CEST      Success\r\nSetting up ssh equivalance               July 25, 2020 10:10:37 AM CEST      July 25, 2020 10:10:37 AM CEST      Success\r\nCopy BundleFile                          July 25, 2020 10:10:38 AM CEST      July 25, 2020 10:13:41 AM CEST      Success\r\nValidating CopiedFile                    July 25, 2020 10:13:41 AM CEST      July 25, 2020 10:14:05 AM CEST      Success\r\nUnzip bundle                             July 25, 2020 10:14:05 AM CEST      July 25, 2020 10:29:48 AM CEST      Success\r\nUnzip bundle                             July 25, 2020 10:29:48 AM CEST      July 25, 2020 10:31:43 AM CEST      Success\r\nDelete PatchBundles                      July 25, 2020 10:31:43 AM CEST      July 25, 2020 10:31:44 AM CEST      Success\r\nRemoving ssh keys                        July 25, 2020 10:31:44 AM CEST      July 25, 2020 10:53:37 AM CEST      Success\r\n\r\n[root@odat1 18.8]#<\/pre>\n<h3 style=\"text-align: justify;\">DCSAgent<\/h3>\n<p style=\"text-align: justify;\">The next step is to update the internal DCS agent for ODA 18.3. This is a simple step done using the <strong>odacli update-dcsagent<\/strong>. Check that the version 18.8.0.0 was specified as a parameter:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli update-dcsagent -v 18.8.0.0.0\r\n{\r\n  \"jobId\" : \"38eed874-b2ab-4124-934a-e81c26376587\",\r\n  \"status\" : \"Created\",\r\n  \"message\" : \"Dcs agent will be restarted after the update. Please wait for 2-3 mins before executing the other commands\",\r\n  \"reports\" : [ ],\r\n  \"createTimestamp\" : \"July 25, 2020 10:58:14 AM CEST\",\r\n  \"resourceList\" : [ ],\r\n  \"description\" : \"DcsAgent patching\",\r\n  \"updatedTime\" : \"July 25, 2020 10:58:14 AM CEST\"\r\n}\r\n[root@odat1 18.8]#<\/pre>\n<p style=\"text-align: justify;\">And again, you can check the jobId and wait it finish:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i \"38eed874-b2ab-4124-934a-e81c26376587\"\r\n\r\nJob details\r\n----------------------------------------------------------------\r\n                     ID:  38eed874-b2ab-4124-934a-e81c26376587\r\n            Description:  DcsAgent patching\r\n                 Status:  Success\r\n                Created:  July 25, 2020 10:58:14 AM CEST\r\n                Message:\r\n\r\nTask Name                                Start Time                          End Time                            Status\r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\ndcs-agent upgrade                        July 25, 2020 10:58:15 AM CEST      July 25, 2020 11:00:01 AM CEST      Success\r\ndcs-agent upgrade                        July 25, 2020 11:00:01 AM CEST      July 25, 2020 11:01:35 AM CEST      Success\r\nUpdate System version                    July 25, 2020 11:01:37 AM CEST      July 25, 2020 11:01:37 AM CEST      Success\r\nUpdate System version                    July 25, 2020 11:01:37 AM CEST      July 25, 2020 11:01:37 AM CEST      Success\r\n\r\n[root@odat1 18.8]#<\/pre>\n<p style=\"text-align: justify;\">Don\u2019t worry because this update will restart the DCS and for a moment the odacli will not work and can report errors (again, don\u2019t worry, it returns after a little time):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i \"38eed874-b2ab-4124-934a-e81c26376587\"\r\nDCS-10001:Internal error encountered: Fail to get credential .\r\n[root@odat1 18.8]#\r\n[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i \"38eed874-b2ab-4124-934a-e81c26376587\"\r\nDCS-10001:Internal error encountered: Fail to start hand shake to localhost:7070.\r\n[root@odat1 18.8]#<\/pre>\n<h3 style=\"text-align: justify;\">DCSAdmin<\/h3>\n<p style=\"text-align: justify;\">The next step will be to update the dcsadmin using the command <strong>oracle update-dcsadmin<\/strong>:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli update-dcsadmin -v 18.8.0.0.0\r\n{\r\n  \"jobId\" : \"78ee826d-4266-4983-a7d8-269ccc959620\",\r\n  \"status\" : \"Created\",\r\n  \"message\" : null,\r\n  \"reports\" : [ ],\r\n  \"createTimestamp\" : \"July 25, 2020 11:03:34 AM CEST\",\r\n  \"resourceList\" : [ ],\r\n  \"description\" : \"DcsAdmin patching\",\r\n  \"updatedTime\" : \"July 25, 2020 11:03:34 AM CEST\"\r\n}\r\n[root@odat1 18.8]#\r\n[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i \"78ee826d-4266-4983-a7d8-269ccc959620\"\r\n\r\nJob details\r\n----------------------------------------------------------------\r\n                     ID:  78ee826d-4266-4983-a7d8-269ccc959620\r\n            Description:  DcsAdmin patching\r\n                 Status:  Success\r\n                Created:  July 25, 2020 11:03:34 AM CEST\r\n                Message:\r\n\r\nTask Name                                Start Time                          End Time                            Status\r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nPatch location validation                July 25, 2020 11:03:36 AM CEST      July 25, 2020 11:03:36 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:03:36 AM CEST      July 25, 2020 11:03:36 AM CEST      Success\r\ndcs-admin upgrade                        July 25, 2020 11:03:37 AM CEST      July 25, 2020 11:03:38 AM CEST      Success\r\ndcs-admin upgrade                        July 25, 2020 11:03:38 AM CEST      July 25, 2020 11:03:39 AM CEST      Success\r\nUpdate System version                    July 25, 2020 11:03:40 AM CEST      July 25, 2020 11:03:41 AM CEST      Success\r\nUpdate System version                    July 25, 2020 11:03:41 AM CEST      July 25, 2020 11:03:41 AM CEST      Success\r\n\r\n[root@odat1 18.8]#<\/pre>\n<h3 style=\"text-align: justify;\">DCSComponents<\/h3>\n<p style=\"text-align: justify;\">The next is to update the dcscomponents with command <strong>odacli update-dcscomponents<\/strong>. And here one detail. The commands will generate one jobID, but will be invalid and you need to use the command \u201c<strong>odacli list-jobs<\/strong>\u201d to see the jobs (will be just updated SSH keys \u2013 two jobs):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli update-dcscomponents -v 18.8.0.0.0\r\n{\r\n  \"jobId\" : \"513d54f5-2f84-433d-8b60-8cdd705a29c5\",\r\n  \"status\" : \"Success\",\r\n  \"message\" : null,\r\n  \"reports\" : null,\r\n  \"createTimestamp\" : \"July 25, 2020 11:05:56 AM CEST\",\r\n  \"description\" : \"Job completed and is not part of Agent job list\",\r\n  \"updatedTime\" : \"July 25, 2020 11:05:56 AM CEST\"\r\n}\r\n[root@odat1 18.8]#\r\n[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i 513d54f5-2f84-433d-8b60-8cdd705a29c5\r\nDCS-10000:Resource Job with ID 513d54f5-2f84-433d-8b60-8cdd705a29c5 is not found.\r\n[root@odat1 18.8]#\r\n[root@odat1 18.8]# odacli list-jobs\r\n\r\nID                                       Description                                                                 Created                             Status\r\n---------------------------------------- --------------------------------------------------------------------------- ----------------------------------- ----------\r\n...\r\n...\r\n3368e5ba-f5da-4e07-af69-f9f51c29517e     Repository Update                                                           July 25, 2020 10:10:35 AM CEST      Success\r\n38eed874-b2ab-4124-934a-e81c26376587     DcsAgent patching                                                           July 25, 2020 10:58:14 AM CEST      Success\r\n78ee826d-4266-4983-a7d8-269ccc959620     DcsAdmin patching                                                           July 25, 2020 11:03:34 AM CEST      Success\r\nbcaff693-05f5-4a47-b919-a7c40b4f5616     SSH keys update                                                             July 25, 2020 11:06:19 AM CEST      Success\r\n07e98fb0-a334-483f-a772-f838f48228bf     SSH key delete                                                              July 25, 2020 11:06:24 AM CEST      Success\r\n\r\n[root@odat1 18.8]#<\/pre>\n<h3 style=\"text-align: justify;\">Create-prepatchreport<\/h3>\n<p style=\"text-align: justify;\">The next step is to verify if you can update it to 18.8 or no. The odacli will do a lot of tests for the operational system, GI, and ILOM. To do that, we just need to call <strong>odacli create-prepatchreport<\/strong>, and after that use the <strong>odacli describe-prepatchreport<\/strong> to check the report.<\/p>\n<p style=\"text-align: justify;\">Some known issues can be checked before. <strong>One that I passed was the existence of \/u01\/app\/oraInventory\/locks. I needed to remove it from both nodes to have success at the report<\/strong>. Besides I receive:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">__GI__\r\nValidate supported GI versions  Success   Validated minimum supported versions\r\nValidate available space        Success   Validated free space under \/u01\r\nVerify DB Home versions         Success   Verified DB Home versions\r\nValidate patching locks         Failed    Internal error encountered:\r\n                                          \/u01\/app\/oraInventory\/locks.\r\n\r\n\r\n\r\n[root@odat1 18.8]#<\/pre>\n<p style=\"text-align: justify;\">The call for patchreport:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli create-prepatchreport -s -v 18.8.0.0.0\r\n\r\nJob details\r\n----------------------------------------------------------------\r\n                     ID:  3d7c2782-a044-4db2-a912-4e9587920438\r\n            Description:  Patch pre-checks for [OS, ILOM, GI]\r\n                 Status:  Created\r\n                Created:  July 25, 2020 11:25:39 AM CEST\r\n                Message:\r\n\r\nTask Name                                Start Time                          End Time                            Status\r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\n\r\n[root@odat1 18.8]#\r\n[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-prepatchreport -i 3d7c2782-a044-4db2-a912-4e9587920438\r\n\r\nPatch pre-check report\r\n------------------------------------------------------------------------\r\n                 Job ID:  3d7c2782-a044-4db2-a912-4e9587920438\r\n            Description:  Patch pre-checks for [OS, ILOM, GI]\r\n                 Status:  SUCCESS\r\n                Created:  July 25, 2020 11:25:39 AM CEST\r\n                 Result:  All pre-checks succeeded\r\n\r\nNode Name\r\n---------------\r\nodat1\r\n\r\nPre-Check                      Status   Comments\r\n------------------------------ -------- --------------------------------------\r\n__OS__\r\nValidate supported versions     Success   Validated minimum supported versions\r\nValidate patching tag           Success   Validated patching tag: 18.8.0.0.0\r\nIs patch location available     Success   Patch location is available\r\nVerify OS patch                 Success   There are no packages available for\r\n                                          an update\r\n\r\n__ILOM__\r\nValidate supported versions     Success   Validated minimum supported versions\r\nValidate patching tag           Success   Validated patching tag: 18.8.0.0.0\r\nIs patch location available     Success   Patch location is available\r\nChecking Ilom patch Version     Success   Successfully verified the versions\r\nPatch location validation       Success   Successfully validated location\r\n\r\n__GI__\r\nValidate supported GI versions  Success   Validated minimum supported versions\r\nValidate available space        Success   Validated free space under \/u01\r\nVerify DB Home versions         Success   Verified DB Home versions\r\nValidate patching locks         Success   Validated patching locks\r\n\r\nNode Name\r\n---------------\r\nodat2\r\n\r\nPre-Check                      Status   Comments\r\n------------------------------ -------- --------------------------------------\r\n__OS__\r\nValidate supported versions     Success   Validated minimum supported versions\r\nValidate patching tag           Success   Validated patching tag: 18.8.0.0.0\r\nIs patch location available     Success   Patch location is available\r\nVerify OS patch                 Success   There are no packages available for\r\n                                          an update\r\n\r\n__ILOM__\r\nValidate supported versions     Success   Validated minimum supported versions\r\nValidate patching tag           Success   Validated patching tag: 18.8.0.0.0\r\nIs patch location available     Success   Patch location is available\r\nChecking Ilom patch Version     Success   Successfully verified the versions\r\nPatch location validation       Success   Successfully validated location\r\n\r\n__GI__\r\nValidate supported GI versions  Success   Validated minimum supported versions\r\nValidate available space        Success   Validated free space under \/u01\r\nVerify DB Home versions         Success   Verified DB Home versions\r\nValidate patching locks         Success   Validated patching locks\r\n\r\n\r\n\r\n[root@odat1 18.8]#<\/pre>\n<p style=\"text-align: justify;\">With success results, we can continue the patch. Without that, don\u2019t try to continue (besides if there is a known issue that can be ignored \u2013 we will talk about that later).<\/p>\n<h3 style=\"text-align: justify;\">Stop TFA<\/h3>\n<p style=\"text-align: justify;\">Before continue is a requirement stop TFA in both nodes. This is needed because will be changed the version and upgraded to AHF. So, we call <strong>\/etc\/init.d\/init.tfa stop <\/strong>in both nodes:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/etc\/init.d\/init.tfa stop\r\nStopping TFA from init for shutdown\/reboot\r\noracle-tfa stop\/waiting\r\nWARNING - TFA Software is older than 180 days. Please consider upgrading TFA to the latest version.\r\nNothing to do !\r\nKilling TFA running with pid 20464\r\n. . .\r\nSuccessfully stopped TFA..\r\n[root@odat1 18.8]#\r\n\r\n###############################################################\r\n#NODE 2\r\n###############################################################\r\n[root@odat2 ~]# \/etc\/init.d\/init.tfa stop\r\nStopping TFA from init for shutdown\/reboot\r\noracle-tfa stop\/waiting\r\nWARNING - TFA Software is older than 180 days. Please consider upgrading TFA to the latest version.\r\nNothing to do !\r\nKilling TFA running with pid 49871\r\n. . .\r\nSuccessfully stopped TFA..\r\n[root@odat2 ~]#<\/pre>\n<h3 style=\"text-align: justify;\">Update-server<\/h3>\n<p style=\"text-align: justify;\">After the success of the report, we can call the <strong>odacli update-server<\/strong>. And here the magic occurs, the O.S. is updated, GI, and ILOM too:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli update-server -v 18.8.0.0.0\r\n{\r\n  \"jobId\" : \"5d27346e-1afd-4a1c-9e79-3e3b5d523244\",\r\n  \"status\" : \"Created\",\r\n  \"message\" : \"Success of Server Update may trigger reboot of node after 4-5 minutes. Please wait till node restart\",\r\n  \"reports\" : [ ],\r\n  \"createTimestamp\" : \"July 25, 2020 11:31:56 AM CEST\",\r\n  \"resourceList\" : [ ],\r\n  \"description\" : \"Server Patching\",\r\n  \"updatedTime\" : \"July 25, 2020 11:31:56 AM CEST\"\r\n}\r\n[root@odat1 18.8]#<\/pre>\n<p>As you imagine, a jobIB is generated and we can follow it until it finishes:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 18.8]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i \"5d27346e-1afd-4a1c-9e79-3e3b5d523244\"\r\n\r\nJob details\r\n----------------------------------------------------------------\r\n                     ID:  5d27346e-1afd-4a1c-9e79-3e3b5d523244\r\n            Description:  Server Patching\r\n                 Status:  Success\r\n                Created:  July 25, 2020 11:31:56 AM CEST\r\n                Message:\r\n\r\nTask Name                                Start Time                          End Time                            Status\r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nPatch location validation                July 25, 2020 11:32:08 AM CEST      July 25, 2020 11:32:08 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:32:08 AM CEST      July 25, 2020 11:32:08 AM CEST      Success\r\ndcs-controller upgrade                   July 25, 2020 11:32:08 AM CEST      July 25, 2020 11:32:13 AM CEST      Success\r\ndcs-controller upgrade                   July 25, 2020 11:32:13 AM CEST      July 25, 2020 11:32:18 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:32:21 AM CEST      July 25, 2020 11:32:21 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:32:21 AM CEST      July 25, 2020 11:32:21 AM CEST      Success\r\ndcs-cli upgrade                          July 25, 2020 11:32:22 AM CEST      July 25, 2020 11:32:23 AM CEST      Success\r\ndcs-cli upgrade                          July 25, 2020 11:32:23 AM CEST      July 25, 2020 11:32:24 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:33 AM CEST      July 25, 2020 11:32:41 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:41 AM CEST      July 25, 2020 11:32:41 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:42 AM CEST      July 25, 2020 11:32:42 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:42 AM CEST      July 25, 2020 11:32:42 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:43 AM CEST      July 25, 2020 11:32:43 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:43 AM CEST      July 25, 2020 11:32:43 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:32:43 AM CEST      July 25, 2020 11:32:43 AM CEST      Success\r\nUpdating YumPluginVersionLock rpm        July 25, 2020 11:32:44 AM CEST      July 25, 2020 11:32:44 AM CEST      Success\r\nApplying OS Patches                      July 25, 2020 11:32:45 AM CEST      July 25, 2020 11:45:19 AM CEST      Success\r\nCreating repositories using yum          July 25, 2020 11:45:20 AM CEST      July 25, 2020 11:45:21 AM CEST      Success\r\nApplying HMP Patches                     July 25, 2020 11:45:21 AM CEST      July 25, 2020 11:45:52 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:45:53 AM CEST      July 25, 2020 11:45:53 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:45:53 AM CEST      July 25, 2020 11:45:53 AM CEST      Success\r\noda-hw-mgmt upgrade                      July 25, 2020 11:45:54 AM CEST      July 25, 2020 11:46:25 AM CEST      Success\r\noda-hw-mgmt upgrade                      July 25, 2020 11:46:25 AM CEST      July 25, 2020 11:46:59 AM CEST      Success\r\nOSS Patching                             July 25, 2020 11:47:00 AM CEST      July 25, 2020 11:47:00 AM CEST      Success\r\nApplying Firmware Disk Patches           July 25, 2020 11:47:27 AM CEST      July 25, 2020 11:47:42 AM CEST      Success\r\nApplying Firmware Expander Patches       July 25, 2020 11:48:01 AM CEST      July 25, 2020 11:48:13 AM CEST      Success\r\nApplying Firmware Controller Patches     July 25, 2020 11:48:31 AM CEST      July 25, 2020 11:48:41 AM CEST      Success\r\nChecking Ilom patch Version              July 25, 2020 11:48:43 AM CEST      July 25, 2020 11:48:46 AM CEST      Success\r\nChecking Ilom patch Version              July 25, 2020 11:48:46 AM CEST      July 25, 2020 11:48:48 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:48:48 AM CEST      July 25, 2020 11:48:49 AM CEST      Success\r\nPatch location validation                July 25, 2020 11:48:48 AM CEST      July 25, 2020 11:48:49 AM CEST      Success\r\nSave password in Wallet                  July 25, 2020 11:48:51 AM CEST      July 25, 2020 11:48:51 AM CEST      Success\r\nApply Ilom patch                         July 25, 2020 11:48:52 AM CEST      July 25, 2020 12:01:47 PM CEST      Success\r\nApply Ilom patch                         July 25, 2020 12:01:47 PM CEST      July 25, 2020 12:14:11 PM CEST      Success\r\nCopying Flash Bios to Temp location      July 25, 2020 12:14:11 PM CEST      July 25, 2020 12:14:12 PM CEST      Success\r\nCopying Flash Bios to Temp location      July 25, 2020 12:14:12 PM CEST      July 25, 2020 12:14:12 PM CEST      Success\r\nStarting the clusterware                 July 25, 2020 12:15:57 PM CEST      July 25, 2020 12:17:24 PM CEST      Success\r\nclusterware patch verification           July 25, 2020 12:24:48 PM CEST      July 25, 2020 12:24:50 PM CEST      Success\r\nclusterware patch verification           July 25, 2020 12:24:48 PM CEST      July 25, 2020 12:24:50 PM CEST      Success\r\nPatch location validation                July 25, 2020 12:24:50 PM CEST      July 25, 2020 12:25:03 PM CEST      Success\r\nPatch location validation                July 25, 2020 12:24:50 PM CEST      July 25, 2020 12:25:03 PM CEST      Success\r\nOpatch updation                          July 25, 2020 12:25:48 PM CEST      July 25, 2020 12:25:53 PM CEST      Success\r\nOpatch updation                          July 25, 2020 12:25:48 PM CEST      July 25, 2020 12:25:54 PM CEST      Success\r\nPatch conflict check                     July 25, 2020 12:25:54 PM CEST      July 25, 2020 12:27:04 PM CEST      Success\r\nPatch conflict check                     July 25, 2020 12:27:07 PM CEST      July 25, 2020 12:28:23 PM CEST      Success\r\nclusterware upgrade                      July 25, 2020 12:28:24 PM CEST      July 25, 2020 12:50:42 PM CEST      Success\r\nclusterware upgrade                      July 25, 2020 12:50:42 PM CEST      July 25, 2020 1:15:15 PM CEST       Success\r\nUpdating GiHome version                  July 25, 2020 1:15:16 PM CEST       July 25, 2020 1:15:21 PM CEST       Success\r\nUpdating GiHome version                  July 25, 2020 1:15:16 PM CEST       July 25, 2020 1:15:21 PM CEST       Success\r\nUpdate System version                    July 25, 2020 1:16:21 PM CEST       July 25, 2020 1:16:21 PM CEST       Success\r\nUpdate System version                    July 25, 2020 1:16:22 PM CEST       July 25, 2020 1:16:22 PM CEST       Success\r\npreRebootNode Actions                    July 25, 2020 1:16:22 PM CEST       July 25, 2020 1:17:04 PM CEST       Success\r\npreRebootNode Actions                    July 25, 2020 1:17:04 PM CEST       July 25, 2020 1:17:45 PM CEST       Success\r\nReboot Ilom                              July 25, 2020 1:17:46 PM CEST       July 25, 2020 1:17:46 PM CEST       Success\r\nReboot Ilom                              July 25, 2020 1:17:46 PM CEST       July 25, 2020 1:17:46 PM CEST       Success\r\n\r\n[root@odat1 18.8]#<\/pre>\n<p>In ODAX5-2 this process took al most two hours. And passed all the updates. If you follow the <strong>\/opt\/oracle\/dcs\/log\/dcs-agent.log<\/strong> you can see more detail like:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">...  \r\n...\r\n2020-07-25 12:20:14,275 INFO [Disable haip feature : JobId=5d27346e-1afd-4a1c-9e79-3e3b5d523244] [] c.o.d.a.z.DCSZQueue: Node not yet received for: \/nodes\/node_1\/cmd-out-q with prefix:323_5973_\r\n2020-07-25 12:20:16,276 INFO [Disable haip feature : JobId=5d27346e-1afd-4a1c-9e79-3e3b5d523244] [] c.o.d.a.z.DCSZQueue: Node not yet received for: \/nodes\/node_1\/cmd-out-q with prefix:323_5973_\r\n2020-07-25 12:20:18,277 INFO [Disable haip feature : JobId=5d27346e-1afd-4a1c-9e79-3e3b5d523244] [] c.o.d.a.z.DCSZQueue: Node not yet received for: \/nodes\/node_1\/cmd-out-q with prefix:323_5973_\r\n...\r\n...\r\n2020-07-25 12:25:54,991 DEBUG [Patch conflict check : JobId=5d27346e-1afd-4a1c-9e79-3e3b5d523244] [] c.o.d.c.u.CommonsUtils:\r\nrun: cmd= '[\/u01\/app\/18.0.0.0\/grid\/OPatch\/opatchauto,\r\n apply,\r\n \/u01\/patching\/18.8.0.0.191015\/30518456,\r\n -analyze,\r\n -oh,\r\n \/u01\/app\/18.0.0.0\/grid,\r\n -log,\r\n \/tmp\/opatchAutoAnalyzePatch.log,\r\n -inplace]'\r\n...\r\n...<\/pre>\n<p style=\"text-align: justify;\">After this jobID finishes, the ODA will reboot (between the end of the job and reboot can be around 10 minutes).<\/p>\n<h3 style=\"text-align: justify;\">Update-storage<\/h3>\n<p style=\"text-align: justify;\">The last step is to patch the storage with command <strong>odacli update-storage<\/strong>. This is needed because the previous step does not updates the firmware of the disks as an example.<\/p>\n<p style=\"text-align: justify;\">You can see from <strong>odacli describe-component<\/strong> that some part are not up to date:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 ~]# \/opt\/oracle\/dcs\/bin\/odacli describe-component\r\nSystem Version\r\n---------------\r\n18.8.0.0.0\r\n\r\nSystem node Name\r\n---------------\r\nodat1\r\n\r\nLocal System Version\r\n---------------\r\n18.8.0.0.0\r\n\r\nComponent                                Installed Version    Available Version\r\n---------------------------------------- -------------------- --------------------\r\nOAK                                       18.8.0.0.0            up-to-date\r\n\r\nGI                                        18.8.0.0.191015       up-to-date\r\n\r\nDB {\r\n[ OraDB18000_home1 ]                      18.3.0.0.180717       18.8.0.0.191015\r\n[ OraDB12102_home1,OraDB12102_home2 ]     12.1.0.2.180717       12.1.0.2.191015\r\n[ OraDB11204_home1,OraDB11204_home2 ]     11.2.0.4.180717       11.2.0.4.191015\r\n}\r\n\r\nDCSAGENT                                  18.8.0.0.0            up-to-date\r\n\r\nILOM                                      4.0.4.52.r132805      up-to-date\r\n\r\nBIOS                                      30300200              up-to-date\r\n\r\nOS                                        6.10                  up-to-date\r\n\r\nFIRMWARECONTROLLER {\r\n[ c0 ]                                    4.650.00-7176         up-to-date\r\n[ c1,c2 ]                                 13.00.00.00           up-to-date\r\n}\r\n\r\nFIRMWAREEXPANDER                          0018                  001e\r\n\r\nFIRMWAREDISK {\r\n[ c0d0,c0d1 ]                             A7E0                  up-to-date\r\n[ c1d0,c1d15,c2d0,c2d15 ]                 PD51                  up-to-date\r\n[ c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,c1d7,     PAG1                  pd51\r\nc1d8,c1d9,c1d10,c1d11,c1d12,c1d13,c1d14,\r\nc2d1,c2d2,c2d3,c2d4,c2d5,c2d6,c2d7,c2d8,\r\nc2d9,c2d10,c2d11,c2d12,c2d13,c2d14 ]\r\n[ c1d16,c1d17,c1d18,c1d19,c1d20,c1d21,    A29A                  up-to-date\r\nc1d22,c1d23,c2d16,c2d17,c2d18,c2d19,\r\nc2d20,c2d21,c2d22,c2d23 ]\r\n}\r\n\r\nSystem node Name\r\n---------------\r\nodat2\r\n\r\nLocal System Version\r\n---------------\r\n18.8.0.0.0\r\n\r\nComponent                                Installed Version    Available Version\r\n---------------------------------------- -------------------- --------------------\r\nOAK                                       18.8.0.0.0            up-to-date\r\n\r\nGI                                        18.8.0.0.191015       up-to-date\r\n\r\nDB {\r\n[ OraDB18000_home1 ]                      18.3.0.0.180717       18.8.0.0.191015\r\n[ OraDB12102_home1,OraDB12102_home2 ]     12.1.0.2.180717       12.1.0.2.191015\r\n[ OraDB11204_home1,OraDB11204_home2 ]     11.2.0.4.180717       11.2.0.4.191015\r\n}\r\n\r\nDCSAGENT                                  18.8.0.0.0            up-to-date\r\n\r\nILOM                                      4.0.4.52.r132805      up-to-date\r\n\r\nBIOS                                      30300200              up-to-date\r\n\r\nOS                                        6.10                  up-to-date\r\n\r\nFIRMWARECONTROLLER {\r\n[ c0 ]                                    4.650.00-7176         up-to-date\r\n[ c1,c2 ]                                 13.00.00.00           up-to-date\r\n}\r\n\r\nFIRMWAREEXPANDER                          0018                  001e\r\n\r\nFIRMWAREDISK {\r\n[ c0d0,c0d1 ]                             A7E0                  up-to-date\r\n[ c1d0,c1d15,c2d0,c2d15 ]                 PD51                  up-to-date\r\n[ c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,c1d7,     PAG1                  pd51\r\nc1d8,c1d9,c1d10,c1d11,c1d12,c1d13,c1d14,\r\nc2d1,c2d2,c2d3,c2d4,c2d5,c2d6,c2d7,c2d8,\r\nc2d9,c2d10,c2d11,c2d12,c2d13,c2d14 ]\r\n[ c1d16,c1d17,c1d18,c1d19,c1d20,c1d21,    A29A                  up-to-date\r\nc1d22,c1d23,c2d16,c2d17,c2d18,c2d19,\r\nc2d20,c2d21,c2d22,c2d23 ]\r\n}\r\n\r\n\r\n[root@odat1 ~]#<\/pre>\n<p style=\"text-align: justify;\">And we can update calling the <strong>odacli update-storage<\/strong>:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 ~]# \/opt\/oracle\/dcs\/bin\/odacli update-storage -v 18.8.0.0.0\r\n{\r\n  \"jobId\" : \"06bbdc8d-d7d2-4400-82cc-a3345ceca28d\",\r\n  \"status\" : \"Created\",\r\n  \"message\" : \"Success of Storage Update may trigger reboot of node after 4-5 minutes. Please wait till node restart\",\r\n  \"reports\" : [ ],\r\n  \"createTimestamp\" : \"July 25, 2020 14:35:15 PM CEST\",\r\n  \"resourceList\" : [ ],\r\n  \"description\" : \"Storage Firmware Patching\",\r\n  \"updatedTime\" : \"July 25, 2020 14:35:15 PM CEST\"\r\n}\r\n[root@odat1 ~]#\r\n[root@odat1 ~]# \/opt\/oracle\/dcs\/bin\/odacli describe-job -i \"06bbdc8d-d7d2-4400-82cc-a3345ceca28d\"\r\n\r\nJob details\r\n----------------------------------------------------------------\r\n                     ID:  06bbdc8d-d7d2-4400-82cc-a3345ceca28d\r\n            Description:  Storage Firmware Patching\r\n                 Status:  Success\r\n                Created:  July 25, 2020 2:35:15 PM CEST\r\n                Message:\r\n\r\nTask Name                                Start Time                          End Time                            Status\r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nApplying Firmware Disk Patches           July 25, 2020 2:49:02 PM CEST       July 25, 2020 2:49:25 PM CEST       Success\r\nApplying Firmware Expander Patches       July 25, 2020 2:53:03 PM CEST       July 25, 2020 2:56:38 PM CEST       Success\r\nApplying Firmware Controller Patches     July 25, 2020 2:56:51 PM CEST       July 25, 2020 2:57:08 PM CEST       Success\r\npreRebootNode Actions                    July 25, 2020 2:57:09 PM CEST       July 25, 2020 2:57:09 PM CEST       Success\r\npreRebootNode Actions                    July 25, 2020 2:57:09 PM CEST       July 25, 2020 2:57:09 PM CEST       Success\r\nReboot Ilom                              July 25, 2020 2:57:09 PM CEST       July 25, 2020 2:57:09 PM CEST       Success\r\nReboot Ilom                              July 25, 2020 2:57:10 PM CEST       July 25, 2020 2:57:10 PM CEST       Success\r\n\r\n[root@odat1 ~]#<\/pre>\n<p style=\"text-align: justify;\">After the job finish (and after around 10 minutes) the ODA will reboot automatically.<\/p>\n<p style=\"text-align: justify;\">And you can see that now that everything is up to date:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@odat1 ~]# \/opt\/oracle\/dcs\/bin\/odacli describe-component\r\nSystem Version\r\n---------------\r\n18.8.0.0.0\r\n\r\nSystem node Name\r\n---------------\r\nodat1\r\n\r\nLocal System Version\r\n---------------\r\n18.8.0.0.0\r\n\r\nComponent                                Installed Version    Available Version\r\n---------------------------------------- -------------------- --------------------\r\nOAK                                       18.8.0.0.0            up-to-date\r\n\r\nGI                                        18.8.0.0.191015       up-to-date\r\n\r\nDB {\r\n[ OraDB18000_home1 ]                      18.3.0.0.180717       18.8.0.0.191015\r\n[ OraDB12102_home1,OraDB12102_home2 ]     12.1.0.2.180717       12.1.0.2.191015\r\n[ OraDB11204_home1,OraDB11204_home2 ]     11.2.0.4.180717       11.2.0.4.191015\r\n}\r\n\r\nDCSAGENT                                  18.8.0.0.0            up-to-date\r\n\r\nILOM                                      4.0.4.52.r132805      up-to-date\r\n\r\nBIOS                                      30300200              up-to-date\r\n\r\nOS                                        6.10                  up-to-date\r\n\r\nFIRMWARECONTROLLER {\r\n[ c0 ]                                    4.650.00-7176         up-to-date\r\n[ c1,c2 ]                                 13.00.00.00           up-to-date\r\n}\r\n\r\nFIRMWAREEXPANDER                          001E                  up-to-date\r\n\r\nFIRMWAREDISK {\r\n[ c0d0,c0d1 ]                             A7E0                  up-to-date\r\n[ c1d0,c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,     PD51                  up-to-date\r\nc1d7,c1d8,c1d9,c1d10,c1d11,c1d12,c1d13,\r\nc1d14,c1d15,c2d0,c2d1,c2d2,c2d3,c2d4,\r\nc2d5,c2d6,c2d7,c2d8,c2d9,c2d10,c2d11,\r\nc2d12,c2d13,c2d14,c2d15 ]\r\n[ c1d16,c1d17,c1d18,c1d19,c1d20,c1d21,    A29A                  up-to-date\r\nc1d22,c1d23,c2d16,c2d17,c2d18,c2d19,\r\nc2d20,c2d21,c2d22,c2d23 ]\r\n}\r\n\r\nSystem node Name\r\n---------------\r\nodat2\r\n\r\nLocal System Version\r\n---------------\r\n18.8.0.0.0\r\n\r\nComponent                                Installed Version    Available Version\r\n---------------------------------------- -------------------- --------------------\r\nOAK                                       18.8.0.0.0            up-to-date\r\n\r\nGI                                        18.8.0.0.191015       up-to-date\r\n\r\nDB {\r\n[ OraDB18000_home1 ]                      18.3.0.0.180717       18.8.0.0.191015\r\n[ OraDB12102_home1,OraDB12102_home2 ]     12.1.0.2.180717       12.1.0.2.191015\r\n[ OraDB11204_home1,OraDB11204_home2 ]     11.2.0.4.180717       11.2.0.4.191015\r\n}\r\n\r\nDCSAGENT                                  18.8.0.0.0            up-to-date\r\n\r\nILOM                                      4.0.4.52.r132805      up-to-date\r\n\r\nBIOS                                      30300200              up-to-date\r\n\r\nOS                                        6.10                  up-to-date\r\n\r\nFIRMWARECONTROLLER {\r\n[ c0 ]                                    4.650.00-7176         up-to-date\r\n[ c1,c2 ]                                 13.00.00.00           up-to-date\r\n}\r\n\r\nFIRMWAREEXPANDER                          001E                  up-to-date\r\n\r\nFIRMWAREDISK {\r\n[ c0d0,c0d1 ]                             A7E0                  up-to-date\r\n[ c1d0,c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,     PD51                  up-to-date\r\nc1d7,c1d8,c1d9,c1d10,c1d11,c1d12,c1d13,\r\nc1d14,c1d15,c2d0,c2d1,c2d2,c2d3,c2d4,\r\nc2d5,c2d6,c2d7,c2d8,c2d9,c2d10,c2d11,\r\nc2d12,c2d13,c2d14,c2d15 ]\r\n[ c1d16,c1d17,c1d18,c1d19,c1d20,c1d21,    A29A                  up-to-date\r\nc1d22,c1d23,c2d16,c2d17,c2d18,c2d19,\r\nc2d20,c2d21,c2d22,c2d23 ]\r\n}\r\n\r\n\r\n[root@odat1 ~]#<\/pre>\n<p style=\"text-align: justify;\">If you check the log, you can see that firmware was updated:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.r.s.p.PatchingOperations: Firmware Disk Patch File----&gt;\/opt\/oracle\/oak\/pkgrepos\/firmwaredisk\/hgst\/h7280a520sun8.0t\/pd51\/H7280A520.PD51.fw\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.u.s.StorageUtils: StorageUtils::isBRCMProduct\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.u.s.StorageUtils: Firmware version to be applied----&gt;PD51\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.u.s.StorageUtils: Storage Component Current Firmware Version----&gt;PAG1\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.u.s.StorageUtils: Known Firmware Versions------&gt;P554,P901,P9E2,PAG1,PD51\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.u.s.StorageUtils: StorageUtils::isBRCMProduct\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.u.s.StorageUtils: Storage Component Patch Applicable----&gt;c2d3\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.a.r.s.g.GiUtils: GiUtils:isCrsRunning\r\n2020-07-25 14:44:45,386 DEBUG [TaskZJsonRpcExt_256 : JobId=06bbdc8d-d7d2-4400-82cc-a3345ceca28d] [] c.o.d.c.u.CommonsUtils:<\/pre>\n<p style=\"text-align: justify;\">&nbsp;<\/p>\n<p style=\"text-align: justify;\"><strong>Disclaimer<\/strong>: <em>\u201cThe postings on this site are my own and don\u2019t necessarily represent my actual employer positions, strategies or opinions. The information here was edited to be useful for general purpose, specific data and identifications were removed to allow reach the generic audience and to be useful for the community. Post protected by copyright.\u201d<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The process of patch ODA is not complicated but requires attention over some steps. The 19.6 version was the first that was possible to patch from 18.8 version, and the version that allows upgrades to newer. If you want to go directly to 19.5 you need to reimage of the appliance. In this post, I [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[29,77,78,5,12],"tags":[100,79,65,135,124],"class_list":["post-787","post","type-post","status-publish","format-standard","hentry","category-database","category-engineeredsystems","category-oda","category-oracle","category-upgrade","tag-engineered-systems","tag-oda","tag-oracle","tag-patch","tag-upgrade"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8 - Fernando Simon<\/title>\n<meta name=\"description\" content=\"How to upgrade ODA from 18.3 to 18.8 version. All odacli patch commands covered and the hidden details described.\" \/>\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.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8 - Fernando Simon\" \/>\n<meta property=\"og:description\" content=\"How to upgrade ODA from 18.3 to 18.8 version. All odacli patch commands covered and the hidden details described.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\" \/>\n<meta property=\"og:site_name\" content=\"Fernando Simon\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-17T22:39:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-08-24T22:44:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\" \/>\n<meta name=\"author\" content=\"Simon\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Simon\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"23 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\"},\"author\":{\"name\":\"Simon\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9\"},\"headline\":\"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8\",\"datePublished\":\"2020-08-17T22:39:39+00:00\",\"dateModified\":\"2020-08-24T22:44:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\"},\"wordCount\":1141,\"commentCount\":3,\"image\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\",\"keywords\":[\"Engineered Systems\",\"ODA\",\"Oracle\",\"Patch\",\"Upgrade\"],\"articleSection\":[\"Database\",\"Engineered Systems\",\"ODA\",\"Oracle\",\"Upgrade\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\",\"url\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\",\"name\":\"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8 - Fernando Simon\",\"isPartOf\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\",\"datePublished\":\"2020-08-17T22:39:39+00:00\",\"dateModified\":\"2020-08-24T22:44:46+00:00\",\"author\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9\"},\"description\":\"How to upgrade ODA from 18.3 to 18.8 version. All odacli patch commands covered and the hidden details described.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage\",\"url\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\",\"contentUrl\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg\",\"width\":963,\"height\":505},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.fernandosimon.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#website\",\"url\":\"https:\/\/www.fernandosimon.com\/blog\/\",\"name\":\"Fernando Simon\",\"description\":\"Have you hugged your backup today?\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.fernandosimon.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9\",\"name\":\"Simon\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"caption\":\"Simon\"},\"sameAs\":[\"http:\/\/www.fernandosimon.com\"],\"url\":\"https:\/\/www.fernandosimon.com\/blog\/author\/simon\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8 - Fernando Simon","description":"How to upgrade ODA from 18.3 to 18.8 version. All odacli patch commands covered and the hidden details described.","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.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/","og_locale":"en_US","og_type":"article","og_title":"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8 - Fernando Simon","og_description":"How to upgrade ODA from 18.3 to 18.8 version. All odacli patch commands covered and the hidden details described.","og_url":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/","og_site_name":"Fernando Simon","article_published_time":"2020-08-17T22:39:39+00:00","article_modified_time":"2020-08-24T22:44:46+00:00","og_image":[{"url":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg","type":"","width":"","height":""}],"author":"Simon","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Simon","Est. reading time":"23 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#article","isPartOf":{"@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/"},"author":{"name":"Simon","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9"},"headline":"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8","datePublished":"2020-08-17T22:39:39+00:00","dateModified":"2020-08-24T22:44:46+00:00","mainEntityOfPage":{"@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/"},"wordCount":1141,"commentCount":3,"image":{"@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage"},"thumbnailUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg","keywords":["Engineered Systems","ODA","Oracle","Patch","Upgrade"],"articleSection":["Database","Engineered Systems","ODA","Oracle","Upgrade"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/","url":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/","name":"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8 - Fernando Simon","isPartOf":{"@id":"https:\/\/www.fernandosimon.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage"},"image":{"@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage"},"thumbnailUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg","datePublished":"2020-08-17T22:39:39+00:00","dateModified":"2020-08-24T22:44:46+00:00","author":{"@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9"},"description":"How to upgrade ODA from 18.3 to 18.8 version. All odacli patch commands covered and the hidden details described.","breadcrumb":{"@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#primaryimage","url":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg","contentUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/08\/19cmatrix.jpg","width":963,"height":505},{"@type":"BreadcrumbList","@id":"https:\/\/www.fernandosimon.com\/blog\/patch-oda-from-18-3-to-19-8-part-1-18-3-to-18-8\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fernandosimon.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Patch ODA from 18.3 to 19.8. Part 1 \u2013 18.3 to 18.8"}]},{"@type":"WebSite","@id":"https:\/\/www.fernandosimon.com\/blog\/#website","url":"https:\/\/www.fernandosimon.com\/blog\/","name":"Fernando Simon","description":"Have you hugged your backup today?","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.fernandosimon.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9","name":"Simon","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","caption":"Simon"},"sameAs":["http:\/\/www.fernandosimon.com"],"url":"https:\/\/www.fernandosimon.com\/blog\/author\/simon\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5ofTp-cH","_links":{"self":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts\/787","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/comments?post=787"}],"version-history":[{"count":0,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts\/787\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/media?parent=787"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/categories?post=787"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/tags?post=787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}