To assure consistency, the Configuring transactions--Bringover, Undo, and Putback--lock workspaces while they are working in them. These locks only affect Configuring transactions; other commands such as SCCS programs, are not affected. Locks are recorded in the Codemgr_wsdata/locks file in each workspace; the Configuring transaction commands consult that file before acting in a workspace. Two types of locks are used:
A read-lock is used when a command must assure that a workspace does not change while it is examining its contents. Read-locks may be obtained concurrently by a number of commands; no Configuring command can write to the workspace while a read-lock is in force. A read-lock is obtained during a Bringover transaction in the parent when its files are examined in preparation for copying to the child, and during a Putback transaction in the child when its files are examined in preparation for copying to the parent.
A write-lock is used when a command must assure that a workspace does not change while it is writing to it. Only one write-lock may be obtained for a workspace at any time. When a write-lock is in force, only the Configuring command that owns the lock can write to the workspace; other commands cannot obtain read-locks from the workspace. A write-lock is obtained during a Bringover transaction for the child when files are copied into it, and during a Putback transaction for the parent when files are copied into it.
If a Configuring command is unable to remove its lock after completion (for example, the system crashes), you must remove the lock yourself before Configuring commands will again be able to read and/or write in the workspace. You can use the Configuring GUI to view and delete active locks for a workspace, or you can edit the file directly.
To view and delete locks using the Configuring GUI, select a workspace icon from the Workspace Graph pane and choose the Workspace item from the main Props menu. Use the Category menu to choose the Locks pane.
To delete locks, select the line that contains the lock and click on the Delete button. To apply the deletion to the locks file, click on the Set Default button.