RE: EBR and ORA-38810

  • From: "Mark W. Farnham" <mwf@xxxxxxxx>
  • To: <danielfink.work@xxxxxxxxx>, "'oracle-l'" <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 9 Jul 2019 19:47:47 -0400

… and

 

You can drop an edition only if all of these statements are true:

 

The edition is either the root edition or a leaf edition.

 

If the edition is the root, it has no objects that its descendents inherit. 
(That is, each object inherited from the root edition was either actualized or 
dropped.)

 

The edition is not in use (that is, it is not the current edition or session 
edition of a session).

 

The edition is not the database default edition.

 

Probably your default edition IS ora$base.

 

From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On ;
Behalf Of Daniel Fink
Sent: Tuesday, July 09, 2019 4:19 PM
To: oracle-l
Subject: EBR and ORA-38810

 

Working on a POC for using Edition Based Redefinition for patching a 12c 
environment. The client plans on weekly, perhaps more frequent, patching and 
wants to avoid downtime. EBR *appears* to be the answer.

 

One main issue is the cleanup of old editions. For a simple POC (using the 
example at oracle-base as the source), I create an edition (v1), then another 
(v2) for a view and procedure. Once I have 'migrated' to V2, I want to be able 
to drop V1. However when I try to drop that edition, the command results in 
"ORA-38810: Implementation restriction: cannot drop edition that has a parent 
and a child". 

 

I find online information that indicates you can drop an edition, however none 
of them show an actual example of the creation and subsequent drop of an 
edition. And in looking at the architecture of editioning published by Oracle 
(an edition is always the child of the most recent edition, causing the 
previous edition to be a parent), it seems like no edition, other than the most 
recent one, can ever be dropped.

 

Is this accurate or am I missing something?

 

Regards,

Daniel Fink

 

Other related posts: