Overlapping Jobs Example

The script below illustrates a potential problem in using EVM Command Line (evmcl) to run three EVM jobs and their corresponding undo-jobs. A problem can arise because Job2 is started before the undo-job for Job1 is run. This creates an overlapping demand for BCV disks.

# EVM job script
evmcl evmserver stor1_job1
evmcl evmserver stor1_jJob2

evmcl evmserver undo_stor1_job1
evmcl evmserver undo_stor1_job2

evmcl evmserver stor1_job3
evmcl evmserver undo_stor1_job3
:end

Although the design of the script is valid, you must ensure that the BCVs for Job2 do not rely on the same disks that are used by the BCVs for Job1. For this example of disk demand overlap, you should use the following approach:

  1. Create and run Job1. When you create the first job, EVM selects free disks for the job's BCVs. When you run Job1, EVM uses and retains control of the disks, which removes them from the pool of free disks.

  2. Create Job2. When you create the second job, EVM again selects BCV disks from the pool of free disks (which now won't include disks used by Job 1). This prevents BCV disk demand overlap between the two jobs.

  3. Run the undo-job for Job1. When you run the undo-job for Job1, EVM returns the BCV disks for Job1 to the pool of free disks.

  4. Create Job3. When you create Job3, EVM selects free disks for the job's BCVs. However, there is no potential overlap problem between Job3 and the other jobs because the undo-jobs for the first and second jobs will have been run before Job3 is started.

Note: Be sure to test script files thoroughly before implementing them in a production environment.

For further EVM job planning information, see planning Parallel Jobs.