A download consists of three basic phases: expansion, extraction, and output. During the expansion phase, the scoping objects that are selected during subset definition are expanded to include related (neighborhood) objects. The extraction phase ensures that the subset is complete (that all necessary objects are included in the subset) and downgrades the user's protection to objects if necessary. Downgrades occur because an object is already checked out to another user or because the object was not included in the subset definition. In the output phase, the model is written to the transaction file.
Since download is primarily a read-only process, the encyclopedia allows other read functions to occur while a download is in progress. So, for example, code generation can proceed while a download is in progress, but update/delete operations like an upload to the same model are not allowed.
As objects are extracted from the encyclopedia, the encyclopedia updates the DSUBEX table to indicate that the objects are checked out with a certain level of protection. Updates to the model for this purpose are the source of DB2 locks. Periodic commits are executed to alleviate the scope and duration of the locks. If a download does not complete successfully, the subset is not marked as being checked out. However, because commits were taken along the way, the next download must perform a cleanup routine prior to executing the download to remove all checkout updates for the failed download.
|
Copyright © 2013 CA.
All rights reserved.
|
|