About Upgrading Tables Dependent on Oracle-Maintained Types

Starting with Oracle Database 12c release 2 (12.2), you can run the Parallel Upgrade Utility with the -T option to set tables to READ ONLY.

When you run the Parallel Upgrade Utility with the -T option, any tablespaces that do not contain Oracle Maintained objects are set to READ ONLY. Setting these tables to READ ONLY can reduce the amount of data that you need to back up before upgrading the database.

If your database has user tables that depend on Oracle Maintained types (for example, AQ queue tables), then you must upgrade these tables manually after upgrade.

After the upgrade is complete, to upgrade tables dependent on Oracle-Maintained types, run the script utluptabdata.sql to carry out ALTER TABLE UPGRADE commands on tables in tablespaces set to READ ONLY during the upgrade.

Starting with Oracle Database 12c release 2, the ALTER TYPE statement behavior is also changed. If a dependent table is in an accessible tablespace, then it is automatically upgraded to the new version of the type. If the dependent table is in a READ ONLY tablespace, then it is not automatically upgraded. Run the utluptabdata.sql script to upgrade those tables set to READ ONLY tablespace states during the upgrade. You only need to run the utluptabdata.sql script when you run the Parallel Upgrade Utility with the -T option to run the upgrade.

Note:

When tablespaces are set to READ ONLY, this setting prevents updates on all tables in the tablespace, regardless of a user‘s update privilege level. For example, users connecting as SYSDBA are prevented from changing their application data.