The schema area should not be used to store application data. And, if your are getting ready to dump & load, certain types of schema attributes require special handling. Run the code included with ProTop Real-Time to see if you have any "gotchas".
For a bit more background read this Progress article on Best Practices Involving the Schema Area.
Prepare to run code on Linux/Unix
- Log onto the server running Protop.
- Open a Progress environment shell: [your Progress installation directory]/bin/proenv
For example:/opt/OE117/bin/proenv
- Connect to your database: mpro [explicit path to your database]
For example:
mpro /db/myDB
Prepare to run code on Windows
- Log onto the server running ProTop.
- Run Proenv from the Windows Start menu.
- In that window connect to your database: mpro [explicit path to your database]
For example:
mpro c:\db\myDB
Now...
To check for RECID and LOB fields, tables without unique indexes, tables with no indexes, and application data stored in the schema area:
- In the procedure editor, type (this assumes ProTop is in /opt/protop, correct as needed):
run /opt/protop/util/chkschema.p
- Run the code (control-x).
- Choose Tools then OS Shell from the top menu and look for a file starting with "chk" in the current directory. It will either list objects that should not be there or require special handling or tell you your schema is clean.
- If you find application tables or indexes there, plan to move them to the appropriate application area. If the data is not too big you might be able to use the proutil tablemove utility to accomplish this.
- Other object types reported will require special attention in the context of a dump and load.
To create a list of tables and indexes that should be moved out of the schema area:
- In the procedure editor, type (this assumes ProTop is in /opt/protop, correct as needed):
run /opt/protop/util/schemachk.p
- Run the code (control-x).
- A list of tables and indexes that should be moved out of the schema area is shown on your screen. Plan to move them to the appropriate application area. If the data is not too big you might be able to use the proutil tablemove utility to accomplish this.
The ProTop Portal can alert you when it finds application data stored in the schema area
It is quite common to have an actively developed database to which new tables and indexes are being added regularly. ProTop will send an alert to the portal whenever it discovers new objects that have the schema area assigned for storage instead of an application area. Commercial users of ProTop can configure the portal to send emails that call attention to this fact before it gets out of hand.