During a recent piece of work for a customer Prōject uncovered an unusual issue when assembling subject areas in DAC.
If you are using a custom container which was created by copying an already existing container (which is mandatory for BI Apps), then all of the Subject Areas copied are still owned by the original container and are just references. When you reassemble these ownership gets transferred to the custom container. This however leads to an unforeseen issue in that any instances of those references which have been used in custom Execution Plans are then lost from that Execution Plan.
We have raised an SR with Oracle support on this and they have recreated internally and raised the issue with development (Bug 14319356 – ASSEMBLING REFERENCED SUBJECT AREAS REMOVES THEM FROM EXECUTION PLANS). We await the conclusion from Oracle with interest.
2012: Oracle have now recognised this as a product defect and it will be fixed in version 11.1.1.7.3 of DAC.
To clarify the problem here is the test case I sent to Oracle Support:
1. Create a new container from a vanilla one:
2. Check Subject Area ownership in the container:
3. Create a new execution plan:
4. Add a subject area to the plan (requery to bring back owner after saving):
5. Assemble the subject area added to the plan:
6. Calculate and accept the task list:
7. Requery the subject areas tab to show change of ownership of the Subject Area to the new container:
8. Query back the Execution Plan and the Subject Area is missing: