Test your applications thoroughly in a realistic environment before releasing your applications into production. | Applications can trigger assertion failures. Make sure that you have allocated enough resources: for example, physical and logical logs and shared memory. |
Check and repair the consistency of your data. Run the following oncheck commands to check your system: - oncheck -cD: Data pages
- oncheck -cI: Index pages
- oncheck -cr: Reserved pages
- oncheck -ce: Chunk-free list
- oncheck -cc: System catalogs
- oncheck -pe: Physical information about chunks
| Diagnosing and repairing consistency problems quickly can prevent major problems like data loss and assertion failures. |
Upgrade to the latest major and fix pack release. | Assertion failures can be caused by product defects. You can avoid many product defects by upgrading to the most current release. |
Update statistics. When you change a table or indexing schema, update statistics to update the dictionary cache. By default, statistics are updated automatically by the Scheduler. You can customize automatic statistics updating for your system. | Queries that use stale statistics can use too many resources and cause assertion failures. Stale statistics can also have a negative affect on query performance. Always update statistics after upgrading. |
Monitor and complete in-place alter operations. You can view pending in-place alter operations in the sysadmin:ph_alerttable or the Health Center > Alerts screen in the IBM® OpenAdmin Tool (OAT) for Informix. You can force the completion of in-place alter operations for a specific table by running the following dummy UPDATE statement: UPDATE table_name SET column_one = column_one WHERE 1=1;
| Pending in-place alter operations can use too many resources and cause assertion failures. Complete in-place alters before upgrading. |