A force parameter has been added to the alter materialized view log command. This causes Oracle Database 10g to ignore any items in the add clause that have already been defined in the Mview log. Oracle Database 10g simply ignores the error, and any items in the command that can be added will be added. Some conditions will still cause errors to be signaled, however, such as if you improperly define a tablespace.
The dbms_dimension package is new for Oracle Database 10g. This package offers new functionality to help you manage dimensions. You can use the procedure dbms_dimension.describe_dimension to extract the definition of a dimension. Also, the dbms_dimension.validate_dimension procedure allows you to validate dimensions (this is similar functionality to the dbms_olap.validate_dimension procedure).
Oracle Database 10g comes with a number of new partitioning enhancements:
Index-organized table partitioning improvements
Hash-partitioned global indexes
Partitioned index maintenance
Skipping unusable indexes
If you use index-organized tables (IOTs), you might well be interested in some new partitioning features related to IOTs. First, prior to Oracle Database 10g, you could not use list partitioning with IOTs. This restriction has been removed. Note that an IOT still cannot be partitioned using composite partitioning.
In Oracle Database 10g, global maintenance (e.g., drop or exchange partition operations) of an IOT will not result in the indexes being marked as unusable. Instead, Oracle now maintains the indexes during the maintenance operation and maintains the UROWIDs associated with the IOTs.
If you create a mapping table on a partitioned IOT, the mapping table will be partitioned if the IOT is partitioned and those partitions will share the same name and physical attributes as the base IOT partitions. Finally, prior to Oracle Database 10g, certain types of partitioned IOT's could not contain LOB columns (e.g. hash partitioned tables). This restriction has been removed in Oracle Database 10g.