-
Enhancement
-
Resolution: Done
-
Major
-
None
-
None
-
False
-
-
False
-
-
When a materialized view is refreshed and managed by Oracle, Oracle creates a table in the same schema as the materialized view called MLOG$_base_table_name. It is within this materialized view log table that all the insert, update, and delete operations are initially cached and managed by the refresh before the actual materialized view is modified.
When using table.include.list paired with log.mining.query.filter.mode, users already get this behavior for free; however, all other combinations of database filtering, such as using table.exclude.list, schema.[include|exclude].list, or simply not applying filters to the database query, will lead to this extra noise in the data set.
To minimize the data set noise, we should consider adding an exclusion for when there are no table include/exclude lists or when the query filter mode is not set to automatically exclude these tables with something like:
(TABLE_NAME IS NULL OR TABLE_NAME NOT LIKE 'MLOG$%')