MyST: Honoring Oracle Managed Files on your FMW Repository

Some DBA’s are more fussy than others, and very much like to see things being done the correct way. Their way. As it has been done for ever.

This post is part of a Series in which Robert Jan de Groot and I explore the inner and hidden parts of Rubicon Red MyST Studio which might come in handy at times.

Our friends at Oracle devised a way to make maintenance of the Database-product a little easier for the DBA, and named it Oracle Managed Files (OMF). The trick here is that all files related to a single database are grouped together in their own folder on the file system, instead of just being thrown into the root of the datafiles-folder.
Rubicon Red MyST Studio knows this trick too, and here is how to get it working.

What OMF does

So, instead of just dumping all files in the root of the folder where the datafiles go, OMF creates separate directories to group everything related to your database in a folder with the name of that database.

For a database with the name FMWOSB2F,

/ora/oradata/OSB_ias_opss.dbf
/ora/oradata/OSB_iau.dbf
/ora/oradata/OSB_mds.dbf
/ora/oradata/OSB_soainfra.dbf
/ora/oradata/OSB_svctbl.dbf
/ora/oradata/OSB_UMS.dbf
/ora/oradata/OSB_wlsservices.dbf

would become

/ora/oradata/FMWOSB2F/datafile/OSB_ias_opss.dbf
/ora/oradata/FMWOSB2F/datafile/OSB_iau.dbf
/ora/oradata/FMWOSB2F/datafile/OSB_mds.dbf
/ora/oradata/FMWOSB2F/datafile/OSB_soainfra.dbf
/ora/oradata/FMWOSB2F/datafile/OSB_svctbl.dbf
/ora/oradata/FMWOSB2F/datafile/OSB_UMS.dbf
/ora/oradata/FMWOSB2F/datafile/OSB_wlsservices.dbf

on the file system.

In order to make this happen, one needs to pass an extra flag to the Repository Creation Utility: -honorOMF.

The MyST way

But, since we are working with MyST Studio, we cannot simple pass extra parameters to programs which are being invoked by MyST. We need to modify our Platform Blueprint or Platform Model to make MyST pass the extra parameters.
It’s a small but significant difference!

Navigate to your Platform Blueprint (or Platform Model) and find the Product Oracle Repository Creaton Utility.

Here, add a new Configuration Parameter, with the following value:

honor-omf = true

You’re all set now!
The logs should show you the flag being passed to the RCU, something along the lines of this:

Executing: /u01/app/oracle/product/fmw1221/oracle_common/bin/rcu -silent
-createRepository -databaseType ORACLE 
 -honorOMF true
-connectString 'database.customer.nl:1521/THISISASID'
-dbUser sys -dbRole sysdba -schemaPrefix OSB -component STB
-component IAU_APPEND -component OPSS -component UCSUMS -component SOAINFRA
-component IAU -component MDS -component IAU_VIEWER -component WLS
-f < /tmp/mystWorkspace/5cf787ab-3997-4c94-bee1-48ffacdb3914/tmp/12-05-18-19-50-56-28714/rcutmp0

This would mean you no longer have a raging DBA stalking you to adhere to their standards.
[Borat voice] It’s a great success!