Unnecessary Invalidations in 12c

(Doc ID 2355559.1)

Last updated on JANUARY 31, 2018

Applies to:

Oracle Database - Enterprise Edition - Version 12.1.0.2 and later
Information in this document applies to any platform.

Symptoms

Dropping an un-referenced column invalidates the view that references that object.

A very simple example will show the issue. When a view joins two tables with a LEFT JOIN, and a column with the same name in the two tables being joined is dropped in one of the tables but is NOT referenced in the view, the view is marked as INVALID. The view will recompile automatically on next access but this adds compile overhead and also interferes with our data dictionary management framework. A query on the internal Oracle data dictionary tables also shows this incorrect dependency even when the view is in a VALID state.

 

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms