The scenario is as follows:
We have a data warehouse type application that relies on the Oracle job scheduler and a Chain. This chain is responsible for generating materialized views (caches) that are to be queried against based on data that exists in the primary tables. For the sake of discussion the materialized views are :
select * from Cats,
select * from Dogs,
select * from Humans
During this cache creation process there are arbitrary tasks that are constantly populating the Cats, Dogs, and Humans
tables. My question is:
Given the above scenario is it possible for the creation of the materialized views (a read statement) to block during the insertion of new records from an abritrary program (these are bound by a transaction). I believe that there should be zero conflict, but I want to bring this question to more experienced DBAs.