Oracle Only: ZDO Smart Switch
This part of the document covers the Smart Switch function of ZDO
The smart switch during the update with ZDO switches the database tables of the ABAP system while the system is running. The user does not notice the switch during the work.
The switch is performed by a function in the kernel of the ABAP system. The kernel recognizes the error code of the database, which can occur when the table is moved. It then executes a special routine that catches the error, waits a certain time, and executes the database statement again. In this way, the current transaction is not aborted or rolled back, and the user's work is not affected.
The kernel retry function for the smart switch function on the Oracle database platform has been implemented with a check of error code ORA-4063. This error is handled and retried automatically so that the user is not affected by the smart switch.
The ORA-4063 code is hard-coded into the ABAP kernel. A newer version of the smart switch function makes it necessary to handle a further Oracle error code as well. The new error codes ORA-12081 and ORA-942 are required because the table is set to read-only before the switch. This prevents aborts during the smart switch procedure.
The new error codes are not hard-coded in the kernel, but can be set in the profile. SUM sets the parameter dbs/ora/_retry_on_sql_error to 12081,942 as soon as the kernel and the database shared library (DBSL) version support the setting of this parameter while the system is running.
-
Update the kernel and the DBSL version to a version that supports the automatic change of the parameter.
-
Write the parameter dbs/ora/_retry_on_sql_error = 12081, 942 manually in the profile. As soon as you restart your applications servers, the parameter is activated. You can do this at any time before you start the update with SUM.
-
Do not make any changes. With this option, user can get a short dump with the database error code ORA-12081 in a short time frame when the smart switch is executed. This causes that the user transaction is rolled back and the user must perform the last transaction again.
For more information about supported kernel and DBSL versions, see SAP
Note:2540907
.
